summary refs log tree commit diff
diff options
context:
space:
mode:
authorJohn Ericson <John.Ericson@Obsidian.Systems>2018-09-17 22:48:25 -0400
committerJohn Ericson <John.Ericson@Obsidian.Systems>2018-09-17 22:48:25 -0400
commit226d574870943ac52fd225ed13b902db28776816 (patch)
treeab105d14aff48d6fa0adc07b491103e8967111b2
parent67694371869eaa43933f47f5cbcb87024945a72d (diff)
parentf1737fa64663b5ab203c0974675298288eda84a3 (diff)
downloadnixlib-226d574870943ac52fd225ed13b902db28776816.tar
nixlib-226d574870943ac52fd225ed13b902db28776816.tar.gz
nixlib-226d574870943ac52fd225ed13b902db28776816.tar.bz2
nixlib-226d574870943ac52fd225ed13b902db28776816.tar.lz
nixlib-226d574870943ac52fd225ed13b902db28776816.tar.xz
nixlib-226d574870943ac52fd225ed13b902db28776816.tar.zst
nixlib-226d574870943ac52fd225ed13b902db28776816.zip
Merge remote-tracking branch 'upstream/master' into darwin-android-ndk-for-master
-rw-r--r--.version2
-rw-r--r--doc/configuration.xml42
-rw-r--r--doc/cross-compilation.xml10
-rw-r--r--doc/functions.xml158
-rw-r--r--doc/languages-frameworks/rust.section.md3
-rw-r--r--doc/languages-frameworks/vim.section.md82
-rw-r--r--doc/package-notes.xml51
-rw-r--r--lib/asserts.nix44
-rw-r--r--lib/default.nix6
-rw-r--r--lib/licenses.nix10
-rw-r--r--lib/lists.nix7
-rw-r--r--lib/strings.nix12
-rw-r--r--lib/tests/check-eval.nix7
-rw-r--r--lib/tests/misc.nix4
-rw-r--r--lib/trivial.nix14
-rw-r--r--lib/types.nix8
-rw-r--r--maintainers/maintainer-list.nix27
-rw-r--r--nixos/doc/manual/default.nix4
-rw-r--r--nixos/doc/manual/development/running-nixos-tests-interactively.xml10
-rw-r--r--nixos/doc/manual/development/writing-nixos-tests.xml2
-rw-r--r--nixos/doc/manual/installation/upgrading.xml9
-rw-r--r--nixos/doc/manual/options-to-docbook.xsl11
-rw-r--r--nixos/doc/manual/postprocess-option-descriptions.xsl115
-rw-r--r--nixos/doc/manual/release-notes/release-notes.xml1
-rw-r--r--nixos/doc/manual/release-notes/rl-1809.xml23
-rw-r--r--nixos/doc/manual/release-notes/rl-1903.xml58
-rw-r--r--nixos/lib/eval-config.nix2
-rw-r--r--nixos/modules/config/shells-environment.nix21
-rw-r--r--nixos/modules/config/xdg/mime.nix14
-rw-r--r--nixos/modules/installer/tools/nix-fallback-paths.nix8
-rw-r--r--nixos/modules/misc/ids.nix4
-rw-r--r--nixos/modules/misc/version.nix2
-rw-r--r--nixos/modules/module-list.nix8
-rw-r--r--nixos/modules/programs/bash/bash.nix12
-rw-r--r--nixos/modules/programs/dconf.nix2
-rw-r--r--nixos/modules/programs/fish.nix19
-rw-r--r--nixos/modules/programs/zsh/zsh.nix14
-rw-r--r--nixos/modules/security/acme.nix8
-rw-r--r--nixos/modules/services/computing/slurm/slurm.nix10
-rw-r--r--nixos/modules/services/desktops/gnome3/rygel.nix30
-rw-r--r--nixos/modules/services/hardware/lirc.nix85
-rw-r--r--nixos/modules/services/mail/exim.nix18
-rw-r--r--nixos/modules/services/misc/weechat.nix56
-rw-r--r--nixos/modules/services/misc/weechat.xml61
-rw-r--r--nixos/modules/services/monitoring/datadog-agent.nix18
-rw-r--r--nixos/modules/services/monitoring/grafana.nix2
-rw-r--r--nixos/modules/services/monitoring/riemann.nix22
-rw-r--r--nixos/modules/services/networking/epmd.nix56
-rw-r--r--nixos/modules/services/networking/hylafax/default.nix29
-rw-r--r--nixos/modules/services/networking/hylafax/faxq-default.nix12
-rwxr-xr-xnixos/modules/services/networking/hylafax/faxq-wait.sh29
-rw-r--r--nixos/modules/services/networking/hylafax/hfaxd-default.nix10
-rw-r--r--nixos/modules/services/networking/hylafax/modem-default.nix22
-rw-r--r--nixos/modules/services/networking/hylafax/options.nix375
-rwxr-xr-xnixos/modules/services/networking/hylafax/spool.sh111
-rw-r--r--nixos/modules/services/networking/hylafax/systemd.nix249
-rw-r--r--nixos/modules/services/networking/i2pd.nix604
-rw-r--r--nixos/modules/services/networking/iperf3.nix87
-rw-r--r--nixos/modules/services/networking/networkmanager.nix14
-rw-r--r--nixos/modules/services/networking/nullidentdmod.nix34
-rw-r--r--nixos/modules/services/networking/zeronet.nix20
-rw-r--r--nixos/modules/services/security/sks.nix100
-rw-r--r--nixos/modules/services/security/tor.nix2
-rw-r--r--nixos/modules/services/system/kerberos.nix6
-rw-r--r--nixos/modules/services/web-apps/codimd.nix958
-rw-r--r--nixos/modules/services/x11/desktop-managers/enlightenment.nix2
-rw-r--r--nixos/modules/services/x11/desktop-managers/gnome3.nix1
-rw-r--r--nixos/modules/services/x11/display-managers/default.nix2
-rw-r--r--nixos/modules/services/x11/display-managers/lightdm.nix13
-rw-r--r--nixos/modules/system/activation/switch-to-configuration.pl2
-rw-r--r--nixos/modules/system/activation/top-level.nix1
-rw-r--r--nixos/modules/system/boot/networkd.nix6
-rw-r--r--nixos/modules/tasks/network-interfaces.nix2
-rw-r--r--nixos/release.nix4
-rw-r--r--nixos/tests/codimd.nix56
-rw-r--r--nixos/tests/installer.nix1
-rw-r--r--nixos/tests/kernel-copperhead.nix19
-rw-r--r--nixos/tests/novacomd.nix8
-rw-r--r--nixos/tests/opensmtpd.nix8
-rw-r--r--pkgs/applications/altcoins/bitcoin-abc.nix1
-rw-r--r--pkgs/applications/altcoins/bitcoin-classic.nix1
-rw-r--r--pkgs/applications/altcoins/bitcoin-unlimited.nix1
-rw-r--r--pkgs/applications/altcoins/bitcoin-xt.nix1
-rw-r--r--pkgs/applications/altcoins/btc1.nix17
-rw-r--r--pkgs/applications/altcoins/default.nix17
-rw-r--r--pkgs/applications/altcoins/ethsign/default.nix1
-rw-r--r--pkgs/applications/altcoins/litecoin.nix9
-rw-r--r--pkgs/applications/altcoins/monero-gui/default.nix7
-rw-r--r--pkgs/applications/altcoins/monero-gui/move-log-file.patch55
-rw-r--r--pkgs/applications/altcoins/monero-gui/move-translations-dir.patch15
-rw-r--r--pkgs/applications/altcoins/monero/default.nix21
-rw-r--r--pkgs/applications/altcoins/nano-wallet/default.nix4
-rw-r--r--pkgs/applications/audio/banshee/default.nix57
-rw-r--r--pkgs/applications/audio/lollypop/default.nix44
-rw-r--r--pkgs/applications/audio/milkytracker/decompressor_gzip.patch20
-rw-r--r--pkgs/applications/audio/milkytracker/default.nix27
-rw-r--r--pkgs/applications/audio/morituri/default.nix55
-rw-r--r--pkgs/applications/audio/morituri/paths.patch87
-rw-r--r--pkgs/applications/audio/pavucontrol/default.nix1
-rw-r--r--pkgs/applications/audio/pulseaudio-modules-bt/default.nix63
-rw-r--r--pkgs/applications/audio/pulseeffects/default.nix2
-rw-r--r--pkgs/applications/audio/puredata/default.nix4
-rw-r--r--pkgs/applications/audio/qmmp/default.nix4
-rw-r--r--pkgs/applications/audio/rosegarden/default.nix4
-rw-r--r--pkgs/applications/audio/sayonara/default.nix6
-rw-r--r--pkgs/applications/audio/snd/default.nix4
-rw-r--r--pkgs/applications/audio/sound-juicer/default.nix2
-rw-r--r--pkgs/applications/audio/spotify/default.nix8
-rw-r--r--pkgs/applications/audio/vocal/default.nix52
-rw-r--r--pkgs/applications/audio/whipper/default.nix48
-rw-r--r--pkgs/applications/audio/whipper/paths.patch105
-rw-r--r--pkgs/applications/editors/android-studio/default.nix12
-rw-r--r--pkgs/applications/editors/aseprite/default.nix24
-rw-r--r--pkgs/applications/editors/emacs-modes/elpa-generated.nix99
-rw-r--r--pkgs/applications/editors/emacs-modes/melpa-generated.nix4756
-rw-r--r--pkgs/applications/editors/emacs-modes/melpa-packages.nix6
-rw-r--r--pkgs/applications/editors/emacs-modes/melpa-stable-generated.nix1818
-rw-r--r--pkgs/applications/editors/emacs-modes/melpa-stable-packages.nix6
-rw-r--r--pkgs/applications/editors/emacs-modes/org-generated.nix12
-rw-r--r--pkgs/applications/editors/emacs/default.nix32
-rw-r--r--pkgs/applications/editors/focuswriter/default.nix4
-rw-r--r--pkgs/applications/editors/gnome-builder/default.nix3
-rw-r--r--pkgs/applications/editors/kakoune/default.nix6
-rw-r--r--pkgs/applications/editors/leo-editor/default.nix17
-rw-r--r--pkgs/applications/editors/nano/default.nix8
-rw-r--r--pkgs/applications/editors/nano/nanorc/default.nix29
-rw-r--r--pkgs/applications/editors/neovim/qt.nix4
-rw-r--r--pkgs/applications/editors/okteta/default.nix4
-rw-r--r--pkgs/applications/editors/quilter/default.nix73
-rw-r--r--pkgs/applications/editors/rednotebook/default.nix4
-rw-r--r--pkgs/applications/editors/thonny/default.nix43
-rw-r--r--pkgs/applications/editors/vim/common.nix4
-rw-r--r--pkgs/applications/graphics/PythonMagick/default.nix16
-rw-r--r--pkgs/applications/graphics/antimony/default.nix26
-rw-r--r--pkgs/applications/graphics/gcolor3/default.nix27
-rw-r--r--pkgs/applications/graphics/imgcat/default.nix2
-rw-r--r--pkgs/applications/graphics/imv/default.nix25
-rw-r--r--pkgs/applications/graphics/kipi-plugins/default.nix4
-rw-r--r--pkgs/applications/graphics/krita/default.nix4
-rw-r--r--pkgs/applications/graphics/photoflow/default.nix9
-rw-r--r--pkgs/applications/graphics/qcomicbook/default.nix4
-rw-r--r--pkgs/applications/kde/fetch.sh2
-rw-r--r--pkgs/applications/kde/srcs.nix1712
-rw-r--r--pkgs/applications/misc/calibre/default.nix4
-rw-r--r--pkgs/applications/misc/dbeaver/default.nix4
-rw-r--r--pkgs/applications/misc/electrum/default.nix26
-rw-r--r--pkgs/applications/misc/glava/default.nix25
-rw-r--r--pkgs/applications/misc/josm/default.nix4
-rw-r--r--pkgs/applications/misc/khal/default.nix4
-rw-r--r--pkgs/applications/misc/kitty/default.nix8
-rw-r--r--pkgs/applications/misc/lilyterm/default.nix5
-rw-r--r--pkgs/applications/misc/mediainfo-gui/default.nix4
-rw-r--r--pkgs/applications/misc/mediainfo/default.nix4
-rw-r--r--pkgs/applications/misc/notejot/default.nix47
-rw-r--r--pkgs/applications/misc/qmapshack/default.nix8
-rw-r--r--pkgs/applications/misc/ranger/default.nix6
-rw-r--r--pkgs/applications/misc/sequeler/default.nix8
-rw-r--r--pkgs/applications/misc/solaar/default.nix6
-rw-r--r--pkgs/applications/misc/taskjuggler/Gemfile.lock14
-rw-r--r--pkgs/applications/misc/taskjuggler/default.nix13
-rw-r--r--pkgs/applications/misc/taskjuggler/gemset.nix60
-rw-r--r--pkgs/applications/misc/tilix/default.nix4
-rw-r--r--pkgs/applications/misc/tootle/default.nix4
-rw-r--r--pkgs/applications/misc/worker/default.nix4
-rw-r--r--pkgs/applications/misc/xca/default.nix14
-rw-r--r--pkgs/applications/networking/browsers/chromium/common.nix13
-rw-r--r--pkgs/applications/networking/browsers/chromium/patches/remove-webp-include-68.patch12
-rw-r--r--pkgs/applications/networking/browsers/chromium/plugins.nix4
-rw-r--r--pkgs/applications/networking/browsers/chromium/upstream-info.nix18
-rw-r--r--pkgs/applications/networking/browsers/eolie/default.nix42
-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.nix796
-rw-r--r--pkgs/applications/networking/browsers/firefox/packages.nix9
-rw-r--r--pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/default.nix12
-rw-r--r--pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/standalone.nix10
-rw-r--r--pkgs/applications/networking/browsers/qtchan/default.nix9
-rw-r--r--pkgs/applications/networking/browsers/qutebrowser/default.nix32
-rw-r--r--pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix41
-rw-r--r--pkgs/applications/networking/browsers/vivaldi/chromium-gcc-r1.patch14
-rw-r--r--pkgs/applications/networking/browsers/vivaldi/chromium-gcc5-r1.patch66
-rw-r--r--pkgs/applications/networking/browsers/vivaldi/chromium-gn-bootstrap-r14.patch27
-rw-r--r--pkgs/applications/networking/browsers/vivaldi/default.nix4
-rw-r--r--pkgs/applications/networking/browsers/vivaldi/ffmpeg-codecs.nix21
-rwxr-xr-xpkgs/applications/networking/browsers/vivaldi/update.sh3
-rw-r--r--pkgs/applications/networking/charles/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/click/default.nix11
-rw-r--r--pkgs/applications/networking/cluster/click/fix_cargo_lock_version.patch13
-rw-r--r--pkgs/applications/networking/cluster/cni/plugins.nix4
-rw-r--r--pkgs/applications/networking/cluster/flink/default.nix26
-rw-r--r--pkgs/applications/networking/cluster/helm/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/heptio-ark/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/kops/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/kubernetes/default.nix16
-rw-r--r--pkgs/applications/networking/cluster/terraform-landscape/Gemfile.lock4
-rw-r--r--pkgs/applications/networking/cluster/terraform-landscape/default.nix17
-rw-r--r--pkgs/applications/networking/cluster/terraform-landscape/gemset.nix22
-rw-r--r--pkgs/applications/networking/corebird/default.nix4
-rw-r--r--pkgs/applications/networking/feedreaders/feedreader/default.nix4
-rw-r--r--pkgs/applications/networking/ftp/taxi/default.nix47
-rw-r--r--pkgs/applications/networking/gns3/default.nix6
-rw-r--r--pkgs/applications/networking/google-drive-ocamlfuse/default.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/SkypeExport/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/dino/default.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/linphone/default.nix7
-rw-r--r--pkgs/applications/networking/instant-messengers/matrique/default.nix55
-rw-r--r--pkgs/applications/networking/instant-messengers/nheko/default.nix63
-rw-r--r--pkgs/applications/networking/instant-messengers/nheko/external-deps.patch94
-rw-r--r--pkgs/applications/networking/instant-messengers/nheko/fetchurls.patch21
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-matrix/default.nix28
-rw-r--r--pkgs/applications/networking/instant-messengers/psi-plus/default.nix13
-rw-r--r--pkgs/applications/networking/instant-messengers/psi/default.nix5
-rw-r--r--pkgs/applications/networking/instant-messengers/signal-desktop/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/swift-im/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/swift-im/qt-5.11.patch10
-rw-r--r--pkgs/applications/networking/instant-messengers/zoom-us/default.nix4
-rw-r--r--pkgs/applications/networking/ipfs-migrator/default.nix6
-rw-r--r--pkgs/applications/networking/ipfs-migrator/deps.nix17
-rw-r--r--pkgs/applications/networking/irc/weechat/aggregate-commands.patch110
-rw-r--r--pkgs/applications/networking/irc/weechat/default.nix90
-rw-r--r--pkgs/applications/networking/irc/weechat/scripts/default.nix13
-rw-r--r--pkgs/applications/networking/irc/weechat/scripts/wee-slack/default.nix29
-rw-r--r--pkgs/applications/networking/irc/weechat/scripts/weechat-matrix-bridge/default.nix (renamed from pkgs/applications/networking/instant-messengers/weechat-matrix-bridge/default.nix)2
-rw-r--r--pkgs/applications/networking/irc/weechat/scripts/weechat-matrix-bridge/library-path.patch (renamed from pkgs/applications/networking/instant-messengers/weechat-matrix-bridge/library-path.patch)0
-rw-r--r--pkgs/applications/networking/irc/weechat/scripts/weechat-xmpp/default.nix (renamed from pkgs/applications/networking/instant-messengers/weechat-xmpp/default.nix)2
-rw-r--r--pkgs/applications/networking/irc/weechat/scripts/weechat-xmpp/libpath.patch (renamed from pkgs/applications/networking/instant-messengers/weechat-xmpp/libpath.patch)0
-rw-r--r--pkgs/applications/networking/mailreaders/afew/default.nix12
-rw-r--r--pkgs/applications/networking/mailreaders/inboxer/default.nix4
-rw-r--r--pkgs/applications/networking/p2p/opentracker/default.nix14
-rw-r--r--pkgs/applications/networking/remote/remmina/default.nix4
-rw-r--r--pkgs/applications/networking/sync/casync/default.nix4
-rw-r--r--pkgs/applications/networking/sync/rclone/default.nix4
-rw-r--r--pkgs/applications/networking/syncthing/default.nix4
-rw-r--r--pkgs/applications/networking/testssl/default.nix4
-rw-r--r--pkgs/applications/networking/transporter/default.nix2
-rw-r--r--pkgs/applications/networking/weather/meteo/default.nix54
-rw-r--r--pkgs/applications/office/aesop/default.nix49
-rw-r--r--pkgs/applications/office/bookworm/default.nix53
-rw-r--r--pkgs/applications/office/gnumeric/default.nix4
-rw-r--r--pkgs/applications/office/libreoffice/default-primary-src.nix8
-rw-r--r--pkgs/applications/office/libreoffice/default.nix161
-rw-r--r--pkgs/applications/office/libreoffice/libreoffice-srcs-still.nix450
-rw-r--r--pkgs/applications/office/libreoffice/libreoffice-srcs.nix173
-rw-r--r--pkgs/applications/office/libreoffice/still-primary-src.nix8
-rw-r--r--pkgs/applications/office/libreoffice/still.nix174
-rw-r--r--pkgs/applications/science/astronomy/gildas/default.nix9
-rw-r--r--pkgs/applications/science/astronomy/gildas/gag-font-bin-rule.patch13
-rw-r--r--pkgs/applications/science/biology/hisat2/default.nix49
-rw-r--r--pkgs/applications/science/biology/picard-tools/default.nix4
-rw-r--r--pkgs/applications/science/biology/seaview/default.nix41
-rw-r--r--pkgs/applications/science/biology/star/default.nix4
-rw-r--r--pkgs/applications/science/chemistry/jmol/default.nix4
-rw-r--r--pkgs/applications/science/chemistry/quantum-espresso/default.nix49
-rw-r--r--pkgs/applications/science/chemistry/siesta/default.nix69
-rw-r--r--pkgs/applications/science/geometry/drgeo/default.nix6
-rw-r--r--pkgs/applications/science/logic/prooftree/default.nix7
-rw-r--r--pkgs/applications/science/logic/tamarin-prover/default.nix9
-rw-r--r--pkgs/applications/science/logic/tamarin-prover/ghc-8.4-support-term.patch109
-rw-r--r--pkgs/applications/science/logic/tamarin-prover/ghc-8.4-support-theory.patch130
-rw-r--r--pkgs/applications/science/logic/tamarin-prover/ghc-8.4-support-utils.patch140
-rw-r--r--pkgs/applications/science/math/almonds/default.nix3
-rw-r--r--pkgs/applications/science/math/mxnet/default.nix35
-rw-r--r--pkgs/applications/science/math/pynac/default.nix1
-rw-r--r--pkgs/applications/science/math/ripser/default.nix3
-rw-r--r--pkgs/applications/science/math/sage/default.nix10
-rw-r--r--pkgs/applications/science/math/sage/openblas-pc.nix17
-rw-r--r--pkgs/applications/science/math/sage/patches/numpy-1.15.1.patch (renamed from pkgs/applications/science/math/sage/patches/numpy-1.14.3.patch)207
-rw-r--r--pkgs/applications/science/math/sage/sage-env.nix6
-rw-r--r--pkgs/applications/science/math/sage/sage-src.nix15
-rw-r--r--pkgs/applications/science/math/sage/sage-with-env.nix6
-rw-r--r--pkgs/applications/science/math/sage/sagelib.nix7
-rw-r--r--pkgs/applications/science/misc/root/default.nix7
-rw-r--r--pkgs/applications/science/misc/snakemake/default.nix1
-rw-r--r--pkgs/applications/science/molecular-dynamics/gromacs/default.nix6
-rw-r--r--pkgs/applications/version-management/bazaar/default.nix5
-rw-r--r--pkgs/applications/version-management/bazaar/tools.nix7
-rw-r--r--pkgs/applications/version-management/cvs2svn/default.nix7
-rw-r--r--pkgs/applications/version-management/git-and-tools/cgit/default.nix5
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-imerge/default.nix4
-rw-r--r--pkgs/applications/version-management/git-and-tools/grv/default.nix4
-rw-r--r--pkgs/applications/version-management/git-and-tools/svn-all-fast-export/default.nix4
-rw-r--r--pkgs/applications/version-management/gitea/default.nix4
-rw-r--r--pkgs/applications/version-management/guitone/default.nix3
-rw-r--r--pkgs/applications/version-management/mercurial/default.nix4
-rw-r--r--pkgs/applications/version-management/monotone/default.nix9
-rw-r--r--pkgs/applications/version-management/tortoisehg/default.nix4
-rw-r--r--pkgs/applications/version-management/vcprompt/default.nix1
-rw-r--r--pkgs/applications/video/gnome-mpv/default.nix7
-rw-r--r--pkgs/applications/video/kodi/commons.nix83
-rw-r--r--pkgs/applications/video/kodi/default.nix12
-rw-r--r--pkgs/applications/video/kodi/plugins.nix129
-rw-r--r--pkgs/applications/video/kodi/wrapper.nix59
-rw-r--r--pkgs/applications/video/mkvtoolnix/default.nix4
-rw-r--r--pkgs/applications/video/mpv/default.nix137
-rw-r--r--pkgs/applications/video/pitivi/default.nix4
-rw-r--r--pkgs/applications/video/tivodecode/default.nix5
-rw-r--r--pkgs/applications/video/xine-ui/default.nix11
-rw-r--r--pkgs/applications/virtualization/driver/win-virtio/default.nix11
-rw-r--r--pkgs/applications/virtualization/qemu/default.nix5
-rw-r--r--pkgs/applications/virtualization/qemu/sigrtminmax.patch30
-rw-r--r--pkgs/applications/window-managers/fbpanel/default.nix1
-rw-r--r--pkgs/applications/window-managers/xmonad/log-applet/default.nix4
-rw-r--r--pkgs/build-support/cc-wrapper/default.nix2
-rw-r--r--pkgs/build-support/fetchdocker/default.nix4
-rw-r--r--pkgs/build-support/rust/build-rust-crate.nix461
-rw-r--r--pkgs/build-support/rust/build-rust-crate/build-crate.nix157
-rw-r--r--pkgs/build-support/rust/build-rust-crate/configure-crate.nix129
-rw-r--r--pkgs/build-support/rust/build-rust-crate/default.nix173
-rw-r--r--pkgs/build-support/rust/build-rust-crate/install-crate.nix28
-rw-r--r--pkgs/build-support/rust/build-rust-crate/test/brotli-crates.nix95
-rw-r--r--pkgs/build-support/rust/build-rust-crate/test/default.nix104
-rw-r--r--pkgs/build-support/skaware/build-skaware-package.nix127
-rw-r--r--pkgs/build-support/vm/default.nix8
-rw-r--r--pkgs/data/fonts/et-book/default.nix22
-rw-r--r--pkgs/data/fonts/ibm-plex/default.nix4
-rw-r--r--pkgs/data/fonts/libertinus/default.nix6
-rw-r--r--pkgs/data/fonts/medio/default.nix2
-rw-r--r--pkgs/data/fonts/pecita/default.nix16
-rw-r--r--pkgs/data/fonts/penna/default.nix2
-rw-r--r--pkgs/data/fonts/route159/default.nix2
-rw-r--r--pkgs/data/fonts/seshat/default.nix2
-rw-r--r--pkgs/data/icons/faba-icon-theme/default.nix4
-rw-r--r--pkgs/data/icons/moka-icon-theme/default.nix4
-rw-r--r--pkgs/data/icons/numix-icon-theme-circle/default.nix2
-rw-r--r--pkgs/data/icons/numix-icon-theme-square/default.nix2
-rw-r--r--pkgs/data/icons/numix-icon-theme/default.nix2
-rw-r--r--pkgs/data/icons/paper-icon-theme/default.nix4
-rw-r--r--pkgs/data/icons/papirus-icon-theme/default.nix4
-rw-r--r--pkgs/data/misc/hackage/default.nix4
-rw-r--r--pkgs/data/misc/osinfo-db/default.nix4
-rw-r--r--pkgs/desktops/deepin/dbus-factory/default.nix30
-rw-r--r--pkgs/desktops/deepin/dde-calendar/default.nix44
-rw-r--r--pkgs/desktops/deepin/deepin-image-viewer/default.nix51
-rw-r--r--pkgs/desktops/deepin/deepin-menu/default.nix40
-rw-r--r--pkgs/desktops/deepin/deepin-mutter/default.nix61
-rw-r--r--pkgs/desktops/deepin/deepin-shortcut-viewer/default.nix37
-rw-r--r--pkgs/desktops/deepin/deepin-sound-theme/default.nix23
-rw-r--r--pkgs/desktops/deepin/deepin-terminal/default.nix30
-rw-r--r--pkgs/desktops/deepin/default.nix14
-rw-r--r--pkgs/desktops/deepin/dtkwm/default.nix39
-rw-r--r--pkgs/desktops/deepin/go-dbus-factory/default.nix26
-rw-r--r--pkgs/desktops/deepin/go-dbus-generator/default.nix33
-rw-r--r--pkgs/desktops/deepin/go-gir-generator/default.nix37
-rw-r--r--pkgs/desktops/deepin/go-lib/default.nix34
-rw-r--r--pkgs/desktops/deepin/qt5dxcb-plugin/default.nix40
-rw-r--r--pkgs/desktops/deepin/qt5integration/default.nix52
-rw-r--r--pkgs/desktops/gnome-2/default.nix4
-rw-r--r--pkgs/desktops/gnome-2/platform/gconfmm/default.nix23
-rw-r--r--pkgs/desktops/gnome-2/platform/gtkglextmm/default.nix35
-rw-r--r--pkgs/desktops/gnome-2/platform/gtkglextmm/fix_ftbfs_gtk_2_36.patch121
-rw-r--r--pkgs/desktops/gnome-2/platform/gtkglextmm/gdk.patch15
-rw-r--r--pkgs/desktops/gnome-3/apps/bijiben/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/apps/file-roller/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/apps/gnome-boxes/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/apps/gnome-calendar/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/apps/gnome-characters/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/apps/gnome-documents/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/apps/gnome-power-manager/default.nix2
-rw-r--r--pkgs/desktops/gnome-3/apps/gnome-todo/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/core/dconf-editor/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/core/eog/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/core/epiphany/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/core/gnome-calculator/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/core/gnome-contacts/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/core/gnome-control-center/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/core/gnome-disk-utility/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/core/gnome-screenshot/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/core/libgweather/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/core/mutter/default.nix2
-rw-r--r--pkgs/desktops/gnome-3/core/nautilus/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/core/rygel/default.nix54
-rw-r--r--pkgs/desktops/gnome-3/core/simple-scan/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/core/tracker/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/default.nix2
-rw-r--r--pkgs/desktops/gnome-3/devtools/devhelp/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/extensions/mediaplayer/default.nix3
-rw-r--r--pkgs/desktops/gnome-3/games/atomix/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/games/gnome-chess/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/games/gnome-mines/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/games/swell-foop/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/misc/gnome-tweaks/default.nix2
-rw-r--r--pkgs/desktops/lxqt/compton-conf/default.nix (renamed from pkgs/desktops/lxqt/optional/compton-conf/default.nix)0
-rw-r--r--pkgs/desktops/lxqt/default.nix62
-rw-r--r--pkgs/desktops/lxqt/libfm-qt/default.nix (renamed from pkgs/desktops/lxqt/core/libfm-qt/default.nix)0
-rw-r--r--pkgs/desktops/lxqt/liblxqt/default.nix (renamed from pkgs/desktops/lxqt/base/liblxqt/default.nix)0
-rw-r--r--pkgs/desktops/lxqt/libqtxdg/default.nix (renamed from pkgs/desktops/lxqt/base/libqtxdg/default.nix)0
-rw-r--r--pkgs/desktops/lxqt/libsysstat/default.nix (renamed from pkgs/desktops/lxqt/base/libsysstat/default.nix)0
-rw-r--r--pkgs/desktops/lxqt/lximage-qt/default.nix (renamed from pkgs/desktops/lxqt/optional/lximage-qt/default.nix)0
-rw-r--r--pkgs/desktops/lxqt/lxqt-about/default.nix (renamed from pkgs/desktops/lxqt/core/lxqt-about/default.nix)0
-rw-r--r--pkgs/desktops/lxqt/lxqt-admin/default.nix (renamed from pkgs/desktops/lxqt/core/lxqt-admin/default.nix)0
-rw-r--r--pkgs/desktops/lxqt/lxqt-build-tools/default.nix (renamed from pkgs/desktops/lxqt/base/lxqt-build-tools/default.nix)0
-rw-r--r--pkgs/desktops/lxqt/lxqt-config/default.nix (renamed from pkgs/desktops/lxqt/core/lxqt-config/default.nix)0
-rw-r--r--pkgs/desktops/lxqt/lxqt-globalkeys/default.nix (renamed from pkgs/desktops/lxqt/core/lxqt-globalkeys/default.nix)0
-rw-r--r--pkgs/desktops/lxqt/lxqt-l10n/default.nix (renamed from pkgs/desktops/lxqt/core/lxqt-l10n/default.nix)0
-rw-r--r--pkgs/desktops/lxqt/lxqt-notificationd/default.nix (renamed from pkgs/desktops/lxqt/core/lxqt-notificationd/default.nix)0
-rw-r--r--pkgs/desktops/lxqt/lxqt-openssh-askpass/default.nix (renamed from pkgs/desktops/lxqt/core/lxqt-openssh-askpass/default.nix)0
-rw-r--r--pkgs/desktops/lxqt/lxqt-panel/default.nix (renamed from pkgs/desktops/lxqt/core/lxqt-panel/default.nix)0
-rw-r--r--pkgs/desktops/lxqt/lxqt-policykit/default.nix (renamed from pkgs/desktops/lxqt/core/lxqt-policykit/default.nix)0
-rw-r--r--pkgs/desktops/lxqt/lxqt-powermanagement/default.nix (renamed from pkgs/desktops/lxqt/core/lxqt-powermanagement/default.nix)0
-rw-r--r--pkgs/desktops/lxqt/lxqt-qtplugin/default.nix (renamed from pkgs/desktops/lxqt/core/lxqt-qtplugin/default.nix)0
-rw-r--r--pkgs/desktops/lxqt/lxqt-runner/default.nix (renamed from pkgs/desktops/lxqt/core/lxqt-runner/default.nix)0
-rw-r--r--pkgs/desktops/lxqt/lxqt-session/default.nix (renamed from pkgs/desktops/lxqt/core/lxqt-session/default.nix)0
-rw-r--r--pkgs/desktops/lxqt/lxqt-sudo/default.nix (renamed from pkgs/desktops/lxqt/core/lxqt-sudo/default.nix)0
-rw-r--r--pkgs/desktops/lxqt/lxqt-themes/default.nix (renamed from pkgs/desktops/lxqt/core/lxqt-themes/default.nix)0
-rw-r--r--pkgs/desktops/lxqt/obconf-qt/default.nix (renamed from pkgs/desktops/lxqt/optional/obconf-qt/default.nix)0
-rw-r--r--pkgs/desktops/lxqt/pavucontrol-qt/default.nix (renamed from pkgs/desktops/lxqt/core/pavucontrol-qt/default.nix)0
-rw-r--r--pkgs/desktops/lxqt/pcmanfm-qt/default.nix (renamed from pkgs/desktops/lxqt/core/pcmanfm-qt/default.nix)0
-rw-r--r--pkgs/desktops/lxqt/qlipper/default.nix (renamed from pkgs/desktops/lxqt/optional/qlipper/default.nix)0
-rw-r--r--pkgs/desktops/lxqt/qps/default.nix (renamed from pkgs/desktops/lxqt/optional/qps/default.nix)0
-rw-r--r--pkgs/desktops/lxqt/qterminal/default.nix (renamed from pkgs/desktops/lxqt/optional/qterminal/default.nix)0
-rw-r--r--pkgs/desktops/lxqt/qtermwidget/0.7.1.nix (renamed from pkgs/desktops/lxqt/core/qtermwidget/0.7.1.nix)0
-rw-r--r--pkgs/desktops/lxqt/qtermwidget/default.nix (renamed from pkgs/desktops/lxqt/core/qtermwidget/default.nix)0
-rw-r--r--pkgs/desktops/lxqt/screengrab/default.nix (renamed from pkgs/desktops/lxqt/optional/screengrab/default.nix)0
-rw-r--r--pkgs/desktops/mate/mate-session-manager/default.nix4
-rw-r--r--pkgs/desktops/plasma-5/fetch.sh2
-rw-r--r--pkgs/desktops/plasma-5/srcs.nix360
-rw-r--r--pkgs/desktops/xfce4-13/xfce4-mixer/default.nix9
-rw-r--r--pkgs/development/compilers/boo/config.patch45
-rw-r--r--pkgs/development/compilers/boo/default.nix46
-rw-r--r--pkgs/development/compilers/clasp/default.nix1
-rw-r--r--pkgs/development/compilers/dotnet/sdk/default.nix5
-rw-r--r--pkgs/development/compilers/elm/default.nix10
-rw-r--r--pkgs/development/compilers/elm/packages/elm.nix4
-rw-r--r--pkgs/development/compilers/gambit/default.nix6
-rw-r--r--pkgs/development/compilers/gambit/unstable.nix8
-rw-r--r--pkgs/development/compilers/gerbil/default.nix8
-rw-r--r--pkgs/development/compilers/gerbil/unstable.nix8
-rw-r--r--pkgs/development/compilers/ghc/8.4.3.nix4
-rw-r--r--pkgs/development/compilers/ghc/8.6.1.nix8
-rw-r--r--pkgs/development/compilers/gnu-smalltalk/default.nix2
-rw-r--r--pkgs/development/compilers/go/1.11.nix4
-rw-r--r--pkgs/development/compilers/go/skip-test-extra-files-on-386.patch15
-rw-r--r--pkgs/development/compilers/julia/shared.nix2
-rw-r--r--pkgs/development/compilers/ocaml/generic.nix1
-rw-r--r--pkgs/development/compilers/reason/default.nix6
-rw-r--r--pkgs/development/compilers/sbcl/default.nix4
-rw-r--r--pkgs/development/compilers/swift/default.nix15
-rw-r--r--pkgs/development/coq-modules/QuickChick/default.nix2
-rw-r--r--pkgs/development/coq-modules/category-theory/default.nix2
-rw-r--r--pkgs/development/coq-modules/coq-haskell/default.nix2
-rw-r--r--pkgs/development/haskell-modules/configuration-common.nix22
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-7.10.x.nix2
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-8.0.x.nix6
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-8.2.x.nix5
-rw-r--r--pkgs/development/haskell-modules/configuration-ghcjs.nix2
-rw-r--r--pkgs/development/haskell-modules/configuration-hackage2nix.yaml167
-rw-r--r--pkgs/development/haskell-modules/configuration-nix.nix7
-rw-r--r--pkgs/development/haskell-modules/configuration-tensorflow.nix23
-rw-r--r--pkgs/development/haskell-modules/generic-builder.nix4
-rw-r--r--pkgs/development/haskell-modules/hackage-packages.nix4640
-rw-r--r--pkgs/development/haskell-modules/make-package-set.nix29
-rw-r--r--pkgs/development/interpreters/erlang/generic-builder.nix3
-rw-r--r--pkgs/development/interpreters/joker/default.nix4
-rw-r--r--pkgs/development/interpreters/php/default.nix22
-rw-r--r--pkgs/development/interpreters/racket/default.nix2
-rw-r--r--pkgs/development/interpreters/spidermonkey/52.nix2
-rw-r--r--pkgs/development/libraries/appstream-glib/default.nix4
-rw-r--r--pkgs/development/libraries/arrow-cpp/default.nix4
-rw-r--r--pkgs/development/libraries/asio/generic.nix1
-rw-r--r--pkgs/development/libraries/bullet/default.nix30
-rw-r--r--pkgs/development/libraries/ceres-solver/default.nix10
-rw-r--r--pkgs/development/libraries/clutter/default.nix6
-rw-r--r--pkgs/development/libraries/cogl/default.nix19
-rw-r--r--pkgs/development/libraries/csfml/default.nix3
-rw-r--r--pkgs/development/libraries/dbus-sharp/default.nix7
-rw-r--r--pkgs/development/libraries/flatpak/default.nix16
-rw-r--r--pkgs/development/libraries/flatpak/fix-paths.patch20
-rw-r--r--pkgs/development/libraries/flatpak/fix-test-paths.patch40
-rw-r--r--pkgs/development/libraries/flatpak/use-flatpak-from-path.patch4
-rw-r--r--pkgs/development/libraries/geis/default.nix4
-rw-r--r--pkgs/development/libraries/goffice/default.nix4
-rw-r--r--pkgs/development/libraries/gssdp/default.nix18
-rw-r--r--pkgs/development/libraries/gtkspellmm/default.nix10
-rw-r--r--pkgs/development/libraries/gupnp-av/default.nix25
-rw-r--r--pkgs/development/libraries/gupnp-dlna/default.nix30
-rw-r--r--pkgs/development/libraries/gupnp-igd/default.nix29
-rw-r--r--pkgs/development/libraries/gupnp/default.nix41
-rw-r--r--pkgs/development/libraries/gupnp/fix-requires.patch9
-rw-r--r--pkgs/development/libraries/ilixi/default.nix2
-rw-r--r--pkgs/development/libraries/iso-codes/default.nix4
-rw-r--r--pkgs/development/libraries/jbig2dec/default.nix4
-rw-r--r--pkgs/development/libraries/kde-frameworks/default.nix1
-rw-r--r--pkgs/development/libraries/kde-frameworks/fetch.sh2
-rw-r--r--pkgs/development/libraries/kde-frameworks/srcs.nix632
-rw-r--r--pkgs/development/libraries/kde-frameworks/syndication.nix13
-rw-r--r--pkgs/development/libraries/kerberos/heimdal.nix63
-rw-r--r--pkgs/development/libraries/kmsxx/default.nix6
-rw-r--r--pkgs/development/libraries/libLAS/default.nix2
-rw-r--r--pkgs/development/libraries/libcouchbase/default.nix4
-rw-r--r--pkgs/development/libraries/libguestfs/appliance.nix4
-rw-r--r--pkgs/development/libraries/libiio/default.nix29
-rw-r--r--pkgs/development/libraries/liblangtag/default.nix4
-rw-r--r--pkgs/development/libraries/libmediainfo/default.nix4
-rw-r--r--pkgs/development/libraries/libmowgli/default.nix11
-rw-r--r--pkgs/development/libraries/libndtypes/default.nix6
-rw-r--r--pkgs/development/libraries/libngspice/default.nix6
-rw-r--r--pkgs/development/libraries/libsigcxx/1.2.nix2
-rw-r--r--pkgs/development/libraries/libsigcxx/default.nix2
-rw-r--r--pkgs/development/libraries/libsignal-protocol-c/default.nix29
-rw-r--r--pkgs/development/libraries/libtar/default.nix2
-rw-r--r--pkgs/development/libraries/libtensorflow/default.nix8
-rw-r--r--pkgs/development/libraries/libuv/default.nix4
-rw-r--r--pkgs/development/libraries/libvmi/default.nix8
-rw-r--r--pkgs/development/libraries/libwebsockets/default.nix3
-rw-r--r--pkgs/development/libraries/libx86emu/default.nix4
-rw-r--r--pkgs/development/libraries/libxnd/default.nix7
-rw-r--r--pkgs/development/libraries/log4cplus/default.nix4
-rw-r--r--pkgs/development/libraries/mono-addins/default.nix6
-rw-r--r--pkgs/development/libraries/mtxclient/default.nix31
-rw-r--r--pkgs/development/libraries/nix-plugins/default.nix4
-rw-r--r--pkgs/development/libraries/nsss/default.nix33
-rw-r--r--pkgs/development/libraries/oniguruma/default.nix4
-rw-r--r--pkgs/development/libraries/openbsm/default.nix2
-rw-r--r--pkgs/development/libraries/opencv/3.x.nix11
-rw-r--r--pkgs/development/libraries/opencv/fix-dnn.patch13
-rw-r--r--pkgs/development/libraries/opendht/default.nix49
-rw-r--r--pkgs/development/libraries/openslp/default.nix2
-rw-r--r--pkgs/development/libraries/openssl/default.nix10
-rw-r--r--pkgs/development/libraries/physics/cernlib/default.nix1
-rw-r--r--pkgs/development/libraries/physics/geant4/default.nix167
-rw-r--r--pkgs/development/libraries/physics/geant4/fetch.nix29
-rw-r--r--pkgs/development/libraries/physics/geant4/g4py/configure.patch12
-rw-r--r--pkgs/development/libraries/physics/geant4/g4py/default.nix113
-rw-r--r--pkgs/development/libraries/pipewire/default.nix14
-rw-r--r--pkgs/development/libraries/poker-eval/default.nix2
-rw-r--r--pkgs/development/libraries/qt-5/5.11/default.nix23
-rw-r--r--pkgs/development/libraries/qt-5/modules/qtwebengine.nix1
-rw-r--r--pkgs/development/libraries/qt-5/modules/qtwebkit.nix5
-rw-r--r--pkgs/development/libraries/qt-5/qtModule.nix2
-rw-r--r--pkgs/development/libraries/qtkeychain/0001-Fixes-build-with-Qt4.patch25
-rw-r--r--pkgs/development/libraries/qtkeychain/default.nix2
-rw-r--r--pkgs/development/libraries/science/benchmark/papi/default.nix30
-rw-r--r--pkgs/development/libraries/science/math/atlas/default.nix1
-rw-r--r--pkgs/development/libraries/science/math/parmetis/default.nix33
-rw-r--r--pkgs/development/libraries/science/math/scalapack/default.nix29
-rw-r--r--pkgs/development/libraries/science/math/scs/default.nix24
-rw-r--r--pkgs/development/libraries/skalibs/default.nix47
-rw-r--r--pkgs/development/libraries/soqt/default.nix2
-rw-r--r--pkgs/development/libraries/soxt/default.nix2
-rw-r--r--pkgs/development/libraries/spdlog/default.nix60
-rw-r--r--pkgs/development/libraries/tcllib/default.nix2
-rw-r--r--pkgs/development/libraries/vapoursynth-mvtools/default.nix12
-rw-r--r--pkgs/development/libraries/vapoursynth/default.nix4
-rw-r--r--pkgs/development/libraries/vrpn/default.nix2
-rw-r--r--pkgs/development/libraries/webkitgtk/2.4.nix9
-rw-r--r--pkgs/development/libraries/wolfssl/default.nix2
-rw-r--r--pkgs/development/libraries/xdg-dbus-proxy/default.nix24
-rw-r--r--pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix4
-rw-r--r--pkgs/development/libraries/xdg-desktop-portal/default.nix4
-rw-r--r--pkgs/development/lisp-modules/lisp-packages.nix4
-rw-r--r--pkgs/development/lisp-modules/openssl-lib-marked.nix18
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/alexandria.nix2
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/array-utils.nix16
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/asdf-system-connections.nix2
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/bordeaux-threads.nix14
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/buildnode-xhtml.nix13
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/buildnode.nix8
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/caveman.nix37
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/chipz.nix2
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-aa.nix2
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-anonfun.nix2
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-async-repl.nix14
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-async-ssl.nix14
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-async.nix14
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-csv.nix21
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-dbi.nix14
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-html-parse.nix2
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-interpol.nix21
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-l10n-cldr.nix2
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-libuv.nix14
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-markup.nix2
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-paths.nix2
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-postgres.nix23
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-ppcre-unicode.nix14
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-ppcre.nix14
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-project.nix14
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-unification.nix2
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-utilities.nix2
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl_plus_ssl.nix14
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/clack-handler-hunchentoot.nix54
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/clack-socket.nix16
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/clack-test.nix41
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/clack-v1-compat.nix34
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/clack.nix14
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/closer-mop.nix16
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/closure-html.nix14
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/clss.nix14
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/clx.nix14
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/command-line-arguments.nix2
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/css-lite.nix2
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/css-selectors-simple-tree.nix13
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/css-selectors-stp.nix16
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/css-selectors.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/dbd-mysql.nix14
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/dbd-postgres.nix14
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/dbd-sqlite3.nix14
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/dbi.nix14
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/dexador.nix14
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/documentation-utils.nix16
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/fast-http.nix14
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/flexi-streams.nix14
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/form-fiddle.nix14
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/ironclad.nix14
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/iterate.nix2
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/kmrcl.nix2
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/lack-component.nix16
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/lack-middleware-backtrace.nix14
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/lack-util.nix14
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/lack.nix14
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/lift.nix2
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/lisp-unit2.nix5
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/lquery.nix14
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/map-set.nix2
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/marshal.nix2
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/md5.nix2
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/metabang-bind.nix2
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/misc-extensions.nix2
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/mt19937.nix2
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/named-readtables.nix2
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/net_dot_didierverna_dot_asdf-flv.nix2
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/nibbles.nix14
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/parse-number.nix2
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/plump.nix14
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/ptester.nix2
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/rfc2388.nix16
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/rt.nix2
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/salza2.nix2
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/simple-date.nix26
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/string-case.nix16
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/stumpwm.nix16
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/swank.nix16
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-backtrace.nix2
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-features.nix2
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-gray-streams.nix16
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-indent.nix16
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-mimes.nix16
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-types.nix2
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-utf-8.nix2
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/uffi.nix2
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/uiop.nix16
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/unit-test.nix2
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/usocket.nix14
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/vom.nix2
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/woo.nix14
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/wookie.nix14
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/xsubseq.nix2
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/yacc.nix2
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/zpb-ttf.nix2
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-overrides.nix5
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix.nix105
-rw-r--r--pkgs/development/lisp-modules/shell.nix3
-rw-r--r--pkgs/development/mobile/androidenv/androidndk.nix170
-rw-r--r--pkgs/development/node-packages/default-v8.nix6
-rw-r--r--pkgs/development/node-packages/node-packages-v8.json2
-rw-r--r--pkgs/development/node-packages/node-packages-v8.nix4252
-rw-r--r--pkgs/development/ocaml-modules/alcotest/default.nix8
-rw-r--r--pkgs/development/ocaml-modules/angstrom/default.nix10
-rw-r--r--pkgs/development/ocaml-modules/atd/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/batteries/default.nix10
-rw-r--r--pkgs/development/ocaml-modules/bigstringaf/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/biniou/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/bitstring/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/camlimages/default.nix8
-rw-r--r--pkgs/development/ocaml-modules/camomile/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/cohttp/default.nix8
-rw-r--r--pkgs/development/ocaml-modules/cohttp/lwt-unix.nix6
-rw-r--r--pkgs/development/ocaml-modules/cohttp/lwt.nix6
-rw-r--r--pkgs/development/ocaml-modules/conduit/default.nix8
-rw-r--r--pkgs/development/ocaml-modules/conduit/lwt-unix.nix6
-rw-r--r--pkgs/development/ocaml-modules/conduit/lwt.nix6
-rw-r--r--pkgs/development/ocaml-modules/cstruct/default.nix8
-rw-r--r--pkgs/development/ocaml-modules/cstruct/ppx.nix2
-rw-r--r--pkgs/development/ocaml-modules/csv/default.nix8
-rw-r--r--pkgs/development/ocaml-modules/dtoa/default.nix8
-rw-r--r--pkgs/development/ocaml-modules/ezjsonm/default.nix8
-rw-r--r--pkgs/development/ocaml-modules/faraday/default.nix8
-rw-r--r--pkgs/development/ocaml-modules/gapi-ocaml/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/git-http/default.nix10
-rw-r--r--pkgs/development/ocaml-modules/git-unix/default.nix8
-rw-r--r--pkgs/development/ocaml-modules/git/default.nix10
-rw-r--r--pkgs/development/ocaml-modules/hex/default.nix8
-rw-r--r--pkgs/development/ocaml-modules/httpaf/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/io-page/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/ipaddr/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/janestreet/janePackage.nix6
-rw-r--r--pkgs/development/ocaml-modules/lambda-term/default.nix8
-rw-r--r--pkgs/development/ocaml-modules/linenoise/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/lwt/default.nix8
-rw-r--r--pkgs/development/ocaml-modules/lwt/ppx.nix8
-rw-r--r--pkgs/development/ocaml-modules/lwt_log/default.nix8
-rw-r--r--pkgs/development/ocaml-modules/lwt_ssl/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/mstruct/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/ocaml-migrate-parsetree/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/ppx_blob/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/ppx_derivers/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/ppx_gen_rec/default.nix8
-rw-r--r--pkgs/development/ocaml-modules/ppxlib/default.nix8
-rw-r--r--pkgs/development/ocaml-modules/re/default.nix11
-rw-r--r--pkgs/development/ocaml-modules/rope/default.nix8
-rw-r--r--pkgs/development/ocaml-modules/seq/default.nix25
-rw-r--r--pkgs/development/ocaml-modules/sequence/default.nix8
-rw-r--r--pkgs/development/ocaml-modules/sqlexpr/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/sqlexpr/ppx.nix4
-rw-r--r--pkgs/development/ocaml-modules/tyxml/default.nix2
-rw-r--r--pkgs/development/ocaml-modules/uri/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/wtf8/default.nix10
-rw-r--r--pkgs/development/ocaml-modules/yojson/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/zed/default.nix8
-rw-r--r--pkgs/development/python-modules/Flask-PyMongo/default.nix7
-rw-r--r--pkgs/development/python-modules/alot/default.nix2
-rw-r--r--pkgs/development/python-modules/asyncssh/default.nix15
-rw-r--r--pkgs/development/python-modules/authres/default.nix2
-rw-r--r--pkgs/development/python-modules/backports-shutil-which/default.nix24
-rw-r--r--pkgs/development/python-modules/btrees/default.nix6
-rw-r--r--pkgs/development/python-modules/confluent-kafka/default.nix4
-rw-r--r--pkgs/development/python-modules/construct/default.nix23
-rw-r--r--pkgs/development/python-modules/cozy/default.nix4
-rw-r--r--pkgs/development/python-modules/daphne/default.nix9
-rw-r--r--pkgs/development/python-modules/dendropy/default.nix24
-rw-r--r--pkgs/development/python-modules/distributed/default.nix62
-rw-r--r--pkgs/development/python-modules/django-raster/default.nix8
-rw-r--r--pkgs/development/python-modules/eth-hash/default.nix45
-rw-r--r--pkgs/development/python-modules/eth-typing/default.nix35
-rw-r--r--pkgs/development/python-modules/eth-utils/default.nix35
-rw-r--r--pkgs/development/python-modules/eve/default.nix9
-rw-r--r--pkgs/development/python-modules/fiona/default.nix2
-rw-r--r--pkgs/development/python-modules/flask-ldap-login/default.nix21
-rw-r--r--pkgs/development/python-modules/genanki/default.nix38
-rw-r--r--pkgs/development/python-modules/geopandas/default.nix10
-rw-r--r--pkgs/development/python-modules/gmpy/default.nix24
-rw-r--r--pkgs/development/python-modules/gmpy2/default.nix25
-rw-r--r--pkgs/development/python-modules/inflect/default.nix15
-rw-r--r--pkgs/development/python-modules/irc/default.nix25
-rw-r--r--pkgs/development/python-modules/jaraco_classes/default.nix13
-rw-r--r--pkgs/development/python-modules/jaraco_collections/default.nix20
-rw-r--r--pkgs/development/python-modules/jaraco_itertools/default.nix14
-rw-r--r--pkgs/development/python-modules/jaraco_logging/default.nix14
-rw-r--r--pkgs/development/python-modules/jaraco_stream/default.nix13
-rw-r--r--pkgs/development/python-modules/jaraco_text/default.nix14
-rw-r--r--pkgs/development/python-modules/joblib/default.nix19
-rw-r--r--pkgs/development/python-modules/jupyterlab_launcher/default.nix3
-rw-r--r--pkgs/development/python-modules/keras/default.nix8
-rw-r--r--pkgs/development/python-modules/kubernetes/default.nix4
-rw-r--r--pkgs/development/python-modules/ledgerblue/default.nix9
-rw-r--r--pkgs/development/python-modules/libagent/default.nix14
-rw-r--r--pkgs/development/python-modules/libnacl/default.nix7
-rw-r--r--pkgs/development/python-modules/libusb1/default.nix10
-rw-r--r--pkgs/development/python-modules/locustio/default.nix20
-rw-r--r--pkgs/development/python-modules/mahotas/default.nix33
-rw-r--r--pkgs/development/python-modules/mahotas/disable-impure-tests.patch76
-rw-r--r--pkgs/development/python-modules/markerlib/default.nix30
-rw-r--r--pkgs/development/python-modules/ncclient/default.nix3
-rw-r--r--pkgs/development/python-modules/nilearn/default.nix8
-rw-r--r--pkgs/development/python-modules/nipype/default.nix8
-rw-r--r--pkgs/development/python-modules/ordered-set/default.nix7
-rw-r--r--pkgs/development/python-modules/persistent/default.nix2
-rw-r--r--pkgs/development/python-modules/phe/default.nix29
-rw-r--r--pkgs/development/python-modules/phonopy/default.nix8
-rw-r--r--pkgs/development/python-modules/py3status/default.nix9
-rw-r--r--pkgs/development/python-modules/pycaption/default.nix2
-rw-r--r--pkgs/development/python-modules/pydub/default.nix24
-rw-r--r--pkgs/development/python-modules/pydub/pyaudioop-python3.patch46
-rw-r--r--pkgs/development/python-modules/pyfakefs/default.nix24
-rw-r--r--pkgs/development/python-modules/pykeepass/default.nix26
-rw-r--r--pkgs/development/python-modules/pymatgen/default.nix11
-rw-r--r--pkgs/development/python-modules/pymetar/default.nix20
-rw-r--r--pkgs/development/python-modules/pymsgbox/default.nix24
-rw-r--r--pkgs/development/python-modules/pyodbc/default.nix6
-rw-r--r--pkgs/development/python-modules/pyowm/default.nix8
-rw-r--r--pkgs/development/python-modules/pyreadability/default.nix26
-rw-r--r--pkgs/development/python-modules/pyslurm/default.nix6
-rw-r--r--pkgs/development/python-modules/pytest-faulthandler/default.nix34
-rw-r--r--pkgs/development/python-modules/pytest-fixture-config/default.nix8
-rw-r--r--pkgs/development/python-modules/pytest-flakes/default.nix7
-rw-r--r--pkgs/development/python-modules/pytest-repeat/default.nix29
-rw-r--r--pkgs/development/python-modules/pytest-rerunfailures/default.nix7
-rw-r--r--pkgs/development/python-modules/pytest-timeout/default.nix5
-rw-r--r--pkgs/development/python-modules/python-jsonrpc-server/default.nix34
-rw-r--r--pkgs/development/python-modules/python-language-server/default.nix8
-rw-r--r--pkgs/development/python-modules/python-lz4/default.nix40
-rw-r--r--pkgs/development/python-modules/python-u2flib-host/default.nix23
-rw-r--r--pkgs/development/python-modules/readme_renderer/default.nix3
-rw-r--r--pkgs/development/python-modules/requests-file/default.nix20
-rw-r--r--pkgs/development/python-modules/restview/default.nix10
-rw-r--r--pkgs/development/python-modules/rlp/default.nix16
-rw-r--r--pkgs/development/python-modules/selectors2/default.nix29
-rw-r--r--pkgs/development/python-modules/sniffio/default.nix30
-rw-r--r--pkgs/development/python-modules/spacy/default.nix3
-rw-r--r--pkgs/development/python-modules/spacy/models.json78
-rw-r--r--pkgs/development/python-modules/tflearn/default.nix24
-rw-r--r--pkgs/development/python-modules/thinc/default.nix9
-rw-r--r--pkgs/development/python-modules/tifffile/default.nix4
-rw-r--r--pkgs/development/python-modules/tldextract/default.nix24
-rw-r--r--pkgs/development/python-modules/tornado/default.nix20
-rw-r--r--pkgs/development/python-modules/trio/default.nix2
-rw-r--r--pkgs/development/python-modules/urlgrabber/default.nix2
-rw-r--r--pkgs/development/python-modules/us/default.nix7
-rw-r--r--pkgs/development/python-modules/vowpalwabbit/default.nix19
-rw-r--r--pkgs/development/python-modules/vowpalwabbit/vowpal-wabbit-find-boost.diff34
-rw-r--r--pkgs/development/python-modules/wordfreq/default.nix13
-rw-r--r--pkgs/development/python-modules/zodb/default.nix15
-rw-r--r--pkgs/development/python-modules/zodb/fix-tests-with-persistent-4.4.patch26
-rw-r--r--pkgs/development/r-modules/default.nix8
-rw-r--r--pkgs/development/ruby-modules/solargraph/Gemfile.lock4
-rw-r--r--pkgs/development/ruby-modules/solargraph/gemset.nix8
-rw-r--r--pkgs/development/tools/ammonite/default.nix4
-rw-r--r--pkgs/development/tools/analysis/pmd/default.nix4
-rw-r--r--pkgs/development/tools/analysis/radare2/cutter.nix6
-rw-r--r--pkgs/development/tools/analysis/radare2/default.nix24
-rwxr-xr-xpkgs/development/tools/analysis/radare2/update.py13
-rw-r--r--pkgs/development/tools/analysis/splint/default.nix2
-rw-r--r--pkgs/development/tools/backblaze-b2/default.nix2
-rw-r--r--pkgs/development/tools/build-managers/bazel/default.nix21
-rw-r--r--pkgs/development/tools/build-managers/bear/default.nix4
-rw-r--r--pkgs/development/tools/build-managers/gn/default.nix125
-rw-r--r--pkgs/development/tools/build-managers/nant/default.nix71
-rw-r--r--pkgs/development/tools/build-managers/pants/default.nix1
-rw-r--r--pkgs/development/tools/build-managers/sbt/default.nix4
-rw-r--r--pkgs/development/tools/cargo-web/default.nix6
-rw-r--r--pkgs/development/tools/castxml/default.nix10
-rw-r--r--pkgs/development/tools/continuous-integration/jenkins/default.nix4
-rw-r--r--pkgs/development/tools/dep2nix/default.nix8
-rw-r--r--pkgs/development/tools/flatpak-builder/default.nix2
-rw-r--r--pkgs/development/tools/gocode/default.nix41
-rw-r--r--pkgs/development/tools/govendor/default.nix22
-rw-r--r--pkgs/development/tools/haskell/leksah/default.nix4
-rw-r--r--pkgs/development/tools/haskell/vaultenv/default.nix29
-rw-r--r--pkgs/development/tools/hcloud/default.nix13
-rw-r--r--pkgs/development/tools/heroku/default.nix80
-rw-r--r--pkgs/development/tools/jbake/default.nix2
-rw-r--r--pkgs/development/tools/misc/dfu-util/default.nix2
-rw-r--r--pkgs/development/tools/misc/gede/default.nix6
-rw-r--r--pkgs/development/tools/misc/kconfig-frontends/default.nix14
-rw-r--r--pkgs/development/tools/misc/lsof/default.nix9
-rw-r--r--pkgs/development/tools/misc/lttng-ust/default.nix4
-rw-r--r--pkgs/development/tools/misc/texinfo/common.nix3
-rw-r--r--pkgs/development/tools/misc/texinfo/perl.patch43
-rw-r--r--pkgs/development/tools/ocaml/cppo/default.nix6
-rw-r--r--pkgs/development/tools/ocaml/dune/default.nix (renamed from pkgs/development/tools/ocaml/jbuilder/default.nix)8
-rw-r--r--pkgs/development/tools/ocaml/js_of_ocaml/3.0.nix6
-rw-r--r--pkgs/development/tools/ocaml/js_of_ocaml/camlp4.nix6
-rw-r--r--pkgs/development/tools/ocaml/js_of_ocaml/compiler.nix8
-rw-r--r--pkgs/development/tools/ocaml/js_of_ocaml/lwt.nix6
-rw-r--r--pkgs/development/tools/ocaml/js_of_ocaml/ocamlbuild.nix6
-rw-r--r--pkgs/development/tools/ocaml/js_of_ocaml/ppx.nix6
-rw-r--r--pkgs/development/tools/ocaml/js_of_ocaml/ppx_deriving_json.nix6
-rw-r--r--pkgs/development/tools/ocaml/js_of_ocaml/tyxml.nix6
-rw-r--r--pkgs/development/tools/ocaml/ocaml-top/default.nix7
-rw-r--r--pkgs/development/tools/ocaml/ocp-indent/default.nix4
-rw-r--r--pkgs/development/tools/ocaml/ocp-index/default.nix8
-rw-r--r--pkgs/development/tools/ocaml/opam/1.2.2.nix92
-rw-r--r--pkgs/development/tools/ocaml/opam/default.nix100
-rw-r--r--pkgs/development/tools/ocaml/opam/opam-mccs-darwin.patch18
-rw-r--r--pkgs/development/tools/ocaml/opam/opam-pull-3487.patch23
-rw-r--r--pkgs/development/tools/ocaml/opam/opam-shebangs.patch128
-rwxr-xr-xpkgs/development/tools/ocaml/opam/opam.nix.pl130
-rw-r--r--pkgs/development/tools/ocaml/utop/default.nix6
-rw-r--r--pkgs/development/tools/pyre/default.nix80
-rw-r--r--pkgs/development/tools/pyre/pyre-bdist-wheel.patch43
-rw-r--r--pkgs/development/tools/richgo/default.nix21
-rw-r--r--pkgs/development/tools/solarus-quest-editor/default.nix27
-rw-r--r--pkgs/development/tools/solarus-quest-editor/patches/partial-f285beab62594f73e57190c49848c848487214cf.patch33
-rw-r--r--pkgs/development/tools/valadoc/default.nix10
-rw-r--r--pkgs/development/tools/wp-cli/default.nix52
-rw-r--r--pkgs/development/tools/ydiff/default.nix45
-rw-r--r--pkgs/development/web/nodejs/nodejs.nix2
-rw-r--r--pkgs/development/web/nodejs/v6.nix4
-rw-r--r--pkgs/development/web/postman/default.nix4
-rw-r--r--pkgs/games/arx-libertatis/default.nix6
-rw-r--r--pkgs/games/btanks/default.nix1
-rw-r--r--pkgs/games/chessx/default.nix38
-rw-r--r--pkgs/games/dwarf-fortress/default.nix115
-rw-r--r--pkgs/games/dwarf-fortress/dfhack/default.nix62
-rw-r--r--pkgs/games/dwarf-fortress/dwarf-therapist/dwarf-therapist.in26
-rw-r--r--pkgs/games/dwarf-fortress/dwarf-therapist/wrapper.nix43
-rw-r--r--pkgs/games/dwarf-fortress/game.nix3
-rw-r--r--pkgs/games/dwarf-fortress/lazy-pack.nix22
-rw-r--r--pkgs/games/dwarf-fortress/themes/default.nix2
-rw-r--r--pkgs/games/dwarf-fortress/twbt/default.nix56
-rw-r--r--pkgs/games/dwarf-fortress/unfuck.nix57
-rw-r--r--pkgs/games/dwarf-fortress/wrapper/default.nix31
-rw-r--r--pkgs/games/gnugo/default.nix2
-rw-r--r--pkgs/games/openrct2/default.nix8
-rw-r--r--pkgs/games/quakespasm/vulkan.nix9
-rw-r--r--pkgs/games/rogue/default.nix7
-rw-r--r--pkgs/games/solarus/default.nix18
-rw-r--r--pkgs/games/steam/default.nix1
-rw-r--r--pkgs/games/steam/steamcmd.nix46
-rw-r--r--pkgs/games/steam/steamcmd.sh24
-rw-r--r--pkgs/games/urbanterror/default.nix2
-rw-r--r--pkgs/misc/calaos/installer/default.nix5
-rw-r--r--pkgs/misc/cups/drivers/brlaser/default.nix10
-rw-r--r--pkgs/misc/drivers/sc-controller/default.nix4
-rw-r--r--pkgs/misc/emulators/yabause/0001-Fixes-for-Qt-5.11-upgrade.patch67
-rw-r--r--pkgs/misc/emulators/yabause/default.nix17
-rw-r--r--pkgs/misc/emulators/yabause/emu-compatibility.com.patch10
-rw-r--r--pkgs/misc/ghostscript/default.nix25
-rw-r--r--pkgs/misc/ghostscript/doc-no-ref.diff7
-rw-r--r--pkgs/misc/scrcpy/default.nix6
-rw-r--r--pkgs/misc/screensavers/alock/default.nix2
-rw-r--r--pkgs/misc/talkfilters/default.nix2
-rw-r--r--pkgs/misc/themes/adapta/default.nix4
-rw-r--r--pkgs/misc/themes/greybird/default.nix33
-rw-r--r--pkgs/misc/themes/matcha/default.nix32
-rw-r--r--pkgs/misc/themes/numix/default.nix2
-rw-r--r--pkgs/misc/themes/sierra/default.nix33
-rw-r--r--pkgs/misc/uboot/default.nix4
-rw-r--r--pkgs/misc/vim-plugins/default.nix3429
-rw-r--r--pkgs/misc/vim-plugins/generated.nix3272
-rwxr-xr-xpkgs/misc/vim-plugins/update.py347
-rw-r--r--pkgs/misc/vim-plugins/vim-plugin-names619
-rw-r--r--pkgs/os-specific/darwin/apple-source-releases/libsecurity_generic/default.nix2
-rw-r--r--pkgs/os-specific/darwin/maloader/default.nix1
-rw-r--r--pkgs/os-specific/darwin/swift-corelibs/corefoundation.nix76
-rw-r--r--pkgs/os-specific/darwin/swift-corelibs/default.nix4
-rw-r--r--pkgs/os-specific/linux/bcc/default.nix4
-rw-r--r--pkgs/os-specific/linux/busybox/default.nix4
-rw-r--r--pkgs/os-specific/linux/cryptsetup/default.nix13
-rw-r--r--pkgs/os-specific/linux/cryptsetup/disable-failing-tests.patch19
-rw-r--r--pkgs/os-specific/linux/earlyoom/default.nix10
-rw-r--r--pkgs/os-specific/linux/firmware/raspberrypi/default.nix4
-rw-r--r--pkgs/os-specific/linux/i2c-tools/default.nix2
-rw-r--r--pkgs/os-specific/linux/kernel/copperhead-4-14.patch2864
-rw-r--r--pkgs/os-specific/linux/kernel/copperhead-4-16.patch2571
-rw-r--r--pkgs/os-specific/linux/kernel/linux-4.14.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-4.17.nix18
-rw-r--r--pkgs/os-specific/linux/kernel/linux-4.18.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-copperhead-lts.nix30
-rw-r--r--pkgs/os-specific/linux/kernel/linux-hardkernel-4.14.nix6
-rw-r--r--pkgs/os-specific/linux/kernel/linux-rpi.nix6
-rw-r--r--pkgs/os-specific/linux/kernel/linux-testing.nix6
-rw-r--r--pkgs/os-specific/linux/kernel/manual-config.nix1
-rw-r--r--pkgs/os-specific/linux/kernel/patches.nix10
-rw-r--r--pkgs/os-specific/linux/kmscube/default.nix8
-rw-r--r--pkgs/os-specific/linux/lm-sensors/default.nix5
-rw-r--r--pkgs/os-specific/linux/musl/default.nix4
-rw-r--r--pkgs/os-specific/linux/pmount/default.nix2
-rw-r--r--pkgs/os-specific/linux/s6-linux-utils/default.nix37
-rw-r--r--pkgs/os-specific/linux/semodule-utils/default.nix27
-rw-r--r--pkgs/os-specific/linux/spl/default.nix5
-rw-r--r--pkgs/os-specific/linux/sysdig/default.nix4
-rw-r--r--pkgs/os-specific/linux/zfs/default.nix12
-rw-r--r--pkgs/servers/apache-kafka/default.nix21
-rw-r--r--pkgs/servers/atlassian/confluence.nix4
-rw-r--r--pkgs/servers/atlassian/crowd.nix4
-rw-r--r--pkgs/servers/atlassian/jira.nix4
-rw-r--r--pkgs/servers/bird/default.nix2
-rw-r--r--pkgs/servers/computing/slurm/default.nix4
-rw-r--r--pkgs/servers/dns/knot-dns/default.nix4
-rw-r--r--pkgs/servers/dns/pdns-recursor/default.nix4
-rw-r--r--pkgs/servers/emby/default.nix35
-rw-r--r--pkgs/servers/foundationdb/default.nix6
-rw-r--r--pkgs/servers/home-assistant/component-packages.nix2
-rw-r--r--pkgs/servers/home-assistant/default.nix4
-rw-r--r--pkgs/servers/home-assistant/frontend.nix4
-rw-r--r--pkgs/servers/hylafaxplus/config.site20
-rw-r--r--pkgs/servers/hylafaxplus/default.nix95
-rw-r--r--pkgs/servers/hylafaxplus/post-install-check.sh7
-rw-r--r--pkgs/servers/hylafaxplus/post-install.sh24
-rw-r--r--pkgs/servers/hylafaxplus/post-patch.sh25
-rw-r--r--pkgs/servers/identd/nullidentdmod/default.nix25
-rw-r--r--pkgs/servers/jackett/default.nix4
-rw-r--r--pkgs/servers/kippo/default.nix1
-rw-r--r--pkgs/servers/mail/exim/default.nix9
-rw-r--r--pkgs/servers/matrix-synapse/default.nix4
-rw-r--r--pkgs/servers/metabase/default.nix4
-rw-r--r--pkgs/servers/monitoring/grafana/default.nix6
-rw-r--r--pkgs/servers/monitoring/prometheus/default.nix4
-rw-r--r--pkgs/servers/monitoring/prometheus/dovecot-exporter-deps.nix33
-rw-r--r--pkgs/servers/monitoring/prometheus/dovecot-exporter.nix4
-rw-r--r--pkgs/servers/monitoring/prometheus/snmp-exporter.nix4
-rw-r--r--pkgs/servers/monitoring/telegraf/default.nix2
-rw-r--r--pkgs/servers/nats-streaming-server/default.nix26
-rw-r--r--pkgs/servers/nextcloud/default.nix4
-rw-r--r--pkgs/servers/nosql/arangodb/default.nix4
-rw-r--r--pkgs/servers/nosql/influxdb/default.nix2
-rw-r--r--pkgs/servers/radarr/default.nix4
-rw-r--r--pkgs/servers/sks/adapt-to-nixos.patch27
-rw-r--r--pkgs/servers/sks/default.nix8
-rw-r--r--pkgs/servers/uftp/default.nix4
-rw-r--r--pkgs/servers/web-apps/codimd/CodeMirror/default.nix46
-rw-r--r--pkgs/servers/web-apps/codimd/CodeMirror/deps.json8
-rwxr-xr-xpkgs/servers/web-apps/codimd/CodeMirror/generate.sh7
-rw-r--r--pkgs/servers/web-apps/codimd/CodeMirror/node-packages.nix1459
-rw-r--r--pkgs/servers/web-apps/codimd/CodeMirror/node.nix17
-rw-r--r--pkgs/servers/web-apps/codimd/default.nix156
-rw-r--r--pkgs/servers/web-apps/codimd/deps.json150
-rwxr-xr-xpkgs/servers/web-apps/codimd/generate.sh7
-rw-r--r--pkgs/servers/web-apps/codimd/node-packages.nix17911
-rw-r--r--pkgs/servers/web-apps/codimd/node.nix17
-rw-r--r--pkgs/servers/web-apps/frab/default.nix1
-rw-r--r--pkgs/servers/web-apps/matomo/default.nix4
-rw-r--r--pkgs/servers/x11/xorg/xcb-util-xrm.nix4
-rw-r--r--pkgs/shells/ion/default.nix1
-rw-r--r--pkgs/shells/zsh/default.nix10
-rw-r--r--pkgs/shells/zsh/oh-my-zsh/default.nix6
-rw-r--r--pkgs/shells/zsh/zsh-history-substring-search/default.nix26
-rw-r--r--pkgs/stdenv/linux/default.nix4
-rw-r--r--pkgs/tools/X11/dex/default.nix5
-rw-r--r--pkgs/tools/X11/ncview/default.nix4
-rw-r--r--pkgs/tools/X11/nitrogen/default.nix2
-rw-r--r--pkgs/tools/X11/virtualgl/default.nix1
-rw-r--r--pkgs/tools/X11/virtualgl/lib.nix2
-rw-r--r--pkgs/tools/X11/x11vnc/default.nix5
-rw-r--r--pkgs/tools/X11/x2vnc/default.nix5
-rw-r--r--pkgs/tools/X11/x2x/default.nix8
-rw-r--r--pkgs/tools/X11/xpra/default.nix1
-rw-r--r--pkgs/tools/X11/xpra/gtk3.nix5
-rw-r--r--pkgs/tools/X11/xpra/libfakeXinerama.nix7
-rw-r--r--pkgs/tools/X11/xsettingsd/default.nix27
-rw-r--r--pkgs/tools/X11/xvkbd/default.nix2
-rw-r--r--pkgs/tools/admin/aws-vault/default.nix10
-rw-r--r--pkgs/tools/admin/google-cloud-sdk/default.nix6
-rw-r--r--pkgs/tools/admin/salt/default.nix2
-rw-r--r--pkgs/tools/admin/scaleway-cli/default.nix4
-rw-r--r--pkgs/tools/admin/sec/default.nix4
-rw-r--r--pkgs/tools/audio/accuraterip-checksum/default.nix31
-rw-r--r--pkgs/tools/backup/dar/default.nix2
-rw-r--r--pkgs/tools/backup/duplicity/default.nix4
-rw-r--r--pkgs/tools/backup/restic/default.nix2
-rw-r--r--pkgs/tools/backup/wal-g/default.nix6
-rw-r--r--pkgs/tools/cd-dvd/bchunk/default.nix1
-rw-r--r--pkgs/tools/cd-dvd/cdrdao/default.nix5
-rw-r--r--pkgs/tools/cd-dvd/lsdvd/default.nix5
-rw-r--r--pkgs/tools/compression/pigz/default.nix5
-rw-r--r--pkgs/tools/compression/zdelta/default.nix5
-rw-r--r--pkgs/tools/filesystems/aefs/default.nix2
-rw-r--r--pkgs/tools/filesystems/android-file-transfer/default.nix6
-rw-r--r--pkgs/tools/filesystems/avfs/default.nix4
-rw-r--r--pkgs/tools/filesystems/bashmount/default.nix1
-rw-r--r--pkgs/tools/filesystems/curlftpfs/default.nix8
-rw-r--r--pkgs/tools/filesystems/exfat/default.nix4
-rw-r--r--pkgs/tools/filesystems/fatresize/default.nix19
-rw-r--r--pkgs/tools/filesystems/jfsutils/default.nix6
-rw-r--r--pkgs/tools/filesystems/mtools/default.nix6
-rw-r--r--pkgs/tools/filesystems/mtpfs/default.nix7
-rw-r--r--pkgs/tools/filesystems/nilfs-utils/default.nix11
-rw-r--r--pkgs/tools/filesystems/reiser4progs/default.nix7
-rw-r--r--pkgs/tools/filesystems/relfs/default.nix8
-rw-r--r--pkgs/tools/filesystems/tmsu/default.nix4
-rw-r--r--pkgs/tools/filesystems/wdfs/default.nix6
-rw-r--r--pkgs/tools/graphics/asymptote/default.nix5
-rw-r--r--pkgs/tools/graphics/cfdg/default.nix1
-rw-r--r--pkgs/tools/graphics/cuneiform/default.nix8
-rw-r--r--pkgs/tools/graphics/editres/default.nix6
-rw-r--r--pkgs/tools/graphics/exif/default.nix7
-rw-r--r--pkgs/tools/graphics/imgur-screenshot/default.nix2
-rw-r--r--pkgs/tools/graphics/pdftag/default.nix25
-rw-r--r--pkgs/tools/graphics/qrencode/default.nix1
-rw-r--r--pkgs/tools/graphics/wkhtmltopdf/default.nix112
-rw-r--r--pkgs/tools/graphics/wkhtmltopdf/makefix.patch24
-rw-r--r--pkgs/tools/misc/bat/default.nix14
-rw-r--r--pkgs/tools/misc/calamares/default.nix4
-rw-r--r--pkgs/tools/misc/cloc/default.nix6
-rw-r--r--pkgs/tools/misc/cloud-utils/default.nix5
-rw-r--r--pkgs/tools/misc/ddcutil/default.nix5
-rw-r--r--pkgs/tools/misc/debootstrap/default.nix4
-rw-r--r--pkgs/tools/misc/desktop-file-utils/default.nix1
-rw-r--r--pkgs/tools/misc/ent/default.nix5
-rw-r--r--pkgs/tools/misc/execline/default.nix42
-rw-r--r--pkgs/tools/misc/grub/default.nix38
-rw-r--r--pkgs/tools/misc/grub/grub1.patches.nix34
-rwxr-xr-xpkgs/tools/misc/grub/grub1.patches.sh70
-rw-r--r--pkgs/tools/misc/hashit/default.nix39
-rw-r--r--pkgs/tools/misc/hdaps-gl/default.nix25
-rw-r--r--pkgs/tools/misc/hebcal/default.nix4
-rw-r--r--pkgs/tools/misc/kdecoration-viewer/default.nix6
-rw-r--r--pkgs/tools/misc/kt/default.nix1
-rw-r--r--pkgs/tools/misc/lockfile-progs/default.nix4
-rw-r--r--pkgs/tools/misc/mbuffer/default.nix4
-rw-r--r--pkgs/tools/misc/mdbtools/default.nix6
-rw-r--r--pkgs/tools/misc/mdbtools/git.nix6
-rw-r--r--pkgs/tools/misc/noti/default.nix38
-rw-r--r--pkgs/tools/misc/nvramtool/default.nix34
-rw-r--r--pkgs/tools/misc/ostree/default.nix17
-rw-r--r--pkgs/tools/misc/ostree/disable-test-gpg-verify-result.patch12
-rw-r--r--pkgs/tools/misc/ostree/fix-1592.patch97
-rw-r--r--pkgs/tools/misc/plantuml/default.nix4
-rw-r--r--pkgs/tools/misc/powerline-rs/default.nix4
-rw-r--r--pkgs/tools/misc/rkflashtool/default.nix7
-rw-r--r--pkgs/tools/misc/s6-portable-utils/default.nix44
-rw-r--r--pkgs/tools/misc/smenu/default.nix4
-rw-r--r--pkgs/tools/misc/woeusb/default.nix4
-rw-r--r--pkgs/tools/misc/xvfb-run/default.nix5
-rw-r--r--pkgs/tools/misc/youtube-dl/default.nix12
-rw-r--r--pkgs/tools/networking/aria2/default.nix10
-rw-r--r--pkgs/tools/networking/bsd-finger/default.nix5
-rw-r--r--pkgs/tools/networking/carddav-util/default.nix5
-rw-r--r--pkgs/tools/networking/cksfv/default.nix7
-rw-r--r--pkgs/tools/networking/dd-agent/6.nix27
-rw-r--r--pkgs/tools/networking/dd-agent/README.md8
-rw-r--r--pkgs/tools/networking/dd-agent/datadog-process-agent-deps.nix669
-rw-r--r--pkgs/tools/networking/dd-agent/datadog-process-agent.nix26
-rw-r--r--pkgs/tools/networking/dd-agent/deps.nix971
-rw-r--r--pkgs/tools/networking/dhcpcd/default.nix7
-rw-r--r--pkgs/tools/networking/dhcpdump/default.nix7
-rw-r--r--pkgs/tools/networking/dnscrypt-proxy/1.x/default.nix2
-rw-r--r--pkgs/tools/networking/dnscrypt-wrapper/default.nix2
-rw-r--r--pkgs/tools/networking/dnsperf/default.nix2
-rw-r--r--pkgs/tools/networking/driftnet/default.nix1
-rw-r--r--pkgs/tools/networking/fdm/default.nix1
-rw-r--r--pkgs/tools/networking/gnirehtet/default.nix8
-rw-r--r--pkgs/tools/networking/gnirehtet/paths.patch25
-rw-r--r--pkgs/tools/networking/gvpe/default.nix8
-rw-r--r--pkgs/tools/networking/libreswan/default.nix7
-rw-r--r--pkgs/tools/networking/lldpd/default.nix12
-rw-r--r--pkgs/tools/networking/miniupnpc/default.nix9
-rw-r--r--pkgs/tools/networking/miniupnpd/default.nix1
-rw-r--r--pkgs/tools/networking/mitmproxy/default.nix21
-rw-r--r--pkgs/tools/networking/nbd/default.nix7
-rw-r--r--pkgs/tools/networking/ncftp/default.nix1
-rw-r--r--pkgs/tools/networking/netselect/default.nix12
-rw-r--r--pkgs/tools/networking/network-manager/applet.nix4
-rw-r--r--pkgs/tools/networking/p2p/amule/default.nix3
-rw-r--r--pkgs/tools/networking/p2p/amule/gcc47.patch21
-rw-r--r--pkgs/tools/networking/p2p/amule/upnp-1.8.patch230
-rw-r--r--pkgs/tools/networking/philter/default.nix2
-rw-r--r--pkgs/tools/networking/pirate-get/default.nix4
-rw-r--r--pkgs/tools/networking/polygraph/default.nix3
-rw-r--r--pkgs/tools/networking/polysh/default.nix5
-rw-r--r--pkgs/tools/networking/pptpd/default.nix1
-rw-r--r--pkgs/tools/networking/prettyping/default.nix25
-rw-r--r--pkgs/tools/networking/quicktun/default.nix1
-rw-r--r--pkgs/tools/networking/rp-pppoe/default.nix5
-rw-r--r--pkgs/tools/networking/s6-dns/default.nix42
-rw-r--r--pkgs/tools/networking/s6-networking/default.nix42
-rw-r--r--pkgs/tools/networking/strongswan/default.nix5
-rw-r--r--pkgs/tools/networking/stunnel/default.nix4
-rw-r--r--pkgs/tools/networking/tinyproxy/default.nix4
-rw-r--r--pkgs/tools/networking/urlwatch/default.nix7
-rw-r--r--pkgs/tools/networking/vde2/default.nix5
-rw-r--r--pkgs/tools/networking/vlan/default.nix5
-rw-r--r--pkgs/tools/networking/webalizer/default.nix11
-rw-r--r--pkgs/tools/networking/wireguard-tools/default.nix4
-rw-r--r--pkgs/tools/networking/x11-ssh-askpass/default.nix13
-rw-r--r--pkgs/tools/package-management/bunny/default.nix4
-rw-r--r--pkgs/tools/package-management/cargo-download/Cargo.nix3138
-rw-r--r--pkgs/tools/package-management/cargo-download/default.nix11
-rw-r--r--pkgs/tools/package-management/cargo-edit/cargo-edit.nix1905
-rw-r--r--pkgs/tools/package-management/cargo-edit/default.nix46
-rw-r--r--pkgs/tools/package-management/cargo-edit/disable-network-based-test.patch10
-rw-r--r--pkgs/tools/package-management/cargo-update/default.nix6
-rw-r--r--pkgs/tools/package-management/clib/default.nix4
-rw-r--r--pkgs/tools/package-management/nix-prefetch-scripts/default.nix4
-rw-r--r--pkgs/tools/package-management/nix/default.nix23
-rw-r--r--pkgs/tools/package-management/pacman/default.nix5
-rw-r--r--pkgs/tools/security/aws-okta/default.nix2
-rw-r--r--pkgs/tools/security/duo-unix/default.nix4
-rw-r--r--pkgs/tools/security/lynis/default.nix4
-rw-r--r--pkgs/tools/security/masscan/default.nix8
-rw-r--r--pkgs/tools/security/monkeysphere/default.nix57
-rw-r--r--pkgs/tools/security/monkeysphere/monkeysphere.patch100
-rw-r--r--pkgs/tools/security/sops/default.nix6
-rw-r--r--pkgs/tools/security/tor/default.nix4
-rw-r--r--pkgs/tools/security/vault/default.nix4
-rw-r--r--pkgs/tools/system/augeas/default.nix4
-rw-r--r--pkgs/tools/system/dd_rescue/default.nix7
-rw-r--r--pkgs/tools/system/localtime/default.nix7
-rw-r--r--pkgs/tools/system/s6-rc/default.nix42
-rw-r--r--pkgs/tools/system/s6/default.nix43
-rw-r--r--pkgs/tools/system/sg3_utils/default.nix6
-rw-r--r--pkgs/tools/system/vbetool/default.nix1
-rw-r--r--pkgs/tools/text/ripgrep/default.nix15
-rw-r--r--pkgs/tools/text/vale/default.nix6
-rw-r--r--pkgs/tools/text/vale/deps.nix84
-rw-r--r--pkgs/tools/typesetting/pdf2htmlEX/default.nix1
-rw-r--r--pkgs/tools/typesetting/scdoc/default.nix6
-rw-r--r--pkgs/tools/typesetting/tectonic/default.nix6
-rw-r--r--pkgs/tools/typesetting/tex/texlive/combine.nix2
-rw-r--r--pkgs/tools/video/flvtool2/default.nix3
-rw-r--r--pkgs/tools/virtualization/euca2ools/default.nix2
-rw-r--r--pkgs/tools/virtualization/google-compute-engine/default.nix4
-rw-r--r--pkgs/top-level/aliases.nix6
-rw-r--r--pkgs/top-level/all-packages.nix355
-rw-r--r--pkgs/top-level/dotnet-packages.nix147
-rw-r--r--pkgs/top-level/emacs-packages.nix27
-rw-r--r--pkgs/top-level/make-tarball.nix6
-rw-r--r--pkgs/top-level/ocaml-packages.nix2
-rw-r--r--pkgs/top-level/perl-packages.nix90
-rw-r--r--pkgs/top-level/php-packages.nix12
-rw-r--r--pkgs/top-level/python-packages.nix304
-rw-r--r--pkgs/top-level/stage.nix16
1184 files changed, 58271 insertions, 25377 deletions
diff --git a/.version b/.version
index 770bde1f44b3..360de6347ae2 100644
--- a/.version
+++ b/.version
@@ -1 +1 @@
-18.09
+19.03
\ No newline at end of file
diff --git a/doc/configuration.xml b/doc/configuration.xml
index c91f38f30930..af74f3f9c01f 100644
--- a/doc/configuration.xml
+++ b/doc/configuration.xml
@@ -325,7 +325,7 @@
     };
   };
 }
-    </screen>
+</screen>
 
    <para>
     To install it into our environment, you can just run <literal>nix-env -iA
@@ -347,7 +347,7 @@
     };
   };
 }
-    </screen>
+</screen>
 
    <para>
     <literal>pathsToLink</literal> tells Nixpkgs to only link the paths listed
@@ -383,7 +383,7 @@
     };
   };
 }
-    </screen>
+</screen>
 
    <para>
     This provides us with some useful documentation for using our packages.
@@ -395,15 +395,15 @@
 {
   packageOverrides = pkgs: with pkgs; rec {
     myProfile = writeText "my-profile" ''
-export PATH=$HOME/.nix-profile/bin:/nix/var/nix/profiles/default/bin:/sbin:/bin:/usr/sbin:/usr/bin
-export MANPATH=$HOME/.nix-profile/share/man:/nix/var/nix/profiles/default/share/man:/usr/share/man
+      export PATH=$HOME/.nix-profile/bin:/nix/var/nix/profiles/default/bin:/sbin:/bin:/usr/sbin:/usr/bin
+      export MANPATH=$HOME/.nix-profile/share/man:/nix/var/nix/profiles/default/share/man:/usr/share/man
     '';
     myPackages = pkgs.buildEnv {
       name = "my-packages";
       paths = [
         (runCommand "profile" {} ''
-mkdir -p $out/etc/profile.d
-cp ${myProfile} $out/etc/profile.d/my-profile.sh
+          mkdir -p $out/etc/profile.d
+          cp ${myProfile} $out/etc/profile.d/my-profile.sh
         '')
         aspell
         bc
@@ -421,7 +421,7 @@ cp ${myProfile} $out/etc/profile.d/my-profile.sh
     };
   };
 }
-    </screen>
+</screen>
 
    <para>
     For this to work fully, you must also have this script sourced when you are
@@ -438,7 +438,7 @@ if [ -d $HOME/.nix-profile/etc/profile.d ]; then
     fi
   done
 fi
-    </screen>
+</screen>
 
    <para>
     Now just run <literal>source $HOME/.profile</literal> and you can starting
@@ -459,16 +459,16 @@ fi
 {
   packageOverrides = pkgs: with pkgs; rec {
     myProfile = writeText "my-profile" ''
-export PATH=$HOME/.nix-profile/bin:/nix/var/nix/profiles/default/bin:/sbin:/bin:/usr/sbin:/usr/bin
-export MANPATH=$HOME/.nix-profile/share/man:/nix/var/nix/profiles/default/share/man:/usr/share/man
-export INFOPATH=$HOME/.nix-profile/share/info:/nix/var/nix/profiles/default/share/info:/usr/share/info
+      export PATH=$HOME/.nix-profile/bin:/nix/var/nix/profiles/default/bin:/sbin:/bin:/usr/sbin:/usr/bin
+      export MANPATH=$HOME/.nix-profile/share/man:/nix/var/nix/profiles/default/share/man:/usr/share/man
+      export INFOPATH=$HOME/.nix-profile/share/info:/nix/var/nix/profiles/default/share/info:/usr/share/info
     '';
     myPackages = pkgs.buildEnv {
       name = "my-packages";
       paths = [
         (runCommand "profile" {} ''
-mkdir -p $out/etc/profile.d
-cp ${myProfile} $out/etc/profile.d/my-profile.sh
+          mkdir -p $out/etc/profile.d
+          cp ${myProfile} $out/etc/profile.d/my-profile.sh
         '')
         aspell
         bc
@@ -485,17 +485,17 @@ cp ${myProfile} $out/etc/profile.d/my-profile.sh
       pathsToLink = [ "/share/man" "/share/doc" "/share/info" "/bin" "/etc" ];
       extraOutputsToInstall = [ "man" "doc" "info" ];
       postBuild = ''
-          if [ -x $out/bin/install-info -a -w $out/share/info ]; then
-            shopt -s nullglob
-            for i in $out/share/info/*.info $out/share/info/*.info.gz; do
-                $out/bin/install-info $i $out/share/info/dir
-            done
-          fi
+        if [ -x $out/bin/install-info -a -w $out/share/info ]; then
+          shopt -s nullglob
+          for i in $out/share/info/*.info $out/share/info/*.info.gz; do
+              $out/bin/install-info $i $out/share/info/dir
+          done
+        fi
       '';
     };
   };
 }
-    </screen>
+</screen>
 
    <para>
     <literal>postBuild</literal> tells Nixpkgs to run a command after building
diff --git a/doc/cross-compilation.xml b/doc/cross-compilation.xml
index c7187d86d1b3..3b90596bcc2c 100644
--- a/doc/cross-compilation.xml
+++ b/doc/cross-compilation.xml
@@ -47,9 +47,13 @@
 
    <para>
     In Nixpkgs, these three platforms are defined as attribute sets under the
-    names <literal>buildPlatform</literal>, <literal>hostPlatform</literal>, and
-    <literal>targetPlatform</literal>. They are always defined as attributes in
-    the standard environment. That means one can access them like:
+    names <literal>buildPlatform</literal>, <literal>hostPlatform</literal>,
+    and <literal>targetPlatform</literal>. All three are always defined as
+    attributes in the standard environment, and at the top level. That means
+    one can get at them just like a dependency in a function that is imported
+    with <literal>callPackage</literal>:
+<programlisting>{ stdenv, buildPlatform, hostPlatform, fooDep, barDep, .. }: ...buildPlatform...</programlisting>
+    , or just off <varname>stdenv</varname>:
 <programlisting>{ stdenv, fooDep, barDep, .. }: ...stdenv.buildPlatform...</programlisting>
     .
    </para>
diff --git a/doc/functions.xml b/doc/functions.xml
index ec188e234543..3cfc6884bd26 100644
--- a/doc/functions.xml
+++ b/doc/functions.xml
@@ -1,7 +1,7 @@
 <chapter xmlns="http://docbook.org/ns/docbook"
-	 xmlns:xlink="http://www.w3.org/1999/xlink"
+         xmlns:xlink="http://www.w3.org/1999/xlink"
          xmlns:xi="http://www.w3.org/2001/XInclude"
-	 xml:id="chap-functions">
+         xml:id="chap-functions">
  <title>Functions reference</title>
  <para>
   The nixpkgs repository has several utility functions to manipulate Nix
@@ -31,12 +31,16 @@
    <para>
     Example usages:
 <programlisting>pkgs.foo.override { arg1 = val1; arg2 = val2; ... }</programlisting>
-<programlisting>import pkgs.path { overlays = [ (self: super: {
-    foo = super.foo.override { barSupport = true ; };
-  })]};</programlisting>
-<programlisting>mypkg = pkgs.callPackage ./mypkg.nix {
-    mydep = pkgs.mydep.override { ... };
-  }</programlisting>
+<programlisting>
+import pkgs.path { overlays = [ (self: super: {
+  foo = super.foo.override { barSupport = true ; };
+  })]};
+</programlisting>
+<programlisting>
+mypkg = pkgs.callPackage ./mypkg.nix {
+  mydep = pkgs.mydep.override { ... };
+  }
+</programlisting>
    </para>
 
    <para>
@@ -61,9 +65,11 @@
 
    <para>
     Example usage:
-<programlisting>helloWithDebug = pkgs.hello.overrideAttrs (oldAttrs: rec {
-    separateDebugInfo = true;
-  });</programlisting>
+<programlisting>
+helloWithDebug = pkgs.hello.overrideAttrs (oldAttrs: rec {
+  separateDebugInfo = true;
+});
+</programlisting>
    </para>
 
    <para>
@@ -134,14 +140,16 @@
 
    <para>
     Example usage:
-<programlisting>mySed = pkgs.gnused.overrideDerivation (oldAttrs: {
-    name = "sed-4.2.2-pre";
-    src = fetchurl {
-      url = ftp://alpha.gnu.org/gnu/sed/sed-4.2.2-pre.tar.bz2;
-      sha256 = "11nq06d131y4wmf3drm0yk502d2xc6n5qy82cg88rb9nqd2lj41k";
-    };
-    patches = [];
-  });</programlisting>
+<programlisting>
+mySed = pkgs.gnused.overrideDerivation (oldAttrs: {
+  name = "sed-4.2.2-pre";
+  src = fetchurl {
+    url = ftp://alpha.gnu.org/gnu/sed/sed-4.2.2-pre.tar.bz2;
+    sha256 = "11nq06d131y4wmf3drm0yk502d2xc6n5qy82cg88rb9nqd2lj41k";
+  };
+  patches = [];
+});
+</programlisting>
    </para>
 
    <para>
@@ -181,8 +189,10 @@
 
    <para>
     Example usage:
-<programlisting>f = { a, b }: { result = a+b; }
-  c = lib.makeOverridable f { a = 1; b = 2; }</programlisting>
+<programlisting>
+f = { a, b }: { result = a+b; };
+c = lib.makeOverridable f { a = 1; b = 2; };
+</programlisting>
    </para>
 
    <para>
@@ -482,29 +492,29 @@ merge:"diff3"
    <example xml:id='ex-dockerTools-buildImage'>
     <title>Docker build</title>
 <programlisting>
-  buildImage {
-    name = "redis"; <co xml:id='ex-dockerTools-buildImage-1' />
-    tag = "latest"; <co xml:id='ex-dockerTools-buildImage-2' />
-
-    fromImage = someBaseImage; <co xml:id='ex-dockerTools-buildImage-3' />
-    fromImageName = null; <co xml:id='ex-dockerTools-buildImage-4' />
-    fromImageTag = "latest"; <co xml:id='ex-dockerTools-buildImage-5' />
-
-    contents = pkgs.redis; <co xml:id='ex-dockerTools-buildImage-6' />
-    runAsRoot = '' <co xml:id='ex-dockerTools-buildImage-runAsRoot' />
-      #!${stdenv.shell}
-      mkdir -p /data
-    '';
-
-    config = { <co xml:id='ex-dockerTools-buildImage-8' />
-      Cmd = [ "/bin/redis-server" ];
-      WorkingDir = "/data";
-      Volumes = {
-        "/data" = {};
-      };
+buildImage {
+  name = "redis"; <co xml:id='ex-dockerTools-buildImage-1' />
+  tag = "latest"; <co xml:id='ex-dockerTools-buildImage-2' />
+
+  fromImage = someBaseImage; <co xml:id='ex-dockerTools-buildImage-3' />
+  fromImageName = null; <co xml:id='ex-dockerTools-buildImage-4' />
+  fromImageTag = "latest"; <co xml:id='ex-dockerTools-buildImage-5' />
+
+  contents = pkgs.redis; <co xml:id='ex-dockerTools-buildImage-6' />
+  runAsRoot = '' <co xml:id='ex-dockerTools-buildImage-runAsRoot' />
+    #!${stdenv.shell}
+    mkdir -p /data
+  '';
+
+  config = { <co xml:id='ex-dockerTools-buildImage-8' />
+    Cmd = [ "/bin/redis-server" ];
+    WorkingDir = "/data";
+    Volumes = {
+      "/data" = {};
     };
-  }
-  </programlisting>
+  };
+}
+</programlisting>
    </example>
 
    <para>
@@ -647,15 +657,15 @@ merge:"diff3"
    <example xml:id='ex-dockerTools-pullImage'>
     <title>Docker pull</title>
 <programlisting>
-  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' />
-  }
-  </programlisting>
+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' />
+}
+</programlisting>
    </example>
 
    <calloutlist>
@@ -677,9 +687,9 @@ merge:"diff3"
       exactly which image you want. By default it will match the OS and
       architecture of the host the command is run on.
 <programlisting>
-  $ nix-shell --packages skopeo jq --command "skopeo --override-os linux --override-arch x86_64 inspect docker://docker.io/nixos/nix:1.11 | jq -r '.Digest'"
-  sha256:20d9485b25ecfd89204e843a962c1bd70e9cc6858d65d7f5fadc340246e2116b
-  </programlisting>
+$ nix-shell --packages skopeo jq --command "skopeo --override-os linux --override-arch x86_64 inspect docker://docker.io/nixos/nix:1.11 | jq -r '.Digest'"
+sha256:20d9485b25ecfd89204e843a962c1bd70e9cc6858d65d7f5fadc340246e2116b
+</programlisting>
       This argument is required.
      </para>
     </callout>
@@ -737,13 +747,13 @@ merge:"diff3"
    <example xml:id='ex-dockerTools-exportImage'>
     <title>Docker export</title>
 <programlisting>
-  exportImage {
-    fromImage = someLayeredImage;
-    fromImageName = null;
-    fromImageTag = null;
+exportImage {
+  fromImage = someLayeredImage;
+  fromImageName = null;
+  fromImageTag = null;
 
-    name = someLayeredImage.name;
-  }
+  name = someLayeredImage.name;
+}
   </programlisting>
    </example>
 
@@ -774,19 +784,19 @@ merge:"diff3"
    <example xml:id='ex-dockerTools-shadowSetup'>
     <title>Shadow base files</title>
 <programlisting>
-  buildImage {
-    name = "shadow-basic";
-
-    runAsRoot = ''
-      #!${stdenv.shell}
-      ${shadowSetup}
-      groupadd -r redis
-      useradd -r -g redis redis
-      mkdir /data
-      chown redis:redis /data
-    '';
-  }
-  </programlisting>
+buildImage {
+  name = "shadow-basic";
+
+  runAsRoot = ''
+    #!${stdenv.shell}
+    ${shadowSetup}
+    groupadd -r redis
+    useradd -r -g redis redis
+    mkdir /data
+    chown redis:redis /data
+  '';
+}
+</programlisting>
    </example>
 
    <para>
diff --git a/doc/languages-frameworks/rust.section.md b/doc/languages-frameworks/rust.section.md
index 6588281878a0..4549bbd1686b 100644
--- a/doc/languages-frameworks/rust.section.md
+++ b/doc/languages-frameworks/rust.section.md
@@ -64,9 +64,6 @@ When the `Cargo.lock`, provided by upstream, is not in sync with the
 added in `cargoPatches` will also be prepended to the patches in `patches` at
 build-time.
 
-To install crates with nix there is also an experimental project called
-[nixcrates](https://github.com/fractalide/nixcrates).
-
 ## Compiling Rust crates using Nix instead of Cargo
 
 ### Simple operation
diff --git a/doc/languages-frameworks/vim.section.md b/doc/languages-frameworks/vim.section.md
index 1d6a4fe8da8d..f0a6559c3d51 100644
--- a/doc/languages-frameworks/vim.section.md
+++ b/doc/languages-frameworks/vim.section.md
@@ -5,11 +5,16 @@ date: 2016-06-25
 ---
 # User's Guide to Vim Plugins/Addons/Bundles/Scripts in Nixpkgs
 
-You'll get a vim(-your-suffix) in PATH also loading the plugins you want.
+Both Neovim and Vim can be configured to include your favorite plugins
+and additional libraries.
+
 Loading can be deferred; see examples.
 
-Vim packages, VAM (=vim-addon-manager) and Pathogen are supported to load
-packages.
+At the moment we support three different methods for managing plugins:
+
+- Vim packages (*recommend*)
+- VAM (=vim-addon-manager)
+- Pathogen
 
 ## Custom configuration
 
@@ -25,7 +30,19 @@ vim_configurable.customize {
 }
 ```
 
-## Vim packages
+For Neovim the `configure` argument can be overridden to achieve the same:
+
+```
+neovim.override {
+  configure = {
+    customRC = ''
+      # here your custom configuration goes!
+    '';
+  };
+}
+```
+
+## Managing plugins with Vim packages
 
 To store you plugins in Vim packages the following example can be used:
 
@@ -38,13 +55,50 @@ vim_configurable.customize {
     opt = [ phpCompletion elm-vim ];
     # To automatically load a plugin when opening a filetype, add vimrc lines like:
     # autocmd FileType php :packadd phpCompletion
-  }
-};
+  };
+}
 ```
 
-## VAM
+For Neovim the syntax is
+
+```
+neovim.override {
+  configure = {
+    customRC = ''
+      # here your custom configuration goes!
+    '';
+    packages.myVimPackage = with pkgs.vimPlugins; {
+      # see examples below how to use custom packages
+      start = [ ];
+      opt = [ ];
+    };
+  };
+}
+```
 
-### dependencies by Vim plugins
+The resulting package can be added to `packageOverrides` in `~/.nixpkgs/config.nix` to make it installable:
+
+```
+{
+  packageOverrides = pkgs: with pkgs; {
+    myVim = vim_configurable.customize {
+      name = "vim-with-plugins";
+      # add here code from the example section
+    };
+    myNeovim = neovim.override {
+      configure = {
+      # add here code from the example section
+      };
+    };
+  };
+}
+```
+
+After that you can install your special grafted `myVim` or `myNeovim` packages.
+
+## Managing plugins with VAM
+
+### Handling dependencies of Vim plugins
 
 VAM introduced .json files supporting dependencies without versioning
 assuming that "using latest version" is ok most of the time.
@@ -125,6 +179,18 @@ Sample output2:
     ]
 
 
+## Adding new plugins to nixpkgs
+
+In `pkgs/misc/vim-plugins/vim-plugin-names` we store the plugin names
+for all vim plugins we automatically generate plugins for.
+The format of this file `github username/github repository`:
+For example https://github.com/scrooloose/nerdtree becomes `scrooloose/nerdtree`.
+After adding your plugin to this file run the `./update.py` in the same folder.
+This will updated a file called `generated.nix` and make your plugin accessible in the
+`vimPlugins` attribute set (`vimPlugins.nerdtree` in our example).
+If additional steps to the build process of the plugin are required, add an
+override to the `pkgs/misc/vim-plugins/default.nix` in the same directory.
+
 ## Important repositories
 
 - [vim-pi](https://bitbucket.org/vimcommunity/vim-pi) is a plugin repository
diff --git a/doc/package-notes.xml b/doc/package-notes.xml
index c2aef8937b06..1f088e8aaa0e 100644
--- a/doc/package-notes.xml
+++ b/doc/package-notes.xml
@@ -671,6 +671,8 @@ overrides = super: self: rec {
     plugins = with availablePlugins; [ python perl ];
   }
 }</programlisting>
+    If the <literal>configure</literal> function returns an attrset without the <literal>plugins</literal>
+    attribute, <literal>availablePlugins</literal> will be used automatically.
   </para>
 
   <para>
@@ -704,6 +706,55 @@ overrides = super: self: rec {
 }; }
 </programlisting>
   </para>
+  <para>
+    WeeChat allows to set defaults on startup using the <literal>--run-command</literal>.
+    The <literal>configure</literal> method can be used to pass commands to the program:
+<programlisting>weechat.override {
+  configure = { availablePlugins, ... }: {
+    init = ''
+      /set foo bar
+      /server add freenode chat.freenode.org
+    '';
+  };
+}</programlisting>
+    Further values can be added to the list of commands when running
+    <literal>weechat --run-command "your-commands"</literal>.
+  </para>
+  <para>
+    Additionally it's possible to specify scripts to be loaded when starting <literal>weechat</literal>.
+    These will be loaded before the commands from <literal>init</literal>:
+<programlisting>weechat.override {
+  configure = { availablePlugins, ... }: {
+    scripts = with pkgs.weechatScripts; [
+      weechat-xmpp weechat-matrix-bridge wee-slack
+    ];
+    init = ''
+      /set plugins.var.python.jabber.key "val"
+    '':
+  };
+}</programlisting>
+  </para>
+  <para>
+    In <literal>nixpkgs</literal> there's a subpackage which contains derivations for
+    WeeChat scripts. Such derivations expect a <literal>passthru.scripts</literal> attribute
+    which contains a list of all scripts inside the store path. Furthermore all scripts
+    have to live in <literal>$out/share</literal>. An exemplary derivation looks like this:
+<programlisting>{ stdenv, fetchurl }:
+
+stdenv.mkDerivation {
+  name = "exemplary-weechat-script";
+  src = fetchurl {
+    url = "https://scripts.tld/your-scripts.tar.gz";
+    sha256 = "...";
+  };
+  passthru.scripts = [ "foo.py" "bar.lua" ];
+  installPhase = ''
+    mkdir $out/share
+    cp foo.py $out/share
+    cp bar.lua $out/share
+  '';
+}</programlisting>
+  </para>
  </section>
  <section xml:id="sec-citrix">
   <title>Citrix Receiver</title>
diff --git a/lib/asserts.nix b/lib/asserts.nix
new file mode 100644
index 000000000000..8a5f1fb3feb7
--- /dev/null
+++ b/lib/asserts.nix
@@ -0,0 +1,44 @@
+{ lib }:
+
+rec {
+
+  /* Print a trace message if pred is false.
+     Intended to be used to augment asserts with helpful error messages.
+
+     Example:
+       assertMsg false "nope"
+       => false
+       stderr> trace: nope
+
+       assert (assertMsg ("foo" == "bar") "foo is not bar, silly"); ""
+       stderr> trace: foo is not bar, silly
+       stderr> assert failed at …
+
+     Type:
+       assertMsg :: Bool -> String -> Bool
+  */
+  # TODO(Profpatsch): add tests that check stderr
+  assertMsg = pred: msg:
+    if pred
+    then true
+    else builtins.trace msg false;
+
+  /* Specialized `assertMsg` for checking if val is one of the elements
+     of a list. Useful for checking enums.
+
+     Example:
+       let sslLibrary = "libressl"
+       in assertOneOf "sslLibrary" sslLibrary [ "openssl" "bearssl" ]
+       => false
+       stderr> trace: sslLibrary must be one of "openssl", "bearssl", but is: "libressl"
+
+     Type:
+       assertOneOf :: String -> ComparableVal -> List ComparableVal -> Bool
+  */
+  assertOneOf = name: val: xs: assertMsg
+    (lib.elem val xs)
+    "${name} must be one of ${
+      lib.generators.toPretty {} xs}, but is: ${
+        lib.generators.toPretty {} val}";
+
+}
diff --git a/lib/default.nix b/lib/default.nix
index dd6fcec75e21..d7a05fec8338 100644
--- a/lib/default.nix
+++ b/lib/default.nix
@@ -38,10 +38,11 @@ let
     systems = callLibs ./systems;
 
     # misc
+    asserts = callLibs ./asserts.nix;
     debug = callLibs ./debug.nix;
-
     generators = callLibs ./generators.nix;
     misc = callLibs ./deprecated.nix;
+
     # domain-specific
     fetchers = callLibs ./fetchers.nix;
 
@@ -60,7 +61,6 @@ let
       boolToString mergeAttrs flip mapNullable inNixShell min max
       importJSON warn info nixpkgsVersion version mod compare
       splitByAndCompare functionArgs setFunctionArgs isFunction;
-
     inherit (fixedPoints) fix fix' extends composeExtensions
       makeExtensible makeExtensibleWithCustomName;
     inherit (attrsets) attrByPath hasAttrByPath setAttrByPath
@@ -117,6 +117,8 @@ let
       unknownModule mkOption;
     inherit (types) isType setType defaultTypeMerge defaultFunctor
       isOptionType mkOptionType;
+    inherit (asserts)
+      assertMsg assertOneOf;
     inherit (debug) addErrorContextToAttrs traceIf traceVal traceValFn
       traceXMLVal traceXMLValMarked traceSeq traceSeqN traceValSeq
       traceValSeqFn traceValSeqN traceValSeqNFn traceShowVal
diff --git a/lib/licenses.nix b/lib/licenses.nix
index c442d74c857c..c4db280645a4 100644
--- a/lib/licenses.nix
+++ b/lib/licenses.nix
@@ -355,6 +355,11 @@ lib.mapAttrs (n: v: v // { shortName = n; }) rec {
     fullName = "Independent JPEG Group License";
   };
 
+  imagemagick = spdx {
+    fullName = "ImageMagick License";
+    spdxId = "imagemagick";
+  };
+
   inria-compcert = {
     fullName  = "INRIA Non-Commercial License Agreement for the CompCert verified compiler";
     url       = "http://compcert.inria.fr/doc/LICENSE";
@@ -546,6 +551,11 @@ lib.mapAttrs (n: v: v // { shortName = n; }) rec {
     fullName = "Public Domain";
   };
 
+  purdueBsd = {
+    fullName = " Purdue BSD-Style License"; # also know as lsof license
+    url = https://enterprise.dejacode.com/licenses/public/purdue-bsd;
+  };
+
   qpl = spdx {
     spdxId = "QPL-1.0";
     fullName = "Q Public License 1.0";
diff --git a/lib/lists.nix b/lib/lists.nix
index 288882924fff..9ecd8f220038 100644
--- a/lib/lists.nix
+++ b/lib/lists.nix
@@ -509,7 +509,8 @@ rec {
        => 3
   */
   last = list:
-    assert list != []; elemAt list (length list - 1);
+    assert lib.assertMsg (list != []) "lists.last: list must not be empty!";
+    elemAt list (length list - 1);
 
   /* Return all elements but the last
 
@@ -517,7 +518,9 @@ rec {
        init [ 1 2 3 ]
        => [ 1 2 ]
   */
-  init = list: assert list != []; take (length list - 1) list;
+  init = list:
+    assert lib.assertMsg (list != []) "lists.init: list must not be empty!";
+    take (length list - 1) list;
 
 
   /* return the image of the cross product of some lists by a function
diff --git a/lib/strings.nix b/lib/strings.nix
index af932ce6ecff..0c4095bb55cd 100644
--- a/lib/strings.nix
+++ b/lib/strings.nix
@@ -410,7 +410,7 @@ rec {
       components = splitString "/" url;
       filename = lib.last components;
       name = builtins.head (splitString sep filename);
-    in assert name !=  filename; name;
+    in assert name != filename; name;
 
   /* Create an --{enable,disable}-<feat> string that can be passed to
      standard GNU Autoconf scripts.
@@ -468,7 +468,10 @@ rec {
       strw = lib.stringLength str;
       reqWidth = width - (lib.stringLength filler);
     in
-      assert strw <= width;
+      assert lib.assertMsg (strw <= width)
+        "fixedWidthString: requested string length (${
+          toString width}) must not be shorter than actual length (${
+            toString strw})";
       if strw == width then str else filler + fixedWidthString reqWidth filler str;
 
   /* Format a number adding leading zeroes up to fixed width.
@@ -501,7 +504,7 @@ rec {
   isStorePath = x:
        isCoercibleToString x
     && builtins.substring 0 1 (toString x) == "/"
-    && dirOf (builtins.toPath x) == builtins.storeDir;
+    && dirOf x == builtins.storeDir;
 
   /* Convert string to int
      Obviously, it is a bit hacky to use fromJSON that way.
@@ -537,11 +540,10 @@ rec {
   */
   readPathsFromFile = rootPath: file:
     let
-      root = toString rootPath;
       lines = lib.splitString "\n" (builtins.readFile file);
       removeComments = lib.filter (line: line != "" && !(lib.hasPrefix "#" line));
       relativePaths = removeComments lines;
-      absolutePaths = builtins.map (path: builtins.toPath (root + "/" + path)) relativePaths;
+      absolutePaths = builtins.map (path: rootPath + "/${path}") relativePaths;
     in
       absolutePaths;
 
diff --git a/lib/tests/check-eval.nix b/lib/tests/check-eval.nix
new file mode 100644
index 000000000000..8bd7b605a39b
--- /dev/null
+++ b/lib/tests/check-eval.nix
@@ -0,0 +1,7 @@
+# Throws an error if any of our lib tests fail.
+
+let tests = [ "misc" "systems" ];
+    all = builtins.concatLists (map (f: import (./. + "/${f}.nix")) tests);
+in if all == []
+     then null
+   else throw (builtins.toJSON all)
diff --git a/lib/tests/misc.nix b/lib/tests/misc.nix
index cf99aca58c09..d3bd7746d89c 100644
--- a/lib/tests/misc.nix
+++ b/lib/tests/misc.nix
@@ -112,7 +112,7 @@ runTests {
         storePathAppendix = isStorePath
           "${goodPath}/bin/python";
         nonAbsolute = isStorePath (concatStrings (tail (stringToCharacters goodPath)));
-        asPath = isStorePath (builtins.toPath goodPath);
+        asPath = isStorePath goodPath;
         otherPath = isStorePath "/something/else";
         otherVals = {
           attrset = isStorePath {};
@@ -357,7 +357,7 @@ runTests {
       int = 42;
       bool = true;
       string = ''fno"rd'';
-      path = /. + "/foo"; # toPath returns a string
+      path = /. + "/foo";
       null_ = null;
       function = x: x;
       functionArgs = { arg ? 4, foo }: arg;
diff --git a/lib/trivial.nix b/lib/trivial.nix
index b75e81eb7352..b1eea0bf1247 100644
--- a/lib/trivial.nix
+++ b/lib/trivial.nix
@@ -36,18 +36,18 @@ rec {
 
   /* bitwise “and” */
   bitAnd = builtins.bitAnd
-    or import ./zip-int-bits.nix
-      (a: b: if a==1 && b==1 then 1 else 0);
+    or (import ./zip-int-bits.nix
+        (a: b: if a==1 && b==1 then 1 else 0));
 
   /* bitwise “or” */
   bitOr = builtins.bitOr
-    or import ./zip-int-bits.nix
-      (a: b: if a==1 || b==1 then 1 else 0);
+    or (import ./zip-int-bits.nix
+        (a: b: if a==1 || b==1 then 1 else 0));
 
   /* bitwise “xor” */
   bitXor = builtins.bitXor
-    or import ./zip-int-bits.nix
-      (a: b: if a!=b then 1 else 0);
+    or (import ./zip-int-bits.nix
+        (a: b: if a!=b then 1 else 0));
 
   /* bitwise “not” */
   bitNot = builtins.sub (-1);
@@ -171,7 +171,7 @@ rec {
     builtins.fromJSON (builtins.readFile path);
 
 
-  ## Warnings and asserts
+  ## Warnings
 
   /* See https://github.com/NixOS/nix/issues/749. Eventually we'd like these
      to expand to Nix builtins that carry metadata so that Nix can filter out
diff --git a/lib/types.nix b/lib/types.nix
index 4d6ac51c8988..4e44e7521c4b 100644
--- a/lib/types.nix
+++ b/lib/types.nix
@@ -119,7 +119,9 @@ rec {
       let
         betweenDesc = lowest: highest:
           "${toString lowest} and ${toString highest} (both inclusive)";
-        between = lowest: highest: assert lowest <= highest;
+        between = lowest: highest:
+          assert lib.assertMsg (lowest <= highest)
+            "ints.between: lowest must be smaller than highest";
           addCheck int (x: x >= lowest && x <= highest) // {
             name = "intBetween";
             description = "integer between ${betweenDesc lowest highest}";
@@ -439,7 +441,9 @@ rec {
     # Either value of type `finalType` or `coercedType`, the latter is
     # converted to `finalType` using `coerceFunc`.
     coercedTo = coercedType: coerceFunc: finalType:
-      assert coercedType.getSubModules == null;
+      assert lib.assertMsg (coercedType.getSubModules == null)
+        "coercedTo: coercedType must not have submodules (it’s a ${
+          coercedType.description})";
       mkOptionType rec {
         name = "coercedTo";
         description = "${finalType.description} or ${coercedType.description} convertible to it";
diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix
index 6356c0c7cefe..566414bf4439 100644
--- a/maintainers/maintainer-list.nix
+++ b/maintainers/maintainer-list.nix
@@ -227,7 +227,7 @@
     name = "Andrew Morsillo";
   };
   AndersonTorres = {
-    email = "torres.anderson.85@gmail.com";
+    email = "torres.anderson.85@protonmail.com";
     github = "AndersonTorres";
     name = "Anderson Torres";
   };
@@ -1847,6 +1847,11 @@
     github = "jerith666";
     name = "Matt McHenry";
   };
+  jethro = {
+    email = "jethrokuan95@gmail.com";
+    github = "jethrokuan";
+    name = "Jethro Kuan";
+  };
   jfb = {
     email = "james@yamtime.com";
     github = "tftio";
@@ -3396,6 +3401,11 @@
     github = "relrod";
     name = "Ricky Elrod";
   };
+  renatoGarcia = {
+    email = "fgarcia.renato@gmail.com";
+    github = "renatoGarcia";
+    name = "Renato Garcia";
+  };
   renzo = {
     email = "renzocarbonara@gmail.com";
     github = "k0001";
@@ -3888,6 +3898,11 @@
     github = "StillerHarpo";
     name = "Florian Engel";
   };
+  stites = {
+    email = "sam@stites.io";
+    github = "stites";
+    name = "Sam Stites";
+  };
   stumoss = {
     email = "samoss@gmail.com";
     github = "stumoss";
@@ -4153,6 +4168,11 @@
     github = "tomsmeets";
     name = "Tom Smeets";
   };
+  toonn = {
+    email = "nnoot@toonn.io";
+    github = "toonn";
+    name = "Toon Nolten";
+  };
   travisbhartwell = {
     email = "nafai@travishartwell.net";
     github = "travisbhartwell";
@@ -4508,6 +4528,11 @@
     github = "y0no";
     name = "Yoann Ono";
   };
+  yarny = {
+    email = "41838844+Yarny0@users.noreply.github.com";
+    github = "Yarny0";
+    name = "Yarny";
+  };
   yarr = {
     email = "savraz@gmail.com";
     github = "Eternity-Yarr";
diff --git a/nixos/doc/manual/default.nix b/nixos/doc/manual/default.nix
index be28c2c17afd..aaa6e0da545f 100644
--- a/nixos/doc/manual/default.nix
+++ b/nixos/doc/manual/default.nix
@@ -90,7 +90,9 @@ let
     fi
     ${buildPackages.libxslt.bin}/bin/xsltproc \
       --stringparam revision '${revision}' \
-      -o $out ${./options-to-docbook.xsl} $optionsXML
+      -o intermediate.xml ${./options-to-docbook.xsl} $optionsXML
+    ${buildPackages.libxslt.bin}/bin/xsltproc \
+      -o "$out" ${./postprocess-option-descriptions.xsl} intermediate.xml
   '';
 
   sources = lib.sourceFilesBySuffices ./. [".xml"];
diff --git a/nixos/doc/manual/development/running-nixos-tests-interactively.xml b/nixos/doc/manual/development/running-nixos-tests-interactively.xml
index 862b364a6d79..b25d3dcb9116 100644
--- a/nixos/doc/manual/development/running-nixos-tests-interactively.xml
+++ b/nixos/doc/manual/development/running-nixos-tests-interactively.xml
@@ -19,6 +19,7 @@ starting VDE switch for network 1
 &gt; startAll
 &gt; testScript
 &gt; $machine->succeed("touch /tmp/foo")
+&gt; print($machine->succeed("pwd"), "\n") # Show stdout of command
 </screen>
   The function <command>testScript</command> executes the entire test script
   and drops you back into the test driver command line upon its completion.
@@ -33,8 +34,11 @@ $ nix-build nixos/tests/login.nix -A driver
 $ ./result/bin/nixos-run-vms
 </screen>
   The script <command>nixos-run-vms</command> starts the virtual machines
-  defined by test. The root file system of the VMs is created on the fly and
-  kept across VM restarts in
-  <filename>./</filename><varname>hostname</varname><filename>.qcow2</filename>.
+  defined by test.
+ </para>
+
+ <para>
+  The machine state is kept across VM restarts in
+  <filename>/tmp/vm-state-</filename><varname>machinename</varname>.
  </para>
 </section>
diff --git a/nixos/doc/manual/development/writing-nixos-tests.xml b/nixos/doc/manual/development/writing-nixos-tests.xml
index 5935fbc049bd..983f8f9cbe3e 100644
--- a/nixos/doc/manual/development/writing-nixos-tests.xml
+++ b/nixos/doc/manual/development/writing-nixos-tests.xml
@@ -108,7 +108,7 @@ xlink:href="https://github.com/NixOS/nixpkgs/blob/master/nixos/modules/virtualis
 <programlisting>
 $machine->start;
 $machine->waitForUnit("default.target");
-$machine->succeed("uname") =~ /Linux/;
+die unless $machine->succeed("uname") =~ /Linux/;
 </programlisting>
   The first line is actually unnecessary; machines are implicitly started when
   you first execute an action on them (such as <literal>waitForUnit</literal>
diff --git a/nixos/doc/manual/installation/upgrading.xml b/nixos/doc/manual/installation/upgrading.xml
index 85e5082575d3..69668b1d4bd6 100644
--- a/nixos/doc/manual/installation/upgrading.xml
+++ b/nixos/doc/manual/installation/upgrading.xml
@@ -52,10 +52,13 @@
    </listitem>
   </itemizedlist>
   To see what channels are available, go to
-  <link
-xlink:href="https://nixos.org/channels"/>. (Note that the URIs of the
+  <link xlink:href="https://nixos.org/channels"/>. (Note that the URIs of the
   various channels redirect to a directory that contains the channel’s latest
-  version and includes ISO images and VirtualBox appliances.)
+  version and includes ISO images and VirtualBox appliances.) Please note that
+  during the release process, channels that are not yet released will be
+  present here as well. See the Getting NixOS page
+  <link xlink:href="https://nixos.org/nixos/download.html"/> to find the newest
+  supported stable release.
  </para>
  <para>
   When you first install NixOS, you’re automatically subscribed to the NixOS
diff --git a/nixos/doc/manual/options-to-docbook.xsl b/nixos/doc/manual/options-to-docbook.xsl
index 2038b0dff63e..72ac89d4ff62 100644
--- a/nixos/doc/manual/options-to-docbook.xsl
+++ b/nixos/doc/manual/options-to-docbook.xsl
@@ -4,6 +4,7 @@
                 xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
                 xmlns:str="http://exslt.org/strings"
                 xmlns:xlink="http://www.w3.org/1999/xlink"
+                xmlns:nixos="tag:nixos.org"
                 xmlns="http://docbook.org/ns/docbook"
                 extension-element-prefixes="str"
                 >
@@ -30,10 +31,12 @@
 
             <listitem>
 
-              <para>
-                <xsl:value-of disable-output-escaping="yes"
-                              select="attr[@name = 'description']/string/@value" />
-              </para>
+              <nixos:option-description>
+                <para>
+                  <xsl:value-of disable-output-escaping="yes"
+                                select="attr[@name = 'description']/string/@value" />
+                </para>
+              </nixos:option-description>
 
               <xsl:if test="attr[@name = 'type']">
                 <para>
diff --git a/nixos/doc/manual/postprocess-option-descriptions.xsl b/nixos/doc/manual/postprocess-option-descriptions.xsl
new file mode 100644
index 000000000000..1201c7612c2e
--- /dev/null
+++ b/nixos/doc/manual/postprocess-option-descriptions.xsl
@@ -0,0 +1,115 @@
+<?xml version="1.0"?>
+
+<xsl:stylesheet version="1.0"
+                xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+                xmlns:str="http://exslt.org/strings"
+                xmlns:exsl="http://exslt.org/common"
+                xmlns:db="http://docbook.org/ns/docbook"
+                xmlns:nixos="tag:nixos.org"
+                extension-element-prefixes="str exsl">
+  <xsl:output method='xml' encoding="UTF-8" />
+
+  <xsl:template match="@*|node()">
+    <xsl:copy>
+      <xsl:apply-templates select="@*|node()" />
+    </xsl:copy>
+  </xsl:template>
+
+  <xsl:template name="break-up-description">
+    <xsl:param name="input" />
+    <xsl:param name="buffer" />
+
+    <!-- Every time we have two newlines following each other, we want to
+         break it into </para><para>. -->
+    <xsl:variable name="parbreak" select="'&#xa;&#xa;'" />
+
+    <!-- Similar to "(head:tail) = input" in Haskell. -->
+    <xsl:variable name="head" select="$input[1]" />
+    <xsl:variable name="tail" select="$input[position() &gt; 1]" />
+
+    <xsl:choose>
+      <xsl:when test="$head/self::text() and contains($head, $parbreak)">
+        <!-- If the haystack provided to str:split() directly starts or
+             ends with $parbreak, it doesn't generate a <token/> for that,
+             so we are doing this here. -->
+        <xsl:variable name="splitted-raw">
+          <xsl:if test="starts-with($head, $parbreak)"><token /></xsl:if>
+          <xsl:for-each select="str:split($head, $parbreak)">
+            <token><xsl:value-of select="node()" /></token>
+          </xsl:for-each>
+          <!-- Something like ends-with($head, $parbreak), but there is
+               no ends-with() in XSLT, so we need to use substring(). -->
+          <xsl:if test="
+            substring($head, string-length($head) -
+                             string-length($parbreak) + 1) = $parbreak
+          "><token /></xsl:if>
+        </xsl:variable>
+        <xsl:variable name="splitted"
+                      select="exsl:node-set($splitted-raw)/token" />
+        <!-- The buffer we had so far didn't contain any text nodes that
+             contain a $parbreak, so we can put the buffer along with the
+             first token of $splitted into a para element. -->
+        <para xmlns="http://docbook.org/ns/docbook">
+          <xsl:apply-templates select="exsl:node-set($buffer)" />
+          <xsl:apply-templates select="$splitted[1]/node()" />
+        </para>
+        <!-- We have already emitted the first splitted result, so the
+             last result is going to be set as the new $buffer later
+             because its contents may not be directly followed up by a
+             $parbreak. -->
+        <xsl:for-each select="$splitted[position() &gt; 1
+                              and position() &lt; last()]">
+          <para xmlns="http://docbook.org/ns/docbook">
+            <xsl:apply-templates select="node()" />
+          </para>
+        </xsl:for-each>
+        <xsl:call-template name="break-up-description">
+          <xsl:with-param name="input" select="$tail" />
+          <xsl:with-param name="buffer" select="$splitted[last()]/node()" />
+        </xsl:call-template>
+      </xsl:when>
+      <!-- Either non-text node or one without $parbreak, which we just
+           want to buffer and continue recursing. -->
+      <xsl:when test="$input">
+        <xsl:call-template name="break-up-description">
+          <xsl:with-param name="input" select="$tail" />
+          <!-- This essentially appends $head to $buffer. -->
+          <xsl:with-param name="buffer">
+            <xsl:if test="$buffer">
+              <xsl:for-each select="exsl:node-set($buffer)">
+                <xsl:apply-templates select="." />
+              </xsl:for-each>
+            </xsl:if>
+            <xsl:apply-templates select="$head" />
+          </xsl:with-param>
+        </xsl:call-template>
+      </xsl:when>
+      <!-- No more $input, just put the remaining $buffer in a para. -->
+      <xsl:otherwise>
+        <para xmlns="http://docbook.org/ns/docbook">
+          <xsl:apply-templates select="exsl:node-set($buffer)" />
+        </para>
+      </xsl:otherwise>
+    </xsl:choose>
+  </xsl:template>
+
+  <xsl:template match="nixos:option-description">
+    <xsl:choose>
+      <!--
+        Only process nodes that are comprised of a single <para/> element,
+        because if that's not the case the description already contains
+        </para><para> in between and we need no further processing.
+      -->
+      <xsl:when test="count(db:para) > 1">
+        <xsl:apply-templates select="node()" />
+      </xsl:when>
+      <xsl:otherwise>
+        <xsl:call-template name="break-up-description">
+          <xsl:with-param name="input"
+                          select="exsl:node-set(db:para/node())" />
+        </xsl:call-template>
+      </xsl:otherwise>
+    </xsl:choose>
+  </xsl:template>
+
+</xsl:stylesheet>
diff --git a/nixos/doc/manual/release-notes/release-notes.xml b/nixos/doc/manual/release-notes/release-notes.xml
index 94f176186b6e..a222bfa29d5a 100644
--- a/nixos/doc/manual/release-notes/release-notes.xml
+++ b/nixos/doc/manual/release-notes/release-notes.xml
@@ -8,6 +8,7 @@
   This section lists the release notes for each stable version of NixOS and
   current unstable revision.
  </para>
+ <xi:include href="rl-1903.xml" />
  <xi:include href="rl-1809.xml" />
  <xi:include href="rl-1803.xml" />
  <xi:include href="rl-1709.xml" />
diff --git a/nixos/doc/manual/release-notes/rl-1809.xml b/nixos/doc/manual/release-notes/rl-1809.xml
index be225f18c24e..9c8cd7c49c8d 100644
--- a/nixos/doc/manual/release-notes/rl-1809.xml
+++ b/nixos/doc/manual/release-notes/rl-1809.xml
@@ -452,6 +452,14 @@ inherit (pkgs.nixos {
     </para>
    </listitem>
    <listitem>
+     <para>
+     The Kubernetes package has been bumped to major version 1.11.
+     Please consult the
+     <link xlink:href="https://github.com/kubernetes/kubernetes/blob/release-1.11/CHANGELOG-1.11.md">release notes</link>
+     for details on new features and api changes.
+    </para>
+   </listitem>
+   <listitem>
     <para>
      The option
      <varname>services.kubernetes.apiserver.admissionControl</varname> was
@@ -536,6 +544,21 @@ inherit (pkgs.nixos {
       to <literal>true</literal>.
     </para>
   </listitem>
+  <listitem>
+    <para>
+      NixOS option descriptions are now automatically broken up into individual
+      paragraphs if the text contains two consecutive newlines, so it's no
+      longer necessary to use <code>&lt;/para&gt;&lt;para&gt;</code> to start
+      a new paragraph.
+    </para>
+  </listitem>
+  <listitem>
+    <para>
+      Top-level <literal>buildPlatform</literal>, <literal>hostPlatform</literal>, and <literal>targetPlatform</literal> in Nixpkgs are deprecated.
+      Please use their equivalents in <literal>stdenv</literal> instead:
+      <literal>stdenv.buildPlatform</literal>, <literal>stdenv.hostPlatform</literal>, and <literal>stdenv.targetPlatform</literal>.
+    </para>
+  </listitem>
   </itemizedlist>
  </section>
 </section>
diff --git a/nixos/doc/manual/release-notes/rl-1903.xml b/nixos/doc/manual/release-notes/rl-1903.xml
new file mode 100644
index 000000000000..9ae34dd58ab0
--- /dev/null
+++ b/nixos/doc/manual/release-notes/rl-1903.xml
@@ -0,0 +1,58 @@
+<section xmlns="http://docbook.org/ns/docbook"
+         xmlns:xlink="http://www.w3.org/1999/xlink"
+         xmlns:xi="http://www.w3.org/2001/XInclude"
+         version="5.0"
+         xml:id="sec-release-19.03">
+ <title>Release 19.03 (“Koi”, 2019/03/??)</title>
+
+ <section xmlns="http://docbook.org/ns/docbook"
+         xmlns:xlink="http://www.w3.org/1999/xlink"
+         xmlns:xi="http://www.w3.org/2001/XInclude"
+         version="5.0"
+         xml:id="sec-release-19.03-highlights">
+  <title>Highlights</title>
+
+  <para>
+   In addition to numerous new and upgraded packages, this release has the
+   following highlights:
+  </para>
+
+  <itemizedlist>
+   <listitem>
+    <para />
+   </listitem>
+  </itemizedlist>
+ </section>
+
+ <section xmlns="http://docbook.org/ns/docbook"
+         xmlns:xlink="http://www.w3.org/1999/xlink"
+         xmlns:xi="http://www.w3.org/2001/XInclude"
+         version="5.0"
+         xml:id="sec-release-19.03-new-services">
+  <title>New Services</title>
+
+  <para>
+   The following new services were added since the last release:
+  </para>
+
+  <itemizedlist>
+   <listitem>
+    <para />
+   </listitem>
+  </itemizedlist>
+ </section>
+
+ <section xmlns="http://docbook.org/ns/docbook"
+         xmlns:xlink="http://www.w3.org/1999/xlink"
+         xmlns:xi="http://www.w3.org/2001/XInclude"
+         version="5.0"
+         xml:id="sec-release-19.03-notable-changes">
+  <title>Other Notable Changes</title>
+
+  <itemizedlist>
+   <listitem>
+    <para />
+   </listitem>
+  </itemizedlist>
+ </section>
+</section>
diff --git a/nixos/lib/eval-config.nix b/nixos/lib/eval-config.nix
index ef685949ae1f..f71e264c3478 100644
--- a/nixos/lib/eval-config.nix
+++ b/nixos/lib/eval-config.nix
@@ -28,7 +28,7 @@
 
 let extraArgs_ = extraArgs; pkgs_ = pkgs;
     extraModules = let e = builtins.getEnv "NIXOS_EXTRA_MODULE_PATH";
-                   in if e == "" then [] else [(import (builtins.toPath e))];
+                   in if e == "" then [] else [(import e)];
 in
 
 let
diff --git a/nixos/modules/config/shells-environment.nix b/nixos/modules/config/shells-environment.nix
index 31adc9b82620..555db459f57a 100644
--- a/nixos/modules/config/shells-environment.nix
+++ b/nixos/modules/config/shells-environment.nix
@@ -163,15 +163,24 @@ in
         /bin/sh
       '';
 
+    # For resetting environment with `. /etc/set-environment` when needed
+    # and discoverability (see motivation of #30418).
+    environment.etc."set-environment".source = config.system.build.setEnvironment;
+
     system.build.setEnvironment = pkgs.writeText "set-environment"
-       ''
-         ${exportedEnvVars}
+      ''
+        # DO NOT EDIT -- this file has been generated automatically.
+
+        # Prevent this file from being sourced by child shells.
+        export __NIXOS_SET_ENVIRONMENT_DONE=1
 
-         ${cfg.extraInit}
+        ${exportedEnvVars}
 
-         # ~/bin if it exists overrides other bin directories.
-         export PATH="$HOME/bin:$PATH"
-       '';
+        ${cfg.extraInit}
+
+        # ~/bin if it exists overrides other bin directories.
+        export PATH="$HOME/bin:$PATH"
+      '';
 
     system.activationScripts.binsh = stringAfter [ "stdio" ]
       ''
diff --git a/nixos/modules/config/xdg/mime.nix b/nixos/modules/config/xdg/mime.nix
index f1b672234a34..4323a49ea1dd 100644
--- a/nixos/modules/config/xdg/mime.nix
+++ b/nixos/modules/config/xdg/mime.nix
@@ -7,7 +7,7 @@ with lib;
       type = types.bool;
       default = true;
       description = ''
-        Whether to install files to support the 
+        Whether to install files to support the
         <link xlink:href="https://specifications.freedesktop.org/shared-mime-info-spec/shared-mime-info-spec-latest.html">XDG Shared MIME-info specification</link> and the
         <link xlink:href="https://specifications.freedesktop.org/mime-apps-spec/mime-apps-spec-latest.html">XDG MIME Applications specification</link>.
       '';
@@ -17,18 +17,18 @@ with lib;
   config = mkIf config.xdg.mime.enable {
     environment.pathsToLink = [ "/share/mime" ];
 
-    environment.systemPackages = [ 
-      # this package also installs some useful data, as well as its utilities 
-      pkgs.shared-mime-info 
+    environment.systemPackages = [
+      # this package also installs some useful data, as well as its utilities
+      pkgs.shared-mime-info
     ];
 
     environment.extraSetup = ''
-      if [ -w $out/share/mime ]; then
-        XDG_DATA_DIRS=$out/share ${pkgs.shared-mime-info}/bin/update-mime-database -V $out/share/mime > /dev/null
+      if [ -w $out/share/mime ] && [ -d $out/share/mime/packages ]; then
+          XDG_DATA_DIRS=$out/share ${pkgs.shared-mime-info}/bin/update-mime-database -V $out/share/mime > /dev/null
       fi
 
       if [ -w $out/share/applications ]; then
-        ${pkgs.desktop-file-utils}/bin/update-desktop-database $out/share/applications
+          ${pkgs.desktop-file-utils}/bin/update-desktop-database $out/share/applications
       fi
     '';
   };
diff --git a/nixos/modules/installer/tools/nix-fallback-paths.nix b/nixos/modules/installer/tools/nix-fallback-paths.nix
index 7c5414257b46..cb182a08a830 100644
--- a/nixos/modules/installer/tools/nix-fallback-paths.nix
+++ b/nixos/modules/installer/tools/nix-fallback-paths.nix
@@ -1,6 +1,6 @@
 {
-  x86_64-linux = "/nix/store/0d60i73mcv8z1m8d2m74yfn84980gfsa-nix-2.0.4";
-  i686-linux = "/nix/store/6ssafj2s5a2g9x28yld7b70vwd6vw6lb-nix-2.0.4";
-  aarch64-linux = "/nix/store/3wwch7bp7n7xsl8apgy2a4b16yzyij1z-nix-2.0.4";
-  x86_64-darwin = "/nix/store/771l8i0mz4c8kry8cz3sz8rr3alalckg-nix-2.0.4";
+  x86_64-linux = "/nix/store/h180y3n5k1ypxgm1pcvj243qix5j45zz-nix-2.1.1";
+  i686-linux = "/nix/store/v2y4k4v9ml07jmfq739wyflapg3b7b5k-nix-2.1.1";
+  aarch64-linux = "/nix/store/v485craglq7xm5996ci8qy5dyc17dab0-nix-2.1.1";
+  x86_64-darwin = "/nix/store/lc3ymlix73kaad5srjdgaxp9ngr1sg6g-nix-2.1.1";
 }
diff --git a/nixos/modules/misc/ids.nix b/nixos/modules/misc/ids.nix
index 8292cdc995e0..3d34fb973e74 100644
--- a/nixos/modules/misc/ids.nix
+++ b/nixos/modules/misc/ids.nix
@@ -53,7 +53,7 @@
       tomcat = 16;
       #audio = 17; # unused
       #floppy = 18; # unused
-      #uucp = 19; # unused
+      uucp = 19;
       #lp = 20; # unused
       #proc = 21; # unused
       pulseaudio = 22; # must match `pulseaudio' GID
@@ -329,6 +329,7 @@
       # kvm = 302; # unused
       # render = 303; # unused
       zeronet = 304;
+      lirc = 305;
 
       # When adding a uid, make sure it doesn't match an existing gid. And don't use uids above 399!
 
@@ -618,6 +619,7 @@
       kvm = 302; # default udev rules from systemd requires these
       render = 303; # default udev rules from systemd requires these
       zeronet = 304;
+      lirc = 305;
 
       # When adding a gid, make sure it doesn't match an existing
       # uid. Users and groups with the same name should have equal
diff --git a/nixos/modules/misc/version.nix b/nixos/modules/misc/version.nix
index 63717e0c6a81..c593adcdae6e 100644
--- a/nixos/modules/misc/version.nix
+++ b/nixos/modules/misc/version.nix
@@ -84,7 +84,7 @@ in
       versionSuffix = mkIf (pathIsDirectory gitRepo) (mkDefault (".git." + gitCommitId));
 
       # Note: the first letter is bumped on every release.  It's an animal.
-      codeName = "Jellyfish";
+      codeName = "Koi";
     };
 
     # Generate /etc/os-release.  See
diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
index 4795922abcfb..b128568bdf51 100644
--- a/nixos/modules/module-list.nix
+++ b/nixos/modules/module-list.nix
@@ -245,6 +245,7 @@
   ./services/desktops/gnome3/gnome-user-share.nix
   ./services/desktops/gnome3/gpaste.nix
   ./services/desktops/gnome3/gvfs.nix
+  ./services/desktops/gnome3/rygel.nix
   ./services/desktops/gnome3/seahorse.nix
   ./services/desktops/gnome3/sushi.nix
   ./services/desktops/gnome3/tracker.nix
@@ -271,6 +272,7 @@
   ./services/hardware/interception-tools.nix
   ./services/hardware/irqbalance.nix
   ./services/hardware/lcd.nix
+  ./services/hardware/lirc.nix
   ./services/hardware/nvidia-optimus.nix
   ./services/hardware/pcscd.nix
   ./services/hardware/pommed.nix
@@ -406,6 +408,7 @@
   ./services/misc/taskserver
   ./services/misc/tzupdate.nix
   ./services/misc/uhub.nix
+  ./services/misc/weechat.nix
   ./services/misc/xmr-stak.nix
   ./services/misc/zookeeper.nix
   ./services/monitoring/apcupsd.nix
@@ -494,6 +497,7 @@
   ./services/networking/dnsdist.nix
   ./services/networking/dnsmasq.nix
   ./services/networking/ejabberd.nix
+  ./services/networking/epmd.nix
   ./services/networking/fakeroute.nix
   ./services/networking/ferm.nix
   ./services/networking/firefox/sync-server.nix
@@ -515,9 +519,11 @@
   ./services/networking/heyefi.nix
   ./services/networking/hostapd.nix
   ./services/networking/htpdate.nix
+  ./services/networking/hylafax/default.nix
   ./services/networking/i2pd.nix
   ./services/networking/i2p.nix
   ./services/networking/iodine.nix
+  ./services/networking/iperf3.nix
   ./services/networking/ircd-hybrid/default.nix
   ./services/networking/iwd.nix
   ./services/networking/keepalived/default.nix
@@ -552,6 +558,7 @@
   ./services/networking/nsd.nix
   ./services/networking/ntopng.nix
   ./services/networking/ntpd.nix
+  ./services/networking/nullidentdmod.nix
   ./services/networking/nylon.nix
   ./services/networking/ocserv.nix
   ./services/networking/oidentd.nix
@@ -676,6 +683,7 @@
   ./services/web-apps/atlassian/confluence.nix
   ./services/web-apps/atlassian/crowd.nix
   ./services/web-apps/atlassian/jira.nix
+  ./services/web-apps/codimd.nix
   ./services/web-apps/frab.nix
   ./services/web-apps/mattermost.nix
   ./services/web-apps/nexus.nix
diff --git a/nixos/modules/programs/bash/bash.nix b/nixos/modules/programs/bash/bash.nix
index 69a1a482d074..424e1506b4c5 100644
--- a/nixos/modules/programs/bash/bash.nix
+++ b/nixos/modules/programs/bash/bash.nix
@@ -126,7 +126,9 @@ in
     programs.bash = {
 
       shellInit = ''
-        ${config.system.build.setEnvironment.text}
+        if [ -z "$__NIXOS_SET_ENVIRONMENT_DONE" ]; then
+            . ${config.system.build.setEnvironment}
+        fi
 
         ${cfge.shellInit}
       '';
@@ -166,11 +168,11 @@ in
 
         # Read system-wide modifications.
         if test -f /etc/profile.local; then
-          . /etc/profile.local
+            . /etc/profile.local
         fi
 
         if [ -n "''${BASH_VERSION:-}" ]; then
-          . /etc/bashrc
+            . /etc/bashrc
         fi
       '';
 
@@ -191,12 +193,12 @@ in
 
         # We are not always an interactive shell.
         if [ -n "$PS1" ]; then
-          ${cfg.interactiveShellInit}
+            ${cfg.interactiveShellInit}
         fi
 
         # Read system-wide modifications.
         if test -f /etc/bashrc.local; then
-          . /etc/bashrc.local
+            . /etc/bashrc.local
         fi
       '';
 
diff --git a/nixos/modules/programs/dconf.nix b/nixos/modules/programs/dconf.nix
index b7d8a345e65c..9c9765b06b6f 100644
--- a/nixos/modules/programs/dconf.nix
+++ b/nixos/modules/programs/dconf.nix
@@ -32,6 +32,8 @@ in
     environment.etc = optionals (cfg.profiles != {})
       (mapAttrsToList mkDconfProfile cfg.profiles);
 
+    services.dbus.packages = [ pkgs.gnome3.dconf ];
+
     environment.variables.GIO_EXTRA_MODULES = optional cfg.enable
       "${pkgs.gnome3.dconf.lib}/lib/gio/modules";
     # https://github.com/NixOS/nixpkgs/pull/31891
diff --git a/nixos/modules/programs/fish.nix b/nixos/modules/programs/fish.nix
index c8d94a47be28..c3f742acde2e 100644
--- a/nixos/modules/programs/fish.nix
+++ b/nixos/modules/programs/fish.nix
@@ -27,7 +27,7 @@ in
         '';
         type = types.bool;
       };
-      
+
       vendor.config.enable = mkOption {
         type = types.bool;
         default = true;
@@ -43,7 +43,7 @@ in
           Whether fish should use completion files provided by other packages.
         '';
       };
-      
+
       vendor.functions.enable = mkOption {
         type = types.bool;
         default = true;
@@ -107,9 +107,11 @@ in
       # This happens before $__fish_datadir/config.fish sets fish_function_path, so it is currently
       # unset. We set it and then completely erase it, leaving its configuration to $__fish_datadir/config.fish
       set fish_function_path ${pkgs.fish-foreign-env}/share/fish-foreign-env/functions $__fish_datadir/functions
-      
+
       # source the NixOS environment config
-      fenv source ${config.system.build.setEnvironment}
+      if [ -z "$__NIXOS_SET_ENVIRONMENT_DONE" ]
+          fenv source ${config.system.build.setEnvironment}
+      end
 
       # clear fish_function_path so that it will be correctly set when we return to $__fish_datadir/config.fish
       set -e fish_function_path
@@ -123,7 +125,7 @@ in
         set fish_function_path ${pkgs.fish-foreign-env}/share/fish-foreign-env/functions $fish_function_path
         fenv source /etc/fish/foreign-env/shellInit > /dev/null
         set -e fish_function_path[1]
-        
+
         ${cfg.shellInit}
 
         # and leave a note so we don't source this config section again from
@@ -137,7 +139,7 @@ in
         set fish_function_path ${pkgs.fish-foreign-env}/share/fish-foreign-env/functions $fish_function_path
         fenv source /etc/fish/foreign-env/loginShellInit > /dev/null
         set -e fish_function_path[1]
-        
+
         ${cfg.loginShellInit}
 
         # and leave a note so we don't source this config section again from
@@ -149,12 +151,11 @@ in
       status --is-interactive; and not set -q __fish_nixos_interactive_config_sourced
       and begin
         ${fishAliases}
-        
 
         set fish_function_path ${pkgs.fish-foreign-env}/share/fish-foreign-env/functions $fish_function_path
         fenv source /etc/fish/foreign-env/interactiveShellInit > /dev/null
         set -e fish_function_path[1]
-        
+
         ${cfg.promptInit}
         ${cfg.interactiveShellInit}
 
@@ -170,7 +171,7 @@ in
       ++ optional cfg.vendor.config.enable "/share/fish/vendor_conf.d"
       ++ optional cfg.vendor.completions.enable "/share/fish/vendor_completions.d"
       ++ optional cfg.vendor.functions.enable "/share/fish/vendor_functions.d";
-    
+
     environment.systemPackages = [ pkgs.fish ];
 
     environment.shells = [
diff --git a/nixos/modules/programs/zsh/zsh.nix b/nixos/modules/programs/zsh/zsh.nix
index d30b3415411f..b4ca8730958c 100644
--- a/nixos/modules/programs/zsh/zsh.nix
+++ b/nixos/modules/programs/zsh/zsh.nix
@@ -70,7 +70,7 @@ in
       promptInit = mkOption {
         default = ''
           if [ "$TERM" != dumb ]; then
-            autoload -U promptinit && promptinit && prompt walters
+              autoload -U promptinit && promptinit && prompt walters
           fi
         '';
         description = ''
@@ -116,7 +116,9 @@ in
         if [ -n "$__ETC_ZSHENV_SOURCED" ]; then return; fi
         export __ETC_ZSHENV_SOURCED=1
 
-        ${config.system.build.setEnvironment.text}
+        if [ -z "$__NIXOS_SET_ENVIRONMENT_DONE" ]; then
+            . ${config.system.build.setEnvironment}
+        fi
 
         ${cfge.shellInit}
 
@@ -124,7 +126,7 @@ in
 
         # Read system-wide modifications.
         if test -f /etc/zshenv.local; then
-          . /etc/zshenv.local
+            . /etc/zshenv.local
         fi
       '';
 
@@ -143,7 +145,7 @@ in
 
         # Read system-wide modifications.
         if test -f /etc/zprofile.local; then
-          . /etc/zprofile.local
+            . /etc/zprofile.local
         fi
       '';
 
@@ -169,7 +171,7 @@ in
 
         # Tell zsh how to find installed completions
         for p in ''${(z)NIX_PROFILES}; do
-          fpath+=($p/share/zsh/site-functions $p/share/zsh/$ZSH_VERSION/functions $p/share/zsh/vendor-completions)
+            fpath+=($p/share/zsh/site-functions $p/share/zsh/$ZSH_VERSION/functions $p/share/zsh/vendor-completions)
         done
 
         ${optionalString cfg.enableGlobalCompInit "autoload -U compinit && compinit"}
@@ -184,7 +186,7 @@ in
 
         # Read system-wide modifications.
         if test -f /etc/zshrc.local; then
-          . /etc/zshrc.local
+            . /etc/zshrc.local
         fi
       '';
 
diff --git a/nixos/modules/security/acme.nix b/nixos/modules/security/acme.nix
index 946da92d80e7..092704c6fc3f 100644
--- a/nixos/modules/security/acme.nix
+++ b/nixos/modules/security/acme.nix
@@ -302,15 +302,15 @@ in
                       workdir="$(mktemp -d)"
 
                       # Create CA
-                      openssl genrsa -des3 -passout pass:x -out $workdir/ca.pass.key 2048
-                      openssl rsa -passin pass:x -in $workdir/ca.pass.key -out $workdir/ca.key
+                      openssl genrsa -des3 -passout pass:xxxx -out $workdir/ca.pass.key 2048
+                      openssl rsa -passin pass:xxxx -in $workdir/ca.pass.key -out $workdir/ca.key
                       openssl req -new -key $workdir/ca.key -out $workdir/ca.csr \
                         -subj "/C=UK/ST=Warwickshire/L=Leamington/O=OrgName/OU=Security Department/CN=example.com"
                       openssl x509 -req -days 1 -in $workdir/ca.csr -signkey $workdir/ca.key -out $workdir/ca.crt
 
                       # Create key
-                      openssl genrsa -des3 -passout pass:x -out $workdir/server.pass.key 2048
-                      openssl rsa -passin pass:x -in $workdir/server.pass.key -out $workdir/server.key
+                      openssl genrsa -des3 -passout pass:xxxx -out $workdir/server.pass.key 2048
+                      openssl rsa -passin pass:xxxx -in $workdir/server.pass.key -out $workdir/server.key
                       openssl req -new -key $workdir/server.key -out $workdir/server.csr \
                         -subj "/C=UK/ST=Warwickshire/L=Leamington/O=OrgName/OU=IT Department/CN=example.com"
                       openssl x509 -req -days 1 -in $workdir/server.csr -CA $workdir/ca.crt \
diff --git a/nixos/modules/services/computing/slurm/slurm.nix b/nixos/modules/services/computing/slurm/slurm.nix
index 1e1c5bc9f035..09174ed39f5e 100644
--- a/nixos/modules/services/computing/slurm/slurm.nix
+++ b/nixos/modules/services/computing/slurm/slurm.nix
@@ -8,6 +8,7 @@ let
   # configuration file can be generated by http://slurm.schedmd.com/configurator.html
   configFile = pkgs.writeTextDir "slurm.conf"
     ''
+      ClusterName=${cfg.clusterName}
       ${optionalString (cfg.controlMachine != null) ''controlMachine=${cfg.controlMachine}''}
       ${optionalString (cfg.controlAddr != null) ''controlAddr=${cfg.controlAddr}''}
       ${optionalString (cfg.nodeName != null) ''nodeName=${cfg.nodeName}''}
@@ -105,6 +106,15 @@ in
         '';
       };
 
+      clusterName = mkOption {
+        type = types.str;
+        default = "default";
+        example = "myCluster";
+        description = ''
+          Necessary to distinguish accounting records in a multi-cluster environment.
+        '';
+      };
+
       nodeName = mkOption {
         type = types.nullOr types.str;
         default = null;
diff --git a/nixos/modules/services/desktops/gnome3/rygel.nix b/nixos/modules/services/desktops/gnome3/rygel.nix
new file mode 100644
index 000000000000..55d5e703aa19
--- /dev/null
+++ b/nixos/modules/services/desktops/gnome3/rygel.nix
@@ -0,0 +1,30 @@
+# rygel service.
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+{
+  ###### interface
+  options = {
+    services.gnome3.rygel = {
+      enable = mkOption {
+        default = false;
+        description = ''
+          Whether to enable Rygel UPnP Mediaserver.
+
+          You will need to also allow UPnP connections in firewall, see the following <link xlink:href="https://github.com/NixOS/nixpkgs/pull/45045#issuecomment-416030795">comment</link>.
+        '';
+        type = types.bool;
+      };
+    };
+  };
+
+  ###### implementation
+  config = mkIf config.services.gnome3.rygel.enable {
+    environment.systemPackages = [ pkgs.gnome3.rygel ];
+
+    services.dbus.packages = [ pkgs.gnome3.rygel ];
+
+    systemd.packages = [ pkgs.gnome3.rygel ];
+  };
+}
diff --git a/nixos/modules/services/hardware/lirc.nix b/nixos/modules/services/hardware/lirc.nix
new file mode 100644
index 000000000000..a66a7fbf495f
--- /dev/null
+++ b/nixos/modules/services/hardware/lirc.nix
@@ -0,0 +1,85 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+  cfg = config.services.lirc;
+in {
+
+  ###### interface
+
+  options = {
+    services.lirc = {
+
+      enable = mkEnableOption "LIRC daemon";
+
+      options = mkOption {
+        type = types.lines;
+        example = ''
+          [lircd]
+          nodaemon = False
+        '';
+        description = "LIRC default options descriped in man:lircd(8) (<filename>lirc_options.conf</filename>)";
+      };
+
+      configs = mkOption {
+        type = types.listOf types.lines;
+        description = "Configurations for lircd to load, see man:lircd.conf(5) for details (<filename>lircd.conf</filename>)";
+      };
+
+      extraArguments = mkOption {
+        type = types.listOf types.str;
+        default = [];
+        description = "Extra arguments to lircd.";
+      };
+
+    };
+  };
+
+  ###### implementation
+
+  config = mkIf cfg.enable {
+
+    # Note: LIRC executables raises a warning, if lirc_options.conf do not exists
+    environment.etc."lirc/lirc_options.conf".text = cfg.options;
+
+    environment.systemPackages = [ pkgs.lirc ];
+
+    systemd.sockets.lircd = {
+      description = "LIRC daemon socket";
+      wantedBy = [ "sockets.target" ];
+      socketConfig = {
+        ListenStream = "/run/lirc/lircd";
+        SocketUser = "lirc";
+        SocketMode = "0660";
+      };
+    };
+
+    systemd.services.lircd = let
+      configFile = pkgs.writeText "lircd.conf" (builtins.concatStringsSep "\n" cfg.configs);
+    in {
+      description = "LIRC daemon service";
+      after = [ "network.target" ];
+
+      unitConfig.Documentation = [ "man:lircd(8)" ];
+
+      serviceConfig = {
+        RuntimeDirectory = "lirc";
+        ExecStart = ''
+          ${pkgs.lirc}/bin/lircd --nodaemon \
+            ${escapeShellArgs cfg.extraArguments} \
+            ${configFile}
+        '';
+        User = "lirc";
+      };
+    };
+
+    users.users.lirc = {
+      uid = config.ids.uids.lirc;
+      group = "lirc";
+      description = "LIRC user for lircd";
+    };
+
+    users.groups.lirc.gid = config.ids.gids.lirc;
+  };
+}
diff --git a/nixos/modules/services/mail/exim.nix b/nixos/modules/services/mail/exim.nix
index 06c4b2811b3f..c05811291359 100644
--- a/nixos/modules/services/mail/exim.nix
+++ b/nixos/modules/services/mail/exim.nix
@@ -2,7 +2,7 @@
 
 let
   inherit (lib) mkIf mkOption singleton types;
-  inherit (pkgs) coreutils exim;
+  inherit (pkgs) coreutils;
   cfg = config.services.exim;
 in
 
@@ -57,6 +57,16 @@ in
         '';
       };
 
+      package = mkOption {
+        type = types.package;
+        default = pkgs.exim;
+        defaultText = "pkgs.exim";
+        description = ''
+          The Exim derivation to use.
+          This can be used to enable features such as LDAP or PAM support.
+        '';
+      };
+
     };
 
   };
@@ -74,7 +84,7 @@ in
         spool_directory = ${cfg.spoolDir}
         ${cfg.config}
       '';
-      systemPackages = [ exim ];
+      systemPackages = [ cfg.package ];
     };
 
     users.users = singleton {
@@ -89,14 +99,14 @@ in
       gid = config.ids.gids.exim;
     };
 
-    security.wrappers.exim.source = "${exim}/bin/exim";
+    security.wrappers.exim.source = "${cfg.package}/bin/exim";
 
     systemd.services.exim = {
       description = "Exim Mail Daemon";
       wantedBy = [ "multi-user.target" ];
       restartTriggers = [ config.environment.etc."exim.conf".source ];
       serviceConfig = {
-        ExecStart   = "${exim}/bin/exim -bdf -q30m";
+        ExecStart   = "${cfg.package}/bin/exim -bdf -q30m";
         ExecReload  = "${coreutils}/bin/kill -HUP $MAINPID";
       };
       preStart = ''
diff --git a/nixos/modules/services/misc/weechat.nix b/nixos/modules/services/misc/weechat.nix
new file mode 100644
index 000000000000..1fcfb440485d
--- /dev/null
+++ b/nixos/modules/services/misc/weechat.nix
@@ -0,0 +1,56 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+  cfg = config.services.weechat;
+in
+
+{
+  options.services.weechat = {
+    enable = mkEnableOption "weechat";
+    root = mkOption {
+      description = "Weechat state directory.";
+      type = types.str;
+      default = "/var/lib/weechat";
+    };
+    sessionName = mkOption {
+      description = "Name of the `screen' session for weechat.";
+      default = "weechat-screen";
+      type = types.str;
+    };
+    binary = mkOption {
+      description = "Binary to execute (by default \${weechat}/bin/weechat).";
+      example = literalExample ''
+        ''${pkgs.weechat}/bin/weechat-headless
+      '';
+      default = "${pkgs.weechat}/bin/weechat";
+    };
+  };
+
+  config = mkIf cfg.enable {
+    users = {
+      groups.weechat = {};
+      users.weechat = {
+        createHome = true;
+        group = "weechat";
+        home = cfg.root;
+        isSystemUser = true;
+      };
+    };
+
+    systemd.services.weechat = {
+      environment.WEECHAT_HOME = cfg.root;
+      serviceConfig = {
+        User = "weechat";
+        Group = "weechat";
+        RemainAfterExit = "yes";
+      };
+      script = "exec ${pkgs.screen}/bin/screen -Dm -S ${cfg.sessionName} ${cfg.binary}";
+      wantedBy = [ "multi-user.target" ];
+      wants = [ "network.target" ];
+    };
+  };
+
+  meta.doc = ./weechat.xml;
+}
diff --git a/nixos/modules/services/misc/weechat.xml b/nixos/modules/services/misc/weechat.xml
new file mode 100644
index 000000000000..de86dede2eb5
--- /dev/null
+++ b/nixos/modules/services/misc/weechat.xml
@@ -0,0 +1,61 @@
+<chapter xmlns="http://docbook.org/ns/docbook"
+         xmlns:xlink="http://www.w3.org/1999/xlink"
+         xmlns:xi="http://www.w3.org/2001/XInclude"
+         version="5.0"
+         xml:id="module-services-weechat">
+
+<title>WeeChat</title>
+<para><link xlink:href="https://weechat.org/">WeeChat</link> is a fast and extensible IRC client.</para>
+
+<section><title>Basic Usage</title>
+<para>
+By default, the module creates a
+<literal><link xlink:href="https://www.freedesktop.org/wiki/Software/systemd/">systemd</link></literal> unit
+which runs the chat client in a detached
+<literal><link xlink:href="https://www.gnu.org/software/screen/">screen</link></literal> session.
+
+</para>
+
+<para>
+This can be done by enabling the <literal>weechat</literal> service:
+
+<programlisting>
+{ ... }:
+
+{
+  <link linkend="opt-services.weechat.enable">services.weechat.enable</link> = true;
+}
+</programlisting>
+</para>
+<para>
+The service is managed by a dedicated user
+named <literal>weechat</literal> in the state directory
+<literal>/var/lib/weechat</literal>.
+</para>
+</section>
+<section><title>Re-attaching to WeeChat</title>
+<para>
+WeeChat runs in a screen session owned by a dedicated user. To explicitly
+allow your another user to attach to this session, the <literal>screenrc</literal> needs to be tweaked
+by adding <link xlink:href="https://www.gnu.org/software/screen/manual/html_node/Multiuser.html#Multiuser">multiuser</link> support:
+
+<programlisting>
+{
+  <link linkend="opt-programs.screen.screenrc">programs.screen.screenrc</link> = ''
+    multiuser on
+    acladd normal_user
+  '';
+}
+</programlisting>
+
+Now, the session can be re-attached like this:
+
+<programlisting>
+screen -r weechat-screen
+</programlisting>
+</para>
+<para>
+<emphasis>The session name can be changed using <link linkend="opt-services.weechat.sessionName">services.weechat.sessionName.</link></emphasis>
+</para>
+</section>
+</chapter>
diff --git a/nixos/modules/services/monitoring/datadog-agent.nix b/nixos/modules/services/monitoring/datadog-agent.nix
index e545e06b3495..35c08f5e7e30 100644
--- a/nixos/modules/services/monitoring/datadog-agent.nix
+++ b/nixos/modules/services/monitoring/datadog-agent.nix
@@ -8,7 +8,6 @@ let
   ddConf = {
     dd_url              = "https://app.datadoghq.com";
     skip_ssl_validation = "no";
-    api_key             = "";
     confd_path          = "/etc/datadog-agent/conf.d";
     additional_checksd  = "/etc/datadog-agent/checks.d";
     use_dogstatsd       = true;
@@ -16,6 +15,7 @@ let
   // optionalAttrs (cfg.logLevel != null) { log_level = cfg.logLevel; }
   // optionalAttrs (cfg.hostname != null) { inherit (cfg) hostname; }
   // optionalAttrs (cfg.tags != null ) { tags = concatStringsSep ", " cfg.tags; }
+  // optionalAttrs (cfg.enableLiveProcessCollection) { process_config = { enabled = "true"; }; }
   // cfg.extraConfig;
 
   # Generate Datadog configuration files for each configured checks.
@@ -125,6 +125,13 @@ in {
       '';
      };
 
+    enableLiveProcessCollection = mkOption {
+      description = ''
+        Whether to enable the live process collection agent.
+      '';
+      default = false;
+      type = types.bool;
+    };
     checks = mkOption {
       description = ''
         Configuration for all Datadog checks. Keys of this attribute
@@ -229,6 +236,15 @@ in {
         path = [ datadogPkg pkgs.python pkgs.sysstat pkgs.procps pkgs.jdk ];
         serviceConfig.ExecStart = "${datadogPkg}/bin/dd-jmxfetch";
       });
+
+      datadog-process-agent = lib.mkIf cfg.enableLiveProcessCollection (makeService {
+        description = "Datadog Live Process Agent";
+        path = [ ];
+        script = ''
+          export DD_API_KEY=$(head -n 1 ${cfg.apiKeyFile})
+          ${pkgs.datadog-process-agent}/bin/agent --config /etc/datadog-agent/datadog.yaml
+        '';
+      });
     };
 
     environment.etc = etcfiles;
diff --git a/nixos/modules/services/monitoring/grafana.nix b/nixos/modules/services/monitoring/grafana.nix
index 3e801f9b838d..c30647f5460b 100644
--- a/nixos/modules/services/monitoring/grafana.nix
+++ b/nixos/modules/services/monitoring/grafana.nix
@@ -235,7 +235,7 @@ in {
         but without GF_ prefix
       '';
       default = {};
-      type = types.attrsOf types.str;
+      type = with types; attrsOf (either str path);
     };
   };
 
diff --git a/nixos/modules/services/monitoring/riemann.nix b/nixos/modules/services/monitoring/riemann.nix
index 237de53456f9..13d2b1cc0602 100644
--- a/nixos/modules/services/monitoring/riemann.nix
+++ b/nixos/modules/services/monitoring/riemann.nix
@@ -17,9 +17,9 @@ let
 
   launcher = writeScriptBin "riemann" ''
     #!/bin/sh
-    exec ${jdk}/bin/java ${concatStringsSep "\n" cfg.extraJavaOpts} \
+    exec ${jdk}/bin/java ${concatStringsSep " " cfg.extraJavaOpts} \
       -cp ${classpath} \
-      riemann.bin ${writeText "riemann-config.clj" riemannConfig}
+      riemann.bin ${cfg.configFile}
   '';
 
 in {
@@ -37,7 +37,8 @@ in {
       config = mkOption {
         type = types.lines;
         description = ''
-          Contents of the Riemann configuration file.
+          Contents of the Riemann configuration file. For more complicated
+          config you should use configFile.
         '';
       };
       configFiles = mkOption {
@@ -47,7 +48,15 @@ in {
           Extra files containing Riemann configuration. These files will be
           loaded at runtime by Riemann (with Clojure's
           <literal>load-file</literal> function) at the end of the
-          configuration.
+          configuration if you use the config option, this is ignored if you
+          use configFile.
+        '';
+      };
+      configFile = mkOption {
+        type = types.str;
+        description = ''
+          A Riemann config file. Any files in the same directory as this file
+          will be added to the classpath by Riemann.
         '';
       };
       extraClasspathEntries = mkOption {
@@ -77,6 +86,10 @@ in {
       group = "riemann";
     };
 
+    services.riemann.configFile = mkDefault (
+      writeText "riemann-config.clj" riemannConfig
+    );
+
     systemd.services.riemann = {
       wantedBy = [ "multi-user.target" ];
       path = [ inetutils ];
@@ -84,6 +97,7 @@ in {
         User = "riemann";
         ExecStart = "${launcher}/bin/riemann";
       };
+      serviceConfig.LimitNOFILE = 65536;
     };
 
   };
diff --git a/nixos/modules/services/networking/epmd.nix b/nixos/modules/services/networking/epmd.nix
new file mode 100644
index 000000000000..692b75e4f086
--- /dev/null
+++ b/nixos/modules/services/networking/epmd.nix
@@ -0,0 +1,56 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+  cfg = config.services.epmd;
+
+in
+
+{
+  ###### interface
+  options.services.epmd = {
+    enable = mkOption {
+      type = types.bool;
+      default = false;
+      description = ''
+        Whether to enable socket activation for Erlang Port Mapper Daemon (epmd),
+        which acts as a name server on all hosts involved in distributed
+        Erlang computations.
+      '';
+    };
+    package = mkOption {
+      type = types.package;
+      default = pkgs.erlang;
+      description = ''
+        The Erlang package to use to get epmd binary. That way you can re-use
+        an Erlang runtime that is already installed for other purposes.
+      '';
+    };
+  };
+
+  ###### implementation
+  config = mkIf cfg.enable {
+    systemd.sockets.epmd = rec {
+      description = "Erlang Port Mapper Daemon Activation Socket";
+      wantedBy = [ "sockets.target" ];
+      before = wantedBy;
+      socketConfig = {
+        ListenStream = "4369";
+        Accept = "false";
+      };
+    };
+
+    systemd.services.epmd = {
+      description = "Erlang Port Mapper Daemon";
+      after = [ "network.target" ];
+      requires = [ "epmd.socket" ];
+
+      serviceConfig = {
+        DynamicUser = true;
+        ExecStart = "${cfg.package}/bin/epmd -systemd";
+        Type = "notify";
+      };
+    };
+  };
+}
diff --git a/nixos/modules/services/networking/hylafax/default.nix b/nixos/modules/services/networking/hylafax/default.nix
new file mode 100644
index 000000000000..4c63b822d165
--- /dev/null
+++ b/nixos/modules/services/networking/hylafax/default.nix
@@ -0,0 +1,29 @@
+{ config, lib, pkgs, ... }:
+
+{
+
+  imports = [
+    ./options.nix
+    ./systemd.nix
+  ];
+
+  config = lib.modules.mkIf config.services.hylafax.enable {
+    environment.systemPackages = [ pkgs.hylafaxplus ];
+    users.users.uucp = {
+      uid = config.ids.uids.uucp;
+      group = "uucp";
+      description = "Unix-to-Unix CoPy system";
+      isSystemUser = true;
+      inherit (config.users.users.nobody) home;
+    };
+    assertions = [{
+      assertion = config.services.hylafax.modems != {};
+      message = ''
+        HylaFAX cannot be used without modems.
+        Please define at least one modem with
+        <option>config.services.hylafax.modems</option>.
+      '';
+    }];
+  };
+
+}
diff --git a/nixos/modules/services/networking/hylafax/faxq-default.nix b/nixos/modules/services/networking/hylafax/faxq-default.nix
new file mode 100644
index 000000000000..a2630ce66b71
--- /dev/null
+++ b/nixos/modules/services/networking/hylafax/faxq-default.nix
@@ -0,0 +1,12 @@
+{ ... }:
+
+# see man:hylafax-config(5)
+
+{
+
+  ModemGroup = [ ''"any:.*"'' ];
+  ServerTracing = "0x78701";
+  SessionTracing = "0x78701";
+  UUCPLockDir = "/var/lock";
+
+}
diff --git a/nixos/modules/services/networking/hylafax/faxq-wait.sh b/nixos/modules/services/networking/hylafax/faxq-wait.sh
new file mode 100755
index 000000000000..8c39e9d20c18
--- /dev/null
+++ b/nixos/modules/services/networking/hylafax/faxq-wait.sh
@@ -0,0 +1,29 @@
+#! @shell@ -e
+
+# skip this if there are no modems at all
+if ! stat -t "@spoolAreaPath@"/etc/config.* >/dev/null 2>&1
+then
+  exit 0
+fi
+
+echo "faxq started, waiting for modem(s) to initialize..."
+
+for i in `seq @timeoutSec@0 -1 0`  # gracefully timeout
+do
+  sleep 0.1
+  # done if status files exist, but don't mention initialization
+  if \
+    stat -t "@spoolAreaPath@"/status/* >/dev/null 2>&1 \
+    && \
+    ! grep --silent --ignore-case 'initializing server' \
+    "@spoolAreaPath@"/status/*
+  then
+    echo "modem(s) apparently ready"
+    exit 0
+  fi
+  # if i reached 0, modems probably failed to initialize
+  if test $i -eq 0
+  then
+    echo "warning: modem initialization timed out"
+  fi
+done
diff --git a/nixos/modules/services/networking/hylafax/hfaxd-default.nix b/nixos/modules/services/networking/hylafax/hfaxd-default.nix
new file mode 100644
index 000000000000..8999dae57f41
--- /dev/null
+++ b/nixos/modules/services/networking/hylafax/hfaxd-default.nix
@@ -0,0 +1,10 @@
+{ ... }:
+
+# see man:hfaxd(8)
+
+{
+
+  ServerTracing = "0x91";
+  XferLogFile = "/clientlog";
+
+}
diff --git a/nixos/modules/services/networking/hylafax/modem-default.nix b/nixos/modules/services/networking/hylafax/modem-default.nix
new file mode 100644
index 000000000000..7529b5b0aafd
--- /dev/null
+++ b/nixos/modules/services/networking/hylafax/modem-default.nix
@@ -0,0 +1,22 @@
+{ pkgs, ... }:
+
+# see man:hylafax-config(5)
+
+{
+
+  TagLineFont = "etc/LiberationSans-25.pcf";
+  TagLineLocale = ''en_US.UTF-8'';
+
+  AdminGroup = "root";  # groups that can change server config
+  AnswerRotary = "fax";  # don't accept anything else but faxes
+  LogFileMode = "0640";
+  PriorityScheduling = true;
+  RecvFileMode = "0640";
+  ServerTracing = "0x78701";
+  SessionTracing = "0x78701";
+  UUCPLockDir = "/var/lock";
+
+  SendPageCmd = ''${pkgs.coreutils}/bin/false'';  # prevent pager transmit
+  SendUUCPCmd = ''${pkgs.coreutils}/bin/false'';  # prevent UUCP transmit
+
+}
diff --git a/nixos/modules/services/networking/hylafax/options.nix b/nixos/modules/services/networking/hylafax/options.nix
new file mode 100644
index 000000000000..4ac6d3fa8432
--- /dev/null
+++ b/nixos/modules/services/networking/hylafax/options.nix
@@ -0,0 +1,375 @@
+{ config, lib, pkgs, ... }:
+
+let
+
+  inherit (lib.options) literalExample mkEnableOption mkOption;
+  inherit (lib.types) bool enum int lines loaOf nullOr path str submodule;
+  inherit (lib.modules) mkDefault mkIf mkMerge;
+
+  commonDescr = ''
+    Values can be either strings or integers
+    (which will be added to the config file verbatimly)
+    or lists thereof
+    (which will be translated to multiple
+    lines with the same configuration key).
+    Boolean values are translated to "Yes" or "No".
+    The default contains some reasonable
+    configuration to yield an operational system.
+  '';
+
+  str1 = lib.types.addCheck str (s: s!="");  # non-empty string
+  int1 = lib.types.addCheck int (i: i>0);  # positive integer
+
+  configAttrType =
+    # Options in HylaFAX configuration files can be
+    # booleans, strings, integers, or list thereof
+    # representing multiple config directives with the same key.
+    # This type definition resolves all
+    # those types into a list of strings.
+    let
+      inherit (lib.types) attrsOf coercedTo listOf;
+      innerType = coercedTo bool (x: if x then "Yes" else "No")
+        (coercedTo int (toString) str);
+    in
+      attrsOf (coercedTo innerType lib.singleton (listOf innerType));
+
+  cfg = config.services.hylafax;
+
+  modemConfigOptions = { name, config, ... }: {
+    options = {
+      name = mkOption {
+        type = str1;
+        example = "ttyS1";
+        description = ''
+          Name of modem device,
+          will be searched for in <filename>/dev</filename>.
+        '';
+      };
+      type = mkOption {
+        type = str1;
+        example = "cirrus";
+        description = ''
+          Name of modem configuration file,
+          will be searched for in <filename>config</filename>
+          in the spooling area directory.
+        '';
+      };
+      config = mkOption {
+        type = configAttrType;
+        example = {
+          AreaCode = "49";
+          LocalCode = "30";
+          FAXNumber = "123456";
+          LocalIdentifier = "LostInBerlin";
+        };
+        description = ''
+          Attribute set of values for the given modem.
+          ${commonDescr}
+          Options defined here override options in
+          <option>commonModemConfig</option> for this modem.
+        '';
+      };
+    };
+    config.name = mkDefault name;
+    config.config.Include = [ "config/${config.type}" ];
+  };
+
+  defaultConfig =
+    let
+      inherit (config.security) wrapperDir;
+      inherit (config.services.mail.sendmailSetuidWrapper) program;
+      mkIfDefault = cond: value: mkIf cond (mkDefault value);
+      noWrapper = config.services.mail.sendmailSetuidWrapper==null;
+      # If a sendmail setuid wrapper exists,
+      # we add the path to the default configuration file.
+      # Otherwise, we use `false` to provoke
+      # an error if hylafax tries to use it.
+      c.sendmailPath = mkMerge [
+        (mkIfDefault noWrapper ''${pkgs.coreutils}/bin/false'')
+        (mkIfDefault (!noWrapper) ''${wrapperDir}/${program}'')
+      ];
+      importDefaultConfig = file:
+        lib.attrsets.mapAttrs
+        (lib.trivial.const mkDefault)
+        (import file { inherit pkgs; });
+      c.commonModemConfig = importDefaultConfig ./modem-default.nix;
+      c.faxqConfig = importDefaultConfig ./faxq-default.nix;
+      c.hfaxdConfig = importDefaultConfig ./hfaxd-default.nix;
+    in
+      c;
+
+  localConfig =
+    let
+      c.hfaxdConfig.UserAccessFile = cfg.userAccessFile;
+      c.faxqConfig = lib.attrsets.mapAttrs
+        (lib.trivial.const (v: mkIf (v!=null) v))
+        {
+          AreaCode = cfg.areaCode;
+          CountryCode = cfg.countryCode;
+          LongDistancePrefix = cfg.longDistancePrefix;
+          InternationalPrefix = cfg.internationalPrefix;
+        };
+      c.commonModemConfig = c.faxqConfig;
+    in
+      c;
+
+in
+
+
+{
+
+
+  options.services.hylafax = {
+
+    enable = mkEnableOption ''HylaFAX server'';
+
+    autostart = mkOption {
+      type = bool;
+      default = true;
+      example = false;
+      description = ''
+        Autostart the HylaFAX queue manager at system start.
+        If this is <literal>false</literal>, the queue manager
+        will still be started if there are pending
+        jobs or if a user tries to connect to it.
+      '';
+    };
+
+    countryCode = mkOption {
+      type = nullOr str1;
+      default = null;
+      example = "49";
+      description = ''Country code for server and all modems.'';
+    };
+
+    areaCode = mkOption {
+      type = nullOr str1;
+      default = null;
+      example = "30";
+      description = ''Area code for server and all modems.'';
+    };
+
+    longDistancePrefix = mkOption {
+      type = nullOr str;
+      default = null;
+      example = "0";
+      description = ''Long distance prefix for server and all modems.'';
+    };
+
+    internationalPrefix = mkOption {
+      type = nullOr str;
+      default = null;
+      example = "00";
+      description = ''International prefix for server and all modems.'';
+    };
+
+    spoolAreaPath = mkOption {
+      type = path;
+      default = "/var/spool/fax";
+      description = ''
+        The spooling area will be created/maintained
+        at the location given here.
+      '';
+    };
+
+    userAccessFile = mkOption {
+      type = path;
+      default = "/etc/hosts.hfaxd";
+      description = ''
+        The <filename>hosts.hfaxd</filename>
+        file entry in the spooling area
+        will be symlinked to the location given here.
+        This file must exist and be
+        readable only by the <literal>uucp</literal> user.
+        See hosts.hfaxd(5) for details.
+        This configuration permits access for all users:
+        <literal>
+          environment.etc."hosts.hfaxd" = {
+            mode = "0600";
+            user = "uucp";
+            text = ".*";
+          };
+        </literal>
+        Note that host-based access can be controlled with
+        <option>config.systemd.sockets.hylafax-hfaxd.listenStreams</option>;
+        by default, only 127.0.0.1 is permitted to connect.
+      '';
+    };
+
+    sendmailPath = mkOption {
+      type = path;
+      example = literalExample "''${pkgs.postfix}/bin/sendmail";
+      # '' ;  # fix vim
+      description = ''
+        Path to <filename>sendmail</filename> program.
+        The default uses the local sendmail wrapper
+        (see <option>config.services.mail.sendmailSetuidWrapper</option>),
+        otherwise the <filename>false</filename>
+        binary to cause an error if used.
+      '';
+    };
+
+    hfaxdConfig = mkOption {
+      type = configAttrType;
+      example.RecvqProtection = "0400";
+      description = ''
+        Attribute set of lines for the global
+        hfaxd config file <filename>etc/hfaxd.conf</filename>.
+        ${commonDescr}
+      '';
+    };
+
+    faxqConfig = mkOption {
+      type = configAttrType;
+      example = {
+        InternationalPrefix = "00";
+        LongDistancePrefix = "0";
+      };
+      description = ''
+        Attribute set of lines for the global
+        faxq config file <filename>etc/config</filename>.
+        ${commonDescr}
+      '';
+    };
+
+    commonModemConfig = mkOption {
+      type = configAttrType;
+      example = {
+        InternationalPrefix = "00";
+        LongDistancePrefix = "0";
+      };
+      description = ''
+        Attribute set of default values for
+        modem config files <filename>etc/config.*</filename>.
+        ${commonDescr}
+        Think twice before changing
+        paths of fax-processing scripts.
+      '';
+    };
+
+    modems = mkOption {
+      type = loaOf (submodule [ modemConfigOptions ]);
+      default = {};
+      example.ttyS1 = {
+        type = "cirrus";
+        config = {
+          FAXNumber = "123456";
+          LocalIdentifier = "Smith";
+        };
+      };
+      description = ''
+        Description of installed modems.
+        At least on modem must be defined
+        to enable the HylaFAX server.
+      '';
+    };
+
+    spoolExtraInit = mkOption {
+      type = lines;
+      default = "";
+      example = ''chmod 0755 .  # everyone may read my faxes'';
+      description = ''
+        Additional shell code that is executed within the
+        spooling area directory right after its setup.
+      '';
+    };
+
+    faxcron.enable.spoolInit = mkEnableOption ''
+      Purge old files from the spooling area with
+      <filename>faxcron</filename>
+      each time the spooling area is initialized.
+    '';
+    faxcron.enable.frequency = mkOption {
+      type = nullOr str1;
+      default = null;
+      example = "daily";
+      description = ''
+        Purge old files from the spooling area with
+        <filename>faxcron</filename> with the given frequency
+        (see systemd.time(7)).
+      '';
+    };
+    faxcron.infoDays = mkOption {
+      type = int1;
+      default = 30;
+      description = ''
+        Set the expiration time for data in the
+        remote machine information directory in days.
+      '';
+    };
+    faxcron.logDays = mkOption {
+      type = int1;
+      default = 30;
+      description = ''
+        Set the expiration time for
+        session trace log files in days.
+      '';
+    };
+    faxcron.rcvDays = mkOption {
+      type = int1;
+      default = 7;
+      description = ''
+        Set the expiration time for files in
+        the received facsimile queue in days.
+      '';
+    };
+
+    faxqclean.enable.spoolInit = mkEnableOption ''
+      Purge old files from the spooling area with
+      <filename>faxqclean</filename>
+      each time the spooling area is initialized.
+    '';
+    faxqclean.enable.frequency = mkOption {
+      type = nullOr str1;
+      default = null;
+      example = "daily";
+      description = ''
+        Purge old files from the spooling area with
+        <filename>faxcron</filename> with the given frequency
+        (see systemd.time(7)).
+      '';
+    };
+    faxqclean.archiving = mkOption {
+      type = enum [ "never" "as-flagged" "always" ];
+      default = "as-flagged";
+      example = "always";
+      description = ''
+        Enable or suppress job archiving:
+        <literal>never</literal> disables job archiving,
+        <literal>as-flagged</literal> archives jobs that
+        have been flagged for archiving by sendfax,
+        <literal>always</literal> forces archiving of all jobs.
+        See also sendfax(1) and faxqclean(8).
+      '';
+    };
+    faxqclean.doneqMinutes = mkOption {
+      type = int1;
+      default = 15;
+      example = literalExample ''24*60'';
+      description = ''
+        Set the job
+        age threshold (in minutes) that controls how long
+        jobs may reside in the doneq directory.
+      '';
+    };
+    faxqclean.docqMinutes = mkOption {
+      type = int1;
+      default = 60;
+      example = literalExample ''24*60'';
+      description = ''
+        Set the document
+        age threshold (in minutes) that controls how long
+        unreferenced files may reside in the docq directory.
+      '';
+    };
+
+  };
+
+
+  config.services.hylafax =
+    mkIf
+    (config.services.hylafax.enable)
+    (mkMerge [ defaultConfig localConfig ])
+  ;
+
+}
diff --git a/nixos/modules/services/networking/hylafax/spool.sh b/nixos/modules/services/networking/hylafax/spool.sh
new file mode 100755
index 000000000000..31e930e8c597
--- /dev/null
+++ b/nixos/modules/services/networking/hylafax/spool.sh
@@ -0,0 +1,111 @@
+#! @shell@ -e
+
+# The following lines create/update the HylaFAX spool directory:
+# Subdirectories/files with persistent data are kept,
+# other directories/files are removed/recreated,
+# mostly from the template spool
+# directory in the HylaFAX package.
+
+# This block explains how the spool area is
+# derived from the spool template in the HylaFAX package:
+#
+#                  + capital letter: directory; file otherwise
+#                  + P/p: persistent directory
+#                  + F/f: directory with symlinks per entry
+#                  + T/t: temporary data
+#                  + S/s: single symlink into package
+#                  |
+#                  | + u: change ownership to uucp:uucp
+#                  | + U: ..also change access mode to user-only
+#                  | |
+# archive          P U
+# bin              S
+# client           T u  (client connection info)
+# config           S
+# COPYRIGHT        s
+# dev              T u  (maybe some FIFOs)
+# docq             P U
+# doneq            P U
+# etc              F    contains customized config files!
+# etc/hosts.hfaxd  f
+# etc/xferfaxlog   f
+# info             P u  (database of called devices)
+# log              P u  (communication logs)
+# pollq            P U
+# recvq            P u
+# sendq            P U
+# status           T u  (modem status info files)
+# tmp              T U
+
+
+shopt -s dotglob  # if bash sees "*", it also includes dot files
+lnsym () { ln --symbol "$@" ; }
+lnsymfrc () { ln --symbolic --force "$@" ; }
+cprd () { cp --remove-destination "$@" ; }
+update () { install --owner=@faxuser@ --group=@faxgroup@ "$@" ; }
+
+
+## create/update spooling area
+
+update --mode=0750 -d "@spoolAreaPath@"
+cd "@spoolAreaPath@"
+
+persist=(archive docq doneq info log pollq recvq sendq)
+
+# remove entries that don't belong here
+touch dummy  # ensure "*" resolves to something
+for k in *
+do
+  keep=0
+  for j in "${persist[@]}" xferfaxlog clientlog faxcron.lastrun
+  do
+    if test "$k" == "$j"
+    then
+      keep=1
+      break
+    fi
+  done
+  if test "$keep" == "0"
+  then
+    rm --recursive "$k"
+  fi
+done
+
+# create persistent data directories (unless they exist already)
+update --mode=0700 -d "${persist[@]}"
+chmod 0755 info log recvq
+
+# create ``xferfaxlog``, ``faxcron.lastrun``, ``clientlog``
+touch clientlog faxcron.lastrun xferfaxlog
+chown @faxuser@:@faxgroup@ clientlog faxcron.lastrun xferfaxlog
+
+# create symlinks for frozen directories/files
+lnsym --target-directory=. "@hylafax@"/spool/{COPYRIGHT,bin,config}
+
+# create empty temporary directories
+update --mode=0700 -d client dev status
+update -d tmp
+
+
+## create and fill etc
+
+install -d "@spoolAreaPath@/etc"
+cd "@spoolAreaPath@/etc"
+
+# create symlinks to all files in template's etc
+lnsym --target-directory=. "@hylafax@/spool/etc"/*
+
+# set LOCKDIR in setup.cache
+sed --regexp-extended 's|^(UUCP_LOCKDIR=).*$|\1'"'@lockPath@'|g" --in-place setup.cache
+
+# etc/{xferfaxlog,lastrun} are stored in the spool root
+lnsymfrc --target-directory=. ../xferfaxlog
+lnsymfrc --no-target-directory ../faxcron.lastrun lastrun
+
+# etc/hosts.hfaxd is provided by the NixOS configuration
+lnsymfrc --no-target-directory "@userAccessFile@" hosts.hfaxd
+
+# etc/config and etc/config.${DEVID} must be copied:
+# hfaxd reads these file after locking itself up in a chroot
+cprd --no-target-directory "@globalConfigPath@" config
+cprd --target-directory=. "@modemConfigPath@"/*
diff --git a/nixos/modules/services/networking/hylafax/systemd.nix b/nixos/modules/services/networking/hylafax/systemd.nix
new file mode 100644
index 000000000000..91d9c1a37da6
--- /dev/null
+++ b/nixos/modules/services/networking/hylafax/systemd.nix
@@ -0,0 +1,249 @@
+{ config, lib, pkgs, ... }:
+
+
+let
+
+  inherit (lib) mkIf mkMerge;
+  inherit (lib) concatStringsSep optionalString;
+
+  cfg = config.services.hylafax;
+  mapModems = lib.flip map (lib.attrValues cfg.modems);
+
+  mkConfigFile = name: conf:
+    # creates hylafax config file,
+    # makes sure "Include" is listed *first*
+    let
+      mkLines = conf:
+        (lib.concatLists
+        (lib.flip lib.mapAttrsToList conf
+        (k: map (v: ''${k}: ${v}'')
+      )));
+      include = mkLines { Include = conf.Include or []; };
+      other = mkLines ( conf // { Include = []; } );
+    in
+      pkgs.writeText ''hylafax-config${name}''
+      (concatStringsSep "\n" (include ++ other));
+
+  globalConfigPath = mkConfigFile "" cfg.faxqConfig;
+
+  modemConfigPath =
+    let
+      mkModemConfigFile = { config, name, ... }:
+        mkConfigFile ''.${name}''
+        (cfg.commonModemConfig // config);
+      mkLine = { name, type, ... }@modem: ''
+        # check if modem config file exists:
+        test -f "${pkgs.hylafaxplus}/spool/config/${type}"
+        ln \
+          --symbolic \
+          --no-target-directory \
+          "${mkModemConfigFile modem}" \
+          "$out/config.${name}"
+      '';
+    in
+      pkgs.runCommand "hylafax-config-modems" {}
+      ''mkdir --parents "$out/" ${concatStringsSep "\n" (mapModems mkLine)}'';
+
+  setupSpoolScript = pkgs.substituteAll {
+    name = "hylafax-setup-spool.sh";
+    src = ./spool.sh;
+    isExecutable = true;
+    inherit (pkgs.stdenv) shell;
+    hylafax = pkgs.hylafaxplus;
+    faxuser = "uucp";
+    faxgroup = "uucp";
+    lockPath = "/var/lock";
+    inherit globalConfigPath modemConfigPath;
+    inherit (cfg) sendmailPath spoolAreaPath userAccessFile;
+  };
+
+  waitFaxqScript = pkgs.substituteAll {
+    # This script checks the modems status files
+    # and waits until all modems report readiness.
+    name = "hylafax-faxq-wait-start.sh";
+    src = ./faxq-wait.sh;
+    isExecutable = true;
+    timeoutSec = toString 10;
+    inherit (pkgs.stdenv) shell;
+    inherit (cfg) spoolAreaPath;
+  };
+
+  sockets."hylafax-hfaxd" = {
+    description = "HylaFAX server socket";
+    documentation = [ "man:hfaxd(8)" ];
+    wantedBy = [ "multi-user.target" ];
+    listenStreams = [ "127.0.0.1:4559" ];
+    socketConfig.FreeBind = true;
+    socketConfig.Accept = true;
+  };
+
+  paths."hylafax-faxq" = {
+    description = "HylaFAX queue manager sendq watch";
+    documentation = [ "man:faxq(8)" "man:sendq(5)" ];
+    wantedBy = [ "multi-user.target" ];
+    pathConfig.PathExistsGlob = [ ''${cfg.spoolAreaPath}/sendq/q*'' ];
+  };
+
+  timers = mkMerge [
+    (
+      mkIf (cfg.faxcron.enable.frequency!=null)
+      { "hylafax-faxcron".timerConfig.Persistent = true; }
+    )
+    (
+      mkIf (cfg.faxqclean.enable.frequency!=null)
+      { "hylafax-faxqclean".timerConfig.Persistent = true; }
+    )
+  ];
+
+  hardenService =
+    # Add some common systemd service hardening settings,
+    # but allow each service (here) to override
+    # settings by explicitely setting those to `null`.
+    # More hardening would be nice but makes
+    # customizing hylafax setups very difficult.
+    # If at all, it should only be added along
+    # with some options to customize it.
+    let
+      hardening = {
+        PrivateDevices = true;  # breaks /dev/tty...
+        PrivateNetwork = true;
+        PrivateTmp = true;
+        ProtectControlGroups = true;
+        #ProtectHome = true;  # breaks custom spool dirs
+        ProtectKernelModules = true;
+        ProtectKernelTunables = true;
+        #ProtectSystem = "strict";  # breaks custom spool dirs
+        RestrictNamespaces = true;
+        RestrictRealtime = true;
+      };
+      filter = key: value: (value != null) || ! (lib.hasAttr key hardening);
+      apply = service: lib.filterAttrs filter (hardening // (service.serviceConfig or {}));
+    in
+      service: service // { serviceConfig = apply service; };
+
+  services."hylafax-spool" = {
+    description = "HylaFAX spool area preparation";
+    documentation = [ "man:hylafax-server(4)" ];
+    script = ''
+      ${setupSpoolScript}
+      cd "${cfg.spoolAreaPath}"
+      ${cfg.spoolExtraInit}
+      if ! test -f "${cfg.spoolAreaPath}/etc/hosts.hfaxd"
+      then
+        echo hosts.hfaxd is missing
+        exit 1
+      fi
+    '';
+    serviceConfig.ExecStop = ''${setupSpoolScript}'';
+    serviceConfig.RemainAfterExit = true;
+    serviceConfig.Type = "oneshot";
+    unitConfig.RequiresMountsFor = [ cfg.spoolAreaPath ];
+  };
+
+  services."hylafax-faxq" = {
+    description = "HylaFAX queue manager";
+    documentation = [ "man:faxq(8)" ];
+    requires = [ "hylafax-spool.service" ];
+    after = [ "hylafax-spool.service" ];
+    wants = mapModems ( { name, ... }: ''hylafax-faxgetty@${name}.service'' );
+    wantedBy = mkIf cfg.autostart [ "multi-user.target" ];
+    serviceConfig.Type = "forking";
+    serviceConfig.ExecStart = ''${pkgs.hylafaxplus}/spool/bin/faxq -q "${cfg.spoolAreaPath}"'';
+    # This delays the "readiness" of this service until
+    # all modems are initialized (or a timeout is reached).
+    # Otherwise, sending a fax with the fax service
+    # stopped will always yield a failed send attempt:
+    # The fax service is started when the job is created with
+    # `sendfax`, but modems need some time to initialize.
+    serviceConfig.ExecStartPost = [ ''${waitFaxqScript}'' ];
+    # faxquit fails if the pipe is already gone
+    # (e.g. the service is already stopping)
+    serviceConfig.ExecStop = ''-${pkgs.hylafaxplus}/spool/bin/faxquit -q "${cfg.spoolAreaPath}"'';
+    # disable some systemd hardening settings
+    serviceConfig.PrivateDevices = null;
+    serviceConfig.RestrictRealtime = null;
+  };
+
+  services."hylafax-hfaxd@" = {
+    description = "HylaFAX server";
+    documentation = [ "man:hfaxd(8)" ];
+    after = [ "hylafax-faxq.service" ];
+    requires = [ "hylafax-faxq.service" ];
+    serviceConfig.StandardInput = "socket";
+    serviceConfig.StandardOutput = "socket";
+    serviceConfig.ExecStart = ''${pkgs.hylafaxplus}/spool/bin/hfaxd -q "${cfg.spoolAreaPath}" -d -I'';
+    unitConfig.RequiresMountsFor = [ cfg.userAccessFile ];
+    # disable some systemd hardening settings
+    serviceConfig.PrivateDevices = null;
+    serviceConfig.PrivateNetwork = null;
+  };
+
+  services."hylafax-faxcron" = rec {
+    description = "HylaFAX spool area maintenance";
+    documentation = [ "man:faxcron(8)" ];
+    after = [ "hylafax-spool.service" ];
+    requires = [ "hylafax-spool.service" ];
+    wantedBy = mkIf cfg.faxcron.enable.spoolInit requires;
+    startAt = mkIf (cfg.faxcron.enable.frequency!=null) cfg.faxcron.enable.frequency;
+    serviceConfig.ExecStart = concatStringsSep " " [
+      ''${pkgs.hylafaxplus}/spool/bin/faxcron''
+      ''-q "${cfg.spoolAreaPath}"''
+      ''-info ${toString cfg.faxcron.infoDays}''
+      ''-log  ${toString cfg.faxcron.logDays}''
+      ''-rcv  ${toString cfg.faxcron.rcvDays}''
+    ];
+  };
+
+  services."hylafax-faxqclean" = rec {
+    description = "HylaFAX spool area queue cleaner";
+    documentation = [ "man:faxqclean(8)" ];
+    after = [ "hylafax-spool.service" ];
+    requires = [ "hylafax-spool.service" ];
+    wantedBy = mkIf cfg.faxqclean.enable.spoolInit requires;
+    startAt = mkIf (cfg.faxqclean.enable.frequency!=null) cfg.faxqclean.enable.frequency;
+    serviceConfig.ExecStart = concatStringsSep " " [
+      ''${pkgs.hylafaxplus}/spool/bin/faxqclean''
+      ''-q "${cfg.spoolAreaPath}"''
+      ''-v''
+      (optionalString (cfg.faxqclean.archiving!="never") ''-a'')
+      (optionalString (cfg.faxqclean.archiving=="always")  ''-A'')
+      ''-j ${toString (cfg.faxqclean.doneqMinutes*60)}''
+      ''-d ${toString (cfg.faxqclean.docqMinutes*60)}''
+    ];
+  };
+
+  mkFaxgettyService = { name, ... }:
+    lib.nameValuePair ''hylafax-faxgetty@${name}'' rec {
+      description = "HylaFAX faxgetty for %I";
+      documentation = [ "man:faxgetty(8)" ];
+      bindsTo = [ "dev-%i.device" ];
+      requires = [ "hylafax-spool.service" ];
+      after = bindsTo ++ requires;
+      before = [ "hylafax-faxq.service" "getty.target" ];
+      unitConfig.StopWhenUnneeded = true;
+      unitConfig.AssertFileNotEmpty = ''${cfg.spoolAreaPath}/etc/config.%I'';
+      serviceConfig.UtmpIdentifier = "%I";
+      serviceConfig.TTYPath = "/dev/%I";
+      serviceConfig.Restart = "always";
+      serviceConfig.KillMode = "process";
+      serviceConfig.IgnoreSIGPIPE = false;
+      serviceConfig.ExecStart = ''-${pkgs.hylafaxplus}/spool/bin/faxgetty -q "${cfg.spoolAreaPath}" /dev/%I'';
+      # faxquit fails if the pipe is already gone
+      # (e.g. the service is already stopping)
+      serviceConfig.ExecStop = ''-${pkgs.hylafaxplus}/spool/bin/faxquit -q "${cfg.spoolAreaPath}" %I'';
+      # disable some systemd hardening settings
+      serviceConfig.PrivateDevices = null;
+      serviceConfig.RestrictRealtime = null;
+    };
+
+  modemServices =
+    lib.listToAttrs (mapModems mkFaxgettyService);
+
+in
+
+{
+  config.systemd = mkIf cfg.enable {
+    inherit sockets timers paths;
+    services = lib.mapAttrs (lib.const hardenService) (services // modemServices);
+  };
+}
diff --git a/nixos/modules/services/networking/i2pd.nix b/nixos/modules/services/networking/i2pd.nix
index 3afafaf3fed5..0e9b354cfcaf 100644
--- a/nixos/modules/services/networking/i2pd.nix
+++ b/nixos/modules/services/networking/i2pd.nix
@@ -8,6 +8,17 @@ let
 
   homeDir = "/var/lib/i2pd";
 
+  strOpt = k: v: k + " = " + v;
+  boolOpt = k: v: k + " = " + boolToString v;
+  intOpt = k: v: k + " = " + toString v;
+  lstOpt = k: xs: k + " = " + concatStringsSep "," xs;
+  optionalNullString = o: s: optional (! isNull s) (strOpt o s);
+  optionalNullBool = o: b: optional (! isNull b) (boolOpt o b);
+  optionalNullInt = o: i: optional (! isNull i) (intOpt o i);
+  optionalEmptyList = o: l: optional ([] != l) (lstOpt o l);
+
+  mkEnableTrueOption = name: mkEnableOption name // { default = true; };
+
   mkEndpointOpt = name: addr: port: {
     enable = mkEnableOption name;
     name = mkOption {
@@ -18,42 +29,54 @@ let
     address = mkOption {
       type = types.str;
       default = addr;
-      description = "Bind address for ${name} endpoint. Default: " + addr;
+      description = "Bind address for ${name} endpoint.";
     };
     port = mkOption {
       type = types.int;
       default = port;
-      description = "Bind port for ${name} endoint. Default: " + toString port;
+      description = "Bind port for ${name} endoint.";
     };
   };
 
-  mkKeyedEndpointOpt = name: addr: port: keyFile:
+  i2cpOpts = name: {
+    length = mkOption {
+      type = types.int;
+      description = "Guaranteed minimum hops for ${name} tunnels.";
+      default = 3;
+    };
+    quantity = mkOption {
+      type = types.int;
+      description = "Number of simultaneous ${name} tunnels.";
+      default = 5;
+    };
+  };
+
+  mkKeyedEndpointOpt = name: addr: port: keyloc:
     (mkEndpointOpt name addr port) // {
       keys = mkOption {
-        type = types.str;
-        default = "";
+        type = with types; nullOr str;
+        default = keyloc;
         description = ''
           File to persist ${lib.toUpper name} keys.
         '';
       };
-    };
-
-  commonTunOpts = let
-    i2cpOpts = {
-      length = mkOption {
-        type = types.int;
-        description = "Guaranteed minimum hops.";
-        default = 3;
+      inbound = i2cpOpts name;
+      outbound = i2cpOpts name;
+      latency.min = mkOption {
+        type = with types; nullOr int;
+        description = "Min latency for tunnels.";
+        default = null;
       };
-      quantity = mkOption {
-        type = types.int;
-        description = "Number of simultaneous tunnels.";
-        default = 5;
+      latency.max = mkOption {
+        type = with types; nullOr int;
+        description = "Max latency for tunnels.";
+        default = null;
       };
     };
-  in name: {
-    outbound = i2cpOpts;
-    inbound = i2cpOpts;
+
+  commonTunOpts = name: {
+    outbound = i2cpOpts name;
+    inbound = i2cpOpts name;
     crypto.tagsToSend = mkOption {
       type = types.int;
       description = "Number of ElGamal/AES tags to send.";
@@ -70,94 +93,142 @@ let
     };
   } // mkEndpointOpt name "127.0.0.1" 0;
 
-  i2pdConf = pkgs.writeText "i2pd.conf" ''
-    # DO NOT EDIT -- this file has been generated automatically.
-    loglevel = ${cfg.logLevel}
-
-    ipv4 = ${boolToString cfg.enableIPv4}
-    ipv6 = ${boolToString cfg.enableIPv6}
-    notransit = ${boolToString cfg.notransit}
-    floodfill = ${boolToString cfg.floodfill}
-    netid = ${toString cfg.netid}
-    ${if isNull cfg.bandwidth then "" else "bandwidth = ${toString cfg.bandwidth}" }
-    ${if isNull cfg.port then "" else "port = ${toString cfg.port}"}
-
-    [limits]
-    transittunnels = ${toString cfg.limits.transittunnels}
-
-    [upnp]
-    enabled = ${boolToString cfg.upnp.enable}
-    name = ${cfg.upnp.name}
-
-    [precomputation]
-    elgamal = ${boolToString cfg.precomputation.elgamal}
-
-    [reseed]
-    verify = ${boolToString cfg.reseed.verify}
-    file = ${cfg.reseed.file}
-    urls = ${builtins.concatStringsSep "," cfg.reseed.urls}
-
-    [addressbook]
-    defaulturl = ${cfg.addressbook.defaulturl}
-    subscriptions = ${builtins.concatStringsSep "," cfg.addressbook.subscriptions}
-
-    ${flip concatMapStrings
+  sec = name: "\n[" + name + "]";
+  notice = "# DO NOT EDIT -- this file has been generated automatically.";
+  i2pdConf = let
+    opts = [
+      notice
+      (strOpt "loglevel" cfg.logLevel)
+      (boolOpt "logclftime" cfg.logCLFTime)
+      (boolOpt "ipv4" cfg.enableIPv4)
+      (boolOpt "ipv6" cfg.enableIPv6)
+      (boolOpt "notransit" cfg.notransit)
+      (boolOpt "floodfill" cfg.floodfill)
+      (intOpt "netid" cfg.netid)
+    ] ++ (optionalNullInt "bandwidth" cfg.bandwidth)
+      ++ (optionalNullInt "port" cfg.port)
+      ++ (optionalNullString "family" cfg.family)
+      ++ (optionalNullString "datadir" cfg.dataDir)
+      ++ (optionalNullInt "share" cfg.share)
+      ++ (optionalNullBool "ssu" cfg.ssu)
+      ++ (optionalNullBool "ntcp" cfg.ntcp)
+      ++ (optionalNullString "ntcpproxy" cfg.ntcpProxy)
+      ++ (optionalNullString "ifname" cfg.ifname)
+      ++ (optionalNullString "ifname4" cfg.ifname4)
+      ++ (optionalNullString "ifname6" cfg.ifname6)
+      ++ [
+      (sec "limits")
+      (intOpt "transittunnels" cfg.limits.transittunnels)
+      (intOpt "coresize" cfg.limits.coreSize)
+      (intOpt "openfiles" cfg.limits.openFiles)
+      (intOpt "ntcphard" cfg.limits.ntcpHard)
+      (intOpt "ntcpsoft" cfg.limits.ntcpSoft)
+      (intOpt "ntcpthreads" cfg.limits.ntcpThreads)
+      (sec "upnp")
+      (boolOpt "enabled" cfg.upnp.enable)
+      (sec "precomputation")
+      (boolOpt "elgamal" cfg.precomputation.elgamal)
+      (sec "reseed")
+      (boolOpt "verify" cfg.reseed.verify)
+    ] ++ (optionalNullString "file" cfg.reseed.file)
+      ++ (optionalEmptyList "urls" cfg.reseed.urls)
+      ++ (optionalNullString "floodfill" cfg.reseed.floodfill)
+      ++ (optionalNullString "zipfile" cfg.reseed.zipfile)
+      ++ (optionalNullString "proxy" cfg.reseed.proxy)
+      ++ [
+      (sec "trust")
+      (boolOpt "enabled" cfg.trust.enable)
+      (boolOpt "hidden" cfg.trust.hidden)
+    ] ++ (optionalEmptyList "routers" cfg.trust.routers)
+      ++ (optionalNullString "family" cfg.trust.family)
+      ++ [
+      (sec "websockets")
+      (boolOpt "enabled" cfg.websocket.enable)
+      (strOpt "address" cfg.websocket.address)
+      (intOpt "port" cfg.websocket.port)
+      (sec "exploratory")
+      (intOpt "inbound.length" cfg.exploratory.inbound.length)
+      (intOpt "inbound.quantity" cfg.exploratory.inbound.quantity)
+      (intOpt "outbound.length" cfg.exploratory.outbound.length)
+      (intOpt "outbound.quantity" cfg.exploratory.outbound.quantity)
+      (sec "ntcp2")
+      (boolOpt "enabled" cfg.ntcp2.enable)
+      (boolOpt "published" cfg.ntcp2.published)
+      (intOpt "port" cfg.ntcp2.port)
+      (sec "addressbook")
+      (strOpt "defaulturl" cfg.addressbook.defaulturl)
+    ] ++ (optionalEmptyList "subscriptions" cfg.addressbook.subscriptions)
+      ++ (flip map
       (collect (proto: proto ? port && proto ? address && proto ? name) cfg.proto)
-      (proto: ''
-        [${proto.name}]
-        enabled = ${boolToString proto.enable}
-        address = ${proto.address}
-        port = ${toString proto.port}
-        ${if proto ? keys then "keys = ${proto.keys}" else ""}
-        ${if proto ? auth then "auth = ${boolToString proto.auth}" else ""}
-        ${if proto ? user then "user = ${proto.user}" else ""}
-        ${if proto ? pass then "pass = ${proto.pass}" else ""}
-        ${if proto ? outproxy then "outproxy = ${proto.outproxy}" else ""}
-        ${if proto ? outproxyPort then "outproxyport = ${toString proto.outproxyPort}" else ""}
-      '')
-    }
-  '';
-
-  i2pdTunnelConf = pkgs.writeText "i2pd-tunnels.conf" ''
-    # DO NOT EDIT -- this file has been generated automatically.
-    ${flip concatMapStrings
+      (proto: let protoOpts = [
+        (sec proto.name)
+        (boolOpt "enabled" proto.enable)
+        (strOpt "address" proto.address)
+        (intOpt "port" proto.port)
+        ] ++ (if proto ? keys then optionalNullString "keys" proto.keys else [])
+        ++ (if proto ? auth then optionalNullBool "auth" proto.auth else [])
+        ++ (if proto ? user then optionalNullString "user" proto.user else [])
+        ++ (if proto ? pass then optionalNullString "pass" proto.pass else [])
+        ++ (if proto ? strictHeaders then optionalNullBool "strictheaders" proto.strictHeaders else [])
+        ++ (if proto ? hostname then optionalNullString "hostname" proto.hostname else [])
+        ++ (if proto ? outproxy then optionalNullString "outproxy" proto.outproxy else [])
+        ++ (if proto ? outproxyPort then optionalNullInt "outproxyport" proto.outproxyPort else [])
+        ++ (if proto ? outproxyEnable then optionalNullBool "outproxy.enabled" proto.outproxyEnable else []);
+        in (concatStringsSep "\n" protoOpts)
+      ));
+  in
+    pkgs.writeText "i2pd.conf" (concatStringsSep "\n" opts);
+
+  tunnelConf = let opts = [
+    notice
+    (flip map
       (collect (tun: tun ? port && tun ? destination) cfg.outTunnels)
-      (tun: ''
-        [${tun.name}]
-        type = client
-        destination = ${tun.destination}
-        destinationport = ${toString tun.destinationPort}
-        keys = ${tun.keys}
-        address = ${tun.address}
-        port = ${toString tun.port}
-        inbound.length = ${toString tun.inbound.length}
-        outbound.length = ${toString tun.outbound.length}
-        inbound.quantity = ${toString tun.inbound.quantity}
-        outbound.quantity = ${toString tun.outbound.quantity}
-        crypto.tagsToSend = ${toString tun.crypto.tagsToSend}
-      '')
-    }
-    ${flip concatMapStrings
+      (tun: let outTunOpts = [
+        (sec tun.name)
+        "type = client"
+        (intOpt "port" tun.port)
+        (strOpt "destination" tun.destination)
+        ] ++ (if tun ? destinationPort then optionalNullInt "destinationport" tun.destinationPort else [])
+        ++ (if tun ? keys then
+            optionalNullString "keys" tun.keys else [])
+        ++ (if tun ? address then
+            optionalNullString "address" tun.address else [])
+        ++ (if tun ? inbound.length then
+            optionalNullInt "inbound.length" tun.inbound.length else [])
+        ++ (if tun ? inbound.quantity then
+            optionalNullInt "inbound.quantity" tun.inbound.quantity else [])
+        ++ (if tun ? outbound.length then
+            optionalNullInt "outbound.length" tun.outbound.length else [])
+        ++ (if tun ? outbound.quantity then
+            optionalNullInt "outbound.quantity" tun.outbound.quantity else [])
+        ++ (if tun ? crypto.tagsToSend then
+            optionalNullInt "crypto.tagstosend" tun.crypto.tagsToSend else []);
+        in concatStringsSep "\n" outTunOpts))
+    (flip map
       (collect (tun: tun ? port && tun ? address) cfg.inTunnels)
-      (tun: ''
-        [${tun.name}]
-        type = server
-        destination = ${tun.destination}
-        keys = ${tun.keys}
-        host = ${tun.address}
-        port = ${toString tun.port}
-        inport = ${toString tun.inPort}
-        accesslist = ${builtins.concatStringsSep "," tun.accessList}
-      '')
-    }
-  '';
+      (tun: let inTunOpts = [
+        (sec tun.name)
+        "type = server"
+        (intOpt "port" tun.port)
+        (strOpt "host" tun.address)
+      ] ++ (if tun ? destination then
+            optionalNullString "destination" tun.destination else [])
+        ++ (if tun ? keys then
+            optionalNullString "keys" tun.keys else [])
+        ++ (if tun ? inPort then
+            optionalNullInt "inport" tun.inPort else [])
+        ++ (if tun ? accessList then
+            optionalEmptyList "accesslist" tun.accessList else []);
+        in concatStringsSep "\n" inTunOpts))];
+    in pkgs.writeText "i2pd-tunnels.conf" opts;
 
   i2pdSh = pkgs.writeScriptBin "i2pd" ''
     #!/bin/sh
     exec ${pkgs.i2pd}/bin/i2pd \
       ${if isNull cfg.address then "" else "--host="+cfg.address} \
+      --service \
       --conf=${i2pdConf} \
-      --tunconf=${i2pdTunnelConf}
+      --tunconf=${tunnelConf}
   '';
 
 in
@@ -170,9 +241,7 @@ in
 
     services.i2pd = {
 
-      enable = mkOption {
-        type = types.bool;
-        default = false;
+      enable = mkEnableOption "I2Pd daemon" // {
         description = ''
           Enables I2Pd as a running service upon activation.
           Please read http://i2pd.readthedocs.io/en/latest/ for further
@@ -192,6 +261,8 @@ in
         '';
       };
 
+      logCLFTime = mkEnableOption "Full CLF-formatted date and time to log";
+
       address = mkOption {
         type = with types; nullOr str;
         default = null;
@@ -200,17 +271,72 @@ in
         '';
       };
 
-      notransit = mkOption {
-        type = types.bool;
-        default = false;
+      family = mkOption {
+        type = with types; nullOr str;
+        default = null;
+        description = ''
+          Specify a family the router belongs to.
+        '';
+      };
+
+      dataDir = mkOption {
+        type = with types; nullOr str;
+        default = null;
+        description = ''
+          Alternative path to storage of i2pd data (RI, keys, peer profiles, ...)
+        '';
+      };
+
+      share = mkOption {
+        type = types.int;
+        default = 100;
+        description = ''
+          Limit of transit traffic from max bandwidth in percents.
+        '';
+      };
+
+      ifname = mkOption {
+        type = with types; nullOr str;
+        default = null;
+        description = ''
+          Network interface to bind to.
+        '';
+      };
+
+      ifname4 = mkOption {
+        type = with types; nullOr str;
+        default = null;
+        description = ''
+          IPv4 interface to bind to.
+        '';
+      };
+
+      ifname6 = mkOption {
+        type = with types; nullOr str;
+        default = null;
+        description = ''
+          IPv6 interface to bind to.
+        '';
+      };
+
+      ntcpProxy = mkOption {
+        type = with types; nullOr str;
+        default = null;
+        description = ''
+          Proxy URL for NTCP transport.
+        '';
+      };
+
+      ntcp = mkEnableTrueOption "ntcp";
+      ssu = mkEnableTrueOption "ssu";
+
+      notransit = mkEnableOption "notransit" // {
         description = ''
           Tells the router to not accept transit tunnels during startup.
         '';
       };
 
-      floodfill = mkOption {
-        type = types.bool;
-        default = false;
+      floodfill = mkEnableOption "floodfill" // {
         description = ''
           If the router is declared to be unreachable and needs introduction nodes.
         '';
@@ -241,131 +367,178 @@ in
         '';
       };
 
-      enableIPv4 = mkOption {
-        type = types.bool;
-        default = true;
+      enableIPv4 = mkEnableTrueOption "IPv4 connectivity";
+      enableIPv6 = mkEnableOption "IPv6 connectivity";
+      nat = mkEnableTrueOption "NAT bypass";
+
+      upnp.enable = mkEnableOption "UPnP service discovery";
+      upnp.name = mkOption {
+        type = types.str;
+        default = "I2Pd";
         description = ''
-          Enables IPv4 connectivity. Enabled by default.
+          Name i2pd appears in UPnP forwardings list.
         '';
       };
 
-      enableIPv6 = mkOption {
-        type = types.bool;
-        default = false;
+      precomputation.elgamal = mkEnableTrueOption "Precomputed ElGamal tables" // {
         description = ''
-          Enables IPv6 connectivity. Disabled by default.
+          Whenever to use precomputated tables for ElGamal.
+          <command>i2pd</command> defaults to <literal>false</literal>
+          to save 64M of memory (and looses some performance).
+
+          We default to <literal>true</literal> as that is what most
+          users want anyway.
         '';
       };
 
-      nat = mkOption {
-        type = types.bool;
-        default = true;
+      reseed.verify = mkEnableOption "SU3 signature verification";
+
+      reseed.file = mkOption {
+        type = with types; nullOr str;
+        default = null;
         description = ''
-          Assume router is NATed. Enabled by default.
+          Full path to SU3 file to reseed from.
         '';
       };
 
-      upnp = {
-        enable = mkOption {
-          type = types.bool;
-          default = false;
-          description = ''
-            Enables UPnP.
-          '';
-        };
+      reseed.urls = mkOption {
+        type = with types; listOf str;
+        default = [];
+        description = ''
+          Reseed URLs.
+        '';
+      };
 
-        name = mkOption {
-          type = types.str;
-          default = "I2Pd";
-          description = ''
-            Name i2pd appears in UPnP forwardings list.
-          '';
-        };
+      reseed.floodfill = mkOption {
+        type = with types; nullOr str;
+        default = null;
+        description = ''
+          Path to router info of floodfill to reseed from.
+        '';
       };
 
-      precomputation.elgamal = mkOption {
-        type = types.bool;
-        default = true;
+      reseed.zipfile = mkOption {
+        type = with types; nullOr str;
+        default = null;
         description = ''
-          Whenever to use precomputated tables for ElGamal.
-          <command>i2pd</command> defaults to <literal>false</literal>
-          to save 64M of memory (and looses some performance).
+          Path to local .zip file to reseed from.
+        '';
+      };
 
-          We default to <literal>true</literal> as that is what most
-          users want anyway.
+      reseed.proxy = mkOption {
+        type = with types; nullOr str;
+        default = null;
+        description = ''
+          URL for reseed proxy, supports http/socks.
         '';
       };
 
-      reseed = {
-        verify = mkOption {
-          type = types.bool;
-          default = false;
-          description = ''
-            Request SU3 signature verification
-          '';
-        };
+     addressbook.defaulturl = mkOption {
+        type = types.str;
+        default = "http://joajgazyztfssty4w2on5oaqksz6tqoxbduy553y34mf4byv6gpq.b32.i2p/export/alive-hosts.txt";
+        description = ''
+          AddressBook subscription URL for initial setup
+        '';
+      };
+     addressbook.subscriptions = mkOption {
+        type = with types; listOf str;
+        default = [
+          "http://inr.i2p/export/alive-hosts.txt"
+          "http://i2p-projekt.i2p/hosts.txt"
+          "http://stats.i2p/cgi-bin/newhosts.txt"
+        ];
+        description = ''
+          AddressBook subscription URLs
+        '';
+      };
 
-        file = mkOption {
-          type = types.str;
-          default = "";
-          description = ''
-            Full path to SU3 file to reseed from
-          '';
-        };
+      trust.enable = mkEnableOption "Explicit trust options";
 
-        urls = mkOption {
-          type = with types; listOf str;
-          default = [
-            "https://reseed.i2p-project.de/"
-            "https://i2p.mooo.com/netDb/"
-            "https://netdb.i2p2.no/"
-            "https://us.reseed.i2p2.no:444/"
-            "https://uk.reseed.i2p2.no:444/"
-            "https://i2p.manas.ca:8443/"
-          ];
-          description = ''
-            Reseed URLs
-          '';
-        };
+      trust.family = mkOption {
+        type = with types; nullOr str;
+        default = null;
+        description = ''
+          Router Familiy to trust for first hops.
+        '';
       };
 
-      addressbook = {
-       defaulturl = mkOption {
-          type = types.str;
-          default = "http://joajgazyztfssty4w2on5oaqksz6tqoxbduy553y34mf4byv6gpq.b32.i2p/export/alive-hosts.txt";
-          description = ''
-            AddressBook subscription URL for initial setup
-          '';
-        };
-       subscriptions = mkOption {
-          type = with types; listOf str;
-          default = [
-            "http://inr.i2p/export/alive-hosts.txt"
-            "http://i2p-projekt.i2p/hosts.txt"
-            "http://stats.i2p/cgi-bin/newhosts.txt"
-          ];
-          description = ''
-            AddressBook subscription URLs
-          '';
-        };
+      trust.routers = mkOption {
+        type = with types; listOf str;
+        default = [];
+        description = ''
+          Only connect to the listed routers.
+        '';
+      };
+
+      trust.hidden = mkEnableOption "Router concealment.";
+
+      websocket = mkEndpointOpt "websockets" "127.0.0.1" 7666;
+
+      exploratory.inbound = i2cpOpts "exploratory";
+      exploratory.outbound = i2cpOpts "exploratory";
+
+      ntcp2.enable = mkEnableTrueOption "NTCP2.";
+      ntcp2.published = mkEnableOption "NTCP2 publication.";
+      ntcp2.port = mkOption {
+        type = types.int;
+        default = 0;
+        description = ''
+          Port to listen for incoming NTCP2 connections (0=auto).
+        '';
       };
 
       limits.transittunnels = mkOption {
         type = types.int;
         default = 2500;
         description = ''
-          Maximum number of active transit sessions
+          Maximum number of active transit sessions.
+        '';
+      };
+
+      limits.coreSize = mkOption {
+        type = types.int;
+        default = 0;
+        description = ''
+          Maximum size of corefile in Kb (0 - use system limit).
+        '';
+      };
+
+      limits.openFiles = mkOption {
+        type = types.int;
+        default = 0;
+        description = ''
+          Maximum number of open files (0 - use system default).
+        '';
+      };
+
+      limits.ntcpHard = mkOption {
+        type = types.int;
+        default = 0;
+        description = ''
+          Maximum number of active transit sessions.
+        '';
+      };
+
+      limits.ntcpSoft = mkOption {
+        type = types.int;
+        default = 0;
+        description = ''
+          Threshold to start probabalistic backoff with ntcp sessions (default: use system limit).
+        '';
+      };
+
+      limits.ntcpThreads = mkOption {
+        type = types.int;
+        default = 1;
+        description = ''
+          Maximum number of threads used by NTCP DH worker.
         '';
       };
 
       proto.http = (mkEndpointOpt "http" "127.0.0.1" 7070) // {
-        auth = mkOption {
-          type = types.bool;
-          default = false;
-          description = ''
-            Enable authentication for webconsole.
-          '';
-        };
+
+        auth = mkEnableOption "Webconsole authentication";
+
         user = mkOption {
           type = types.str;
           default = "i2pd";
@@ -373,6 +546,7 @@ in
             Username for webconsole access
           '';
         };
+
         pass = mkOption {
           type = types.str;
           default = "i2pd";
@@ -380,11 +554,35 @@ in
             Password for webconsole access.
           '';
         };
+
+        strictHeaders = mkOption {
+          type = with types; nullOr bool;
+          default = null;
+          description = ''
+            Enable strict host checking on WebUI.
+          '';
+        };
+
+        hostname = mkOption {
+          type = with types; nullOr str;
+          default = null;
+          description = ''
+            Expected hostname for WebUI.
+          '';
+        };
       };
 
-      proto.httpProxy = mkKeyedEndpointOpt "httpproxy" "127.0.0.1" 4444 "";
-      proto.socksProxy = (mkKeyedEndpointOpt "socksproxy" "127.0.0.1" 4447 "")
+      proto.httpProxy = (mkKeyedEndpointOpt "httpproxy" "127.0.0.1" 4444 "httpproxy-keys.dat")
+      // {
+        outproxy = mkOption {
+          type = with types; nullOr str;
+          default = null;
+          description = "Upstream outproxy bind address.";
+        };
+      };
+      proto.socksProxy = (mkKeyedEndpointOpt "socksproxy" "127.0.0.1" 4447 "socksproxy-keys.dat")
       // {
+        outproxyEnable = mkEnableOption "SOCKS outproxy";
         outproxy = mkOption {
           type = types.str;
           default = "127.0.0.1";
@@ -408,8 +606,8 @@ in
           { name, ... }: {
             options = {
               destinationPort = mkOption {
-                type = types.int;
-                default = 0;
+                type = with types; nullOr int;
+                default = null;
                 description = "Connect to particular port at destination.";
               };
             } // commonTunOpts name;
diff --git a/nixos/modules/services/networking/iperf3.nix b/nixos/modules/services/networking/iperf3.nix
new file mode 100644
index 000000000000..742404a5692f
--- /dev/null
+++ b/nixos/modules/services/networking/iperf3.nix
@@ -0,0 +1,87 @@
+{ config, lib, pkgs, ... }: with lib;
+let
+  cfg = config.services.iperf3;
+
+  api = {
+    enable = mkEnableOption "iperf3 network throughput testing server";
+    port = mkOption {
+      type        = types.ints.u16;
+      default     = 5201;
+      description = "Server port to listen on for iperf3 client requsts.";
+    };
+    affinity = mkOption {
+      type        = types.nullOr types.ints.unsigned;
+      default     = null;
+      description = "CPU affinity for the process.";
+    };
+    bind = mkOption {
+      type        = types.nullOr types.str;
+      default     = null;
+      description = "Bind to the specific interface associated with the given address.";
+    };
+    verbose = mkOption {
+      type        = types.bool;
+      default     = false;
+      description = "Give more detailed output.";
+    };
+    forceFlush = mkOption {
+      type        = types.bool;
+      default     = false;
+      description = "Force flushing output at every interval.";
+    };
+    debug = mkOption {
+      type        = types.bool;
+      default     = false;
+      description = "Emit debugging output.";
+    };
+    rsaPrivateKey = mkOption {
+      type        = types.nullOr types.path;
+      default     = null;
+      description = "Path to the RSA private key (not password-protected) used to decrypt authentication credentials from the client.";
+    };
+    authorizedUsersFile = mkOption {
+      type        = types.nullOr types.path;
+      default     = null;
+      description = "Path to the configuration file containing authorized users credentials to run iperf tests.";
+    };
+    extraFlags = mkOption {
+      type        = types.listOf types.str;
+      default     = [ ];
+      description = "Extra flags to pass to iperf3(1).";
+    };
+  };
+
+  imp = {
+    systemd.services.iperf3 = {
+      description = "iperf3 daemon";
+      unitConfig.Documentation = "man:iperf3(1) https://iperf.fr/iperf-doc.php";
+      wantedBy = [ "multi-user.target" ];
+      after = [ "network.target" ];
+
+      serviceConfig = {
+        Restart = "on-failure";
+        RestartSec = 2;
+        DynamicUser = true;
+        PrivateDevices = true;
+        CapabilityBoundingSet = "";
+        NoNewPrivileges = true;
+        ExecStart = ''
+          ${pkgs.iperf3}/bin/iperf \
+            --server \
+            --port ${toString cfg.port} \
+            ${optionalString (cfg.affinity != null) "--affinity ${toString cfg.affinity}"} \
+            ${optionalString (cfg.bind != null) "--bind ${cfg.bind}"} \
+            ${optionalString (cfg.rsaPrivateKey != null) "--rsa-private-key-path ${cfg.rsaPrivateKey}"} \
+            ${optionalString (cfg.authorizedUsersFile != null) "--authorized-users-path ${cfg.authorizedUsersFile}"} \
+            ${optionalString cfg.verbose "--verbose"} \
+            ${optionalString cfg.debug "--debug"} \
+            ${optionalString cfg.forceFlush "--forceflush"} \
+            ${escapeShellArgs cfg.extraFlags}
+        '';
+      };
+    };
+  };
+in {
+  options.services.iperf3 = api;
+  config = mkIf cfg.enable imp;
+}
diff --git a/nixos/modules/services/networking/networkmanager.nix b/nixos/modules/services/networking/networkmanager.nix
index d5af4648e8f9..2d76e0676b24 100644
--- a/nixos/modules/services/networking/networkmanager.nix
+++ b/nixos/modules/services/networking/networkmanager.nix
@@ -406,25 +406,25 @@ in {
       { source = configFile;
         target = "NetworkManager/NetworkManager.conf";
       }
-      { source = "${networkmanager-openvpn}/etc/NetworkManager/VPN/nm-openvpn-service.name";
+      { source = "${networkmanager-openvpn}/lib/NetworkManager/VPN/nm-openvpn-service.name";
         target = "NetworkManager/VPN/nm-openvpn-service.name";
       }
-      { source = "${networkmanager-vpnc}/etc/NetworkManager/VPN/nm-vpnc-service.name";
+      { source = "${networkmanager-vpnc}/lib/NetworkManager/VPN/nm-vpnc-service.name";
         target = "NetworkManager/VPN/nm-vpnc-service.name";
       }
-      { source = "${networkmanager-openconnect}/etc/NetworkManager/VPN/nm-openconnect-service.name";
+      { source = "${networkmanager-openconnect}/lib/NetworkManager/VPN/nm-openconnect-service.name";
         target = "NetworkManager/VPN/nm-openconnect-service.name";
       }
-      { source = "${networkmanager-fortisslvpn}/etc/NetworkManager/VPN/nm-fortisslvpn-service.name";
+      { source = "${networkmanager-fortisslvpn}/lib/NetworkManager/VPN/nm-fortisslvpn-service.name";
         target = "NetworkManager/VPN/nm-fortisslvpn-service.name";
       }
-      { source = "${networkmanager-l2tp}/etc/NetworkManager/VPN/nm-l2tp-service.name";
+      { source = "${networkmanager-l2tp}/lib/NetworkManager/VPN/nm-l2tp-service.name";
         target = "NetworkManager/VPN/nm-l2tp-service.name";
       }
-      { source = "${networkmanager_strongswan}/etc/NetworkManager/VPN/nm-strongswan-service.name";
+      { source = "${networkmanager_strongswan}/lib/NetworkManager/VPN/nm-strongswan-service.name";
         target = "NetworkManager/VPN/nm-strongswan-service.name";
       }
-      { source = "${networkmanager-iodine}/etc/NetworkManager/VPN/nm-iodine-service.name";
+      { source = "${networkmanager-iodine}/lib/NetworkManager/VPN/nm-iodine-service.name";
         target = "NetworkManager/VPN/nm-iodine-service.name";
       }
     ] ++ optional (cfg.appendNameservers == [] || cfg.insertNameservers == [])
diff --git a/nixos/modules/services/networking/nullidentdmod.nix b/nixos/modules/services/networking/nullidentdmod.nix
new file mode 100644
index 000000000000..786b5227dbad
--- /dev/null
+++ b/nixos/modules/services/networking/nullidentdmod.nix
@@ -0,0 +1,34 @@
+{ config, lib, pkgs, ... }: with lib; let
+  cfg = config.services.nullidentdmod;
+
+in {
+  options.services.nullidentdmod = with types; {
+    enable = mkEnableOption "Enable the nullidentdmod identd daemon";
+
+    userid = mkOption {
+      type = nullOr str;
+      description = "User ID to return. Set to null to return a random string each time.";
+      default = null;
+      example = "alice";
+    };
+  };
+
+  config = mkIf cfg.enable {
+    systemd.sockets.nullidentdmod = {
+      description = "Socket for identd (NullidentdMod)";
+      listenStreams = [ "113" ];
+      socketConfig.Accept = true;
+      wantedBy = [ "sockets.target" ];
+    };
+
+    systemd.services."nullidentdmod@" = {
+      description = "NullidentdMod service";
+      serviceConfig = {
+        DynamicUser = true;
+        ExecStart = "${pkgs.nullidentdmod}/bin/nullidentdmod${optionalString (cfg.userid != null) " ${cfg.userid}"}";
+        StandardInput = "socket";
+        StandardOutput = "socket";
+      };
+    };
+  };
+}
diff --git a/nixos/modules/services/networking/zeronet.nix b/nixos/modules/services/networking/zeronet.nix
index 2377cb2c8f11..8b60799891ca 100644
--- a/nixos/modules/services/networking/zeronet.nix
+++ b/nixos/modules/services/networking/zeronet.nix
@@ -12,6 +12,8 @@ let
       log_dir = ${cfg.logDir}
     '' + lib.optionalString (cfg.port != null) ''
       ui_port = ${toString cfg.port}
+    '' + lib.optionalString (cfg.torAlways) ''
+      tor = always
     '' + cfg.extraConfig;
   };
 in with lib; {
@@ -35,13 +37,19 @@ in with lib; {
     port = mkOption {
       type = types.nullOr types.int;
       default = null;
-      example = 15441;
-      description = "Optional zeronet port.";
+      example = 43110;
+      description = "Optional zeronet web UI port.";
     };
 
     tor = mkOption {
       type = types.bool;
       default = false;
+      description = "Use TOR for zeronet traffic where possible.";
+    };
+
+    torAlways = mkOption {
+      type = types.bool;
+      default = false;
       description = "Use TOR for all zeronet traffic.";
     };
 
@@ -60,9 +68,13 @@ in with lib; {
     services.tor = mkIf cfg.tor {
       enable = true;
       controlPort = 9051;
-      extraConfig = "CookieAuthentication 1";
+      extraConfig = ''
+        CacheDirectoryGroupReadable 1
+        CookieAuthentication 1
+        CookieAuthFileGroupReadable 1
+      '';
     };
-    
+
     systemd.services.zeronet = {
       description = "zeronet";
       after = [ "network.target" (optionalString cfg.tor "tor.service") ];
diff --git a/nixos/modules/services/security/sks.nix b/nixos/modules/services/security/sks.nix
index 62308428f326..9f0261038d5b 100644
--- a/nixos/modules/services/security/sks.nix
+++ b/nixos/modules/services/security/sks.nix
@@ -3,78 +3,112 @@
 with lib;
 
 let
-
   cfg = config.services.sks;
-
   sksPkg = cfg.package;
 
-in
-
-{
+in {
+  meta.maintainers = with maintainers; [ primeos calbrecht jcumming ];
 
   options = {
 
     services.sks = {
 
-      enable = mkEnableOption "sks";
+      enable = mkEnableOption ''
+        SKS (synchronizing key server for OpenPGP) and start the database
+        server. You need to create "''${dataDir}/dump/*.gpg" for the initial
+        import'';
 
       package = mkOption {
         default = pkgs.sks;
         defaultText = "pkgs.sks";
         type = types.package;
-        description = "
-          Which sks derivation to use.
-        ";
+        description = "Which SKS derivation to use.";
+      };
+
+      dataDir = mkOption {
+        type = types.path;
+        default = "/var/db/sks";
+        example = "/var/lib/sks";
+        # TODO: The default might change to "/var/lib/sks" as this is more
+        # common. There's also https://github.com/NixOS/nixpkgs/issues/26256
+        # and "/var/db" is not FHS compliant (seems to come from BSD).
+        description = ''
+          Data directory (-basedir) for SKS, where the database and all
+          configuration files are located (e.g. KDB, PTree, membership and
+          sksconf).
+        '';
       };
 
       hkpAddress = mkOption {
         default = [ "127.0.0.1" "::1" ];
         type = types.listOf types.str;
-        description = "
-          Wich ip addresses the sks-keyserver is listening on.
-        ";
+        description = ''
+          Domain names, IPv4 and/or IPv6 addresses to listen on for HKP
+          requests.
+        '';
       };
 
       hkpPort = mkOption {
         default = 11371;
-        type = types.int;
-        description = "
-          Which port the sks-keyserver is listening on.
-        ";
+        type = types.ints.u16;
+        description = "HKP port to listen on.";
+      };
+
+      webroot = mkOption {
+        type = types.nullOr types.path;
+        default = "${sksPkg.webSamples}/OpenPKG";
+        defaultText = "\${pkgs.sks.webSamples}/OpenPKG";
+        description = ''
+          Source directory (will be symlinked, if not null) for the files the
+          built-in webserver should serve. SKS (''${pkgs.sks.webSamples})
+          provides the following examples: "HTML5", "OpenPKG", and "XHTML+ES".
+          The index file can be named index.html, index.htm, index.xhtm, or
+          index.xhtml. Files with the extensions .css, .es, .js, .jpg, .jpeg,
+          .png, or .gif are supported. Subdirectories and filenames with
+          anything other than alphanumeric characters and the '.' character
+          will be ignored.
+        '';
       };
     };
   };
 
   config = mkIf cfg.enable {
 
-    environment.systemPackages = [ sksPkg ];
-    
-    users.users.sks = {
-      createHome = true;
-      home = "/var/db/sks";
-      isSystemUser = true;
-      shell = "${pkgs.coreutils}/bin/true";
+    users = {
+      users.sks = {
+        isSystemUser = true;
+        description = "SKS user";
+        home = cfg.dataDir;
+        createHome = true;
+        group = "sks";
+        useDefaultShell = true;
+        packages = [ sksPkg pkgs.db ];
+      };
+      groups.sks = { };
     };
 
     systemd.services = let
       hkpAddress = "'" + (builtins.concatStringsSep " " cfg.hkpAddress) + "'" ;
       hkpPort = builtins.toString cfg.hkpPort;
-      home = config.users.users.sks.home;
-      user = config.users.users.sks.name;
     in {
-      sks-keyserver = {
+      "sks-db" = {
+        description = "SKS database server";
+        after = [ "network.target" ];
         wantedBy = [ "multi-user.target" ];
         preStart = ''
-          mkdir -p ${home}/dump
-          ${pkgs.sks}/bin/sks build ${home}/dump/*.gpg -n 10 -cache 100 || true #*/
-          ${pkgs.sks}/bin/sks cleandb || true
-          ${pkgs.sks}/bin/sks pbuild -cache 20 -ptree_cache 70 || true
+          ${lib.optionalString (cfg.webroot != null)
+            "ln -sfT \"${cfg.webroot}\" web"}
+          mkdir -p dump
+          ${sksPkg}/bin/sks build dump/*.gpg -n 10 -cache 100 || true #*/
+          ${sksPkg}/bin/sks cleandb || true
+          ${sksPkg}/bin/sks pbuild -cache 20 -ptree_cache 70 || true
         '';
         serviceConfig = {
-          WorkingDirectory = home;
-          User = user;
+          WorkingDirectory = "~";
+          User = "sks";
+          Group = "sks";
           Restart = "always";
-          ExecStart = "${pkgs.sks}/bin/sks db -hkp_address ${hkpAddress} -hkp_port ${hkpPort}";
+          ExecStart = "${sksPkg}/bin/sks db -hkp_address ${hkpAddress} -hkp_port ${hkpPort}";
         };
       };
     };
diff --git a/nixos/modules/services/security/tor.nix b/nixos/modules/services/security/tor.nix
index def77ba69e58..9b6d4be9bda8 100644
--- a/nixos/modules/services/security/tor.nix
+++ b/nixos/modules/services/security/tor.nix
@@ -208,7 +208,7 @@ in
           enable = mkOption {
             type = types.bool;
             default = false;
-            description = "Whether to enable tor transaprent proxy";
+            description = "Whether to enable tor transparent proxy";
           };
 
           listenAddress = mkOption {
diff --git a/nixos/modules/services/system/kerberos.nix b/nixos/modules/services/system/kerberos.nix
index d151385d2f9b..e2c45ed64ac0 100644
--- a/nixos/modules/services/system/kerberos.nix
+++ b/nixos/modules/services/system/kerberos.nix
@@ -42,7 +42,7 @@ in
         protocol = "tcp";
         user = "root";
         server = "${pkgs.tcp_wrappers}/bin/tcpd";
-        serverArgs = "${pkgs.heimdalFull}/bin/kadmind";
+        serverArgs = "${pkgs.heimdalFull}/libexec/heimdal/kadmind";
       };
 
     systemd.services.kdc = {
@@ -51,13 +51,13 @@ in
       preStart = ''
         mkdir -m 0755 -p ${stateDir}
       '';
-      script = "${heimdalFull}/bin/kdc";
+      script = "${heimdalFull}/libexec/heimdal/kdc";
     };
 
     systemd.services.kpasswdd = {
       description = "Kerberos Password Changing daemon";
       wantedBy = [ "multi-user.target" ];
-      script = "${heimdalFull}/bin/kpasswdd";
+      script = "${heimdalFull}/libexec/heimdal/kpasswdd";
     };
   };
 
diff --git a/nixos/modules/services/web-apps/codimd.nix b/nixos/modules/services/web-apps/codimd.nix
new file mode 100644
index 000000000000..5368e8b0e664
--- /dev/null
+++ b/nixos/modules/services/web-apps/codimd.nix
@@ -0,0 +1,958 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+  cfg = config.services.codimd;
+
+  prettyJSON = conf:
+    pkgs.runCommand "codimd-config.json" { } ''
+      echo '${builtins.toJSON conf}' | ${pkgs.jq}/bin/jq \
+        '{production:del(.[]|nulls)|del(.[][]?|nulls)}' > $out
+    '';
+in
+{
+  options.services.codimd = {
+    enable = mkEnableOption "the CodiMD Markdown Editor";
+
+    groups = mkOption {
+      type = types.listOf types.str;
+      default = [];
+      description = ''
+        Groups to which the codimd user should be added.
+      '';
+    };
+
+    workDir = mkOption {
+      type = types.path;
+      default = "/var/lib/codimd";
+      description = ''
+        Working directory for the CodiMD service.
+      '';
+    };
+
+    configuration = {
+      debug = mkEnableOption "debug mode";
+      domain = mkOption {
+        type = types.nullOr types.str;
+        default = null;
+        example = "codimd.org";
+        description = ''
+          Domain name for the CodiMD instance.
+        '';
+      };
+      urlPath = mkOption {
+        type = types.nullOr types.str;
+        default = null;
+        example = "/url/path/to/codimd";
+        description = ''
+          Path under which CodiMD is accessible.
+        '';
+      };
+      host = mkOption {
+        type = types.str;
+        default = "localhost";
+        description = ''
+          Address to listen on.
+        '';
+      };
+      port = mkOption {
+        type = types.int;
+        default = 3000;
+        example = "80";
+        description = ''
+          Port to listen on.
+        '';
+      };
+      path = mkOption {
+        type = types.nullOr types.str;
+        default = null;
+        example = "/var/run/codimd.sock";
+        description = ''
+          Specify where a UNIX domain socket should be placed.
+        '';
+      };
+      allowOrigin = mkOption {
+        type = types.listOf types.str;
+        default = [];
+        example = [ "localhost" "codimd.org" ];
+        description = ''
+          List of domains to whitelist.
+        '';
+      };
+      useSSL = mkOption {
+        type = types.bool;
+        default = false;
+        description = ''
+          Enable to use SSL server. This will also enable
+          <option>protocolUseSSL</option>.
+        '';
+      };
+      hsts = {
+        enable = mkOption {
+          type = types.bool;
+          default = true;
+          description = ''
+            Wheter to enable HSTS if HTTPS is also enabled.
+          '';
+        };
+        maxAgeSeconds = mkOption {
+          type = types.int;
+          default = 31536000;
+          description = ''
+            Max duration for clients to keep the HSTS status.
+          '';
+        };
+        includeSubdomains = mkOption {
+          type = types.bool;
+          default = true;
+          description = ''
+            Whether to include subdomains in HSTS.
+          '';
+        };
+        preload = mkOption {
+          type = types.bool;
+          default = true;
+          description = ''
+            Whether to allow preloading of the site's HSTS status.
+          '';
+        };
+      };
+      csp = mkOption {
+        type = types.nullOr types.attrs;
+        default = null;
+        example = literalExample ''
+          {
+            enable = true;
+            directives = {
+              scriptSrc = "trustworthy.scripts.example.com";
+            };
+            upgradeInsecureRequest = "auto";
+            addDefaults = true;
+          }
+        '';
+        description = ''
+          Specify the Content Security Policy which is passed to Helmet.
+          For configuration details see <link xlink:href="https://helmetjs.github.io/docs/csp/"
+          >https://helmetjs.github.io/docs/csp/</link>.
+        '';
+      };
+      protocolUseSSL = mkOption {
+        type = types.bool;
+        default = false;
+        description = ''
+          Enable to use TLS for resource paths.
+          This only applies when <option>domain</option> is set.
+        '';
+      };
+      urlAddPort = mkOption {
+        type = types.bool;
+        default = false;
+        description = ''
+          Enable to add the port to callback URLs.
+          This only applies when <option>domain</option> is set
+          and only for ports other than 80 and 443.
+        '';
+      };
+      useCDN = mkOption {
+        type = types.bool;
+        default = true;
+        description = ''
+          Whether to use CDN resources or not.
+        '';
+      };
+      allowAnonymous = mkOption {
+        type = types.bool;
+        default = true;
+        description = ''
+          Whether to allow anonymous usage.
+        '';
+      };
+      allowAnonymousEdits = mkOption {
+        type = types.bool;
+        default = false;
+        description = ''
+          Whether to allow guests to edit existing notes with the `freely' permission,
+          when <option>allowAnonymous</option> is enabled.
+        '';
+      };
+      allowFreeURL = mkOption {
+        type = types.bool;
+        default = false;
+        description = ''
+          Whether to allow note creation by accessing a nonexistent note URL.
+        '';
+      };
+      defaultPermission = mkOption {
+        type = types.enum [ "freely" "editable" "limited" "locked" "private" ];
+        default = "editable";
+        description = ''
+          Default permissions for notes.
+          This only applies for signed-in users.
+        '';
+      };
+      dbURL = mkOption {
+        type = types.nullOr types.str;
+        default = null;
+        example = ''
+          postgres://user:pass@host:5432/dbname
+        '';
+        description = ''
+          Specify which database to use.
+          CodiMD supports mysql, postgres, sqlite and mssql.
+          See <link xlink:href="https://sequelize.readthedocs.io/en/v3/">
+          https://sequelize.readthedocs.io/en/v3/</link> for more information.
+          Note: This option overrides <option>db</option>.
+        '';
+      };
+      db = mkOption {
+        type = types.attrs;
+        default = {};
+        example = literalExample ''
+          {
+            dialect = "sqlite";
+            storage = "/var/lib/codimd/db.codimd.sqlite";
+          }
+        '';
+        description = ''
+          Specify the configuration for sequelize.
+          CodiMD supports mysql, postgres, sqlite and mssql.
+          See <link xlink:href="https://sequelize.readthedocs.io/en/v3/">
+          https://sequelize.readthedocs.io/en/v3/</link> for more information.
+          Note: This option overrides <option>db</option>.
+        '';
+      };
+      sslKeyPath= mkOption {
+        type = types.nullOr types.str;
+        default = null;
+        example = "/var/lib/codimd/codimd.key";
+        description = ''
+          Path to the SSL key. Needed when <option>useSSL</option> is enabled.
+        '';
+      };
+      sslCertPath = mkOption {
+        type = types.nullOr types.str;
+        default = null;
+        example = "/var/lib/codimd/codimd.crt";
+        description = ''
+          Path to the SSL cert. Needed when <option>useSSL</option> is enabled.
+        '';
+      };
+      sslCAPath = mkOption {
+        type = types.listOf types.str;
+        default = [];
+        example = [ "/var/lib/codimd/ca.crt" ];
+        description = ''
+          SSL ca chain. Needed when <option>useSSL</option> is enabled.
+        '';
+      };
+      dhParamPath = mkOption {
+        type = types.nullOr types.str;
+        default = null;
+        example = "/var/lib/codimd/dhparam.pem";
+        description = ''
+          Path to the SSL dh params. Needed when <option>useSSL</option> is enabled.
+        '';
+      };
+      tmpPath = mkOption {
+        type = types.str;
+        default = "/tmp";
+        description = ''
+          Path to the temp directory CodiMD should use.
+          Note that <option>serviceConfig.PrivateTmp</option> is enabled for
+          the CodiMD systemd service by default.
+          (Non-canonical paths are relative to CodiMD's base directory)
+        '';
+      };
+      defaultNotePath = mkOption {
+        type = types.nullOr types.str;
+        default = "./public/default.md";
+        description = ''
+          Path to the default Note file.
+          (Non-canonical paths are relative to CodiMD's base directory)
+        '';
+      };
+      docsPath = mkOption {
+        type = types.nullOr types.str;
+        default = "./public/docs";
+        description = ''
+          Path to the docs directory.
+          (Non-canonical paths are relative to CodiMD's base directory)
+        '';
+      };
+      indexPath = mkOption {
+        type = types.nullOr types.str;
+        default = "./public/views/index.ejs";
+        description = ''
+          Path to the index template file.
+          (Non-canonical paths are relative to CodiMD's base directory)
+        '';
+      };
+      hackmdPath = mkOption {
+        type = types.nullOr types.str;
+        default = "./public/views/hackmd.ejs";
+        description = ''
+          Path to the hackmd template file.
+          (Non-canonical paths are relative to CodiMD's base directory)
+        '';
+      };
+      errorPath = mkOption {
+        type = types.nullOr types.str;
+        default = null;
+        defaultText = "./public/views/error.ejs";
+        description = ''
+          Path to the error template file.
+          (Non-canonical paths are relative to CodiMD's base directory)
+        '';
+      };
+      prettyPath = mkOption {
+        type = types.nullOr types.str;
+        default = null;
+        defaultText = "./public/views/pretty.ejs";
+        description = ''
+          Path to the pretty template file.
+          (Non-canonical paths are relative to CodiMD's base directory)
+        '';
+      };
+      slidePath = mkOption {
+        type = types.nullOr types.str;
+        default = null;
+        defaultText = "./public/views/slide.hbs";
+        description = ''
+          Path to the slide template file.
+          (Non-canonical paths are relative to CodiMD's base directory)
+        '';
+      };
+      uploadsPath = mkOption {
+        type = types.str;
+        default = "${cfg.workDir}/uploads";
+        defaultText = "/var/lib/codimd/uploads";
+        description = ''
+          Path under which uploaded files are saved.
+        '';
+      };
+      sessionName = mkOption {
+        type = types.str;
+        default = "connect.sid";
+        description = ''
+          Specify the name of the session cookie.
+        '';
+      };
+      sessionSecret = mkOption {
+        type = types.nullOr types.str;
+        default = null;
+        description = ''
+          Specify the secret used to sign the session cookie.
+          If unset, one will be generated on startup.
+        '';
+      };
+      sessionLife = mkOption {
+        type = types.int;
+        default = 1209600000;
+        description = ''
+          Session life time in milliseconds.
+        '';
+      };
+      heartbeatInterval = mkOption {
+        type = types.int;
+        default = 5000;
+        description = ''
+          Specify the socket.io heartbeat interval.
+        '';
+      };
+      heartbeatTimeout = mkOption {
+        type = types.int;
+        default = 10000;
+        description = ''
+          Specify the socket.io heartbeat timeout.
+        '';
+      };
+      documentMaxLength = mkOption {
+        type = types.int;
+        default = 100000;
+        description = ''
+          Specify the maximum document length.
+        '';
+      };
+      email = mkOption {
+        type = types.bool;
+        default = true;
+        description = ''
+          Whether to enable email sign-in.
+        '';
+      };
+      allowEmailRegister = mkOption {
+        type = types.bool;
+        default = true;
+        description = ''
+          Wether to enable email registration.
+        '';
+      };
+      allowGravatar = mkOption {
+        type = types.bool;
+        default = true;
+        description = ''
+          Whether to use gravatar as profile picture source.
+        '';
+      };
+      imageUploadType = mkOption {
+        type = types.enum [ "imgur" "s3" "minio" "filesystem" ];
+        default = "filesystem";
+        description = ''
+          Specify where to upload images.
+        '';
+      };
+      minio = mkOption {
+        type = types.nullOr (types.submodule {
+          options = {
+            accessKey = mkOption {
+              type = types.str;
+              default = "";
+              description = ''
+                Minio access key.
+              '';
+            };
+            secretKey = mkOption {
+              type = types.str;
+              default = "";
+              description = ''
+                Minio secret key.
+              '';
+            };
+            endpoint = mkOption {
+              type = types.str;
+              default = "";
+              description = ''
+                Minio endpoint.
+              '';
+            };
+            port = mkOption {
+              type = types.int;
+              default = 9000;
+              description = ''
+                Minio listen port.
+              '';
+            };
+            secure = mkOption {
+              type = types.bool;
+              default = true;
+              description = ''
+                Whether to use HTTPS for Minio.
+              '';
+            };
+          };
+        });
+        default = null;
+        description = "Configure the minio third-party integration.";
+      };
+      s3 = mkOption {
+        type = types.nullOr (types.submodule {
+          options = {
+            accessKeyId = mkOption {
+              type = types.str;
+              default = "";
+              description = ''
+                AWS access key id.
+              '';
+            };
+            secretAccessKey = mkOption {
+              type = types.str;
+              default = "";
+              description = ''
+                AWS access key.
+              '';
+            };
+            region = mkOption {
+              type = types.str;
+              default = "";
+              description = ''
+                AWS S3 region.
+              '';
+            };
+          };
+        });
+        default = null;
+        description = "Configure the s3 third-party integration.";
+      };
+      s3bucket = mkOption {
+        type = types.nullOr types.str;
+        default = null;
+        description = ''
+          Specify the bucket name for upload types <literal>s3</literal> and <literal>minio</literal>.
+        '';
+      };
+      allowPDFExport = mkOption {
+        type = types.bool;
+        default = true;
+        description = ''
+          Whether to enable PDF exports.
+        '';
+      };
+      imgur.clientId = mkOption {
+        type = types.nullOr types.str;
+        default = null;
+        description = ''
+          Imgur API client ID.
+        '';
+      };
+      azure = mkOption {
+        type = types.nullOr (types.submodule {
+          options = {
+            connectionString = mkOption {
+              type = types.str;
+              default = "";
+              description = ''
+                Azure Blob Storage connection string.
+              '';
+            };
+            container = mkOption {
+              type = types.str;
+              default = "";
+              description = ''
+                Azure Blob Storage container name.
+                It will be created if non-existent.
+              '';
+            };
+          };
+        });
+        default = null;
+        description = "Configure the azure third-party integration.";
+      };
+      oauth2 = mkOption {
+        type = types.nullOr (types.submodule {
+          options = {
+            authorizationURL = mkOption {
+              type = types.str;
+              default = "";
+              description = ''
+                Specify the OAuth authorization URL.
+              '';
+            };
+            tokenURL = mkOption {
+              type = types.str;
+              default = "";
+              description = ''
+                Specify the OAuth token URL.
+              '';
+            };
+            clientID = mkOption {
+              type = types.str;
+              default = "";
+              description = ''
+                Specify the OAuth client ID.
+              '';
+            };
+            clientSecret = mkOption {
+              type = types.str;
+              default = "";
+              description = ''
+                Specify the OAuth client secret.
+              '';
+            };
+          };
+        });
+        default = null;
+        description = "Configure the OAuth integration.";
+      };
+      facebook = mkOption {
+        type = types.nullOr (types.submodule {
+          options = {
+            clientID = mkOption {
+              type = types.str;
+              default = "";
+              description = ''
+                Facebook API client ID.
+              '';
+            };
+            clientSecret = mkOption {
+              type = types.str;
+              default = "";
+              description = ''
+                Facebook API client secret.
+              '';
+            };
+          };
+        });
+        default = null;
+        description = "Configure the facebook third-party integration";
+      };
+      twitter = mkOption {
+        type = types.nullOr (types.submodule {
+          options = {
+            consumerKey = mkOption {
+              type = types.str;
+              default = "";
+              description = ''
+                Twitter API consumer key.
+              '';
+            };
+            consumerSecret = mkOption {
+              type = types.str;
+              default = "";
+              description = ''
+                Twitter API consumer secret.
+              '';
+            };
+          };
+        });
+        default = null;
+        description = "Configure the Twitter third-party integration.";
+      };
+      github = mkOption {
+        type = types.nullOr (types.submodule {
+          options = {
+            clientID = mkOption {
+              type = types.str;
+              default = "";
+              description = ''
+                GitHub API client ID.
+              '';
+            };
+            clientSecret = mkOption {
+              type = types.str;
+              default = "";
+              description = ''
+                Github API client secret.
+              '';
+            };
+          };
+        });
+        default = null;
+        description = "Configure the GitHub third-party integration.";
+      };
+      gitlab = mkOption {
+        type = types.nullOr (types.submodule {
+          options = {
+            baseURL = mkOption {
+              type = types.str;
+              default = "";
+              description = ''
+                GitLab API authentication endpoint.
+                Only needed for other endpoints than gitlab.com.
+              '';
+            };
+            clientID = mkOption {
+              type = types.str;
+              default = "";
+              description = ''
+                GitLab API client ID.
+              '';
+            };
+            clientSecret = mkOption {
+              type = types.str;
+              default = "";
+              description = ''
+                GitLab API client secret.
+              '';
+            };
+            scope = mkOption {
+              type = types.enum [ "api" "read_user" ];
+              default = "api";
+              description = ''
+                GitLab API requested scope.
+                GitLab snippet import/export requires api scope.
+              '';
+            };
+          };
+        });
+        default = null;
+        description = "Configure the GitLab third-party integration.";
+      };
+      mattermost = mkOption {
+        type = types.nullOr (types.submodule {
+          options = {
+            baseURL = mkOption {
+              type = types.str;
+              default = "";
+              description = ''
+                Mattermost authentication endpoint.
+              '';
+            };
+            clientID = mkOption {
+              type = types.str;
+              default = "";
+              description = ''
+                Mattermost API client ID.
+              '';
+            };
+            clientSecret = mkOption {
+              type = types.str;
+              default = "";
+              description = ''
+                Mattermost API client secret.
+              '';
+            };
+          };
+        });
+        default = null;
+        description = "Configure the Mattermost third-party integration.";
+      };
+      dropbox = mkOption {
+        type = types.nullOr (types.submodule {
+          options = {
+            clientID = mkOption {
+              type = types.str;
+              default = "";
+              description = ''
+                Dropbox API client ID.
+              '';
+            };
+            clientSecret = mkOption {
+              type = types.str;
+              default = "";
+              description = ''
+                Dropbox API client secret.
+              '';
+            };
+            appKey = mkOption {
+              type = types.str;
+              default = "";
+              description = ''
+                Dropbox app key.
+              '';
+            };
+          };
+        });
+        default = null;
+        description = "Configure the Dropbox third-party integration.";
+      };
+      google = mkOption {
+        type = types.nullOr (types.submodule {
+          options = {
+            clientID = mkOption {
+              type = types.str;
+              default = "";
+              description = ''
+                Google API client ID.
+              '';
+            };
+            clientSecret = mkOption {
+              type = types.str;
+              default = "";
+              description = ''
+                Google API client secret.
+              '';
+            };
+          };
+        });
+        default = null;
+        description = "Configure the Google third-party integration.";
+      };
+      ldap = mkOption {
+        type = types.nullOr (types.submodule {
+          options = {
+            providerName = mkOption {
+              type = types.str;
+              default = "";
+              description = ''
+                Optional name to be displayed at login form, indicating the LDAP provider.
+              '';
+            };
+            url = mkOption {
+              type = types.str;
+              default = "";
+              example = "ldap://localhost";
+              description = ''
+                URL of LDAP server.
+              '';
+            };
+            bindDn = mkOption {
+              type = types.str;
+              default = "";
+              description = ''
+                Bind DN for LDAP access.
+              '';
+            };
+            bindCredentials = mkOption {
+              type = types.str;
+              default = "";
+              description = ''
+                Bind credentials for LDAP access.
+              '';
+            };
+            searchBase = mkOption {
+              type = types.str;
+              default = "";
+              example = "o=users,dc=example,dc=com";
+              description = ''
+                LDAP directory to begin search from.
+              '';
+            };
+            searchFilter = mkOption {
+              type = types.str;
+              default = "";
+              example = "(uid={{username}})";
+              description = ''
+                LDAP filter to search with.
+              '';
+            };
+            searchAttributes = mkOption {
+              type = types.listOf types.str;
+              default = [];
+              example = [ "displayName" "mail" ];
+              description = ''
+                LDAP attributes to search with.
+              '';
+            };
+            userNameField = mkOption {
+              type = types.str;
+              default = "";
+              description = ''
+                LDAP field which is used as the username on CodiMD.
+                By default <option>useridField</option> is used.
+              '';
+            };
+            useridField = mkOption {
+              type = types.str;
+              default = "";
+              example = "uid";
+              description = ''
+                LDAP field which is a unique identifier for users on CodiMD.
+              '';
+            };
+            tlsca = mkOption {
+              type = types.str;
+              default = "";
+              example = "server-cert.pem,root.pem";
+              description = ''
+                Root CA for LDAP TLS in PEM format.
+              '';
+            };
+          };
+        });
+        default = null;
+        description = "Configure the LDAP integration.";
+      };
+      saml = mkOption {
+        type = types.nullOr (types.submodule {
+          options = {
+            idpSsoUrl = mkOption {
+              type = types.str;
+              default = "";
+              example = "https://idp.example.com/sso";
+              description = ''
+                IdP authentication endpoint.
+              '';
+            };
+            idPCert = mkOption {
+              type = types.str;
+              default = "";
+              example = "/path/to/cert.pem";
+              description = ''
+                Path to IdP certificate file in PEM format.
+              '';
+            };
+            issuer = mkOption {
+              type = types.str;
+              default = "";
+              description = ''
+                Optional identity of the service provider.
+                This defaults to the server URL.
+              '';
+            };
+            identifierFormat = mkOption {
+              type = types.str;
+              default = "urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress";
+              description = ''
+                Optional name identifier format.
+              '';
+            };
+            groupAttribute = mkOption {
+              type = types.str;
+              default = "";
+              example = "memberOf";
+              description = ''
+                Optional attribute name for group list.
+              '';
+            };
+            externalGroups = mkOption {
+              type = types.listOf types.str;
+              default = [];
+              example = [ "Temporary-staff" "External-users" ];
+              description = ''
+                Excluded group names.
+              '';
+            };
+            requiredGroups = mkOption {
+              type = types.listOf types.str;
+              default = [];
+              example = [ "Hackmd-users" "Codimd-users" ];
+              description = ''
+                Required group names.
+              '';
+            };
+            attribute = {
+              id = mkOption {
+                type = types.str;
+                default = "";
+                description = ''
+                  Attribute map for `id'.
+                  Defaults to `NameID' of SAML response.
+                '';
+              };
+              username = mkOption {
+                type = types.str;
+                default = "";
+                description = ''
+                  Attribute map for `username'.
+                  Defaults to `NameID' of SAML response.
+                '';
+              };
+              email = mkOption {
+                type = types.str;
+                default = "";
+                description = ''
+                  Attribute map for `email'.
+                  Defaults to `NameID' of SAML response if
+                  <option>identifierFormat</option> has
+                  the default value.
+                '';
+              };
+            };
+          };
+        });
+        default = null;
+        description = "Configure the SAML integration.";
+      };
+    };
+  };
+
+  config = mkIf cfg.enable {
+    assertions = [
+      { assertion = cfg.configuration.db == {} -> (
+          cfg.configuration.dbURL != "" && cfg.configuration.dbURL != null
+        );
+        message = "Database configuration for CodiMD missing."; }
+    ];
+    users.groups.codimd = {};
+    users.users.codimd = {
+      description = "CodiMD service user";
+      group = "codimd";
+      extraGroups = cfg.groups;
+      home = cfg.workDir;
+      createHome = true;
+    };
+
+    systemd.services.codimd = {
+      description = "CodiMD Service";
+      wantedBy = [ "multi-user.target" ];
+      after = [ "networking.target" ];
+      preStart = ''
+        mkdir -p ${cfg.workDir}
+        chown -R codimd: ${cfg.workDir}
+      '';
+      serviceConfig = {
+        WorkingDirectory = cfg.workDir;
+        ExecStart = "${pkgs.codimd}/bin/codimd";
+        Environment = [
+          "CMD_CONFIG_FILE=${prettyJSON cfg.configuration}"
+          "NODE_ENV=production"
+        ];
+        Restart = "always";
+        User = "codimd";
+        PermissionsStartOnly = true;
+        PrivateTmp = true;
+      };
+    };
+  };
+}
diff --git a/nixos/modules/services/x11/desktop-managers/enlightenment.nix b/nixos/modules/services/x11/desktop-managers/enlightenment.nix
index 6fa3ec3b9255..04e380b61530 100644
--- a/nixos/modules/services/x11/desktop-managers/enlightenment.nix
+++ b/nixos/modules/services/x11/desktop-managers/enlightenment.nix
@@ -66,7 +66,7 @@ in
       '';
     }];
 
-    security.wrappers = (import (builtins.toPath "${e.enlightenment}/e-wrappers.nix")).security.wrappers;
+    security.wrappers = (import "${e.enlightenment}/e-wrappers.nix").security.wrappers;
 
     environment.etc = singleton
       { source = xcfg.xkbDir;
diff --git a/nixos/modules/services/x11/desktop-managers/gnome3.nix b/nixos/modules/services/x11/desktop-managers/gnome3.nix
index faf5214130db..eb86f7b53bb6 100644
--- a/nixos/modules/services/x11/desktop-managers/gnome3.nix
+++ b/nixos/modules/services/x11/desktop-managers/gnome3.nix
@@ -110,6 +110,7 @@ in {
     services.gnome3.gnome-terminal-server.enable = mkDefault true;
     services.gnome3.gnome-user-share.enable = mkDefault true;
     services.gnome3.gvfs.enable = true;
+    services.gnome3.rygel.enable = mkDefault true;
     services.gnome3.seahorse.enable = mkDefault true;
     services.gnome3.sushi.enable = mkDefault true;
     services.gnome3.tracker.enable = mkDefault true;
diff --git a/nixos/modules/services/x11/display-managers/default.nix b/nixos/modules/services/x11/display-managers/default.nix
index f561c5f8b7a9..357fa8ce8f36 100644
--- a/nixos/modules/services/x11/display-managers/default.nix
+++ b/nixos/modules/services/x11/display-managers/default.nix
@@ -266,7 +266,7 @@ in
           session.  Each session script can set the
           <varname>waitPID</varname> shell variable to make this script
           wait until the end of the user session.  Each script is used
-          to define either a windows manager or a desktop manager.  These
+          to define either a window manager or a desktop manager.  These
           can be differentiated by setting the attribute
           <varname>manage</varname> either to <literal>"window"</literal>
           or <literal>"desktop"</literal>.
diff --git a/nixos/modules/services/x11/display-managers/lightdm.nix b/nixos/modules/services/x11/display-managers/lightdm.nix
index cd9c3d81a0fb..ae2b05797fd0 100644
--- a/nixos/modules/services/x11/display-managers/lightdm.nix
+++ b/nixos/modules/services/x11/display-managers/lightdm.nix
@@ -197,7 +197,7 @@ in
       # lightdm relaunches itself via just `lightdm`, so needs to be on the PATH
       execCmd = ''
         export PATH=${lightdm}/sbin:$PATH
-        exec ${lightdm}/sbin/lightdm --log-dir=/var/log --run-dir=/run
+        exec ${lightdm}/sbin/lightdm
       '';
     };
 
@@ -246,12 +246,19 @@ in
     '';
 
     users.users.lightdm = {
-      createHome = true;
-      home = "/var/lib/lightdm-data";
+      home = "/var/lib/lightdm";
       group = "lightdm";
       uid = config.ids.uids.lightdm;
     };
 
+    systemd.tmpfiles.rules = [
+      "d /var/run/lightdm 0711 lightdm lightdm 0"
+      "d /var/cache/lightdm 0711 root lightdm -"
+      "d /var/lib/lightdm 1770 lightdm lightdm -"
+      "d /var/lib/lightdm-data 1775 lightdm lightdm -"
+      "d /var/log/lightdm 0711 root lightdm -"
+    ];
+
     users.groups.lightdm.gid = config.ids.gids.lightdm;
     services.xserver.tty     = null; # We might start multiple X servers so let the tty increment themselves..
     services.xserver.display = null; # We specify our own display (and logfile) in xserver-wrapper up there
diff --git a/nixos/modules/system/activation/switch-to-configuration.pl b/nixos/modules/system/activation/switch-to-configuration.pl
index b3fe6caf62dc..c3e469e4b8a1 100644
--- a/nixos/modules/system/activation/switch-to-configuration.pl
+++ b/nixos/modules/system/activation/switch-to-configuration.pl
@@ -419,7 +419,7 @@ while (my $f = <$listActiveUsers>) {
     my ($uid, $name) = ($+{uid}, $+{user});
     print STDERR "reloading user units for $name...\n";
 
-    system("su", "-l", $name, "-c", "XDG_RUNTIME_DIR=/run/user/$uid @systemd@/bin/systemctl --user daemon-reload");
+    system("su", "-s", "@shell@", "-l", $name, "-c", "XDG_RUNTIME_DIR=/run/user/$uid @systemd@/bin/systemctl --user daemon-reload");
 }
 
 close $listActiveUsers;
diff --git a/nixos/modules/system/activation/top-level.nix b/nixos/modules/system/activation/top-level.nix
index fff88e2c2bf3..9797ef641e4f 100644
--- a/nixos/modules/system/activation/top-level.nix
+++ b/nixos/modules/system/activation/top-level.nix
@@ -115,6 +115,7 @@ let
 
       inherit (pkgs) utillinux coreutils;
       systemd = config.systemd.package;
+      inherit (pkgs.stdenv) shell;
 
       inherit children;
       kernelParams = config.boot.kernelParams;
diff --git a/nixos/modules/system/boot/networkd.nix b/nixos/modules/system/boot/networkd.nix
index 4bacf0f126a4..63a6f7fbe099 100644
--- a/nixos/modules/system/boot/networkd.nix
+++ b/nixos/modules/system/boot/networkd.nix
@@ -208,7 +208,6 @@ let
       "InitialCongestionWindow" "InitialAdvertisedReceiveWindow" "QuickAck"
       "MTUBytes"
     ])
-    (assertHasField "Gateway")
   ];
 
   checkDhcp = checkUnitConfig "DHCP" [
@@ -249,13 +248,14 @@ let
   # .network files have a [Link] section with different options than in .netlink files
   checkNetworkLink = checkUnitConfig "Link" [
     (assertOnlyFields [
-      "MACAddress" "MTUBytes" "ARP" "Unmanaged" "RequiredForOnline"
+      "MACAddress" "MTUBytes" "ARP" "Multicast" "Unmanaged" "RequiredForOnline"
     ])
     (assertMacAddress "MACAddress")
     (assertByteFormat "MTUBytes")
     (assertValueOneOf "ARP" boolValues)
+    (assertValueOneOf "Multicast" boolValues)
     (assertValueOneOf "Unmanaged" boolValues)
-    (assertValueOneOf "RquiredForOnline" boolValues)
+    (assertValueOneOf "RequiredForOnline" boolValues)
   ];
 
 
diff --git a/nixos/modules/tasks/network-interfaces.nix b/nixos/modules/tasks/network-interfaces.nix
index 20a740ce1f0c..815523093dde 100644
--- a/nixos/modules/tasks/network-interfaces.nix
+++ b/nixos/modules/tasks/network-interfaces.nix
@@ -341,7 +341,7 @@ in
         You should try to make this ID unique among your machines. You can
         generate a random 32-bit ID using the following commands:
 
-        <literal>cksum /etc/machine-id | while read c rest; do printf "%x" $c; done</literal>
+        <literal>head -c 8 /etc/machine-id</literal>
 
         (this derives it from the machine-id that systemd generates) or
 
diff --git a/nixos/release.nix b/nixos/release.nix
index 1013053b5b3b..ee31564bcf74 100644
--- a/nixos/release.nix
+++ b/nixos/release.nix
@@ -261,6 +261,7 @@ in rec {
   tests.chromium = (callSubTestsOnMatchingSystems ["x86_64-linux"] tests/chromium.nix {}).stable or {};
   tests.cjdns = callTest tests/cjdns.nix {};
   tests.cloud-init = callTest tests/cloud-init.nix {};
+  tests.codimd = callTest tests/codimd.nix {};
   tests.containers-ipv4 = callTest tests/containers-ipv4.nix {};
   tests.containers-ipv6 = callTest tests/containers-ipv6.nix {};
   tests.containers-bridge = callTest tests/containers-bridge.nix {};
@@ -327,7 +328,6 @@ in rec {
   tests.keymap = callSubTests tests/keymap.nix {};
   tests.initrdNetwork = callTest tests/initrd-network.nix {};
   tests.kafka = callSubTests tests/kafka.nix {};
-  tests.kernel-copperhead = callTest tests/kernel-copperhead.nix {};
   tests.kernel-latest = callTest tests/kernel-latest.nix {};
   tests.kernel-lts = callTest tests/kernel-lts.nix {};
   tests.kubernetes.dns = callSubTestsOnMatchingSystems ["x86_64-linux"] tests/kubernetes/dns.nix {};
@@ -400,7 +400,7 @@ in rec {
   tests.slurm = callTest tests/slurm.nix {};
   tests.smokeping = callTest tests/smokeping.nix {};
   tests.snapper = callTest tests/snapper.nix {};
-  tests.statsd = callTest tests/statsd.nix {};
+  #tests.statsd = callTest tests/statsd.nix {}; # statsd is broken: #45946
   tests.strongswan-swanctl = callTest tests/strongswan-swanctl.nix {};
   tests.sudo = callTest tests/sudo.nix {};
   tests.systemd = callTest tests/systemd.nix {};
diff --git a/nixos/tests/codimd.nix b/nixos/tests/codimd.nix
new file mode 100644
index 000000000000..8f98d9f3fa72
--- /dev/null
+++ b/nixos/tests/codimd.nix
@@ -0,0 +1,56 @@
+import ./make-test.nix ({ pkgs, lib, ... }:
+{
+  name = "codimd";
+
+  meta = with lib.maintainers; {
+    maintainers = [ willibutz ];
+  };
+
+  nodes = {
+    codimdSqlite = { ... }: {
+      services = {
+        codimd = {
+          enable = true;
+          configuration.dbURL = "sqlite:///var/lib/codimd/codimd.db";
+        };
+      };
+    };
+
+    codimdPostgres = { ... }: {
+      systemd.services.codimd.after = [ "postgresql.service" ];
+      services = {
+        codimd = {
+          enable = true;
+          configuration.dbURL = "postgres://codimd:snakeoilpassword@localhost:5432/codimddb";
+        };
+        postgresql = {
+          enable = true;
+          initialScript = pkgs.writeText "pg-init-script.sql" ''
+            CREATE ROLE codimd LOGIN PASSWORD 'snakeoilpassword';
+            CREATE DATABASE codimddb OWNER codimd;
+          '';
+        };
+      };
+    };
+  };
+
+  testScript = ''
+    startAll();
+
+    subtest "CodiMD sqlite", sub {
+      $codimdSqlite->waitForUnit("codimd.service");
+      $codimdSqlite->waitForOpenPort(3000);
+      $codimdPostgres->succeed("sleep 2"); # avoid 503 during startup
+      $codimdSqlite->succeed("curl -sSf http://localhost:3000/new");
+    };
+
+    subtest "CodiMD postgres", sub {
+      $codimdPostgres->waitForUnit("postgresql.service");
+      $codimdPostgres->waitForUnit("codimd.service");
+      $codimdPostgres->waitForOpenPort(5432);
+      $codimdPostgres->waitForOpenPort(3000);
+      $codimdPostgres->succeed("sleep 2"); # avoid 503 during startup
+      $codimdPostgres->succeed("curl -sSf http://localhost:3000/new");
+    };
+  '';
+})
diff --git a/nixos/tests/installer.nix b/nixos/tests/installer.nix
index 3d31c8dc4457..610444f90e47 100644
--- a/nixos/tests/installer.nix
+++ b/nixos/tests/installer.nix
@@ -563,6 +563,7 @@ in {
               "swapon -L swap",
               "mkfs.ext3 -L nixos /dev/sda2",
               "mount LABEL=nixos /mnt",
+              "mkdir -p /mnt/tmp",
           );
         '';
       grubVersion = 1;
diff --git a/nixos/tests/kernel-copperhead.nix b/nixos/tests/kernel-copperhead.nix
deleted file mode 100644
index 652fbf055373..000000000000
--- a/nixos/tests/kernel-copperhead.nix
+++ /dev/null
@@ -1,19 +0,0 @@
-import ./make-test.nix ({ pkgs, ...} : {
-  name = "kernel-copperhead";
-  meta = with pkgs.stdenv.lib.maintainers; {
-    maintainers = [ nequissimus ];
-  };
-
-  machine = { pkgs, ... }:
-    {
-      boot.kernelPackages = pkgs.linuxPackages_copperhead_lts;
-    };
-
-  testScript =
-    ''
-      $machine->succeed("uname -a");
-      $machine->succeed("uname -s | grep 'Linux'");
-      $machine->succeed("uname -a | grep '${pkgs.linuxPackages_copperhead_lts.kernel.modDirVersion}'");
-      $machine->succeed("uname -a | grep 'hardened'");
-    '';
-})
diff --git a/nixos/tests/novacomd.nix b/nixos/tests/novacomd.nix
index 2b56aee0a2e7..4eb60c0feb5c 100644
--- a/nixos/tests/novacomd.nix
+++ b/nixos/tests/novacomd.nix
@@ -9,12 +9,16 @@ import ./make-test.nix ({ pkgs, ...} : {
   };
 
   testScript = ''
-    startAll;
+    $machine->waitForUnit("multi-user.target");
 
+    # multi-user.target wants novacomd.service, but let's make sure
     $machine->waitForUnit("novacomd.service");
 
     # Check status and try connecting with novacom
     $machine->succeed("systemctl status novacomd.service >&2");
+    # to prevent non-deterministic failure,
+    # make sure the daemon is really listening
+    $machine->waitForOpenPort(6968);
     $machine->succeed("novacom -l");
 
     # Stop the daemon, double-check novacom fails if daemon isn't working
@@ -23,6 +27,8 @@ import ./make-test.nix ({ pkgs, ...} : {
 
     # And back again for good measure
     $machine->startJob("novacomd");
+    # make sure the daemon is really listening
+    $machine->waitForOpenPort(6968);
     $machine->succeed("novacom -l");
   '';
 })
diff --git a/nixos/tests/opensmtpd.nix b/nixos/tests/opensmtpd.nix
index 5079779f35b4..4c0cbca21010 100644
--- a/nixos/tests/opensmtpd.nix
+++ b/nixos/tests/opensmtpd.nix
@@ -102,11 +102,17 @@ import ./make-test.nix {
   testScript = ''
     startAll;
 
-    $client->waitForUnit("network.target");
+    $client->waitForUnit("network-online.target");
     $smtp1->waitForUnit('opensmtpd');
     $smtp2->waitForUnit('opensmtpd');
     $smtp2->waitForUnit('dovecot2');
 
+    # To prevent sporadic failures during daemon startup, make sure
+    # services are listening on their ports before sending requests
+    $smtp1->waitForOpenPort(25);
+    $smtp2->waitForOpenPort(25);
+    $smtp2->waitForOpenPort(143);
+
     $client->succeed('send-a-test-mail');
     $smtp1->waitUntilFails('smtpctl show queue | egrep .');
     $smtp2->waitUntilFails('smtpctl show queue | egrep .');
diff --git a/pkgs/applications/altcoins/bitcoin-abc.nix b/pkgs/applications/altcoins/bitcoin-abc.nix
index bd365e167304..1e11f0eefc4b 100644
--- a/pkgs/applications/altcoins/bitcoin-abc.nix
+++ b/pkgs/applications/altcoins/bitcoin-abc.nix
@@ -38,6 +38,7 @@ stdenv.mkDerivation rec {
     homepage = https://bitcoinabc.org/;
     maintainers = with maintainers; [ lassulus ];
     license = licenses.mit;
+    broken = stdenv.isDarwin;
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/applications/altcoins/bitcoin-classic.nix b/pkgs/applications/altcoins/bitcoin-classic.nix
index 31c8ed6fc8d0..34faf77e980d 100644
--- a/pkgs/applications/altcoins/bitcoin-classic.nix
+++ b/pkgs/applications/altcoins/bitcoin-classic.nix
@@ -46,6 +46,7 @@ stdenv.mkDerivation rec {
     homepage = https://bitcoinclassic.com/;
     maintainers = with maintainers; [ jefdaj ];
     license = licenses.mit;
+    broken = stdenv.isDarwin;
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/applications/altcoins/bitcoin-unlimited.nix b/pkgs/applications/altcoins/bitcoin-unlimited.nix
index 5a67dc565aa7..13ec55bb589d 100644
--- a/pkgs/applications/altcoins/bitcoin-unlimited.nix
+++ b/pkgs/applications/altcoins/bitcoin-unlimited.nix
@@ -62,6 +62,7 @@ stdenv.mkDerivation rec {
     homepage = https://www.bitcoinunlimited.info/;
     maintainers = with maintainers; [ DmitryTsygankov ];
     license = licenses.mit;
+    broken = stdenv.isDarwin;
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/applications/altcoins/bitcoin-xt.nix b/pkgs/applications/altcoins/bitcoin-xt.nix
index feb2924f8651..cab1b388a126 100644
--- a/pkgs/applications/altcoins/bitcoin-xt.nix
+++ b/pkgs/applications/altcoins/bitcoin-xt.nix
@@ -43,6 +43,7 @@ stdenv.mkDerivation rec{
     homepage = https://bitcoinxt.software/;
     maintainers = with maintainers; [ jefdaj ];
     license = licenses.mit;
+    broken = stdenv.isDarwin;
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/applications/altcoins/btc1.nix b/pkgs/applications/altcoins/btc1.nix
index 95e03ee6a213..2f85a8947972 100644
--- a/pkgs/applications/altcoins/btc1.nix
+++ b/pkgs/applications/altcoins/btc1.nix
@@ -1,6 +1,8 @@
-{ stdenv, fetchurl, pkgconfig, autoreconfHook, openssl, db48, boost
-, zlib, miniupnpc, qt4, utillinux, protobuf, qrencode, libevent
-, withGui }:
+{ stdenv, fetchurl, pkgconfig, autoreconfHook, hexdump, openssl, db48
+, boost, zlib, miniupnpc, qt4, utillinux, protobuf, qrencode, libevent
+, AppKit
+, withGui ? !stdenv.isDarwin
+}:
 
 with stdenv.lib;
 stdenv.mkDerivation rec{
@@ -12,11 +14,10 @@ stdenv.mkDerivation rec{
     sha256 = "0v0g2wb4nsnhddxzb63vj2bc1mgyj05vqm5imicjfz8prvgc0si8";
   };
 
-  nativeBuildInputs = [ pkgconfig autoreconfHook ];
-  buildInputs = [ openssl db48 boost zlib
-                  miniupnpc protobuf libevent]
-                  ++ optionals stdenv.isLinux [ utillinux ]
-                  ++ optionals withGui [ qt4 qrencode ];
+  nativeBuildInputs = [ pkgconfig autoreconfHook hexdump ];
+  buildInputs = [ openssl db48 boost zlib miniupnpc protobuf libevent ]
+    ++ optionals withGui [ qt4 qrencode ]
+    ++ optional stdenv.isDarwin AppKit;
 
   configureFlags = [ "--with-boost-libdir=${boost.out}/lib" ]
                      ++ optionals withGui [ "--with-gui=qt4" ];
diff --git a/pkgs/applications/altcoins/default.nix b/pkgs/applications/altcoins/default.nix
index 95d79a8650fd..f075903332b4 100644
--- a/pkgs/applications/altcoins/default.nix
+++ b/pkgs/applications/altcoins/default.nix
@@ -1,4 +1,4 @@
-{ callPackage, boost155, boost165, openssl_1_1_0, haskellPackages, darwin, libsForQt5, miniupnpc_2, python3, buildGo110Package }:
+{ callPackage, boost155, boost165, openssl_1_1, haskellPackages, darwin, libsForQt5, miniupnpc_2, python3, buildGo110Package }:
 
 rec {
 
@@ -32,8 +32,11 @@ rec {
     boost = boost165; withGui = false;
   };
 
-  btc1 = callPackage ./btc1.nix { boost = boost165; withGui = true; };
-  btc1d = callPackage ./btc1.nix { boost = boost165; withGui = false; };
+  btc1 = callPackage ./btc1.nix {
+    inherit (darwin.apple_sdk.frameworks) AppKit;
+    boost = boost165;
+  };
+  btc1d = btc1.override { withGui = false; };
 
   cryptop = python3.pkgs.callPackage ./cryptop { };
 
@@ -59,8 +62,10 @@ rec {
     buildGoPackage = buildGo110Package;
   };
 
-  litecoin  = callPackage ./litecoin.nix { withGui = true; };
-  litecoind = callPackage ./litecoin.nix { withGui = false; };
+  litecoin  = callPackage ./litecoin.nix {
+    inherit (darwin.apple_sdk.frameworks) AppKit;
+  };
+  litecoind = litecoin.override { withGui = false; };
 
   masari = callPackage ./masari.nix { };
 
@@ -85,7 +90,7 @@ rec {
 
   zcash = callPackage ./zcash {
     withGui = false;
-    openssl = openssl_1_1_0;
+    openssl = openssl_1_1;
   };
 
   parity = callPackage ./parity { };
diff --git a/pkgs/applications/altcoins/ethsign/default.nix b/pkgs/applications/altcoins/ethsign/default.nix
index 35fd4bc718c8..8e89de4d6906 100644
--- a/pkgs/applications/altcoins/ethsign/default.nix
+++ b/pkgs/applications/altcoins/ethsign/default.nix
@@ -54,6 +54,7 @@ buildGoPackage rec {
   meta = with stdenv.lib; {
     homepage = https://github.com/dapphub/ethsign;
     description = "Make raw signed Ethereum transactions";
+    broken = stdenv.isDarwin;  # test with CoreFoundation 10.11
     license = [licenses.gpl3];
   };
 }
diff --git a/pkgs/applications/altcoins/litecoin.nix b/pkgs/applications/altcoins/litecoin.nix
index b930923e8f45..ed268e34946f 100644
--- a/pkgs/applications/altcoins/litecoin.nix
+++ b/pkgs/applications/altcoins/litecoin.nix
@@ -2,9 +2,12 @@
 , pkgconfig, autoreconfHook
 , openssl, db48, boost, zlib, miniupnpc
 , glib, protobuf, utillinux, qt4, qrencode
-, withGui, libevent }:
+, AppKit
+, withGui ? true, libevent
+}:
 
 with stdenv.lib;
+
 stdenv.mkDerivation rec {
 
   name = "litecoin" + (toString (optional (!withGui) "d")) + "-" + version;
@@ -20,6 +23,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ pkgconfig autoreconfHook ];
   buildInputs = [ openssl db48 boost zlib
                   miniupnpc glib protobuf utillinux libevent ]
+                  ++ optionals stdenv.isDarwin [ AppKit ]
                   ++ optionals withGui [ qt4 qrencode ];
 
   configureFlags = [ "--with-boost-libdir=${boost.out}/lib" ]
@@ -39,6 +43,7 @@ stdenv.mkDerivation rec {
     homepage = https://litecoin.org/;
     platforms = platforms.unix;
     license = licenses.mit;
-    maintainers = with maintainers; [ offline AndersonTorres ];  
+    broken = stdenv.isDarwin;
+    maintainers = with maintainers; [ offline AndersonTorres ];
   };
 }
diff --git a/pkgs/applications/altcoins/monero-gui/default.nix b/pkgs/applications/altcoins/monero-gui/default.nix
index 2aff86ae1d38..49b8db51bcc8 100644
--- a/pkgs/applications/altcoins/monero-gui/default.nix
+++ b/pkgs/applications/altcoins/monero-gui/default.nix
@@ -12,13 +12,13 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   name = "monero-gui-${version}";
-  version = "0.12.0.0";
+  version = "0.12.3.0";
 
   src = fetchFromGitHub {
     owner  = "monero-project";
     repo   = "monero-gui";
     rev    = "v${version}";
-    sha256 = "1mg5ival8a2wdp14yib4wzqax4xyvd40zjy9anhszljds1439jhl";
+    sha256 = "1ry0455cgirkc6n46qnlv5p49axjllil78xmx6469nbp3a2r3z7i";
   };
 
   nativeBuildInputs = [ qmake pkgconfig ];
@@ -70,7 +70,8 @@ stdenv.mkDerivation rec {
     cp ${desktopItem}/share/applications/* $out/share/applications
 
     # install translations
-    cp -r release/bin/translations $out/share/
+    mkdir -p $out/share/translations
+    cp translations/*.qm $out/share/translations/
 
     # install icons
     for n in 16 24 32 48 64 96 128 256; do
diff --git a/pkgs/applications/altcoins/monero-gui/move-log-file.patch b/pkgs/applications/altcoins/monero-gui/move-log-file.patch
index 08840c6a65e8..74f817d81350 100644
--- a/pkgs/applications/altcoins/monero-gui/move-log-file.patch
+++ b/pkgs/applications/altcoins/monero-gui/move-log-file.patch
@@ -1,38 +1,27 @@
 diff --git a/main.cpp b/main.cpp
-index c03b160..a8ea263 100644
+index 79223c0..e80b317 100644
 --- a/main.cpp
 +++ b/main.cpp
-@@ -80,14 +80,16 @@ int main(int argc, char *argv[])
- //    qDebug() << "High DPI auto scaling - enabled";
- //#endif
- 
--    // Log settings
--    Monero::Wallet::init(argv[0], "monero-wallet-gui");
--//    qInstallMessageHandler(messageHandler);
--
-     MainApp app(argc, argv);
- 
-     qDebug() << "app startd";
- 
-+    // Log settings
-+    QString logfile =
-+      QStandardPaths::writableLocation(QStandardPaths::CacheLocation)
-+      + "/monero-wallet-gui.log";
-+    Monero::Wallet::init(argv[0], logfile.toUtf8().constData());
-+
-     app.setApplicationName("monero-core");
-     app.setOrganizationDomain("getmonero.org");
-     app.setOrganizationName("monero-project");
-diff --git a/src/libwalletqt/Wallet.cpp b/src/libwalletqt/Wallet.cpp
-index 74649ce..fe1efc6 100644
---- a/src/libwalletqt/Wallet.cpp
-+++ b/src/libwalletqt/Wallet.cpp
-@@ -729,7 +729,7 @@ QString Wallet::getWalletLogPath() const
- #ifdef Q_OS_MACOS
-     return QStandardPaths::standardLocations(QStandardPaths::HomeLocation).at(0) + "/Library/Logs/" + filename;
- #else
--    return QCoreApplication::applicationDirPath() + "/" + filename;
-+    return QStandardPaths::writableLocation(QStandardPaths::CacheLocation) + filename;
+@@ -115,6 +115,9 @@ int main(int argc, char *argv[])
+     QCommandLineOption logPathOption(QStringList() << "l" << "log-file",
+         QCoreApplication::translate("main", "Log to specified file"),
+         QCoreApplication::translate("main", "file"));
++    logPathOption.setDefaultValue(
++        QStandardPaths::writableLocation(QStandardPaths::CacheLocation)
++        + "/monero-wallet-gui.log");
+     parser.addOption(logPathOption);
+     parser.addHelpOption();
+     parser.process(app);
+diff --git a/Logger.cpp b/Logger.cpp
+index 660bafc..dae24d4 100644
+--- a/Logger.cpp
++++ b/Logger.cpp
+@@ -15,7 +15,7 @@ static const QString default_name = "monero-wallet-gui.log";
+ #elif defined(Q_OS_MAC)
+     static const QString osPath = QStandardPaths::standardLocations(QStandardPaths::HomeLocation).at(0) + "/Library/Logs";
+ #else // linux + bsd
+-    static const QString osPath = QStandardPaths::standardLocations(QStandardPaths::HomeLocation).at(0);
++    static const QString osPath = QStandardPaths::standardLocations(QStandardPaths::CacheLocation).at(0);
  #endif
- }
+ 
  
diff --git a/pkgs/applications/altcoins/monero-gui/move-translations-dir.patch b/pkgs/applications/altcoins/monero-gui/move-translations-dir.patch
index 29bb56301547..ff17ce5da1c0 100644
--- a/pkgs/applications/altcoins/monero-gui/move-translations-dir.patch
+++ b/pkgs/applications/altcoins/monero-gui/move-translations-dir.patch
@@ -1,14 +1,13 @@
 diff --git a/TranslationManager.cpp b/TranslationManager.cpp
-index fa39d35..5a410f7 100644
+index e7fc52a..83534cc 100644
 --- a/TranslationManager.cpp
 +++ b/TranslationManager.cpp
-@@ -29,7 +29,7 @@ bool TranslationManager::setLanguage(const QString &language)
- #ifdef Q_OS_MACX
-     QString dir = qApp->applicationDirPath() + "/../Resources/translations";
- #else
+@@ -25,7 +25,7 @@ bool TranslationManager::setLanguage(const QString &language)
+         return true;
+     }
+ 
 -    QString dir = qApp->applicationDirPath() + "/translations";
 +    QString dir = qApp->applicationDirPath() + "/../share/translations";
- #endif
- 
      QString filename = "monero-core_" + language;
-
+ 
+     qDebug("%s: loading translation file '%s' from '%s'",
diff --git a/pkgs/applications/altcoins/monero/default.nix b/pkgs/applications/altcoins/monero/default.nix
index cbba1ecba145..a4a884707a98 100644
--- a/pkgs/applications/altcoins/monero/default.nix
+++ b/pkgs/applications/altcoins/monero/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, fetchpatch
+{ stdenv, fetchgit
 , cmake, pkgconfig, git
 , boost, miniupnpc, openssl, unbound, cppzmq
 , zeromq, pcsclite, readline
@@ -11,25 +11,16 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   name    = "monero-${version}";
-  version = "0.12.0.0";
+  version = "0.12.3.0";
 
-  src = fetchFromGitHub {
-    owner  = "monero-project";
-    repo   = "monero";
+  src = fetchgit {
+    url    = "https://github.com/monero-project/monero.git";
     rev    = "v${version}";
-    sha256 = "1lc9mkrl1m8mdbvj88y8y5rv44vinxf7dyv221ndmw5c5gs5zfgk";
+    sha256 = "1609k1qn9xx37a92ai36rajds9cmdjlkqyka95hks5xjr3l5ca8i";
   };
 
   nativeBuildInputs = [ cmake pkgconfig git ];
 
-  patches = [
-    # fix daemon crash, remove with 0.12.1.0 update
-    (fetchpatch {
-      url    = "https://github.com/monero-project/monero/commit/08343ab.diff";
-      sha256 = "0f1snrl2mk2czwk1ysympzr8ismjx39fcqgy13276vcmw0cfqi83";
-    })
-  ];
-
   buildInputs = [
     boost miniupnpc openssl unbound
     cppzmq zeromq pcsclite readline
@@ -39,7 +30,7 @@ stdenv.mkDerivation rec {
     "-DCMAKE_BUILD_TYPE=Release"
     "-DBUILD_GUI_DEPS=ON"
     "-DReadline_ROOT_DIR=${readline.dev}"
-  ];
+  ] ++ optional stdenv.isDarwin "-DBoost_USE_MULTITHREADED=OFF";
 
   hardeningDisable = [ "fortify" ];
 
diff --git a/pkgs/applications/altcoins/nano-wallet/default.nix b/pkgs/applications/altcoins/nano-wallet/default.nix
index 7491e8306285..4667d4029878 100644
--- a/pkgs/applications/altcoins/nano-wallet/default.nix
+++ b/pkgs/applications/altcoins/nano-wallet/default.nix
@@ -3,13 +3,13 @@
 stdenv.mkDerivation rec {
 
   name = "nano-wallet-${version}";
-  version = "15.2";
+  version = "16.0";
 
   src = fetchFromGitHub {
     owner = "nanocurrency";
     repo = "raiblocks";
     rev = "V${version}";
-    sha256 = "0ngsnaczw5y709zk52flp6m2c83q3kxfgz0bzi8rzfjxp10ncnz3";
+    sha256 = "0fk8jlas3khdh3nlv40krsjdifxp9agblvzap6k93wmm9y34h41c";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/applications/audio/banshee/default.nix b/pkgs/applications/audio/banshee/default.nix
deleted file mode 100644
index 8a4e8893c8d3..000000000000
--- a/pkgs/applications/audio/banshee/default.nix
+++ /dev/null
@@ -1,57 +0,0 @@
-{ stdenv, lib, fetchurl, intltool, pkgconfig, gstreamer, gst-plugins-base
-, gst-plugins-good, gst-plugins-bad, gst-plugins-ugly, gst-ffmpeg, glib
-, mono, mono-addins, dbus-sharp-1_0, dbus-sharp-glib-1_0, notify-sharp, gtk-sharp-2_0
-, boo, gdata-sharp, taglib-sharp, sqlite, gnome-sharp, gconf, gtk-sharp-beans, gio-sharp
-, libmtp, libgpod, mono-zeroconf }:
-
-stdenv.mkDerivation rec {
-  name = "banshee-${version}";
-  version = "2.6.2";
-
-  src = fetchurl {
-    url = "https://ftp.gnome.org/pub/GNOME/sources/banshee/2.6/banshee-${version}.tar.xz";
-    sha256 = "1y30p8wxx5li39i5gpq2wib0ympy8llz0gyi6ri9bp730ndhhz7p";
-  };
-
-  dontStrip = true;
-
-  nativeBuildInputs = [ pkgconfig intltool ];
-  buildInputs = [
-    gtk-sharp-2_0.gtk gstreamer gst-plugins-base gst-plugins-good
-    gst-plugins-bad gst-plugins-ugly gst-ffmpeg
-    mono dbus-sharp-1_0 dbus-sharp-glib-1_0 mono-addins notify-sharp
-    gtk-sharp-2_0 boo gdata-sharp taglib-sharp sqlite gnome-sharp gconf gtk-sharp-beans
-    gio-sharp libmtp libgpod mono-zeroconf
-  ];
-
-  makeFlags = [ "PREFIX=$(out)" ];
-
-  postPatch = ''
-    patchShebangs data/desktop-files/update-desktop-file.sh
-    patchShebangs build/private-icon-theme-installer
-    sed -i "s,DOCDIR=.*,DOCDIR=$out/lib/monodoc," configure
-  '';
-
-  postInstall = let
-    ldLibraryPath = lib.makeLibraryPath [ gtk-sharp-2_0.gtk gtk-sharp-2_0 sqlite gconf glib gstreamer ];
-
-    monoGACPrefix = lib.concatStringsSep ":" [
-      mono dbus-sharp-1_0 dbus-sharp-glib-1_0 mono-addins notify-sharp gtk-sharp-2_0
-      boo gdata-sharp taglib-sharp sqlite gnome-sharp gconf gtk-sharp-beans
-      gio-sharp libmtp libgpod mono-zeroconf
-    ];
-  in ''
-    sed -e '2a export MONO_GAC_PREFIX=${monoGACPrefix}' \
-        -e 's|LD_LIBRARY_PATH=|LD_LIBRARY_PATH=${ldLibraryPath}:|' \
-        -e "s|GST_PLUGIN_PATH=|GST_PLUGIN_PATH=$GST_PLUGIN_SYSTEM_PATH:|" \
-        -e 's| mono | ${mono}/bin/mono |' \
-        -i $out/bin/banshee
-  '';
-  meta = with lib; {
-    homepage = "http://banshee.fm/";
-    description = "A music player written in C# using GNOME technologies";
-    platforms = platforms.linux;
-    maintainers = [ maintainers.zohl ];
-    license = licenses.mit;
-  };
-}
diff --git a/pkgs/applications/audio/lollypop/default.nix b/pkgs/applications/audio/lollypop/default.nix
index ffaa94575275..6571a45b2a55 100644
--- a/pkgs/applications/audio/lollypop/default.nix
+++ b/pkgs/applications/audio/lollypop/default.nix
@@ -1,11 +1,15 @@
-{ stdenv, fetchgit, meson, ninja, pkgconfig, wrapGAppsHook
-, appstream-glib, desktop-file-utils, gobjectIntrospection
-, python36Packages, gnome3, glib, gst_all_1 }:
+{ stdenv, fetchgit, meson, ninja, pkgconfig
+, python3, gtk3, gst_all_1, libsecret, libsoup
+, appstream-glib, desktop-file-utils, gnome3
+, gobjectIntrospection, wrapGAppsHook }:
 
-stdenv.mkDerivation rec  {
+python3.pkgs.buildPythonApplication rec  {
   version = "0.9.522";
   name = "lollypop-${version}";
 
+  format = "other";
+  doCheck = false;
+
   src = fetchgit {
     url = "https://gitlab.gnome.org/World/lollypop";
     rev = "refs/tags/${version}";
@@ -13,7 +17,7 @@ stdenv.mkDerivation rec  {
     sha256 = "0f2brwv884cvmxj644jcj9sg5hix3wvnjy2ndg0fh5cxyqz0kwn5";
   };
 
-  nativeBuildInputs = with python36Packages; [
+  nativeBuildInputs = with python3.pkgs; [
     appstream-glib
     desktop-file-utils
     gobjectIntrospection
@@ -21,17 +25,22 @@ stdenv.mkDerivation rec  {
     ninja
     pkgconfig
     wrapGAppsHook
-    wrapPython
   ];
 
-  buildInputs = [ glib ] ++ (with gnome3; [
-    gsettings-desktop-schemas gtk3 libsecret libsoup totem-pl-parser
-  ]) ++ (with gst_all_1; [
-    gst-libav gst-plugins-bad gst-plugins-base gst-plugins-good gst-plugins-ugly
+  buildInputs = with gst_all_1; [
+    gnome3.totem-pl-parser
+    gst-libav
+    gst-plugins-bad
+    gst-plugins-base
+    gst-plugins-good
+    gst-plugins-ugly
     gstreamer
-  ]);
+    gtk3
+    libsecret
+    libsoup
+  ];
 
-  pythonPath = with python36Packages; [
+  pythonPath = with python3.pkgs; [
     beautifulsoup4
     gst-python
     pillow
@@ -41,11 +50,14 @@ stdenv.mkDerivation rec  {
     pylast
   ];
 
-  postFixup = "wrapPythonPrograms";
-
   postPatch = ''
-    chmod +x ./meson_post_install.py
-    patchShebangs ./meson_post_install.py
+    chmod +x meson_post_install.py
+    patchShebangs meson_post_install.py
+  '';
+
+  preFixup = ''
+    buildPythonPath "$out/libexec/lollypop-sp $pythonPath"
+    patchPythonScript "$out/libexec/lollypop-sp"
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/audio/milkytracker/decompressor_gzip.patch b/pkgs/applications/audio/milkytracker/decompressor_gzip.patch
deleted file mode 100644
index c64421116dea..000000000000
--- a/pkgs/applications/audio/milkytracker/decompressor_gzip.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-https://bugs.archlinux.org/task/31324
-https://410333.bugs.gentoo.org/attachment.cgi?id=322456
-
-diff -ur src.old/compression/DecompressorGZIP.cpp src/compression/DecompressorGZIP.cpp
---- src.old/compression/DecompressorGZIP.cpp	2012-08-28 17:54:46.000000000 +0200
-+++ src/compression/DecompressorGZIP.cpp	2012-08-28 17:55:21.000000000 +0200
-@@ -57,11 +57,11 @@
- 	
- bool DecompressorGZIP::decompress(const PPSystemString& outFileName, Hints hint)
- {
--    gzFile *gz_input_file = NULL;
-+    gzFile gz_input_file = NULL;
- 	int len = 0;
- 	pp_uint8 *buf;
- 	
--	if ((gz_input_file = (void **)gzopen (fileName.getStrBuffer(), "r")) == NULL)
-+	if ((gz_input_file = gzopen (fileName.getStrBuffer(), "r")) == NULL)
- 		return false;
- 	
- 	if ((buf = new pp_uint8[0x10000]) == NULL)
diff --git a/pkgs/applications/audio/milkytracker/default.nix b/pkgs/applications/audio/milkytracker/default.nix
index 6a71971c5fdf..6b3abeb1e23c 100644
--- a/pkgs/applications/audio/milkytracker/default.nix
+++ b/pkgs/applications/audio/milkytracker/default.nix
@@ -1,29 +1,26 @@
-{ stdenv, fetchurl, SDL2, alsaLib, cmake, libjack2, perl
-, zlib, zziplib, pkgconfig, makeWrapper
-}:
+{ stdenv, fetchFromGitHub, cmake, pkgconfig, makeWrapper
+, SDL2, alsaLib, libjack2, lhasa, perl, rtmidi, zlib, zziplib }:
 
 stdenv.mkDerivation rec {
-  version = "1.01";
+  version = "1.02.00";
   name = "milkytracker-${version}";
 
-  src = fetchurl {
-    url = "https://github.com/milkytracker/MilkyTracker/archive/v${version}.00.tar.gz";
-    sha256 = "1dvnddsnn9c83lz4dlm0cfjpc0m524amfkbalxbswdy0qc8cj1wv";
+  src = fetchFromGitHub {
+    owner  = "milkytracker";
+    repo   = "MilkyTracker";
+    rev    = "v${version}";
+    sha256 = "05a6d7l98k9i82dwrgi855dnccm3f2lkb144gi244vhk1156n0ca";
   };
 
-  preBuild=''
-    export CPATH=${zlib.out}/lib
-  '';
-
   nativeBuildInputs = [ cmake pkgconfig makeWrapper ];
 
-  buildInputs = [ SDL2 alsaLib libjack2 perl zlib zziplib ];
+  buildInputs = [ SDL2 alsaLib libjack2 lhasa perl rtmidi zlib zziplib ];
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "Music tracker application, similar to Fasttracker II";
     homepage = http://milkytracker.org;
-    license = stdenv.lib.licenses.gpl3Plus;
+    license = licenses.gpl3Plus;
     platforms = [ "x86_64-linux" "i686-linux" ];
-    maintainers = [ stdenv.lib.maintainers.zoomulator ];
+    maintainers = with maintainers; [ zoomulator ];
   };
 }
diff --git a/pkgs/applications/audio/morituri/default.nix b/pkgs/applications/audio/morituri/default.nix
deleted file mode 100644
index d4c67bb5622c..000000000000
--- a/pkgs/applications/audio/morituri/default.nix
+++ /dev/null
@@ -1,55 +0,0 @@
-{ stdenv, fetchgit, pythonPackages, cdparanoia, cdrdao
-, gst-python, gst-plugins-base, gst-plugins-good
-, utillinux, makeWrapper, substituteAll, autoreconfHook }:
-
-let
-  inherit (pythonPackages) python;
-in stdenv.mkDerivation rec {
-  name = "morituri-${version}";
-  version = "0.2.3.20151109";
-  namePrefix = "";
-
-  src = fetchgit {
-    url = "https://github.com/thomasvs/morituri.git";
-    fetchSubmodules = true;
-    rev = "135b2f7bf27721177e3aeb1d26403f1b29116599";
-    sha256 = "1sl5y5j3gdbynf2v0gf9dwd2hzawj8lm8ywadid7qm34yn8lx12k";
-  };
-
-  pythonPath = with pythonPackages; [
-    pygobject2 gst-python musicbrainzngs
-    pycdio pyxdg setuptools
-    CDDB
-  ];
-
-  nativeBuildInputs = [ autoreconfHook ];
-  buildInputs = [
-    python cdparanoia cdrdao utillinux makeWrapper
-    gst-plugins-base gst-plugins-good
-  ] ++ pythonPath;
-
-  patches = [
-    (substituteAll {
-      src = ./paths.patch;
-      inherit cdrdao cdparanoia python utillinux;
-    })
-  ];
-
-  # This package contains no binaries to patch or strip.
-  dontPatchELF = true;
-  dontStrip = true;
-
-  postInstall = ''
-    wrapProgram "$out/bin/rip" \
-      --prefix PYTHONPATH : "$PYTHONPATH" \
-      --prefix GST_PLUGIN_SYSTEM_PATH : "$GST_PLUGIN_SYSTEM_PATH"
-  '';
-
-  meta = with stdenv.lib; {
-    homepage = http://thomas.apestaart.org/morituri/trac/;
-    description = "A CD ripper aiming for accuracy over speed";
-    maintainers = with maintainers; [ rycee jgeerds ];
-    license = licenses.gpl3Plus;
-    platforms = platforms.linux;
-  };
-}
diff --git a/pkgs/applications/audio/morituri/paths.patch b/pkgs/applications/audio/morituri/paths.patch
deleted file mode 100644
index b3372dae48bf..000000000000
--- a/pkgs/applications/audio/morituri/paths.patch
+++ /dev/null
@@ -1,87 +0,0 @@
-diff --git a/doc/Makefile.am b/doc/Makefile.am
-index c115c2c..78c883e 100644
---- a/doc/Makefile.am
-+++ b/doc/Makefile.am
-@@ -24,7 +24,7 @@ morituri.ics: $(top_srcdir)/morituri.doap
- man_MANS = rip.1
- 
- rip.1: $(top_srcdir)/morituri/extern/python-command/scripts/help2man $(top_srcdir)/morituri
--	PYTHONPATH=$(top_srcdir) $(PYTHON) $(top_srcdir)/morituri/extern/python-command/scripts/help2man morituri.rip.main.Rip rip > rip.1
-+	PYTHONPATH=$(top_srcdir):$(PYTHONPATH) $(PYTHON) $(top_srcdir)/morituri/extern/python-command/scripts/help2man morituri.rip.main.Rip rip > rip.1
- 
- clean-local:
- 	@rm -rf reference
-diff --git a/morituri/common/program.py b/morituri/common/program.py
-index d340fdd..15cb751 100644
---- a/morituri/common/program.py
-+++ b/morituri/common/program.py
-@@ -92,13 +92,13 @@ class Program(log.Loggable):
-         """
-         Load the given device.
-         """
--        os.system('eject -t %s' % device)
-+        os.system('@utillinux@/bin/eject -t %s' % device)
- 
-     def ejectDevice(self, device):
-         """
-         Eject the given device.
-         """
--        os.system('eject %s' % device)
-+        os.system('@utillinux@/bin/eject %s' % device)
- 
-     def unmountDevice(self, device):
-         """
-@@ -112,7 +112,7 @@ class Program(log.Loggable):
-         proc = open('/proc/mounts').read()
-         if device in proc:
-             print 'Device %s is mounted, unmounting' % device
--            os.system('umount %s' % device)
-+            os.system('@utillinux@/bin/umount %s' % device)
- 
-     def getFastToc(self, runner, toc_pickle, device):
-         """
-Submodule morituri/extern/python-command contains modified content
-diff --git a/morituri/program/cdparanoia.py b/morituri/program/cdparanoia.py
-index 46176d5..fce14a5 100644
---- a/morituri/program/cdparanoia.py
-+++ b/morituri/program/cdparanoia.py
-@@ -278,7 +278,7 @@ class ReadTrackTask(log.Loggable, task.Task):
-             stopTrack, stopOffset)
- 
-         bufsize = 1024
--        argv = ["cdparanoia", "--stderr-progress",
-+        argv = ["@cdparanoia@/bin/cdparanoia", "--stderr-progress",
-             "--sample-offset=%d" % self._offset, ]
-         if self._device:
-             argv.extend(["--force-cdrom-device", self._device, ])
-@@ -551,7 +551,7 @@ _VERSION_RE = re.compile(
- 
- def getCdParanoiaVersion():
-     getter = common.VersionGetter('cdparanoia',
--        ["cdparanoia", "-V"],
-+        ["@cdparanoia@/bin/cdparanoia", "-V"],
-         _VERSION_RE,
-         "%(version)s %(release)s")
- 
-diff --git a/morituri/program/cdrdao.py b/morituri/program/cdrdao.py
-index c6fba64..c4d0306 100644
---- a/morituri/program/cdrdao.py
-+++ b/morituri/program/cdrdao.py
-@@ -257,7 +257,7 @@ class CDRDAOTask(ctask.PopenTask):
- 
-     def start(self, runner):
-         self.debug('Starting cdrdao with options %r', self.options)
--        self.command = ['cdrdao', ] + self.options
-+        self.command = ['@cdrdao@/bin/cdrdao', ] + self.options
- 
-         ctask.PopenTask.start(self, runner)
- 
-@@ -515,7 +515,7 @@ _VERSION_RE = re.compile(
- 
- def getCDRDAOVersion():
-     getter = common.VersionGetter('cdrdao',
--        ["cdrdao"],
-+        ["@cdrdao@/bin/cdrdao"],
-         _VERSION_RE,
-         "%(version)s")
- 
diff --git a/pkgs/applications/audio/pavucontrol/default.nix b/pkgs/applications/audio/pavucontrol/default.nix
index 4f64be02fd52..06398324491b 100644
--- a/pkgs/applications/audio/pavucontrol/default.nix
+++ b/pkgs/applications/audio/pavucontrol/default.nix
@@ -11,6 +11,7 @@ stdenv.mkDerivation rec {
 
   preFixup = ''
     wrapProgram "$out/bin/pavucontrol" \
+     --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
      --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS"
   '';
 
diff --git a/pkgs/applications/audio/pulseaudio-modules-bt/default.nix b/pkgs/applications/audio/pulseaudio-modules-bt/default.nix
new file mode 100644
index 000000000000..e3d07fcc2457
--- /dev/null
+++ b/pkgs/applications/audio/pulseaudio-modules-bt/default.nix
@@ -0,0 +1,63 @@
+{ stdenv
+, runCommand
+, fetchFromGitHub
+, libpulseaudio
+, pulseaudio
+, pkgconfig
+, libtool
+, cmake
+, bluez
+, dbus
+, sbc
+}:
+
+let
+  pulseSources = runCommand "pulseaudio-sources" {} ''
+    mkdir $out
+    tar -xf ${pulseaudio.src}
+    mv pulseaudio*/* $out/
+  '';
+
+in stdenv.mkDerivation rec {
+  name = "pulseaudio-modules-bt-${version}";
+  version = "unstable-2018-09-11";
+
+  src = fetchFromGitHub {
+    owner = "EHfive";
+    repo = "pulseaudio-modules-bt";
+    rev = "9c6ad75382f3855916ad2feaa6b40e37356d80cc";
+    sha256 = "1iz4m3y6arsvwcyvqc429w252dl3apnhvl1zhyvfxlbg00d2ii0h";
+    fetchSubmodules = true;
+  };
+
+  nativeBuildInputs = [
+    pkgconfig
+    cmake
+  ];
+
+  buildInputs = [
+    libpulseaudio
+    pulseaudio
+    libtool
+    bluez
+    dbus
+    sbc
+  ];
+
+  NIX_CFLAGS_COMPILE = [
+    "-L${pulseaudio}/lib/pulseaudio"
+  ];
+
+  prePatch = ''
+    rm -r pa
+    ln -s ${pulseSources} pa
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/EHfive/pulseaudio-modules-bt;
+    description = "SBC, Sony LDAC codec (A2DP Audio) support for Pulseaudio";
+    platforms = platforms.linux;
+    license = licenses.mit;
+    maintainers = with maintainers; [ adisbladis ];
+  };
+}
diff --git a/pkgs/applications/audio/pulseeffects/default.nix b/pkgs/applications/audio/pulseeffects/default.nix
index 0949611224df..46d4f971420a 100644
--- a/pkgs/applications/audio/pulseeffects/default.nix
+++ b/pkgs/applications/audio/pulseeffects/default.nix
@@ -4,6 +4,7 @@
 , ninja
 , pkgconfig
 , itstool
+, python3
 , libxml2
 , desktop-file-utils
 , wrapGAppsHook
@@ -58,6 +59,7 @@ in stdenv.mkDerivation rec {
     pkgconfig
     libxml2
     itstool
+    python3
     desktop-file-utils
     wrapGAppsHook
   ];
diff --git a/pkgs/applications/audio/puredata/default.nix b/pkgs/applications/audio/puredata/default.nix
index 6aca7e9ce226..354b7c4b6c7b 100644
--- a/pkgs/applications/audio/puredata/default.nix
+++ b/pkgs/applications/audio/puredata/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation  rec {
   name = "puredata-${version}";
-  version = "0.48-0";
+  version = "0.48-2";
 
   src = fetchurl {
     url = "http://msp.ucsd.edu/Software/pd-${version}.src.tar.gz";
-    sha256 = "0wy9kl2v00fl27x4mfzhbca415hpaisp6ls8a6mkl01qbw20krny";
+    sha256 = "0p86hncgzkrl437v2wch2fg9iyn6mnrgbn811sh9pwmrjj2f06v8";
   };
 
   nativeBuildInputs = [ autoreconfHook gettext makeWrapper ];
diff --git a/pkgs/applications/audio/qmmp/default.nix b/pkgs/applications/audio/qmmp/default.nix
index dc12baefed14..f58e75c9e263 100644
--- a/pkgs/applications/audio/qmmp/default.nix
+++ b/pkgs/applications/audio/qmmp/default.nix
@@ -29,11 +29,11 @@
 # handle that.
 
 stdenv.mkDerivation rec {
-  name = "qmmp-1.2.2";
+  name = "qmmp-1.2.3";
 
   src = fetchurl {
     url = "http://qmmp.ylsoftware.com/files/${name}.tar.bz2";
-    sha256 = "01nnyg8m3p3px1fj3lfsqqv9zh1388dwx1bm2qv4v87jywimgp79";
+    sha256 = "05lqmj22vr5ch1i0928d64ybdnn3qc66s9lgarx5s6x6ffr6589j";
   };
 
   buildInputs =
diff --git a/pkgs/applications/audio/rosegarden/default.nix b/pkgs/applications/audio/rosegarden/default.nix
index e57d85de05a9..0b2bd9507e55 100644
--- a/pkgs/applications/audio/rosegarden/default.nix
+++ b/pkgs/applications/audio/rosegarden/default.nix
@@ -3,12 +3,12 @@
 , liblo, liblrdf, libsamplerate, libsndfile, lirc ? null, qtbase }:
 
 stdenv.mkDerivation (rec {
-  version = "17.12.1";
+  version = "18.06";
   name = "rosegarden-${version}";
 
   src = fetchurl {
     url = "mirror://sourceforge/rosegarden/${name}.tar.bz2";
-    sha256 = "155kqbxg85wqv0w97cmmx8wq0r4xb3qpnk20lfma04vj8k6hc1mg";
+    sha256 = "04qc80sqb2ji42pq3mayhvqqn39hlxzymsywpbpzfpchr19chxx7";
   };
 
   patchPhase = ''
diff --git a/pkgs/applications/audio/sayonara/default.nix b/pkgs/applications/audio/sayonara/default.nix
index 1bf1a8b2c49e..fbe90c5377df 100644
--- a/pkgs/applications/audio/sayonara/default.nix
+++ b/pkgs/applications/audio/sayonara/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchurl, cmake, qt5, zlib, taglib, pkgconfig, pcre, gst_all_1 }:
 
 let
-  version = "1.0.0-git5-20180115";
+  version = "1.1.1-git1-20180828";
 in
 stdenv.mkDerivation {
   name = "sayonara-player-${version}";
 
   src = fetchurl {
     url = "https://sayonara-player.com/sw/sayonara-player-${version}.tar.gz";
-    sha256 = "1fl7zplnrrvbv1xm4g348bpd46jj39jvbm808hyjjq92i64wqg37";
+    sha256 = "0rvy47qvavrp03zjdrw025dmq9fq5aaii3q1qq8b94byarl0c5kn";
   };
 
   nativeBuildInputs = [ cmake pkgconfig ];
@@ -39,7 +39,7 @@ stdenv.mkDerivation {
     { description = "Sayonara music player";
       homepage = https://sayonara-player.com/;
       license = licenses.gpl3;
-      platforms = qt5.qtbase.meta.platforms;
+      platforms = platforms.linux;
       maintainers = [ maintainers.deepfire ];
     };
 }
diff --git a/pkgs/applications/audio/snd/default.nix b/pkgs/applications/audio/snd/default.nix
index 7c96fd364c18..0709917a0442 100644
--- a/pkgs/applications/audio/snd/default.nix
+++ b/pkgs/applications/audio/snd/default.nix
@@ -4,11 +4,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "snd-18.6";
+  name = "snd-18.7";
 
   src = fetchurl {
     url = "mirror://sourceforge/snd/${name}.tar.gz";
-    sha256 = "1jyqkkz2a6zw0jn9y15xd3027r8glkpw794fjk6hd3al1byjhz2z";
+    sha256 = "1d7g043r534shwsq5s4xsywgn5qv96v9wnhdx04j21s9w7fy9ypl";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/applications/audio/sound-juicer/default.nix b/pkgs/applications/audio/sound-juicer/default.nix
index e38f38dad78c..f402721e180d 100644
--- a/pkgs/applications/audio/sound-juicer/default.nix
+++ b/pkgs/applications/audio/sound-juicer/default.nix
@@ -22,6 +22,8 @@ in stdenv.mkDerivation rec{
     gst_all_1.gst-libav
   ];
 
+  NIX_CFLAGS_COMPILE="-Wno-error=format-nonliteral";
+
   passthru = {
     updateScript = gnome3.updateScript {
       packageName = pname;
diff --git a/pkgs/applications/audio/spotify/default.nix b/pkgs/applications/audio/spotify/default.nix
index 1639ab34b6cf..81cda4edaedb 100644
--- a/pkgs/applications/audio/spotify/default.nix
+++ b/pkgs/applications/audio/spotify/default.nix
@@ -5,14 +5,14 @@
 let
   # TO UPDATE: just execute the ./update.sh script (won't do anything if there is no update)
   # "rev" decides what is actually being downloaded
-  version = "1.0.88.353.g15c26ea1-14";
+  version = "1.0.83.316.ge96b6e67-5";
   # To get the latest stable revision:
   # curl -H 'X-Ubuntu-Series: 16' 'https://api.snapcraft.io/api/v1/snaps/details/spotify?channel=stable' | jq '.download_url,.version,.last_updated'
   # To get general information:
   # curl -H 'Snap-Device-Series: 16' 'https://api.snapcraft.io/v2/snaps/info/spotify' | jq '.'
-  # More exapmles of api usage:
+  # More examples of api usage:
   # https://github.com/canonical-websites/snapcraft.io/blob/master/webapp/publisher/snaps/views.py
-  rev = "19";
+  rev = "17";
 
 
   deps = [
@@ -65,7 +65,7 @@ stdenv.mkDerivation {
   # https://community.spotify.com/t5/Desktop-Linux/Redistribute-Spotify-on-Linux-Distributions/td-p/1695334
   src = fetchurl {
     url = "https://api.snapcraft.io/api/v1/snaps/download/pOBIoZ2LrCB3rDohMxoYGnbN14EHOgD7_${rev}.snap";
-    sha512 = "3a068cbe3c1fca84ae67e28830216f993aa459947517956897c3b3f63063005c9db646960e85185b149747ffc302060c208a7f9968ea69d50a3496067089f3db";
+    sha512 = "19bbr4142shsl4qrikf48vq7kyrd4k4jbsada13qxicxps46a9bx51vjm2hkijqv739c1gdkgzwx7llyk95z26lhrz53shm2n5ij8xi";
   };
 
   buildInputs = [ squashfsTools makeWrapper ];
diff --git a/pkgs/applications/audio/vocal/default.nix b/pkgs/applications/audio/vocal/default.nix
new file mode 100644
index 000000000000..97f59ee5f94f
--- /dev/null
+++ b/pkgs/applications/audio/vocal/default.nix
@@ -0,0 +1,52 @@
+{ stdenv, fetchFromGitHub, cmake, ninja, pkgconfig, vala, gtk3, libxml2, granite, webkitgtk, clutter-gtk
+, clutter-gst, libunity, libnotify, sqlite, gst_all_1, libsoup, json-glib, gnome3, gobjectIntrospection, wrapGAppsHook }:
+
+stdenv.mkDerivation rec {
+  pname = "vocal";
+  version = "2.2.0";
+
+  name = "${pname}-${version}";
+
+  src = fetchFromGitHub {
+    owner = "needle-and-thread";
+    repo = pname;
+    rev = version;
+    sha256 = "09cm4azyaa9fmfymygf25gf0klpm5p04k6bc1i90jhw0f1im8sgl";
+  };
+
+  nativeBuildInputs = [
+    cmake
+    gobjectIntrospection
+    libxml2
+    ninja
+    pkgconfig
+    vala
+    wrapGAppsHook
+  ];
+
+  buildInputs = with gst_all_1; [
+    clutter-gst
+    clutter-gtk
+    gnome3.libgee
+    granite
+    gst-plugins-base
+    gst-plugins-good
+    gstreamer
+    json-glib
+    libnotify
+    libunity
+    sqlite
+    webkitgtk
+  ];
+
+  meta = with stdenv.lib; {
+    description = "The podcast client for the modern free desktop";
+    longDescription = ''
+      Vocal is a powerful, fast, and intuitive application that helps users find new podcasts, manage their libraries, and enjoy the best that indepedent audio and video publishing has to offer. Vocal features full support for both episode downloading and streaming, native system integration, iTunes store search and top 100 charts (with international results support), iTunes link parsing, OPML importing and exporting, and so much more. Plus, it has great smart features like automatically keeping your library clean from old files, and the ability to set custom skip intervals.
+    '';
+    homepage = https://github.com/needle-and-thread/vocal;
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ worldofpeace ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/audio/whipper/default.nix b/pkgs/applications/audio/whipper/default.nix
new file mode 100644
index 000000000000..162d5459d648
--- /dev/null
+++ b/pkgs/applications/audio/whipper/default.nix
@@ -0,0 +1,48 @@
+{ stdenv, fetchFromGitHub, python2, cdparanoia, cdrdao, flac
+, sox, accuraterip-checksum, utillinux, substituteAll }:
+
+python2.pkgs.buildPythonApplication rec {
+  name = "whipper-${version}";
+  version = "0.7.0";
+
+  src = fetchFromGitHub {
+    owner = "JoeLametta";
+    repo = "whipper";
+    rev = "v${version}";
+    sha256 = "04m8s0s9dcnly9l6id8vv99n9kbjrjid79bss52ay9yvwng0frmj";
+  };
+
+  pythonPath = with python2.pkgs; [
+    pygobject2 musicbrainzngs urllib3 chardet
+    pycdio setuptools mutagen
+    requests
+  ];
+
+  checkInputs = with python2.pkgs; [
+    twisted
+  ];
+
+  patches = [
+    (substituteAll {
+      src = ./paths.patch;
+      inherit cdrdao cdparanoia utillinux flac sox;
+      accurateripChecksum = accuraterip-checksum;
+    })
+  ];
+
+  # some tests require internet access
+  # https://github.com/JoeLametta/whipper/issues/291
+  doCheck = false;
+
+  preCheck = ''
+    HOME=$TMPDIR
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/JoeLametta/whipper;
+    description = "A CD ripper aiming for accuracy over speed";
+    maintainers = with maintainers; [ rycee jgeerds ];
+    license = licenses.gpl3Plus;
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/audio/whipper/paths.patch b/pkgs/applications/audio/whipper/paths.patch
new file mode 100644
index 000000000000..9fe9f7a57c51
--- /dev/null
+++ b/pkgs/applications/audio/whipper/paths.patch
@@ -0,0 +1,105 @@
+--- a/whipper/program/arc.py
++++ b/whipper/program/arc.py
+@@ -3,8 +3,8 @@
+ import logging
+ logger = logging.getLogger(__name__)
+ 
+-ARB = 'accuraterip-checksum'
+-FLAC = 'flac'
++ARB = '@accurateripChecksum@/bin/accuraterip-checksum'
++FLAC = '@flac@/bin/flac'
+ 
+ 
+ def _execute(cmd, **redirects):
+--- a/whipper/program/cdparanoia.py
++++ b/whipper/program/cdparanoia.py
+@@ -280,10 +280,10 @@
+ 
+         bufsize = 1024
+         if self._overread:
+-            argv = ["cd-paranoia", "--stderr-progress",
++            argv = ["@cdparanoia@/bin/cdparanoia", "--stderr-progress",
+                     "--sample-offset=%d" % self._offset, "--force-overread", ]
+         else:
+-            argv = ["cd-paranoia", "--stderr-progress",
++            argv = ["@cdparanoia@/bin/cdparanoia", "--stderr-progress",
+                     "--sample-offset=%d" % self._offset, ]
+         if self._device:
+             argv.extend(["--force-cdrom-device", self._device, ])
+@@ -560,7 +560,7 @@
+ 
+ def getCdParanoiaVersion():
+     getter = common.VersionGetter('cd-paranoia',
+-                                  ["cd-paranoia", "-V"],
++                                  ["@cdparanoia@/bin/cdparanoia", "-V"],
+                                   _VERSION_RE,
+                                   "%(version)s %(release)s")
+ 
+@@ -585,7 +585,7 @@
+     def __init__(self, device=None):
+         # cdparanoia -A *always* writes cdparanoia.log
+         self.cwd = tempfile.mkdtemp(suffix='.whipper.cache')
+-        self.command = ['cd-paranoia', '-A']
++        self.command = ['@cdparanoia@/bin/cdparanoia', '-A']
+         if device:
+             self.command += ['-d', device]
+ 
+--- a/whipper/program/cdrdao.py
++++ b/whipper/program/cdrdao.py
+@@ -9,7 +9,7 @@
+ import logging
+ logger = logging.getLogger(__name__)
+ 
+-CDRDAO = 'cdrdao'
++CDRDAO = '@cdrdao@/bin/cdrdao'
+ 
+ 
+ def read_toc(device, fast_toc=False):
+--- a/whipper/program/sox.py
++++ b/whipper/program/sox.py
+@@ -4,7 +4,7 @@
+ import logging
+ logger = logging.getLogger(__name__)
+ 
+-SOX = 'sox'
++SOX = '@sox@/bin/sox'
+ 
+ 
+ def peak_level(track_path):
+--- a/whipper/program/soxi.py
++++ b/whipper/program/soxi.py
+@@ -6,7 +6,7 @@
+ import logging
+ logger = logging.getLogger(__name__)
+ 
+-SOXI = 'soxi'
++SOXI = '@sox@/bin/soxi'
+ 
+ 
+ class AudioLengthTask(ctask.PopenTask):
+--- a/whipper/program/utils.py
++++ b/whipper/program/utils.py
+@@ -9,7 +9,7 @@
+     Eject the given device.
+     """
+     logger.debug("ejecting device %s", device)
+-    os.system('eject %s' % device)
++    os.system('@utillinux@/bin/eject %s' % device)
+ 
+ 
+ def load_device(device):
+@@ -17,7 +17,7 @@
+     Load the given device.
+     """
+     logger.debug("loading (eject -t) device %s", device)
+-    os.system('eject -t %s' % device)
++    os.system('@utillinux@/bin/eject -t %s' % device)
+ 
+ 
+ def unmount_device(device):
+@@ -32,4 +32,4 @@
+     proc = open('/proc/mounts').read()
+     if device in proc:
+         print 'Device %s is mounted, unmounting' % device
+-        os.system('umount %s' % device)
++        os.system('@utillinux@/bin/umount %s' % device)
diff --git a/pkgs/applications/editors/android-studio/default.nix b/pkgs/applications/editors/android-studio/default.nix
index 199793a44fb7..2385cd31cfaa 100644
--- a/pkgs/applications/editors/android-studio/default.nix
+++ b/pkgs/applications/editors/android-studio/default.nix
@@ -13,14 +13,14 @@ let
     sha256Hash = "0xx6yprylmcb32ipmwdcfkgddlm1nrxi1w68miclvgrbk015brf2";
   };
   betaVersion = {
-    version = "3.2.0.24"; # "Android Studio 3.2 RC 2"
-    build = "181.4974118";
-    sha256Hash = "0sj848pzpsbmnfi2692gg73v6m72hr1pwlk5x8q912w60iypi3pz";
+    version = "3.2.0.25"; # "Android Studio 3.2 RC 3"
+    build = "181.4987877";
+    sha256Hash = "0mriakxxchc0wbqkl236pp4fsqbq3gb2qrkdg5hx9zz763dc59gp";
   };
   latestVersion = { # canary & dev
-    version = "3.3.0.7"; # "Android Studio 3.3 Canary 8"
-    build = "182.4978721";
-    sha256Hash = "0xa19wrw1a6y7f2jdv8699yqv7g34h3zdw3wc0ql0447afzwg9a9";
+    version = "3.3.0.9"; # "Android Studio 3.3 Canary 10"
+    build = "182.4996246";
+    sha256Hash = "0g6hhfhlfj9szw48z22n869n6d0rw5fhljazj63dmw6i4v6rd92g";
   };
 in rec {
   # Old alias
diff --git a/pkgs/applications/editors/aseprite/default.nix b/pkgs/applications/editors/aseprite/default.nix
index 429b2430fce2..7af3742349a6 100644
--- a/pkgs/applications/editors/aseprite/default.nix
+++ b/pkgs/applications/editors/aseprite/default.nix
@@ -1,5 +1,5 @@
-{ stdenv, lib, fetchFromGitHub, cmake, pkgconfig
-, curl, freetype, giflib, libjpeg, libpng, libwebp, pixman, tinyxml, zlib
+{ stdenv, lib, fetchFromGitHub, fetchpatch, cmake, pkgconfig
+, curl, freetype, giflib, harfbuzz, libjpeg, libpng, libwebp, pixman, tinyxml, zlib
 , libX11, libXext, libXcursor, libXxf86vm
 , unfree ? false
 , cmark
@@ -11,7 +11,7 @@
 
 stdenv.mkDerivation rec {
   name = "aseprite-${version}";
-  version = if unfree then "1.2.4" else "1.1.7";
+  version = if unfree then "1.2.9" else "1.1.7";
 
   src = fetchFromGitHub {
     owner = "aseprite";
@@ -19,16 +19,27 @@ stdenv.mkDerivation rec {
     rev = "v${version}";
     fetchSubmodules = true;
     sha256 = if unfree
-      then "1rnf4a8vgddz8x55rpqaihlxmqip1kgpdhqb4d3l71h1zmidg5k3"
+      then "0a9xk163j0984n8nn6pqf27n83gr6w7g25wkiv591zx88pa6cpbd"
       else "0gd49lns2bpzbkwax5jf9x1xmg1j8ij997kcxr2596cwiswnw4di";
   };
 
   nativeBuildInputs = [ cmake pkgconfig ];
 
   buildInputs = [
-    curl freetype giflib libjpeg libpng libwebp pixman tinyxml zlib
+    curl freetype giflib harfbuzz libjpeg libpng libwebp pixman tinyxml zlib
     libX11 libXext libXcursor libXxf86vm
-  ] ++ lib.optionals unfree [ cmark ];
+  ] ++ lib.optionals unfree [ cmark harfbuzz ];
+
+  patches = lib.optionals unfree [
+    (fetchpatch {
+      url = "https://github.com/aseprite/aseprite/commit/cfb4dac6feef1f39e161c23c886055a8f9acfd0d.patch";
+      sha256 = "1qhjfpngg8b1vvb9w26lhjjfamfx57ih0p31km3r5l96nm85l7f9";
+    })
+    (fetchpatch {
+      url = "https://github.com/orivej/aseprite/commit/ea87e65b357ad0bd65467af5529183b5a48a8c17.patch";
+      sha256 = "1vwn8ivap1pzdh444sdvvkndp55iz146nhmd80xbm8cyzn3qmg91";
+    })
+  ];
 
   postPatch = ''
     sed -i src/config.h -e "s-\\(#define VERSION\\) .*-\\1 \"$version\"-"
@@ -49,6 +60,7 @@ stdenv.mkDerivation rec {
     "-DWITH_WEBP_SUPPORT=ON"
   ] ++ lib.optionals unfree [
     "-DUSE_SHARED_CMARK=ON"
+    "-DUSE_SHARED_HARFBUZZ=ON"
     # Aseprite needs internal freetype headers.
     "-DUSE_SHARED_FREETYPE=OFF"
     # Disable libarchive programs.
diff --git a/pkgs/applications/editors/emacs-modes/elpa-generated.nix b/pkgs/applications/editors/emacs-modes/elpa-generated.nix
index 146e4128f7d0..f793366a70ac 100644
--- a/pkgs/applications/editors/emacs-modes/elpa-generated.nix
+++ b/pkgs/applications/editors/emacs-modes/elpa-generated.nix
@@ -309,6 +309,21 @@
           license = lib.licenses.free;
         };
       }) {};
+    brief = callPackage ({ elpaBuild, fetchurl, lib }:
+      elpaBuild {
+        pname = "brief";
+        ename = "brief";
+        version = "5.85";
+        src = fetchurl {
+          url = "https://elpa.gnu.org/packages/brief-5.85.el";
+          sha256 = "10a41qidns28cka0y25rapla58fzjy9c8cw9v9bmrm4gkjqapsv4";
+        };
+        packageRequires = [];
+        meta = {
+          homepage = "https://elpa.gnu.org/packages/brief.html";
+          license = lib.licenses.free;
+        };
+      }) {};
     bug-hunter = callPackage ({ cl-lib ? null, elpaBuild, fetchurl, lib, seq }:
       elpaBuild {
         pname = "bug-hunter";
@@ -820,10 +835,10 @@
       elpaBuild {
         pname = "ebdb";
         ename = "ebdb";
-        version = "0.5.4";
+        version = "0.6";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/ebdb-0.5.4.tar";
-          sha256 = "1dripbiwplyjalzmkr8awaimhkp9f6c2bhnm3c77027k2b87w4lf";
+          url = "https://elpa.gnu.org/packages/ebdb-0.6.tar";
+          sha256 = "1zj8jvq5l4wlk4734i3isxi4barpivarq2f9kqzkfia7mcspxav8";
         };
         packageRequires = [ cl-lib emacs seq ];
         meta = {
@@ -900,10 +915,10 @@
       elpaBuild {
         pname = "el-search";
         ename = "el-search";
-        version = "1.7.3";
+        version = "1.7.9";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/el-search-1.7.3.tar";
-          sha256 = "0nxjgi027mjjn53nm9ara4nyr7kyqjawsmfaygsxqjv0mbykjmd1";
+          url = "https://elpa.gnu.org/packages/el-search-1.7.9.tar";
+          sha256 = "06da4v03zis1mf09v61c1jzkp5x6drm61iakcbpy5hkdq8nvm3xc";
         };
         packageRequires = [ cl-print emacs stream ];
         meta = {
@@ -971,7 +986,8 @@
           license = lib.licenses.free;
         };
       }) {};
-    ergoemacs-mode = callPackage ({ elpaBuild
+    ergoemacs-mode = callPackage ({ cl-lib ? null
+                                  , elpaBuild
                                   , emacs
                                   , fetchurl
                                   , lib
@@ -979,12 +995,12 @@
       elpaBuild {
         pname = "ergoemacs-mode";
         ename = "ergoemacs-mode";
-        version = "5.14.7.3";
+        version = "5.16.10.12";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/ergoemacs-mode-5.14.7.3.tar";
-          sha256 = "0lqqrnw6z9w7js8r40khckjc1cyxdiwx8kapf5pvyfs09gs89i90";
+          url = "https://elpa.gnu.org/packages/ergoemacs-mode-5.16.10.12.tar";
+          sha256 = "1zfzjmi30lllrbyzicmp11c9lpa82g57wi134q9bajvzn9ryx4jr";
         };
-        packageRequires = [ emacs undo-tree ];
+        packageRequires = [ cl-lib emacs undo-tree ];
         meta = {
           homepage = "https://elpa.gnu.org/packages/ergoemacs-mode.html";
           license = lib.licenses.free;
@@ -995,17 +1011,18 @@
                                , fetchurl
                                , fsm
                                , lib
+                               , nadvice
                                , soap-client
                                , url-http-ntlm }:
       elpaBuild {
         pname = "excorporate";
         ename = "excorporate";
-        version = "0.7.6";
+        version = "0.8.0";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/excorporate-0.7.6.tar";
-          sha256 = "02bp0z6vpssc12vxxs1g4whmfxf88wsk0bcq4422vvz256l6vpf9";
+          url = "https://elpa.gnu.org/packages/excorporate-0.8.0.tar";
+          sha256 = "0sx04w7yp2byda0maifsmapqmq6w43r114a6gzqar0j82rsc0mfg";
         };
-        packageRequires = [ emacs fsm soap-client url-http-ntlm ];
+        packageRequires = [ emacs fsm nadvice soap-client url-http-ntlm ];
         meta = {
           homepage = "https://elpa.gnu.org/packages/excorporate.html";
           license = lib.licenses.free;
@@ -1105,10 +1122,10 @@
       elpaBuild {
         pname = "ggtags";
         ename = "ggtags";
-        version = "0.8.12";
+        version = "0.8.13";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/ggtags-0.8.12.el";
-          sha256 = "0ny3llk021g6r0s75xdm4hzpbxv393ddm2r6f2xdk8kqnq4gnirp";
+          url = "https://elpa.gnu.org/packages/ggtags-0.8.13.el";
+          sha256 = "1qa7lcrcmf76sf6dy8sxbg4adq7rg59fm0n5848w3qxgsr0h45fg";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -1412,10 +1429,10 @@
       elpaBuild {
         pname = "jsonrpc";
         ename = "jsonrpc";
-        version = "1.0.0";
+        version = "1.0.6";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/jsonrpc-1.0.0.el";
-          sha256 = "06lmmn7j2ilkvwibbpgnd8p6d63fjjnxd2ma8f4jw6vrz1f7lwvs";
+          url = "https://elpa.gnu.org/packages/jsonrpc-1.0.6.el";
+          sha256 = "13a19smz8cksv6fgcyxb111csvagkp07z5nl4imyp5b23asgl70p";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1753,6 +1770,21 @@
           license = lib.licenses.free;
         };
       }) {};
+    nadvice = callPackage ({ elpaBuild, fetchurl, lib }:
+      elpaBuild {
+        pname = "nadvice";
+        ename = "nadvice";
+        version = "0.2";
+        src = fetchurl {
+          url = "https://elpa.gnu.org/packages/nadvice-0.2.el";
+          sha256 = "094slkgw4f7cd88r76d0rgpbqr7zzwy19ssndg8v3sm4p5ld6vwg";
+        };
+        packageRequires = [];
+        meta = {
+          homepage = "https://elpa.gnu.org/packages/nadvice.html";
+          license = lib.licenses.free;
+        };
+      }) {};
     nameless = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
       elpaBuild {
         pname = "nameless";
@@ -1911,10 +1943,10 @@
       elpaBuild {
         pname = "org";
         ename = "org";
-        version = "9.1.13";
+        version = "9.1.14";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/org-9.1.13.tar";
-          sha256 = "1vx0n32gvrgy2bl2b4pvxf00cywxwm57gi46f2b2zlrnmd5n85pr";
+          url = "https://elpa.gnu.org/packages/org-9.1.14.tar";
+          sha256 = "17vd9hig26rqv90l6y92hc2i0x29g44lsdsp0xd4m53s8r3zdikz";
         };
         packageRequires = [];
         meta = {
@@ -1956,10 +1988,10 @@
       elpaBuild {
         pname = "other-frame-window";
         ename = "other-frame-window";
-        version = "1.0.4";
+        version = "1.0.6";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/other-frame-window-1.0.4.el";
-          sha256 = "0hg82j8zjh0ann6bf56r0p8s0y3a016zny8byp80mcvkw63wrn5i";
+          url = "https://elpa.gnu.org/packages/other-frame-window-1.0.6.el";
+          sha256 = "04h0jr73xv8inm52h8b8zbc9lsnlzkn40qy99x4x0lkkdqqxw1ny";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2147,16 +2179,16 @@
           license = lib.licenses.free;
         };
       }) {};
-    rcirc-color = callPackage ({ elpaBuild, fetchurl, lib }:
+    rcirc-color = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
       elpaBuild {
         pname = "rcirc-color";
         ename = "rcirc-color";
-        version = "0.3";
+        version = "0.4.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/rcirc-color-0.3.el";
-          sha256 = "1ya4agh63x60lv8qzrjrng02dnrc70ci0s05b800iq71k71ss3dl";
+          url = "https://elpa.gnu.org/packages/rcirc-color-0.4.1.el";
+          sha256 = "1zs3i3xr8zbjr8hzr1r1qx7mqb2wckpn25qh9444c9as2dnh9sn9";
         };
-        packageRequires = [];
+        packageRequires = [ emacs ];
         meta = {
           homepage = "https://elpa.gnu.org/packages/rcirc-color.html";
           license = lib.licenses.free;
@@ -2252,6 +2284,7 @@
       }) {};
     rudel = callPackage ({ cl-generic
                          , cl-lib ? null
+                         , cl-print
                          , elpaBuild
                          , emacs
                          , fetchurl
@@ -2264,7 +2297,7 @@
           url = "https://elpa.gnu.org/packages/rudel-0.3.1.tar";
           sha256 = "0glqa68g509p0s2vcc0i8kzlddnc9brd9jqhnm5rzxz4i050cvnz";
         };
-        packageRequires = [ cl-generic cl-lib emacs ];
+        packageRequires = [ cl-generic cl-lib cl-print emacs ];
         meta = {
           homepage = "https://elpa.gnu.org/packages/rudel.html";
           license = lib.licenses.free;
diff --git a/pkgs/applications/editors/emacs-modes/melpa-generated.nix b/pkgs/applications/editors/emacs-modes/melpa-generated.nix
index 554d48ecc51e..829dff1749d4 100644
--- a/pkgs/applications/editors/emacs-modes/melpa-generated.nix
+++ b/pkgs/applications/editors/emacs-modes/melpa-generated.nix
@@ -111,12 +111,12 @@
       melpaBuild {
         pname = "a";
         ename = "a";
-        version = "20170720.553";
+        version = "20180907.253";
         src = fetchFromGitHub {
           owner = "plexus";
           repo = "a.el";
-          rev = "3af0122abac723f0d3dc21ee50eeb81afa26d361";
-          sha256 = "0grwpy4ssmn2m8aihfkxb7ifl7ql2hgicw16wzl0crpy5fndh1mp";
+          rev = "8583685c32069a73ccae0100e990e7b39c901737";
+          sha256 = "00v9w6qg3bkwdhypq0ssf0phdh0f4bcq59c20lngd6vhk0204dqi";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/a226f1d81cd1ae81b91c1102fbe40aac2eddcaa8/recipes/a";
@@ -435,12 +435,12 @@
       melpaBuild {
         pname = "ac-emacs-eclim";
         ename = "ac-emacs-eclim";
-        version = "20170924.1339";
+        version = "20180911.421";
         src = fetchFromGitHub {
           owner = "emacs-eclim";
           repo = "emacs-eclim";
-          rev = "322a796be1619fb2ade6de6d51111e5f3f5776d0";
-          sha256 = "05sil1pazr7rdg6hq34p5ba7rnp3rp2lfnhsjpr26fisfhkbbaic";
+          rev = "edff7e0e30c87036710d88fb0b7a4644750858e8";
+          sha256 = "0ywifqdhv7cibgl42m7i15widna9i1dk5kl5rglyql7hy05nk9gj";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1e9d3075587fbd9ca188535fd945a7dc451c6d7e/recipes/ac-emacs-eclim";
@@ -629,14 +629,14 @@
         ename = "ac-html";
         version = "20151005.31";
         src = fetchFromGitHub {
-          owner = "cheunghy";
+          owner = "zhangkaiyulw";
           repo = "ac-html";
           rev = "3de94a46d8cb93e8e62a1b6bdebbde4d65dc7cc2";
           sha256 = "1sip87j4wvlf9pfnpr0zyyhys1dd9smh6hy3zs08ihbdh98krgs5";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/ce370d60b2f4dd0570b631f6ca92a221e1fe2de6/recipes/ac-html";
-          sha256 = "0qf8f75b6dvy844dq8vh8d9c6k599rh1ynjcif9bwvdpf6pxwvqa";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/ac-html";
+          sha256 = "1vidmvylwwvraf8k63dvxv47ism49n6pp0f38l5rl4iaznhkdr84";
           name = "recipe";
         };
         packageRequires = [ auto-complete dash f s ];
@@ -927,12 +927,12 @@
       melpaBuild {
         pname = "ac-php-core";
         ename = "ac-php-core";
-        version = "20180629.144";
+        version = "20180824.106";
         src = fetchFromGitHub {
           owner = "xcwen";
           repo = "ac-php";
-          rev = "fac22638f957abf404bbee4e16d9d7b67fcd42d2";
-          sha256 = "0fsd8cfwqq2jgs2f0nk5g8ybm1mim51n4cfm5n5znvrkwp7a8z2y";
+          rev = "dcac8321b85b2ef6d43244e2b0932cb3ec7cfefb";
+          sha256 = "1a4hc06f8xqkc07a2b72baz6bb7znkf15yvdj5sccwkrnhqw8cqh";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/ac283f1b65c3ba6278e9d3236e5a19734e42b123/recipes/ac-php-core";
@@ -1096,12 +1096,12 @@
       melpaBuild {
         pname = "academic-phrases";
         ename = "academic-phrases";
-        version = "20180318.438";
+        version = "20180723.321";
         src = fetchFromGitHub {
           owner = "nashamri";
           repo = "academic-phrases";
-          rev = "0823ed8c24b26c32f909b896a469833ec4d7b656";
-          sha256 = "0qfzsq8jh05w4zkr0cvq3i1hdn97bq344vcqjg46sib26x3wpz6r";
+          rev = "25d9cf67feac6359cb213f061735e2679c84187f";
+          sha256 = "0m32jpg6n0azz2f4y57y92zfvzm54ankx5cm06gli2zw2v1218fw";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/fe4323043fb875c0252861800e61fdd0a51ed453/recipes/academic-phrases";
@@ -1388,12 +1388,12 @@
       melpaBuild {
         pname = "ace-window";
         ename = "ace-window";
-        version = "20180607.1223";
+        version = "20180814.816";
         src = fetchFromGitHub {
           owner = "abo-abo";
           repo = "ace-window";
-          rev = "92d20e7e75dbb2ba0b879d3aedb8bed51fcee6a7";
-          sha256 = "0svk91yx9plr8027q57g2csqlvmxdp3rv5knpd0hl0hq0hk0j750";
+          rev = "d93e16b52ee7c1b6c9df599060e7077b4e46cbf8";
+          sha256 = "19wi7sk5kbfk6zxbr08wprkihq6wygvyq281xl5vwxxbl8n83dvs";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/42fe131d3c2ea498e4df30ba539a6b91c00f5b07/recipes/ace-window";
@@ -1697,12 +1697,12 @@
       melpaBuild {
         pname = "aggressive-fill-paragraph";
         ename = "aggressive-fill-paragraph";
-        version = "20170902.705";
+        version = "20180910.116";
         src = fetchFromGitHub {
           owner = "davidshepherd7";
           repo = "aggressive-fill-paragraph-mode";
-          rev = "c5185ad673c01e5103ab4a078095c3e2ce7ab039";
-          sha256 = "11dppmpdv26m9l5cnnnylihiss2a09zyyb7kqdrk3djdqvqplqb4";
+          rev = "39eb7ac73976d4d4044ef3d750c3ade967d036e1";
+          sha256 = "1ly79z9aqy3b2wq11ifvvkls9qqbpkbb8hj7nsvpq59vqa9fknli";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/982f5936f2d83222263df2886ca0b629076366bb/recipes/aggressive-fill-paragraph";
@@ -1749,11 +1749,11 @@
       melpaBuild {
         pname = "ahg";
         ename = "ahg";
-        version = "20180125.944";
+        version = "20180808.2353";
         src = fetchhg {
           url = "https://bitbucket.com/agriggio/ahg";
-          rev = "622b519d8586";
-          sha256 = "14jayh9bn8f6mjiln6h7ny404g0iy8zr7b6s6faqqhd840h519mz";
+          rev = "763e15a00b37";
+          sha256 = "1c76dzdcg2xr5fbqv33wa5vx84k0944qbqnxg3a4hax7k45c6ba6";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/5b7972602399f9df9139cff177e38653bb0f43ed/recipes/ahg";
@@ -1782,8 +1782,8 @@
           sha256 = "07qpwa990bgs9028rqqk344c3z4hnr1jkfzcx9fi4z5k756zmw3b";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/d8674b54ad5e17d1da1e499c7d8113f8acd8fd5d/recipes/ahk-mode";
-          sha256 = "066l4hsb49wbyv381qgn9k4hn8gxlzi20h3qaim9grngjj5ljbni";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/e608f40d00a3b2a80a6997da00e7d04f76d8ef0d/recipes/ahk-mode";
+          sha256 = "0jx5vhlfw5r6l4125bjjbf7dl1589ac6j419swx26k3p8p58d93r";
           name = "recipe";
         };
         packageRequires = [ emacs ];
@@ -1882,12 +1882,12 @@
       melpaBuild {
         pname = "alan-mode";
         ename = "alan-mode";
-        version = "20180711.2148";
+        version = "20180902.731";
         src = fetchFromGitHub {
           owner = "M-industries";
           repo = "AlanForEmacs";
-          rev = "02869448b4637516064900caf135aeb4f07bc5e4";
-          sha256 = "03y07041rwi7fab9slavh15xh7m4y6dbk44gd24dw5drb5kvfdiz";
+          rev = "998bf0a8a494783c65fd9fa2c1fd6f081002dc59";
+          sha256 = "1wcp8f9lqyys2ybmngrgca8mgsj65ncx1f1zixkn3arfd5lj69d6";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/6e52314db81dad3517ab400099b032260c3e3e6f/recipes/alan-mode";
@@ -1992,12 +1992,12 @@
       melpaBuild {
         pname = "alert";
         ename = "alert";
-        version = "20180403.38";
+        version = "20180826.2122";
         src = fetchFromGitHub {
           owner = "jwiegley";
           repo = "alert";
-          rev = "667d9c7848c723eb392ab9bacae07966da3e3504";
-          sha256 = "04nrl7kg5pprfdxjbqjyh7vw0vs22bplhhpaf30v3hw7k7nkc0ky";
+          rev = "fe494d1e80e308f7db7273bf02281757fdf86e6f";
+          sha256 = "1v5pn7qnrqqckfhmk6zy46kqarvb9svkmgc3asi4xz8n11271cxi";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/113953825ac4ff98d90a5375eb48d8b7bfa224e7/recipes/alert";
@@ -2154,12 +2154,12 @@
       melpaBuild {
         pname = "all-the-icons-ivy";
         ename = "all-the-icons-ivy";
-        version = "20180225.630";
+        version = "20180826.1316";
         src = fetchFromGitHub {
           owner = "asok";
           repo = "all-the-icons-ivy";
-          rev = "52b3f4a8a4a038998943afaffb5ff25054f65af4";
-          sha256 = "1xkrqv6znf1savkg17w41d9rm7wrs8n3c4ad0arrmi522qgp78fr";
+          rev = "7baba16410e78ca3c7a564c3731baa75b2e8d93a";
+          sha256 = "0whd8ywsy88g5y068n1z7s3d6yh62jgylf03rg1rp1mf6x6j2m16";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/9496e6bb6f03f35444fb204860bc50e5e1b36214/recipes/all-the-icons-ivy";
@@ -2328,12 +2328,12 @@
       melpaBuild {
         pname = "anaconda-mode";
         ename = "anaconda-mode";
-        version = "20180707.1010";
+        version = "20180807.2325";
         src = fetchFromGitHub {
           owner = "proofit404";
           repo = "anaconda-mode";
-          rev = "7d28ae061c226ca2e277ecb9d0928647d9a30154";
-          sha256 = "1sshdy8abqr5rihl7gjprczd4inznl28ipl812725ylmj0igrfw1";
+          rev = "706ad11477b48a2b891235869d32e4aa5536774f";
+          sha256 = "1pcsp9wva3jxxfd6aj25h1fn67xsm951m82mrd51sasdyayhdc0q";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/e03b698fd3fe5b80bdd24ce01f7fba28e9da0da8/recipes/anaconda-mode";
@@ -2430,14 +2430,14 @@
         ename = "angular-mode";
         version = "20151201.1327";
         src = fetchFromGitHub {
-          owner = "omouse";
+          owner = "rudolfolah";
           repo = "angularjs-mode";
           rev = "8720cde86af0f1859ccc8580571e8d0ad1c52cff";
           sha256 = "04kg2x0lif91knmkkh05mj42xw3dkzsnysjda6ian95v57wfg377";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/7b120c7f97e8d313387d2e9d9210e7fcdd10523b/recipes/angular-mode";
-          sha256 = "1bwfmjldnxki0lqi3ys6r2a3nlhbwm1dibsg2dvzirq8qql02w1i";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/angular-mode";
+          sha256 = "0pq4lyhppzi806n1k07n0gdhr8z8z71ri12my0pl81rl5j2z69l2";
           name = "recipe";
         };
         packageRequires = [];
@@ -2483,12 +2483,12 @@
       melpaBuild {
         pname = "anki-editor";
         ename = "anki-editor";
-        version = "20180715.151";
+        version = "20180905.621";
         src = fetchFromGitHub {
           owner = "louietan";
           repo = "anki-editor";
-          rev = "11dbf078957a7d291f5c767cd2936d4341c1864d";
-          sha256 = "009m854i4vvfq1772p9js1r48m9msvlmyaplfmzf7qfqkf6k79ad";
+          rev = "44624cd391b64148c0290c91b3e4f35354bb9819";
+          sha256 = "1d35s70p9nh8dwa2zxp0ycsw8bf573ixj7740jyh40ymngy61bsc";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/8155d649e4b129d0c72da6bb2b1aac66c8483491/recipes/anki-editor";
@@ -2613,12 +2613,12 @@
       melpaBuild {
         pname = "ansible";
         ename = "ansible";
-        version = "20170926.1951";
+        version = "20180812.1814";
         src = fetchFromGitHub {
           owner = "k1LoW";
           repo = "emacs-ansible";
-          rev = "9da54a2a426dca259ec9c2a8a60fb58e954be5bc";
-          sha256 = "16z286gqy18s6bff1njkjpy0swrkfyarvb5xvik49pigd8hzh495";
+          rev = "8a097176d6772b6667254dbbe19c5fb64527bf5d";
+          sha256 = "1m2cb88jb1wxa9rydkbn5llx2gql453l87b4cgzsjllha6j1488k";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/8e45bf58b980ff542a5e887707a6361eb5ac0492/recipes/ansible";
@@ -2866,12 +2866,12 @@
       melpaBuild {
         pname = "apache-mode";
         ename = "apache-mode";
-        version = "20170711.913";
+        version = "20180723.2051";
         src = fetchFromGitHub {
           owner = "emacs-php";
           repo = "apache-mode";
-          rev = "0906559e0cb2997405d98ea6b2195954e3935d3b";
-          sha256 = "0vfyi34qcwkz9975cq5hin1p2zyy3h05fni4f93xyrcs31zvmk22";
+          rev = "d2ac57942f852a727db4fc73004e1e8f046cb657";
+          sha256 = "1srlkqa2bq2p1nyh6r7f3b2754dqlgw28h0wbafmdlfk12jc8xy3";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/eb13cb0dba1696cc51132cd1ff723fa17f892a7c/recipes/apache-mode";
@@ -3043,12 +3043,12 @@
       melpaBuild {
         pname = "apropospriate-theme";
         ename = "apropospriate-theme";
-        version = "20180718.1101";
+        version = "20180906.1106";
         src = fetchFromGitHub {
           owner = "waymondo";
           repo = "apropospriate-theme";
-          rev = "97a26598a4d64f8339f7b12818d67425057235be";
-          sha256 = "1bi9srxc91i81v863k5fpvgxhr7hkz22jbzwajgqbs0kx5jn7417";
+          rev = "409af2b22ec03cbb81318df7982afa463deb73d2";
+          sha256 = "0m58m0dhlbxlwxm81d22ncax3ndnjjmfkzxwrzqaggch0fx0xggj";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1da33013f15825ab656260ce7453b8127e0286f4/recipes/apropospriate-theme";
@@ -3458,24 +3458,23 @@
                       , fetchFromGitHub
                       , fetchurl
                       , lib
-                      , melpaBuild
-                      , queue }:
+                      , melpaBuild }:
       melpaBuild {
         pname = "at";
         ename = "@";
-        version = "20140707.520";
+        version = "20180726.1231";
         src = fetchFromGitHub {
           owner = "skeeto";
           repo = "at-el";
-          rev = "114dfe3761bf0c9dd89f794106c3a6a436ed06cc";
-          sha256 = "0rnnvr8x1czphbinby2z2dga7ikwgd13d7zhgmp3ggamzyaz6nf1";
+          rev = "3671318a811fb51c03a792342af7b42004922809";
+          sha256 = "14cpmwfw2b3yh3s0lj21myrdic9gdbs9pcshv9wj96ksijknhmiy";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/@";
           sha256 = "0da0xqk8fhz8aij3zmpp4bz3plpvfq2riyy17i7ny4ralxb3g08z";
           name = "recipe";
         };
-        packageRequires = [ emacs queue ];
+        packageRequires = [ emacs ];
         meta = {
           homepage = "https://melpa.org/#/@";
           license = lib.licenses.free;
@@ -3571,12 +3570,12 @@
       melpaBuild {
         pname = "attrap";
         ename = "attrap";
-        version = "20180715.1205";
+        version = "20180901.207";
         src = fetchFromGitHub {
           owner = "jyp";
           repo = "attrap";
-          rev = "65f6ad55ef967ef625ca48c2d03b4ea69bf37649";
-          sha256 = "13vxa6gk4yccj5zhm927ilbpmn0dlkbdrbj3d42kphnximswpism";
+          rev = "a971acb251e343d4c6b0253f69dcce0c2cee0fac";
+          sha256 = "0p93y151730ga7v9xa5gkp306s32qw53086i829fcbxf83c2wslv";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/b7420eca80a8c1776d68b1f121511cc265cc70dc/recipes/attrap";
@@ -3991,12 +3990,12 @@
       melpaBuild {
         pname = "auto-complete-distel";
         ename = "auto-complete-distel";
-        version = "20160815.2300";
+        version = "20180827.644";
         src = fetchFromGitHub {
           owner = "sebastiw";
           repo = "distel-completion";
-          rev = "340c9c11939d5f220db05e55388bf3cb606fd190";
-          sha256 = "0ji1wi3s4pgkvrg2vzycmvqfc5jwmcd9zrpxhsgszr5jxp8z0bpb";
+          rev = "acc4c0a5521904203d797fe96b08e5fae4233c7e";
+          sha256 = "0yvp3dwa9mwfyrqla27ycwyjad4bp1267bxv0chxcr4528hnygl3";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/90fff35dd9709b06802edef89d1fe6a96b7115a6/recipes/auto-complete-distel";
@@ -4407,12 +4406,12 @@
       melpaBuild {
         pname = "auto-shell-command";
         ename = "auto-shell-command";
-        version = "20160603.1938";
+        version = "20180817.802";
         src = fetchFromGitHub {
           owner = "ongaeshi";
           repo = "auto-shell-command";
-          rev = "454b75a07b663095334381d5bf5625c7f136f743";
-          sha256 = "0ahiy5cv3a632wfiar28186l0dgibafx5jaw9nrp4h5sqkbyvmjn";
+          rev = "a8f9213e3c773b5687b81881240e6e648f2f56ba";
+          sha256 = "1b0kgqh521y16cx84rbsr244i4fs3l8h4wqjy2zdpwbpbikx1hxk";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/ea710bfa77fee7c2688eea8258ca9d2105d1896e/recipes/auto-shell-command";
@@ -4434,12 +4433,12 @@
       melpaBuild {
         pname = "auto-sudoedit";
         ename = "auto-sudoedit";
-        version = "20180428.2343";
+        version = "20180915.6";
         src = fetchFromGitHub {
           owner = "ncaq";
           repo = "auto-sudoedit";
-          rev = "5a770615fe2989b3b7cb1435d0e65fa672d775d7";
-          sha256 = "0pbbw4lx1k8l5x4bycqymb5s2x2739diw8nbqk9ikxqhyjn4sv67";
+          rev = "16bfa23e6d9c30968a6b6364ada17c88138255f3";
+          sha256 = "1f2rqi5nqa40lgcsnbxk9r4dzn6kcachh3qjv76lm9lzyc41c8ln";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/7cf6bc8bb7b618d74427622b9b2812daa79a3767/recipes/auto-sudoedit";
@@ -4646,14 +4645,14 @@
         ename = "autopair";
         version = "20160304.437";
         src = fetchFromGitHub {
-          owner = "capitaomorte";
+          owner = "joaotavora";
           repo = "autopair";
           rev = "2b6d72bccb0ebba6e7e711528872b898b0c65b0a";
           sha256 = "09p56vi5zgm2djglimwyhv4n4gyydjndzn46vg9qzzlxvvmw66i1";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/091dcc3775ec2137cb61d66df4e72aca4900897a/recipes/autopair";
-          sha256 = "161qhk8rc1ldj9hpg0k9phka0gflz9vny7gc8rnylk90p6asmr28";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/4150455d424326667390f72f6edd22b274d9fa01/recipes/autopair";
+          sha256 = "0l2ypsj3dkasm0lj9jmnaqjs3rv97ldfw8cmayv77mzfd6lhjmh3";
           name = "recipe";
         };
         packageRequires = [ cl-lib ];
@@ -4798,12 +4797,12 @@
       melpaBuild {
         pname = "avk-emacs-themes";
         ename = "avk-emacs-themes";
-        version = "20180406.2220";
+        version = "20180822.839";
         src = fetchFromGitHub {
           owner = "avkoval";
           repo = "avk-emacs-themes";
-          rev = "6abf91ecdaeb16a3a5529b0d5abef9756da1f68c";
-          sha256 = "0hvg8yp7prfl1n71lkyr9l43f3zm1zsh8n2mh26rmdw2chippr4d";
+          rev = "80a8e4f88ccd4a9ff29dc50afb2da6aa290611d8";
+          sha256 = "1r10ysknnbicn9hxp94n7nfgciabrfsljmbnh9pa2szb9knbw80k";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/ef362a76a3881c7596dcc2639df588227b3713c0/recipes/avk-emacs-themes";
@@ -4825,12 +4824,12 @@
       melpaBuild {
         pname = "avy";
         ename = "avy";
-        version = "20180615.801";
+        version = "20180913.1119";
         src = fetchFromGitHub {
           owner = "abo-abo";
           repo = "avy";
-          rev = "7c40f5e3811716b05d87a06096b190f7cf7bdc45";
-          sha256 = "06bqsg9vnjyqdmn2dpy4f17b0bs57w0gg77ahyafsawlp77fz7z9";
+          rev = "cd8fb10759a5be2ded3a344d8c0e472eb9fef5e3";
+          sha256 = "1cmrjwf2zyx5l1ikdh9d3wlsg1hn8kcazrd5rs72krc94vxj50nz";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/77fac7a702d4086fb860514e377037acedc60412/recipes/avy";
@@ -5015,11 +5014,11 @@
       melpaBuild {
         pname = "axiom-environment";
         ename = "axiom-environment";
-        version = "20180401.1257";
+        version = "20180823.255";
         src = fetchgit {
           url = "https://bitbucket.org/pdo/axiom-environment";
-          rev = "6842fb7f85df839acde395093647e2f91cf62fdd";
-          sha256 = "1ag5isg0bvarf86978zd2zq1mbs3ysy29ywvgapls6115ws5k9k8";
+          rev = "5d6b2cd12f639c11b032185c4c5fe4f5bba15b08";
+          sha256 = "1pgz24snvjii7ajha2hqqv59pjygzr60i76r4cyy0abvjxpc4xg5";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/8b4c6b03c5ff78ce327dcf66b175e266bbc53dbf/recipes/axiom-environment";
@@ -5300,6 +5299,31 @@
           license = lib.licenses.free;
         };
       }) {};
+    bap-mode = callPackage ({ fetchFromGitHub
+                            , fetchurl
+                            , lib
+                            , melpaBuild }:
+      melpaBuild {
+        pname = "bap-mode";
+        ename = "bap-mode";
+        version = "20180802.610";
+        src = fetchFromGitHub {
+          owner = "fkie-cad";
+          repo = "bap-mode";
+          rev = "dde47d417473d7c8e9f78e930c35edda31def2d6";
+          sha256 = "02083b66syd5lx3v5hw5ffkanqqg8jiimcnfam5pcxga2rfi1dpi";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/05b1b5885a9d5e3bda38bc8a2f987bffd9353cc0/recipes/bap-mode";
+          sha256 = "1n0sv6d6vnv40iks18vws16psbv83v401pdd8w2d2cfhhsmmi4ii";
+          name = "recipe";
+        };
+        packageRequires = [];
+        meta = {
+          homepage = "https://melpa.org/#/bap-mode";
+          license = lib.licenses.free;
+        };
+      }) {};
     bar-cursor = callPackage ({ fetchFromGitHub
                               , fetchurl
                               , lib
@@ -5565,11 +5589,11 @@
       melpaBuild {
         pname = "bbdb";
         ename = "bbdb";
-        version = "20180502.2038";
+        version = "20180906.2011";
         src = fetchgit {
           url = "https://git.savannah.nongnu.org/git/bbdb.git";
-          rev = "2da950300bb22fa713cede74b71041df315ecc2e";
-          sha256 = "1vz1c3f5wlhfq4d80fahqm3a8jsfl22bs3w4pfl25ivpg1l7m9bn";
+          rev = "1a6ad82b11c7059f6a19fba575146cc31c6ffa8b";
+          sha256 = "0x1f1c91py5wp0npay7xv3f3qcdaak1imr2h6xpwg611mr07848r";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/caaa21f235c4864f6008fb454d0a970a2fd22a86/recipes/bbdb";
@@ -5828,12 +5852,12 @@
       melpaBuild {
         pname = "beginend";
         ename = "beginend";
-        version = "20171003.548";
+        version = "20180827.226";
         src = fetchFromGitHub {
           owner = "DamienCassou";
           repo = "beginend";
-          rev = "2762796b54c7fd8613b02c041b2b9afeb13eb9fa";
-          sha256 = "1g1mml0npypfk0vhicy4s7fa5df76xqpb80llxcfbnl2si9fzyfb";
+          rev = "e4ff077de4a2c80e1f42adfc86837537899447a5";
+          sha256 = "15mcwh6189581l9abzm2japdv8fzpwf1vlr9ql8xb1mn3nih9qi5";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/31c1157d4fd9e47a780bbd91075252acdc7899dd/recipes/beginend";
@@ -6140,12 +6164,12 @@
       melpaBuild {
         pname = "bibretrieve";
         ename = "bibretrieve";
-        version = "20180617.1108";
+        version = "20180901.228";
         src = fetchFromGitHub {
           owner = "pzorin";
           repo = "bibretrieve";
-          rev = "e8ccdc9b9bfec0c5c658f2e9ac3fb81a137549d7";
-          sha256 = "0l85kdnzm8lxva47sm4bbyv7xd52qxfgxippsbg2n12vqqiqf50z";
+          rev = "600fa1fcc4c5d79c628457f2316f3429c96be006";
+          sha256 = "17jy0a4j97vxnj9659q0jr32nx8kj12j9vhi5hnfw2nqxz33x7gr";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/e548e0cf8babaf32f1db58099599a72cebdbb84d/recipes/bibretrieve";
@@ -6218,12 +6242,12 @@
       melpaBuild {
         pname = "bicycle";
         ename = "bicycle";
-        version = "20180624.12";
+        version = "20180909.1426";
         src = fetchFromGitHub {
           owner = "tarsius";
           repo = "bicycle";
-          rev = "ab48f01ec8a3ebcb2f6cf36ea7f3cb8aef3da263";
-          sha256 = "13rmk3004jnnbfqvi9xh22si5dw02fswlryhkafagfzbnscc6gvb";
+          rev = "42a5db3514019d539500a67f913411f5533a1eb3";
+          sha256 = "1nanf0dp7kqzs2mc8gzr9qzn9v6q86sdr35pzysdl41xqydxpsrd";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/ec9b4138ffaf81b556e01b85ce4b112e77909260/recipes/bicycle";
@@ -6583,12 +6607,12 @@
       melpaBuild {
         pname = "blacken";
         ename = "blacken";
-        version = "20180615.803";
+        version = "20180831.2228";
         src = fetchFromGitHub {
           owner = "proofit404";
           repo = "blacken";
-          rev = "d98199e8ab94550f5036aac2293cfb1f745003fa";
-          sha256 = "0fnrjgnc148cjs6b3qkyvpmlsmpdh3xi5xn4hxg7cpwqrx3s36d7";
+          rev = "48061012139d4524619dd90ce5b33775e394dabe";
+          sha256 = "0v9b4a8kgp1n0zchi4zp5sgh4i1i703hnwalb7632wv4xlzrmg31";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/69d9802996a338be937d61678f2cadf3497f6b85/recipes/blacken";
@@ -6627,6 +6651,33 @@
           license = lib.licenses.free;
         };
       }) {};
+    blimp = callPackage ({ eimp
+                         , emacs
+                         , fetchFromGitHub
+                         , fetchurl
+                         , lib
+                         , melpaBuild }:
+      melpaBuild {
+        pname = "blimp";
+        ename = "blimp";
+        version = "20180903.1540";
+        src = fetchFromGitHub {
+          owner = "walseb";
+          repo = "blimp";
+          rev = "b048b037129b68674b99310bcc08fb96d44fdbb4";
+          sha256 = "0az7bjxc6awn56sv49w3d0ws6w7i0gqm99sbkbnjrfgj3ha8xz4d";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/4fe28626950659c5ba4aa9cc7ba6126ce4737fb7/recipes/blimp";
+          sha256 = "1k70x0gs9ns7652ahq2b8fhmichsmajzqmm46v1imji238zr7kb1";
+          name = "recipe";
+        };
+        packageRequires = [ eimp emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/blimp";
+          license = lib.licenses.free;
+        };
+      }) {};
     bliss-theme = callPackage ({ emacs
                                , fetchFromGitHub
                                , fetchurl
@@ -6660,12 +6711,12 @@
       melpaBuild {
         pname = "bln-mode";
         ename = "bln-mode";
-        version = "20170112.527";
+        version = "20180730.523";
         src = fetchFromGitHub {
           owner = "mgrachten";
           repo = "bln-mode";
-          rev = "1de92cec97a4693b8b932713e333730118db9183";
-          sha256 = "0dlcxh3acaiw3q9sa74jw4bpz7fv9lvpws68gw1qhs39f1plyzfx";
+          rev = "b5e86b1bc8b7ac25bf8ec07056824861c4c3f050";
+          sha256 = "12bf5l8x1bfg3hpnw3lg3qkxyyhsn6n6cmghdnf3gmd73arpzcbd";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/ee12ef97df241b7405feee69c1e66b3c1a67204b/recipes/bln-mode";
@@ -6853,12 +6904,12 @@
       melpaBuild {
         pname = "bog";
         ename = "bog";
-        version = "20180113.759";
+        version = "20180815.1513";
         src = fetchFromGitHub {
           owner = "kyleam";
           repo = "bog";
-          rev = "6ed4d3edbe771e586d873b826330f3ef23aa1611";
-          sha256 = "0s4jwlaq3mqyzkyg3x4nh4nx7vw825jhz7ggakay7a2cfvpa4i2j";
+          rev = "b5df3647f55359f8546dcfa991a351673a069a49";
+          sha256 = "1rfv036wzlrbqbki5i24871a9f2h6zk7yqd1lq6gnqrc4y7m477c";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/19fd0bf2f8e52c79120c492a6dcabdd51b465d35/recipes/bog";
@@ -7016,12 +7067,12 @@
       melpaBuild {
         pname = "boon";
         ename = "boon";
-        version = "20180319.526";
+        version = "20180914.443";
         src = fetchFromGitHub {
           owner = "jyp";
           repo = "boon";
-          rev = "b4cf42bbc531032404da88e8671c7495f0f7a5b0";
-          sha256 = "163j41j29nm29w567iq662k9anivqc20yxghm8w49w7i5hsbq9dh";
+          rev = "fe2f981e2e6446e0c6093d49496ec1104e4873b7";
+          sha256 = "1g0cfg2mwr30727jzy0psmwgd97hhala5n2m0dvygr0pp7y2s7mn";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/091dcc3775ec2137cb61d66df4e72aca4900897a/recipes/boon";
@@ -7045,12 +7096,12 @@
       melpaBuild {
         pname = "borg";
         ename = "borg";
-        version = "20180702.1353";
+        version = "20180908.444";
         src = fetchFromGitHub {
           owner = "emacscollective";
           repo = "borg";
-          rev = "738f749a9eeb9abecad17d38ce9a3e45c040cede";
-          sha256 = "0929d5bcqv39bq37sxgcf8z2y9zj89mjcdz632xy4qykiinhnwan";
+          rev = "759dc85315d8788088dc5727a353e3777dc256fa";
+          sha256 = "08f1bhwcrs3b80z4qwv44ymsjbdf59a4d98kk0fglj6a9ybpchc8";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/878ab90d444f3a1fd2c9f9068ca7b477e218f1da/recipes/borg";
@@ -7472,14 +7523,14 @@
         ename = "bubbleberry-theme";
         version = "20141017.244";
         src = fetchFromGitHub {
-          owner = "jasonm23";
+          owner = "emacsfodder";
           repo = "emacs-bubbleberry-theme";
           rev = "22e9adf4586414024e4592972022ec297321b320";
           sha256 = "1aha8rzilv4k300rr4l9qjfygydfwllkbw17lhm8jz0kh9w6bd28";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/e359b4463b10ac713c2d024c43a1682fca2959af/recipes/bubbleberry-theme";
-          sha256 = "056pcr9ynsl34wqa2pw6sh4bdl5kpp1r0pl1vvw15p4866l9bdz3";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/bubbleberry-theme";
+          sha256 = "1mjygck5ra30j44msccqas8v6gkpyv74p6y6hidm8v4f8n6m8dcz";
           name = "recipe";
         };
         packageRequires = [ emacs ];
@@ -7753,12 +7804,12 @@
       melpaBuild {
         pname = "bui";
         ename = "bui";
-        version = "20171215.930";
+        version = "20180812.1413";
         src = fetchFromGitHub {
           owner = "alezost";
           repo = "bui.el";
-          rev = "af1a237b4d1ed31780dd37bcbef51fc8ca9b0603";
-          sha256 = "1ccw90a68dahcrkr94xi9apnxjmvzjvd33w78bsr2jyfd82ggsw1";
+          rev = "bd3c5ee32d28d80c6eb54b0340626103c32e3093";
+          sha256 = "0ixia5s41f2nbal3wsixacbhbc0mk9yb75ir1amqakip30sq4apv";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/38b7c9345de75a707b4a73e8bb8e2f213e4fd739/recipes/bui";
@@ -7771,6 +7822,34 @@
           license = lib.licenses.free;
         };
       }) {};
+    build-farm = callPackage ({ bui
+                              , emacs
+                              , fetchFromGitHub
+                              , fetchurl
+                              , lib
+                              , magit-popup
+                              , melpaBuild }:
+      melpaBuild {
+        pname = "build-farm";
+        ename = "build-farm";
+        version = "20180906.1158";
+        src = fetchFromGitHub {
+          owner = "alezost";
+          repo = "build-farm.el";
+          rev = "e244dea35566a10253d61be430d3caf81b779af8";
+          sha256 = "1a4ky0hca26p7f3i2c2s5517ygkyaaz52vs0vxy6f5q95rhlgdhd";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/bc97bf56ea50788ecbbbb1f46e188e8487370936/recipes/build-farm";
+          sha256 = "0dbq3sc1x0cj06hv3mlk0zw0cijdwjszicylv14m1wahal33xjrw";
+          name = "recipe";
+        };
+        packageRequires = [ bui emacs magit-popup ];
+        meta = {
+          homepage = "https://melpa.org/#/build-farm";
+          license = lib.licenses.free;
+        };
+      }) {};
     build-helper = callPackage ({ fetchFromGitHub
                                 , fetchurl
                                 , lib
@@ -7834,14 +7913,14 @@
         ename = "bundler";
         version = "20160815.215";
         src = fetchFromGitHub {
-          owner = "tobiassvn";
+          owner = "endofunky";
           repo = "bundler.el";
           rev = "f981f67c33b42243e57a78c358dffff70022b56b";
           sha256 = "1hfcvlkwa3hh70qan3q5mvld1hqqbnmbwqycvlqi6qr8dcdfl3cx";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/ade7d0f0f0e553b48634e60ecaf7b91d0776d5f0/recipes/bundler";
-          sha256 = "0i5ybc6i8ackxpaa75kwrg44zdq3jkvy48c42vaaafpddjwjnsy4";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/bundler";
+          sha256 = "1jvcrxwsf9yd5vhirfdmjl52n6hffr1vikd386qbn32vgqcsba7a";
           name = "recipe";
         };
         packageRequires = [ cl-lib inf-ruby ];
@@ -7986,12 +8065,12 @@
       melpaBuild {
         pname = "buttercup";
         ename = "buttercup";
-        version = "20180629.523";
+        version = "20180903.42";
         src = fetchFromGitHub {
           owner = "jorgenschaefer";
           repo = "emacs-buttercup";
-          rev = "39d625ce53bb1e1b9b03d9c9c70aa81e94fcc66a";
-          sha256 = "1y97af0kl0yiirnajn44jcz865acndjwkr3zhpf65lm0bbaxfp2a";
+          rev = "0d742b00debd59f07320638c505777f6a908f5ad";
+          sha256 = "0cy3gqw8h4p09n2n9icnyydgymmxcgyz7r1536cg07nhc0kvgccf";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/d4b187cb5b3cc5b546bfa6b94b6792e6363242d1/recipes/buttercup";
@@ -8267,12 +8346,12 @@
       melpaBuild {
         pname = "calendar-norway";
         ename = "calendar-norway";
-        version = "20160827.1316";
+        version = "20180906.802";
         src = fetchFromGitHub {
           owner = "unhammer";
           repo = "calendar-norway.el";
-          rev = "8501b2ee515e995f345365391b03f44c812cabdf";
-          sha256 = "0lch835rq2rqyh0vyi75dhyl7hm6bv27f2z753wggh0jyg6qxi7a";
+          rev = "8d1fda8268caa74ba5e712c7675ed3c34e46e2d4";
+          sha256 = "011c8pz1g805a7c3djai39yasd2idfp4c2dcrvf7kbls27ayrl6d";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/c5d01230027d5cec9da2545a9ce9270a611f6567/recipes/calendar-norway";
@@ -8525,12 +8604,12 @@
       melpaBuild {
         pname = "caml";
         ename = "caml";
-        version = "20171209.1232";
+        version = "20180913.557";
         src = fetchFromGitHub {
           owner = "ocaml";
           repo = "ocaml";
-          rev = "ca71bda2ac7e5143f58fa9a1693f97e709a91332";
-          sha256 = "1ksx2ym5s68m87rnjjkdwhp5ci6cfw0yhmjjmq1r4a0d0r77x4lr";
+          rev = "f179a652635117f0238258a3235c5bec35efe062";
+          sha256 = "129gg21acylb7n59xdcqkbfajzdqz0nfhvcmy87yz5189ywd3p55";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/d5a3263cdcc229b11a3e96edbf632d56f32c47aa/recipes/caml";
@@ -8605,12 +8684,12 @@
       melpaBuild {
         pname = "cargo";
         ename = "cargo";
-        version = "20180521.408";
+        version = "20180812.518";
         src = fetchFromGitHub {
           owner = "kwrooijen";
           repo = "cargo.el";
-          rev = "10093586bdac7252e65e11851f26da8ba4720608";
-          sha256 = "03imznfy9ry2n83hj3qgw8m0030w66z6789raxywv394274pxm4c";
+          rev = "c995b42e2c0fc609d265286ce465d508d81b8a4d";
+          sha256 = "0jcppqbm84kwph9cq2yy2a2yjpb57vb1552rm4dphfdac8kajqq5";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/e997b356b009b3d2ab467fe49b79d728a8cfe24b/recipes/cargo";
@@ -8692,12 +8771,12 @@
       melpaBuild {
         pname = "cask";
         ename = "cask";
-        version = "20180626.1249";
+        version = "20180831.608";
         src = fetchFromGitHub {
           owner = "cask";
           repo = "cask";
-          rev = "d731e96f40c34a0fd85db04977c9756d60bd221f";
-          sha256 = "045qixxkrvz48giwc83aykld78gmbckndy32prh8dl6ch7digh23";
+          rev = "1350f50e7955d3adf160a3fffa9b26524eb09f4c";
+          sha256 = "03fp7ja7kqgc3jl46kzdrv26wclsrawq082hqxsajr8mj3gzi5xv";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/b86c666ee9b0620390a250dddd42b17cbec2409f/recipes/cask";
@@ -8882,12 +8961,12 @@
       melpaBuild {
         pname = "ccls";
         ename = "ccls";
-        version = "20180708.2207";
+        version = "20180914.2138";
         src = fetchFromGitHub {
           owner = "MaskRay";
           repo = "emacs-ccls";
-          rev = "4c8f377f7aa957a33a0097dc212e765246f799db";
-          sha256 = "09gll0c1jy0ljv2jb7qmpgyh0n4jdm4xhj10lcny0xx32nyfa86y";
+          rev = "791bde91845852c19ad1b4a4c9df87137d3e5625";
+          sha256 = "1601w5gmq39g2ksvil0hhfsh0hm91646qb88ppafqhm8hig91kna";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/be27a4022d58860917a659fce2b7d7791fbea4e2/recipes/ccls";
@@ -9381,16 +9460,16 @@
       melpaBuild {
         pname = "challenger-deep-theme";
         ename = "challenger-deep-theme";
-        version = "20180525.918";
+        version = "20180816.1558";
         src = fetchFromGitHub {
-          owner = "MaxSt";
-          repo = "challenger-deep";
-          rev = "62d05f01c3dc4653f46527448b3b2058daba86c0";
-          sha256 = "019n14m1nfiw2xshsmkiszmj7qc5dyd949xj3bfcxrj6a2prsgqw";
+          owner = "challenger-deep-theme";
+          repo = "emacs";
+          rev = "443ca72dca966b3d27dbec9eab54a09cbd76eac0";
+          sha256 = "19gv0fczdy8hpv836ak2aa70cz0hwm0mw7dinrwz9kyw3wkfi8yv";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/7942f539d025c1e2b059d49e1984716cbbc90a67/recipes/challenger-deep-theme";
-          sha256 = "1apjc32wy7h7fadxckdbfa6wzd360c7v6dig9gikjbsxm8xgdg60";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/challenger-deep-theme";
+          sha256 = "02k0irp27wv1b5g2a6g86zp7cdprv17c0mlhkjsq2brls274ch3y";
           name = "recipe";
         };
         packageRequires = [ emacs ];
@@ -9778,8 +9857,8 @@
           sha256 = "1zm0wjhqsb11szvxs2rnq63396cbi6ffynpbn07p6gk5agxzfy0j";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/chinese-number";
-          sha256 = "01ia2l5vrg8fhaxcvk8pv9qfm08xs0fbyc9j57nbdk9wxnd9i45s";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/e608f40d00a3b2a80a6997da00e7d04f76d8ef0d/recipes/chinese-number";
+          sha256 = "0cjfxhd5izahkncs2nzpdv8brsxlwr2dx4hi07ymr62cr0hh0jgy";
           name = "recipe";
         };
         packageRequires = [];
@@ -9983,12 +10062,12 @@
       melpaBuild {
         pname = "cider";
         ename = "cider";
-        version = "20180719.542";
+        version = "20180914.2345";
         src = fetchFromGitHub {
           owner = "clojure-emacs";
           repo = "cider";
-          rev = "4b7aea3523fb91e8172dfdd538b01da8c0d7686f";
-          sha256 = "0lcczp066lxpq5s4f23bsvn15lkzivw6f0xi5ih7kf74c1fq1nn2";
+          rev = "baa0430625d486bc4752337716770b979d687a5d";
+          sha256 = "1g7zwyyjrzlz7wnf3jq2n797dh00gxad7m3ak2gwkwsnyhs494k1";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/55a937aed818dbe41530037da315f705205f189b/recipes/cider";
@@ -10129,12 +10208,12 @@
       melpaBuild {
         pname = "ciel";
         ename = "ciel";
-        version = "20170330.526";
+        version = "20180914.115";
         src = fetchFromGitHub {
           owner = "cs14095";
           repo = "ciel.el";
-          rev = "8c73f78d60ef52d3c395a9629963a63439b8a83e";
-          sha256 = "1jaxqri8l7y1lqj830h5alxn37skjpb56j6ax8qf9926n8qz3arm";
+          rev = "429773a3c551691a463ecfddd634b8bae2f48503";
+          sha256 = "0xykdwsjgx44c0l5v9swkjjv0xa673krzlc71b1sc4dw9l526s4m";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/9c70c007a557ea9fb9eb4d3f8b7adbe4dac39c8a/recipes/ciel";
@@ -10559,8 +10638,8 @@
           sha256 = "0mfb4k0i71y49hn0xk5a1mv4zaj249qcan0y0nzvgf7mmvr32n9w";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/4dc92d73705ebb61ff8218f3483dd2da51ce8d32/recipes/clipmon";
-          sha256 = "1gvy1722px4fh88jyb8xx7k1dgyjgq7zjadr5fghdir42l0byw7i";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/e608f40d00a3b2a80a6997da00e7d04f76d8ef0d/recipes/clipmon";
+          sha256 = "0qhav3scmk3zsa7v3hg3zczps0as3mzrz3cl34n3xlvf4f6ifd9k";
           name = "recipe";
         };
         packageRequires = [];
@@ -10604,14 +10683,14 @@
         ename = "clips-mode";
         version = "20170909.123";
         src = fetchFromGitHub {
-          owner = "grettke";
+          owner = "clips-mode";
           repo = "clips-mode";
           rev = "dd38e2822640a38f7d8bfec4f69d8dd24be27074";
           sha256 = "1q2jz72wi8d2pdrjic9kwqixp5sczjkkx8rf67rgaz37ysjpcbf6";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/d28484bf5e9ad72778ad63f73deeea1eb1263236/recipes/clips-mode";
-          sha256 = "083wrhjn04rg8vr6j0ziffdbdhbfn63wzl4q7yzpkf8qckh6mxhf";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/clips-mode";
+          sha256 = "1ckk8ajr1x8y2h8jx2q233xs69nip3kjn0wp3xgfbwx7hjcbk7kr";
           name = "recipe";
         };
         packageRequires = [];
@@ -10632,22 +10711,21 @@
                                 , melpaBuild
                                 , multiple-cursors
                                 , paredit
-                                , s
                                 , seq
                                 , yasnippet }:
       melpaBuild {
         pname = "clj-refactor";
         ename = "clj-refactor";
-        version = "20180708.57";
+        version = "20180826.1449";
         src = fetchFromGitHub {
           owner = "clojure-emacs";
           repo = "clj-refactor.el";
-          rev = "443f0860d1d1c209cf4baae998f55df0616a819f";
-          sha256 = "1qykm5z0iiv7vsmkgpd4mvxs0ml42z132bxg7ap8an9mvxixrvhj";
+          rev = "ec158357c4f7a375bc47f89de71ea28028a3bfa0";
+          sha256 = "06iymh1n3kyfw4q6kwghqilas1wvpsj5ryvkmgh7lg4da97037fx";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/3a2db268e55d10f7d1d5a5f02d35b2c27b12b78e/recipes/clj-refactor";
-          sha256 = "1qvds6dylazvrzz1ji2z2ldw72pa2nxqacb9d04gasmkqc32ipvz";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/e608f40d00a3b2a80a6997da00e7d04f76d8ef0d/recipes/clj-refactor";
+          sha256 = "05x0820x34pidcz03z96qs685y2700g7ha0dx4vy1xr7fg356c3z";
           name = "recipe";
         };
         packageRequires = [
@@ -10659,7 +10737,6 @@
           inflections
           multiple-cursors
           paredit
-          s
           seq
           yasnippet
         ];
@@ -10807,12 +10884,12 @@
       melpaBuild {
         pname = "clojars";
         ename = "clojars";
-        version = "20161109.1448";
+        version = "20180825.1251";
         src = fetchFromGitHub {
           owner = "joshuamiller";
           repo = "clojars.el";
-          rev = "d9a3ecb61f055e1c3497e424193d867bc3125da1";
-          sha256 = "1h1yff0b2n9rwpqwhba23jpqbdpnivx0bhs7b48gl66wpsg7307l";
+          rev = "c78e4d5ddacda064c253e2b38d1c35188aa1ad71";
+          sha256 = "1xa0c3i8mq3n8mh37i5avgfkcnjyqkg6h668d9lf3w0bnz5cw0x7";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/7f766319c3e18a41017684ea503b0382e96ab31b/recipes/clojars";
@@ -10860,12 +10937,12 @@
       melpaBuild {
         pname = "clojure-mode";
         ename = "clojure-mode";
-        version = "20180709.648";
+        version = "20180827.1127";
         src = fetchFromGitHub {
           owner = "clojure-emacs";
           repo = "clojure-mode";
-          rev = "e9da8797e577651b96875228e3804ef11b3c9ff0";
-          sha256 = "0dpvmyanhbm164ma3ryhsqchi66vjwpyv97qq92zrd8arv8njnbh";
+          rev = "aecb12973d2b090f8675e8926d77a68269be55a2";
+          sha256 = "0k5rlipjij4sjvd8vizzldv3fhm48b7s9vi80gaf2jh2fzih02jb";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/5e3cd2e6ee52692dc7b2a04245137130a9f521c7/recipes/clojure-mode";
@@ -10968,12 +11045,12 @@
       melpaBuild {
         pname = "clomacs";
         ename = "clomacs";
-        version = "20180722.757";
+        version = "20180901.1241";
         src = fetchFromGitHub {
           owner = "clojure-emacs";
           repo = "clomacs";
-          rev = "be07dc637553b86b6d5cfbbe7dcb4acaf897135e";
-          sha256 = "0h05424xfj3higzjrigzkgmp7pal8zivgjy8kfndj2sjy5kyz5g9";
+          rev = "7b63b802318e3bcae1591f868b2493246cc98310";
+          sha256 = "0lhayg3f724iik11jl394jj80kbi4dq7kdasl4f0jm1yarcp8p2n";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/345f9797e87e3f5f957c167a5e3d33d1e31b50a3/recipes/clomacs";
@@ -10995,12 +11072,12 @@
       melpaBuild {
         pname = "closql";
         ename = "closql";
-        version = "20180627.1931";
+        version = "20180807.2141";
         src = fetchFromGitHub {
           owner = "emacscollective";
           repo = "closql";
-          rev = "faed079570c2e70b0e4988177e35b7990afa4752";
-          sha256 = "0ni2akjb1n5w6vz3b210c3bya9mbyyxiygn8hna707qnszd0li8r";
+          rev = "edb441335b98c71516046cfe8d2c8c1c2cfd8c5a";
+          sha256 = "0rp3ny5djsrsa437cm6dna8vj7784y89738rxcsxd1w1x8h6jbn0";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/2df16abf56e53d4a1cc267a78797419520ff8a1c/recipes/closql";
@@ -11282,12 +11359,12 @@
       melpaBuild {
         pname = "cnfonts";
         ename = "cnfonts";
-        version = "20171205.111";
+        version = "20180830.1428";
         src = fetchFromGitHub {
           owner = "tumashu";
           repo = "cnfonts";
-          rev = "4583e30d5058773606b830072df38a038d40203a";
-          sha256 = "04vc3p4320h3ncxm8s21ijv524w5m0j5gx1f5pyw91k3avvz9hbx";
+          rev = "6d07b14e5c04033966056dd231047f110ce925c0";
+          sha256 = "01m3aw9racrdqy6dz3nyk8x6n4sggja70mh6jj30sfm5w1y8z46s";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/0d5787ffeeee68ffa41f3e777071815084e0ed7a/recipes/cnfonts";
@@ -11403,6 +11480,33 @@
           license = lib.licenses.free;
         };
       }) {};
+    code-stats = callPackage ({ emacs
+                              , fetchFromGitHub
+                              , fetchurl
+                              , lib
+                              , melpaBuild
+                              , request }:
+      melpaBuild {
+        pname = "code-stats";
+        ename = "code-stats";
+        version = "20180810.542";
+        src = fetchFromGitHub {
+          owner = "xuchunyang";
+          repo = "code-stats-emacs";
+          rev = "8ffa1a24206565fe52abec1f1f0458fa3adb253f";
+          sha256 = "0gd6xdrx6gbxqn63rrbcca0852ww8vah41hv6azhjhrfg2h1sgnk";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/20af5580926e9975605c0a245f6ac15c25f4921e/recipes/code-stats";
+          sha256 = "0mwjlhpmrbh3mbw3hjlsbv1fr4mxh068c9g0zcxq7wkksxx707if";
+          name = "recipe";
+        };
+        packageRequires = [ emacs request ];
+        meta = {
+          homepage = "https://melpa.org/#/code-stats";
+          license = lib.licenses.free;
+        };
+      }) {};
     codebug = callPackage ({ fetchFromGitHub
                            , fetchurl
                            , lib
@@ -11798,12 +11902,12 @@
       melpaBuild {
         pname = "color-theme-sanityinc-tomorrow";
         ename = "color-theme-sanityinc-tomorrow";
-        version = "20180713.212";
+        version = "20180804.345";
         src = fetchFromGitHub {
           owner = "purcell";
           repo = "color-theme-sanityinc-tomorrow";
-          rev = "0360984a8a170df8a1dc0870cf547c0e3c4b5b71";
-          sha256 = "0ff8jmzp02lmqp8pb0pa0wbqq3p59ypd3ljzwk1nbmzjw0xx8z6d";
+          rev = "f45776485147b92fee9e09eaf99f91c2d4970098";
+          sha256 = "1s0bqd2yp1fg2hn8ji79n0m9h6qplzd17zhy836wg3adya737cy1";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/cae2ac3513e371a256be0f1a7468e38e686c2487/recipes/color-theme-sanityinc-tomorrow";
@@ -11946,6 +12050,32 @@
           license = lib.licenses.free;
         };
       }) {};
+    comb = callPackage ({ emacs
+                        , fetchFromGitHub
+                        , fetchurl
+                        , lib
+                        , melpaBuild }:
+      melpaBuild {
+        pname = "comb";
+        ename = "comb";
+        version = "20180831.21";
+        src = fetchFromGitHub {
+          owner = "cyrus-and";
+          repo = "comb";
+          rev = "8a68d313bf429763eb8aa78ece00230a668f2a1f";
+          sha256 = "1hh1lkan1ch5xyzrpfgzibf8dxmvaa1jfwlxyyhpnfs5h69h3245";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/1b236a1f3953475cbd7eb5c4289b092818ae08cf/recipes/comb";
+          sha256 = "0n4pkigr07hwj5nb0ngs6ay80psqv7nppp82rg5w38qf0mjs3pkp";
+          name = "recipe";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/comb";
+          license = lib.licenses.free;
+        };
+      }) {};
     comint-intercept = callPackage ({ emacs
                                     , fetchFromGitHub
                                     , fetchurl
@@ -12103,6 +12233,32 @@
           license = lib.licenses.free;
         };
       }) {};
+    commentary-theme = callPackage ({ emacs
+                                    , fetchFromGitHub
+                                    , fetchurl
+                                    , lib
+                                    , melpaBuild }:
+      melpaBuild {
+        pname = "commentary-theme";
+        ename = "commentary-theme";
+        version = "20180816.1415";
+        src = fetchFromGitHub {
+          owner = "pzel";
+          repo = "commentary-theme";
+          rev = "1e2a64719b9d52992c6cdb91911ab313bcd69a77";
+          sha256 = "1bs7dz10f25pi5wfszxgf6afrsbfw6fwp8sm55fa6c46l3pi9jpm";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/852b5f83c9870209080d2ed39fede3215ae43e64/recipes/commentary-theme";
+          sha256 = "1s3g40f0r0v8m1qqldvw64vs43i5xza7rwkvhxqcqmj6p1a7mqqw";
+          name = "recipe";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/commentary-theme";
+          license = lib.licenses.free;
+        };
+      }) {};
     commenter = callPackage ({ emacs
                              , fetchFromGitHub
                              , fetchurl
@@ -12190,12 +12346,12 @@
       melpaBuild {
         pname = "company";
         ename = "company";
-        version = "20180704.701";
+        version = "20180913.1611";
         src = fetchFromGitHub {
           owner = "company-mode";
           repo = "company-mode";
-          rev = "1f836b6b16d313bddef2cccebf49f42d36c58e28";
-          sha256 = "1r3x8shwhc24c8vkrcach99lfhpy180713f89frzn2cbmwyklyh4";
+          rev = "4205ad678436e0e0d314792cb2ad222541458a16";
+          sha256 = "0dz6ilvw6vnm6fcnmrp2g8r4zzl72jiaf042jxvw7rjrznnrmy1y";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/96e7b4184497d0d0db532947f2801398b72432e4/recipes/company";
@@ -12315,12 +12471,12 @@
       melpaBuild {
         pname = "company-auctex";
         ename = "company-auctex";
-        version = "20180330.1118";
+        version = "20180725.1212";
         src = fetchFromGitHub {
           owner = "alexeyr";
           repo = "company-auctex";
-          rev = "f24de90a14c46fc3b924875c658b319c7f209aff";
-          sha256 = "0izi2p8whif6nlbippjw0zxkd0zilmgj2n0arx6k0zi7k4vbfsb7";
+          rev = "48c42c58ce2f0e693301b0cb2d085055410c1b25";
+          sha256 = "10qn7frn5wcmrlci3v6iliqzj7r9dls87h9zp3xkgrgn4bqprfp8";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/189e1a60894db0787a4468b120fbab84be1b5d59/recipes/company-auctex";
@@ -12426,12 +12582,12 @@
       melpaBuild {
         pname = "company-c-headers";
         ename = "company-c-headers";
-        version = "20170531.1330";
+        version = "20180814.1030";
         src = fetchFromGitHub {
           owner = "randomphrase";
           repo = "company-c-headers";
-          rev = "e959d43bebf0a524f7378669983a39ee1379cc21";
-          sha256 = "18fi1jp3scz5rrf877qd1ciwx29bzndb85ifnx4ki0jvznvfas8n";
+          rev = "41331192b3961c8e3a51540678e1d11eaa346f03";
+          sha256 = "1hl14pv8splirzr9riak8m48ngxy1c6wa2q6ds6aq849zx9dafqh";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/d97b5c53967e0ff767b3654c52622f4b5ddf1985/recipes/company-c-headers";
@@ -12603,12 +12759,12 @@
       melpaBuild {
         pname = "company-distel";
         ename = "company-distel";
-        version = "20161002.2339";
+        version = "20180827.644";
         src = fetchFromGitHub {
           owner = "sebastiw";
           repo = "distel-completion";
-          rev = "2ba4eea51cecfa75cf62f58180460ee9ff43131f";
-          sha256 = "1761lgplngmpn1vd8syc1h4g6q1dhngamz1j3n48z07c1ylzpkdd";
+          rev = "acc4c0a5521904203d797fe96b08e5fae4233c7e";
+          sha256 = "0yvp3dwa9mwfyrqla27ycwyjad4bp1267bxv0chxcr4528hnygl3";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/90fff35dd9709b06802edef89d1fe6a96b7115a6/recipes/company-distel";
@@ -12660,12 +12816,12 @@
       melpaBuild {
         pname = "company-emacs-eclim";
         ename = "company-emacs-eclim";
-        version = "20170104.743";
+        version = "20180911.421";
         src = fetchFromGitHub {
           owner = "emacs-eclim";
           repo = "emacs-eclim";
-          rev = "94508ebd071ff1052d68a20f7f1bf1038439fe43";
-          sha256 = "0l72zw93wv8ncn98d6ybnykhi3a60bc0kyx6z699wfhnnhhxhl0p";
+          rev = "edff7e0e30c87036710d88fb0b7a4644750858e8";
+          sha256 = "0ywifqdhv7cibgl42m7i15widna9i1dk5kl5rglyql7hy05nk9gj";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1e9d3075587fbd9ca188535fd945a7dc451c6d7e/recipes/company-emacs-eclim";
@@ -12687,12 +12843,12 @@
       melpaBuild {
         pname = "company-emoji";
         ename = "company-emoji";
-        version = "20161230.1937";
+        version = "20180909.819";
         src = fetchFromGitHub {
           owner = "dunn";
           repo = "company-emoji";
-          rev = "8dc88ffe0773ef44321f245d39430c14a1bc2b82";
-          sha256 = "1y8l9wnc13g79znyw2qsbm33da2bhkj270ppikkg9h4x2qpmxilq";
+          rev = "271909be44f86bcc294739ca45992cdc3caee39f";
+          sha256 = "1rihgld1wxwfdpqv7d9gcgd8xpnms5kpw61z30y18fmkxhhmid3c";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/5733dccdffe97911a30352fbcda2900c33d79810/recipes/company-emoji";
@@ -12828,14 +12984,14 @@
         ename = "company-ghci";
         version = "20160310.1800";
         src = fetchFromGitHub {
-          owner = "juiko";
+          owner = "orimh";
           repo = "company-ghci";
           rev = "c2d74a41166e76de2e78c87f582ba3a1179b2aa6";
           sha256 = "02gq083lpbszy8pf7s5j61bjlm0hacv4md4g17n0q6448rix9yny";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/company-ghci";
-          sha256 = "0q71qil4sndg72s2g5yg17w3n102wlba37y9jbx0l7hisa5l11gi";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/company-ghci";
+          sha256 = "11sygcn8jb4rcc1hfiadhsyanbhsmnalpz2qvh5iaba0l165bsgg";
           name = "recipe";
         };
         packageRequires = [ company haskell-mode ];
@@ -13057,12 +13213,12 @@
       melpaBuild {
         pname = "company-lsp";
         ename = "company-lsp";
-        version = "20180617.1033";
+        version = "20180827.2138";
         src = fetchFromGitHub {
           owner = "tigersoldier";
           repo = "company-lsp";
-          rev = "1cb1990dcd1feabf87a726a0b2a15c6f79eb5525";
-          sha256 = "09mg2yvvl5mmwbav1d5k5flk2jcz6a684r6bv8vspfs32wpz0kwg";
+          rev = "b93abde5bbc870170d2a2f5aa309be8a9618daf9";
+          sha256 = "1jb75km5w2y7iawknyb5nhi1k4mlll4srd6vaf4zm7frmx50jwyc";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/5125f53307c1af3d9ccf2bae3c25e7d23dfe1932/recipes/company-lsp";
@@ -13363,12 +13519,12 @@
       melpaBuild {
         pname = "company-prescient";
         ename = "company-prescient";
-        version = "20180626.1050";
+        version = "20180823.1838";
         src = fetchFromGitHub {
           owner = "raxod502";
           repo = "prescient.el";
-          rev = "515959a2523b43608c9d06dcf8adde8911ce42b9";
-          sha256 = "1k8xk154sql3b2b7hpyxslcgl88aaxq5ak2sr760jsq2qk7878bw";
+          rev = "1e0db9451e75f0db29668bebe98dfa747c6b4bcf";
+          sha256 = "0zm9phc4cv7ldgyngcj84fxc1j0nh12c05lxiwv0n1xb8wc6awvf";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/b92c34e493bbefab1d7747b0855d1ab2f984cb7c/recipes/company-prescient";
@@ -13539,12 +13695,12 @@
       melpaBuild {
         pname = "company-rtags";
         ename = "company-rtags";
-        version = "20170924.2244";
+        version = "20180729.2038";
         src = fetchFromGitHub {
           owner = "Andersbakken";
           repo = "rtags";
-          rev = "e4060b551575be378344c0cc1aedf11446b4f264";
-          sha256 = "01xc5r2am0xck7q6jal3zyrqbzpx68fzqi9af7zb1klyw2s5v807";
+          rev = "7c470ba8e15740f37c3a7a9c56331c1cc4c0b1bb";
+          sha256 = "05czbkgq48jv0f9vainflikil51xiwd0h24jmmx5886wi3v1wb4c";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/3dea16daf0d72188c8b4043534f0833fe9b04e07/recipes/company-rtags";
@@ -13911,12 +14067,12 @@
       melpaBuild {
         pname = "composer";
         ename = "composer";
-        version = "20180415.743";
+        version = "20180819.1821";
         src = fetchFromGitHub {
           owner = "emacs-php";
           repo = "composer.el";
-          rev = "1d43edd8079e84df5e1b46c65e6783cb3ff9debd";
-          sha256 = "0k6345mc2ppckbbmji4wkynlfgy00kr945ah8j2b62hqgm73h575";
+          rev = "d759562626520a61cdfc358ee8081795874d2450";
+          sha256 = "15ga89zxmxfcpb6rkfsa21iv8f7k8x0rjd89f8jydwh1xp85c5x3";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/eb13cb0dba1696cc51132cd1ff723fa17f892a7c/recipes/composer";
@@ -14098,12 +14254,12 @@
       melpaBuild {
         pname = "conllu-mode";
         ename = "conllu-mode";
-        version = "20180722.454";
+        version = "20180730.1018";
         src = fetchFromGitHub {
           owner = "odanoburu";
           repo = "conllu-mode";
-          rev = "fa2769b010c6e600711a04f083d1573505c61c2e";
-          sha256 = "16hasrrsz566bpr4xcjmby3hxf4ad2msb9bx8cs6fndvxgy1zvyk";
+          rev = "a752e9f7a04237e70e58beba23871f8fee4fd4e3";
+          sha256 = "0nany4lqhn56xan9hjr4cwv77ydgi51aqsm150j0093qsr1a91xp";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/444f943baddfeafe29708d6d68aeeeedbb7aa7bd/recipes/conllu-mode";
@@ -14151,16 +14307,16 @@
       melpaBuild {
         pname = "contextual";
         ename = "contextual";
-        version = "20160131.1037";
+        version = "20180726.100";
         src = fetchFromGitHub {
-          owner = "lshift-de";
+          owner = "e-user";
           repo = "contextual";
-          rev = "8134a2d8034c624f4fdbbb0b3893de12f4257909";
-          sha256 = "0s4b7dkndhnh8q3plvg2whjx8zd7ffz4hnbn3xh86xd3k7sch7av";
+          rev = "7ad2bb36426fd182d4d5ee7fd9be1cc0db8c7a84";
+          sha256 = "0zk85y01w23zb9x60bc5w4q3p40cnyk9bsc6pd5h85rlaazbrpby";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/44e5b799e411b8e2d89c8e9aeb4720126ac908b7/recipes/contextual";
-          sha256 = "0vribs0fa1xf5kwkmvzjwhiawni0p3v56c5l4dkz8d7wn2g6wfdx";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/de20db067590624bbd2ca5a7a537b7f11ada84f2/recipes/contextual";
+          sha256 = "1xwjjchmn3xqxbgvqishh8i75scc4kjgdzlp5j64d443pfgyr56a";
           name = "recipe";
         };
         packageRequires = [ cl-lib dash emacs ];
@@ -14445,12 +14601,12 @@
       melpaBuild {
         pname = "counsel";
         ename = "counsel";
-        version = "20180719.1303";
+        version = "20180913.221";
         src = fetchFromGitHub {
           owner = "abo-abo";
           repo = "swiper";
-          rev = "89bae2f783918609c074f7c594dcc19ce19b8d45";
-          sha256 = "0a2r5x7la9hx42wiyf5fjalb29r1ykr2r3q2lhgf6lc3h2qnrhmx";
+          rev = "f969cf8fcb0f4d201e719a2abbfba466fa6187f8";
+          sha256 = "042brxz4qlyhpwz71g8pym065dbdqvvkbrascfbnlz28c9rm0rkq";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/06c50f32b8d603db0d70e77907e36862cd66b811/recipes/counsel";
@@ -14501,12 +14657,12 @@
       melpaBuild {
         pname = "counsel-codesearch";
         ename = "counsel-codesearch";
-        version = "20180713.304";
+        version = "20180913.541";
         src = fetchFromGitHub {
           owner = "abingham";
           repo = "emacs-counsel-codesearch";
-          rev = "cb9f3df541e84b4b13905c3ad3658cad2f34b0cf";
-          sha256 = "1invag9nnbsxajli6xph9fgdihs9j3hwkw2s8w297808if5gxnr3";
+          rev = "504a6f58552294fd0853850bfe4d050ff90cf093";
+          sha256 = "02v0cjwvnkasmsqljm510kmz2xifk1x00g51yj9qsn4jh2j14mbm";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/d3404c3cdfa6654ad80378ab258f0df68a6beeb9/recipes/counsel-codesearch";
@@ -14586,12 +14742,12 @@
       melpaBuild {
         pname = "counsel-etags";
         ename = "counsel-etags";
-        version = "20180605.613";
+        version = "20180806.2255";
         src = fetchFromGitHub {
           owner = "redguardtoo";
           repo = "counsel-etags";
-          rev = "9437ce4e4adb7140df6af0a4528069b9e54de44b";
-          sha256 = "14q7w6pz3pslwr4s1f2b8wiq6k1jvp09mwml9x2j5ljw7j3145pi";
+          rev = "0ff874cd5ad5b29ca557685d04087e3eec859fe7";
+          sha256 = "1pzi0yz320xy72z65nahrxm2dspnnzz55zxjf01ha5nr1nh01q2h";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/87528349a3ab305bfe98f30c5404913272817a38/recipes/counsel-etags";
@@ -14669,12 +14825,12 @@
       melpaBuild {
         pname = "counsel-org-capture-string";
         ename = "counsel-org-capture-string";
-        version = "20180707.217";
+        version = "20180816.24";
         src = fetchFromGitHub {
           owner = "akirak";
           repo = "counsel-org-capture-string";
-          rev = "14144773a23fd42ddee3522ffae44260c55ab9d5";
-          sha256 = "0zknmcxhf97kflxm5bv9gjl9n390jjrbdz13600afs4kvzdad4z1";
+          rev = "0fd5d72397a9268a89dd26de2a6c355f127453ac";
+          sha256 = "19ijjiidxxysvkz9vnsgiymxd7w7zcs5bazn7dmahp5yaprlsjld";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/380d58ac9487f2fb1d4a791008fa60fb7165e7e3/recipes/counsel-org-capture-string";
@@ -14751,12 +14907,12 @@
       melpaBuild {
         pname = "counsel-projectile";
         ename = "counsel-projectile";
-        version = "20180718.842";
+        version = "20180906.39";
         src = fetchFromGitHub {
           owner = "ericdanan";
           repo = "counsel-projectile";
-          rev = "6ffcf45767543c72e817d9de8bca9db9156a48be";
-          sha256 = "1zdnw9n32fgrpwqkd2v153gdhyq183avr78hj57cq48hp6vfwfa1";
+          rev = "878f95c55d7647723e679ce7a179d584db0c382d";
+          sha256 = "1nmgnfgjxxbw9nbdph7ib2m81qncvayn43hb572b64k81ysvvpdi";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/389f16f886a385b02f466540f042a16eea8ba792/recipes/counsel-projectile";
@@ -14832,12 +14988,12 @@
       melpaBuild {
         pname = "counsel-tramp";
         ename = "counsel-tramp";
-        version = "20180311.2327";
+        version = "20180910.1857";
         src = fetchFromGitHub {
           owner = "masasam";
           repo = "emacs-counsel-tramp";
-          rev = "3f5ae75a6bde00bffeb2877b4ed4bd45610c0dfa";
-          sha256 = "06dhhjrgpikzpdl1hck0ckjbx8yzx8jbymb3ajfxglgvrvid4l1k";
+          rev = "5e3345f3d11f965e80763a3f68dca8a05f597224";
+          sha256 = "0rjkgf5idbnkjscmg4n8wvwh2s7dpj0ic848icil2xhc4i189z7k";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/e1822b735b6bd533f658bd64ddccda29e19e9a5e/recipes/counsel-tramp";
@@ -15072,12 +15228,12 @@
       melpaBuild {
         pname = "cquery";
         ename = "cquery";
-        version = "20180619.1953";
+        version = "20180811.1431";
         src = fetchFromGitHub {
           owner = "cquery-project";
           repo = "emacs-cquery";
-          rev = "fd881d5db6bc555b22993e8d3e517d30a56ea763";
-          sha256 = "0n8962x68jcdff1wmq30fs5rbfgx9br2d10ylv3hfrg40abd0sad";
+          rev = "a803e92e77e1ffc74c13a753c1eb4f6f47127a97";
+          sha256 = "0b5f8lk790iavs1fd7hwihqrwx0ipg67hsx7qrs3cw96icl9vjcs";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/3cd3bffff0d2564c39735f844f9a02a660272caa/recipes/cquery";
@@ -15231,12 +15387,12 @@
       melpaBuild {
         pname = "cricbuzz";
         ename = "cricbuzz";
-        version = "20171227.1607";
+        version = "20180804.1554";
         src = fetchFromGitHub {
           owner = "lepisma";
           repo = "cricbuzz.el";
-          rev = "557f75f10525e7a4d50e83010b9ed07fbf9df889";
-          sha256 = "18lc56l5vcbrw2agpgjcap5q0l1mi64khgkk00x7r9wm1zilf9wp";
+          rev = "0b95d45991bbcd2fa58d96ce921f6a57ba42c153";
+          sha256 = "1s77a2lfy7nnaxm3ai9dg8lbdxp0892z4gr0yxqrgzawc4qcbb3x";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/cricbuzz";
@@ -15360,12 +15516,12 @@
       melpaBuild {
         pname = "crystal-mode";
         ename = "crystal-mode";
-        version = "20180606.755";
+        version = "20180826.2029";
         src = fetchFromGitHub {
           owner = "crystal-lang-tools";
           repo = "emacs-crystal-mode";
-          rev = "7af6afdf8b90b13b419b58bbe9e096eb20527e5c";
-          sha256 = "1v6h8i9avgqirg7mcac33vycjyslmvg760dk3mf1sv76xx78v5vz";
+          rev = "8649736fea8960a5e54c3ec934484f231a518ea5";
+          sha256 = "0ggg1zi3x7jphqa83zkcd19x2j30bqkfysn8cl8xahrikwhxmh49";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/d4b9b47d7deecf0cf24a42b26d50021cb1219a69/recipes/crystal-mode";
@@ -15378,6 +15534,33 @@
           license = lib.licenses.free;
         };
       }) {};
+    crystal-playground = callPackage ({ crystal-mode
+                                      , emacs
+                                      , fetchFromGitHub
+                                      , fetchurl
+                                      , lib
+                                      , melpaBuild }:
+      melpaBuild {
+        pname = "crystal-playground";
+        ename = "crystal-playground";
+        version = "20180829.2201";
+        src = fetchFromGitHub {
+          owner = "jasonrobot";
+          repo = "crystal-playground";
+          rev = "532dc7e4239eb4bdd241bc4347d34760344c1ebb";
+          sha256 = "06vrmxikqi36wbnm66r5s5fxhkdlz76fjb3nhlighbqlym4bxpl1";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3e8d3a41e3307f415a144ff55e7a5fa95216cd6c/recipes/crystal-playground";
+          sha256 = "0789x443qrvxgrcha6rag11fwyr0aj1ixw6xc0l4d34fsy76ppwh";
+          name = "recipe";
+        };
+        packageRequires = [ crystal-mode emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/crystal-playground";
+          license = lib.licenses.free;
+        };
+      }) {};
     csgo-conf-mode = callPackage ({ fetchFromGitHub
                                   , fetchurl
                                   , lib
@@ -15410,12 +15593,12 @@
       melpaBuild {
         pname = "csharp-mode";
         ename = "csharp-mode";
-        version = "20180708.652";
+        version = "20180831.324";
         src = fetchFromGitHub {
           owner = "josteink";
           repo = "csharp-mode";
-          rev = "5e47b7764b3f4c97c260a902e8072d444dbd0f1b";
-          sha256 = "1dnhpxcinrwc7dmwgzbg4lnly05h38f00zrfsjincvii6d8rjiw0";
+          rev = "20efdc8b9fa21fe4c297cc290c4fe68ef21d896e";
+          sha256 = "0bvdqiz28sn9kimd3abvqy23d4sis504qg8g0cnp0ijyb8dzi7cs";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/736716bbcfd9c9fb1d10ce290cb4f66fe1c68f44/recipes/csharp-mode";
@@ -16235,12 +16418,12 @@
       melpaBuild {
         pname = "dante";
         ename = "dante";
-        version = "20180515.1312";
+        version = "20180908.1216";
         src = fetchFromGitHub {
           owner = "jyp";
           repo = "dante";
-          rev = "0fd72ef60fe01aafbd11720cf3df2e7015847ff4";
-          sha256 = "1faxalr54vzxiqbf8vr2nmxkpypyv5w67bjnlvqnyy9hzr5i3qwj";
+          rev = "5cbf6726afe56f99b44b20d655c638292c3de8f9";
+          sha256 = "0jzwqm9dwbyhp4758yn2m232k3ql9x2h1w8db5qz0gsr0v8ii677";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/5afa8226077cbda4b76f52734cf8e0b745ab88e8/recipes/dante";
@@ -16253,6 +16436,48 @@
           license = lib.licenses.free;
         };
       }) {};
+    dap-mode = callPackage ({ bui
+                            , dash
+                            , dash-functional
+                            , emacs
+                            , f
+                            , fetchFromGitHub
+                            , fetchurl
+                            , lib
+                            , lsp-mode
+                            , melpaBuild
+                            , s
+                            , tree-mode }:
+      melpaBuild {
+        pname = "dap-mode";
+        ename = "dap-mode";
+        version = "20180912.1048";
+        src = fetchFromGitHub {
+          owner = "yyoncho";
+          repo = "dap-mode";
+          rev = "78f73fc17d4f1c324720af6170447a3bc8d3f62f";
+          sha256 = "000ln7wvzsag7dxdzdi9mhznx2c2v3w3l9iw8wn56945x1vmh481";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/9b5296ada8eb52689acb1f236e0e74fecbbfd5fb/recipes/dap-mode";
+          sha256 = "1hbsmgfgn742fs086m80rjlidglmran0b072f7s8js4c00jy2xdv";
+          name = "recipe";
+        };
+        packageRequires = [
+          bui
+          dash
+          dash-functional
+          emacs
+          f
+          lsp-mode
+          s
+          tree-mode
+        ];
+        meta = {
+          homepage = "https://melpa.org/#/dap-mode";
+          license = lib.licenses.free;
+        };
+      }) {};
     darcsum = callPackage ({ fetchFromGitHub
                            , fetchurl
                            , lib
@@ -16462,12 +16687,12 @@
       melpaBuild {
         pname = "darktooth-theme";
         ename = "darktooth-theme";
-        version = "20180721.2039";
+        version = "20180725.2002";
         src = fetchFromGitHub {
           owner = "emacsfodder";
           repo = "emacs-theme-darktooth";
-          rev = "6060fe63e407fbd08a3acf8af05bdc6ea0bd422e";
-          sha256 = "1y7kjfjxj560chb5rh4rs9x3k2z20vc5vbg974a1aj37ipla4qlb";
+          rev = "ae14a9be19b6fbd287e0f5ad156e7942cd6a5bc6";
+          sha256 = "1jisiz0blksjl6d8q7bnvnlfrwalqfpd93fs66i8pgllhf5z7j19";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/b7f62ac1566ced7332e83253f79078dc30cb7889/recipes/darktooth-theme";
@@ -16492,16 +16717,16 @@
       melpaBuild {
         pname = "dart-mode";
         ename = "dart-mode";
-        version = "20180721.2225";
+        version = "20180731.2049";
         src = fetchFromGitHub {
-          owner = "nex3";
+          owner = "bradyt";
           repo = "dart-mode";
-          rev = "9c9a63ed7bbf2b9d3521ead8c302489789552f9d";
-          sha256 = "12izfp7516d201shnj0fgd4g9ca2ji2rigiifz7bp0ysmbbpy8nr";
+          rev = "c11d02ab6a912abb675b0b7e331aca883ffbae30";
+          sha256 = "1jpwv6b3kfdajndmxkrlx533b995nhj9qnfz3vh8gs6axamcp6wv";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/dart-mode";
-          sha256 = "00zvgxfxgk5jair796l6appyq5hc7hs2s2wglv1j4l7g50b05cla";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/dart-mode";
+          sha256 = "0zpvp86067a6l63wrpqxsm9fhv3n4ggbq8pg21vgiz54hk4x1xpp";
           name = "recipe";
         };
         packageRequires = [ cl-lib dash emacs flycheck s ];
@@ -16517,12 +16742,12 @@
       melpaBuild {
         pname = "dash";
         ename = "dash";
-        version = "20180413.30";
+        version = "20180910.1156";
         src = fetchFromGitHub {
           owner = "magnars";
           repo = "dash.el";
-          rev = "a74f4cfcdc8d0642a9f602ad494f0354f27dacc9";
-          sha256 = "1kzijmjxjxgr7p8clphzvmm47vczckbs8mza9an77c25bn627ywl";
+          rev = "6514359b8606a6a9a94068ccd601fcd6379d6584";
+          sha256 = "0s90f0j7x194k0w1iryd2clrvx992l9cy54w2iq83nw1z40fbg0i";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/57eed8767c3e98614259c408dc0b5c54d3473883/recipes/dash";
@@ -16596,12 +16821,12 @@
       melpaBuild {
         pname = "dashboard";
         ename = "dashboard";
-        version = "20180704.2325";
+        version = "20180902.1148";
         src = fetchFromGitHub {
           owner = "rakanalh";
           repo = "emacs-dashboard";
-          rev = "41d959b752a294a18122817fb3ec2a2a9cf22856";
-          sha256 = "0xcqaf39szm3wqga1lkr4rsh48sv7qxldznfy8vxxa57xama80l3";
+          rev = "caef4564d50cc00b748d98f6180f26d4036cc8c6";
+          sha256 = "1q1q3ns7729icyp05dq2kvjall93wc85ws0d480fjk36vf4fc9dw";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/e9a79341ccaa82a8c065e71c02fe6aee22007c66/recipes/dashboard";
@@ -16676,12 +16901,12 @@
       melpaBuild {
         pname = "datetime";
         ename = "datetime";
-        version = "20180325.1004";
+        version = "20180912.1336";
         src = fetchFromGitHub {
           owner = "doublep";
           repo = "datetime";
-          rev = "d8674ac11f9ebb702e5bbac10a4a6e5542958ef5";
-          sha256 = "19d4wximzwdcs0i2r48k6m60wwxcx5f89jw75k4hr0wvx0352a82";
+          rev = "a4191272d5ef950712d3d9668209d09db7bfef65";
+          sha256 = "0klgjlp3dpj530iq1l4i96adkpas8id27m9iwpng39mhfqhc050a";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/91ef4352603cc69930ab3d63f0a90eee63f5f328/recipes/datetime";
@@ -16729,12 +16954,12 @@
       melpaBuild {
         pname = "datomic-snippets";
         ename = "datomic-snippets";
-        version = "20180116.752";
+        version = "20180817.345";
         src = fetchFromGitHub {
           owner = "magnars";
           repo = "datomic-snippets";
-          rev = "731fbd31b814ef1521bd7eb1558eeab6a4c2e01b";
-          sha256 = "0sbrvd3z32wrpnmarwf9ya0b2c99pg82mxhvjw4b7hggxx65lqsj";
+          rev = "4a14228840d5252e13d2bf6209670f26345bbb84";
+          sha256 = "1nvng479sy7ykwy9a86qq48yzv8n0903g724srhf42v9c81fc9s7";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/4da8ec133ec5e1204966c1b12c9bc0ca1b50d643/recipes/datomic-snippets";
@@ -16867,12 +17092,12 @@
       melpaBuild {
         pname = "deadgrep";
         ename = "deadgrep";
-        version = "20180714.1716";
+        version = "20180912.1603";
         src = fetchFromGitHub {
           owner = "Wilfred";
           repo = "deadgrep";
-          rev = "0b00536799b6ee6d64676a0eed670bf771d4e746";
-          sha256 = "0fdflr7spkcrgn6pssajhh7dbpwbhxqqx22lv38a45zzbpxrirp0";
+          rev = "ad27fc0009ea591c4f3423e83327fb0acc2b7b4f";
+          sha256 = "0mjdm2gxppgbh4dpb95w9g5z6ahla7dih3l8dxv61173vm7v5mm9";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/93389fae7233b83ea904e17bdaf83f8247cda3d8/recipes/deadgrep";
@@ -17143,6 +17368,33 @@
           license = lib.licenses.free;
         };
       }) {};
+    defrepeater = callPackage ({ emacs
+                               , fetchFromGitHub
+                               , fetchurl
+                               , lib
+                               , melpaBuild
+                               , s }:
+      melpaBuild {
+        pname = "defrepeater";
+        ename = "defrepeater";
+        version = "20180829.2110";
+        src = fetchFromGitHub {
+          owner = "alphapapa";
+          repo = "defrepeater.el";
+          rev = "62b00ede57d2e115b9ef9f21268c021ae1186873";
+          sha256 = "106q2h4djcf1q9v31wmimj59fiqmclgxw13s8zjnhv3sc2m3z1ka";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/f0d9cf994233ad098826c6933dfd57665044f598/recipes/defrepeater";
+          sha256 = "1zlp206dy5qipb7m3m77j4har258rxgwxg5ipflym4jj183maa39";
+          name = "recipe";
+        };
+        packageRequires = [ emacs s ];
+        meta = {
+          homepage = "https://melpa.org/#/defrepeater";
+          license = lib.licenses.free;
+        };
+      }) {};
     deft = callPackage ({ fetchFromGitHub
                         , fetchurl
                         , lib
@@ -17150,12 +17402,12 @@
       melpaBuild {
         pname = "deft";
         ename = "deft";
-        version = "20180619.857";
+        version = "20180902.602";
         src = fetchFromGitHub {
           owner = "jrblevin";
           repo = "deft";
-          rev = "24ac778ab8c8247f7677dd20dd301f6eba85bd8d";
-          sha256 = "1m26wplsjgvv2s4mcb47haqjni49xmpjy52rddkmh6p7frhayxi2";
+          rev = "9d31a92ed8407ee92cfd7102538dc9ec6c41559c";
+          sha256 = "0cri5rqnv49yv1rhg3d418pprabjhshsc8i3sqs26wav0j02i4yb";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1e2a0e4698d4e71ec28656594f6a83504a823490/recipes/deft";
@@ -17599,14 +17851,14 @@
         ename = "diffscuss-mode";
         version = "20141014.1657";
         src = fetchFromGitHub {
-          owner = "hut8labs";
+          owner = "tomheon";
           repo = "diffscuss";
           rev = "bbc6dbed4b97d1eb9ae5dae021ed1e066129bd98";
           sha256 = "0ppsgfzmdg0r418n2x0qxwhyqs7hjj8fgazc4xzgs8fsg4j3h7mr";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/17f89560f98f11810205ba58841cd5566766b436/recipes/diffscuss-mode";
-          sha256 = "06jd7wh4yzryz0yjwa4a0xddz7srl5mif8ff1wvcpxsb66m2zbvh";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/diffscuss-mode";
+          sha256 = "1mycjis38gqwha7jgj05fzv0041ghk6khy5d2dlcyy2nh3bb68rb";
           name = "recipe";
         };
         packageRequires = [];
@@ -17957,6 +18209,7 @@
         };
       }) {};
     dired-collapse = callPackage ({ dash
+                                  , dired-hacks-utils
                                   , f
                                   , fetchFromGitHub
                                   , fetchurl
@@ -17965,19 +18218,19 @@
       melpaBuild {
         pname = "dired-collapse";
         ename = "dired-collapse";
-        version = "20180530.727";
+        version = "20180724.944";
         src = fetchFromGitHub {
           owner = "Fuco1";
           repo = "dired-hacks";
-          rev = "71a1cf4d791e640df1f05b5589f79e45c460da64";
-          sha256 = "18l563jp9brflmsf7s5i6yklrs2nzcs93xm6h1w2wswzdssdna2b";
+          rev = "3fd347a0823312e966872bd0d26d9a75b2898c9c";
+          sha256 = "01q93n4b9js29r2grk53206f7blwp2pjyz8lf98x184f2sdrz9k7";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/6aab23df1451682ff18d9ad02c35cb7ec612bc38/recipes/dired-collapse";
           sha256 = "1k8h5cl8r68rnr1a3jnbc0ydflzm5mad7v7f1q60wks5hv61dsd1";
           name = "recipe";
         };
-        packageRequires = [ dash f ];
+        packageRequires = [ dash dired-hacks-utils f ];
         meta = {
           homepage = "https://melpa.org/#/dired-collapse";
           license = lib.licenses.free;
@@ -18091,12 +18344,12 @@
       melpaBuild {
         pname = "dired-filetype-face";
         ename = "dired-filetype-face";
-        version = "20160822.655";
+        version = "20180907.639";
         src = fetchFromGitHub {
           owner = "jixiuf";
           repo = "dired-filetype-face";
-          rev = "72b3c88e8b82b3f8681d940757f7b2992bd80793";
-          sha256 = "1sp6fr3qha5zas65q06b61bgqx0nfiarcgpydqv0drkn6dpaps8b";
+          rev = "7ade7f7e8c2d7518c65f3f0343a10c272da0f47e";
+          sha256 = "0s8mqz331iw2bk4xdvj9zljklqj8dxv0yaw100lddg37qmdf7lgl";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/4e6c8015af3d5f013272308a97e089a4e3ca847d/recipes/dired-filetype-face";
@@ -18120,12 +18373,12 @@
       melpaBuild {
         pname = "dired-filter";
         ename = "dired-filter";
-        version = "20171010.204";
+        version = "20180830.1602";
         src = fetchFromGitHub {
           owner = "Fuco1";
           repo = "dired-hacks";
-          rev = "64b3dbb0e8f631d1e11becd0458406404894550b";
-          sha256 = "1nxn1517pf2i17bi0h5m5p2x8cvv30zgg6i6h8cjm4bwl1nx1ymc";
+          rev = "b6f3b7addefa046f22a15e72a25e4368e8a33d5e";
+          sha256 = "1afb6mmgnzkl3ywz35cmf5mcra17qh0wm44rnb5nw7s7k8wxqrhz";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/568e524b7bdf91b31655bdbb30fe9481d7a0ffbf/recipes/dired-filter";
@@ -18462,12 +18715,12 @@
       melpaBuild {
         pname = "dired-rsync";
         ename = "dired-rsync";
-        version = "20180625.1448";
+        version = "20180906.302";
         src = fetchFromGitHub {
           owner = "stsquad";
           repo = "dired-rsync";
-          rev = "1eb7488f36528166992fe50a89dbbfa6d8a0e58b";
-          sha256 = "0dc30xx9k2l1x2mj8mzkzx7ppv5nzpsyp3wxrhbbjwhnv5micc5q";
+          rev = "e112bf22c913d1491bb2149250be866ceb1806ff";
+          sha256 = "0q9q2b5ffwld87zs26nkkbim9zrpp3m4vf63lnqnbfzpgybx3b5m";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/ce9f41ad832cef527dde97f829a8b8339e6ac48b/recipes/dired-rsync";
@@ -18489,12 +18742,12 @@
       melpaBuild {
         pname = "dired-sidebar";
         ename = "dired-sidebar";
-        version = "20180709.2204";
+        version = "20180902.900";
         src = fetchFromGitHub {
           owner = "jojojames";
           repo = "dired-sidebar";
-          rev = "e40075bbb43c4012b49fea2b40dbef1d3be3d82e";
-          sha256 = "0jz57p47np4wn01y7ggsavgg9nnl1rnmqcl0y32w2c8xk22rhjlp";
+          rev = "4e0c89cf99d3176809275f53571d8ca89f3f40b9";
+          sha256 = "0ckzs2bazvd8297p3dgr2aphvywxsjykz8v6v876wyf0rsx9inan";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/30e15c8361b01195f198197e704828fbcac0e8d6/recipes/dired-sidebar";
@@ -18514,12 +18767,12 @@
       melpaBuild {
         pname = "dired-single";
         ename = "dired-single";
-        version = "20170804.544";
+        version = "20180823.2012";
         src = fetchFromGitHub {
           owner = "crocket";
           repo = "dired-single";
-          rev = "0dcc645de6397bf12c33229de67a503e4490c618";
-          sha256 = "16073xjfx7cvv9g8dlyxwa4ca6x35vwarqq43mrl05nxcq0rfzv3";
+          rev = "b0ccca83df0542c5525c047ae283c0eadf500f5c";
+          sha256 = "14q8lp1x1b78ra9mk90n6dyrm1j9ny5pr7valgpkg8agqyqn7xmn";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/41669decbb7ad5c4dbe152a863f16d87e7bba493/recipes/dired-single";
@@ -19060,12 +19313,12 @@
       melpaBuild {
         pname = "distel-completion-lib";
         ename = "distel-completion-lib";
-        version = "20160816.406";
+        version = "20180827.644";
         src = fetchFromGitHub {
           owner = "sebastiw";
           repo = "distel-completion";
-          rev = "994c61dda2e3256b41fa2e53821c484b5ffd13e6";
-          sha256 = "00nifdhwy89zmi50hln5p5albdx7ypm4mbdfjzhk4870crx4zjr2";
+          rev = "acc4c0a5521904203d797fe96b08e5fae4233c7e";
+          sha256 = "0yvp3dwa9mwfyrqla27ycwyjad4bp1267bxv0chxcr4528hnygl3";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/90fff35dd9709b06802edef89d1fe6a96b7115a6/recipes/distel-completion-lib";
@@ -19322,12 +19575,12 @@
       melpaBuild {
         pname = "djangonaut";
         ename = "djangonaut";
-        version = "20180710.1445";
+        version = "20180727.844";
         src = fetchFromGitHub {
           owner = "proofit404";
           repo = "djangonaut";
-          rev = "61a1ace3562c7352fd1665ceccc6b39be23daa80";
-          sha256 = "02g3iij6hhhzws612l9hbvd8zlf6ggifgl8ckxaysxd80z2jc2rs";
+          rev = "487dbd19a312cf5b45183df82d5d57f5c5a403a2";
+          sha256 = "1fpbbv5w54r70b1xma36lp3kh5cn184bvq28apll5bd5bclii56y";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/0c1281f59add99abf57bc858d6e0f9b2ae5b3c5c/recipes/djangonaut";
@@ -19565,12 +19818,12 @@
       melpaBuild {
         pname = "docker";
         ename = "docker";
-        version = "20180710.743";
+        version = "20180914.742";
         src = fetchFromGitHub {
           owner = "Silex";
           repo = "docker.el";
-          rev = "7aee62326f8304fc5e3fc9de84bd56afe3572ed9";
-          sha256 = "1lrgi7hp5a3j6c39jv3vn7x1ak66p5r1ijifwkrj95r1x0dxj3f2";
+          rev = "c66a56f4af3bdd0e3b3f457867b537494b1abd91";
+          sha256 = "0cni8qkfyjdza4jb4rs12ca650j32a8zx0ahgb62xpbrw0qp61xl";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/6c74bf8a41c17bc733636f9e7c05f3858d17936b/recipes/docker";
@@ -19683,12 +19936,12 @@
       melpaBuild {
         pname = "dockerfile-mode";
         ename = "dockerfile-mode";
-        version = "20180628.959";
+        version = "20180914.416";
         src = fetchFromGitHub {
           owner = "spotify";
           repo = "dockerfile-mode";
-          rev = "64733f64ea9be1e5e534e590846869b75c62ed1f";
-          sha256 = "00fk4qq3yhqia6y7pixx3qfmfxp61hdffkx6hmz6gbd6i1ibkmw4";
+          rev = "9f4381178aa03212cd3400c60c0f48ff306a0994";
+          sha256 = "0mm87gp2iw313bdhrvhvxq5j9cklh12zvskdcvaxpn1y264rfmsi";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1406f5a24115d29e3b140c360a51b977a369e4f9/recipes/dockerfile-mode";
@@ -19718,8 +19971,8 @@
           sha256 = "0vqx8npw0i02dhw2yb7s4z7njw60r3xyncw4z8l6fj99pp6pfh15";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/dokuwiki";
-          sha256 = "0wfzzxx3n75zgxk06rlq7053hla84k79mk911by4jwk6km5adk55";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/e608f40d00a3b2a80a6997da00e7d04f76d8ef0d/recipes/dokuwiki";
+          sha256 = "0d92il37z1m1hgcgb6c6zaifllznzk1na4yv4bfsfqg25l0mid75";
           name = "recipe";
         };
         packageRequires = [ emacs xml-rpc ];
@@ -19843,12 +20096,12 @@
       melpaBuild {
         pname = "doom-modeline";
         ename = "doom-modeline";
-        version = "20180712.2015";
+        version = "20180911.241";
         src = fetchFromGitHub {
           owner = "seagle0128";
           repo = "doom-modeline";
-          rev = "8af6cb74f6f94ec863076966fd3b2d85ce386b02";
-          sha256 = "1b9k30n63milm7xzdh6ya5z4h2gz0dqm0ndfpmy9kx3992mbljqw";
+          rev = "54c28241253b3036ce76a71ef7c9a3edc14e0847";
+          sha256 = "1hprvzm34acirvk9cdk76dqzn9wsnmxds5lad1fhv00sm3lspwcy";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/f4f610757f85fb01bd9b1dd212ddbea8f34f3ecd/recipes/doom-modeline";
@@ -19878,12 +20131,12 @@
       melpaBuild {
         pname = "doom-themes";
         ename = "doom-themes";
-        version = "20180720.438";
+        version = "20180909.1057";
         src = fetchFromGitHub {
           owner = "hlissner";
           repo = "emacs-doom-themes";
-          rev = "75d43068733201b8c9c45f9e637ceaab2ff565a4";
-          sha256 = "11pbk4clc3rxzibrrz8rbfx52kd3fkxdyl6wv8mi1s8p7jw4ffln";
+          rev = "89c4a62ecf46ce4bcb0bc8cb825609729d411b31";
+          sha256 = "0fxnf22c68426vy7mvd9szdwm6c88p4l6cp1fxda195l3abzmygz";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/c5084bc2c3fe378af6ff39d65e40649c6359b7b5/recipes/doom-themes";
@@ -20187,14 +20440,14 @@
         ename = "drawille";
         version = "20160418.1138";
         src = fetchFromGitHub {
-          owner = "sshbio";
-          repo = "drawille";
+          owner = "josuah";
+          repo = "drawille-el";
           rev = "d582b455c01432bc80933650c52a1f586bd1b5ad";
           sha256 = "1z3akh0ywzihr0ghk6f8x9z38mwqy3zg29p0q69h4i6yzhxpdmxa";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/e0920232421bf177f2ab8595fab7e203f40b1a34/recipes/drawille";
-          sha256 = "01rl21hbj3hwy072yr27jl6iql331v131d3mr9zifg9v6f3jqbil";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/drawille";
+          sha256 = "0nkhy00jx06a7899dgyajidah29p9536mvjr7cyqm99ari70m7y9";
           name = "recipe";
         };
         packageRequires = [ cl-lib ];
@@ -20496,12 +20749,12 @@
       melpaBuild {
         pname = "dumb-jump";
         ename = "dumb-jump";
-        version = "20180615.2114";
+        version = "20180911.1231";
         src = fetchFromGitHub {
           owner = "jacktasia";
           repo = "dumb-jump";
-          rev = "cad3c4040be06703a9b40aa36ba38f1dc0927a66";
-          sha256 = "175nwn616xqhwayn78acf6ivkxdh3z1vfb0ihslidq1s3xsg5ypk";
+          rev = "9e79b748746db86e9198a933914a8a9770f57604";
+          sha256 = "1gkzzq128h3z8dxc7r4nax3f844kvrl9nx3cmbc46axh3fixs6j9";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/dumb-jump";
@@ -20606,8 +20859,8 @@
           sha256 = "0vgi6cw14fp8iihzmnk7jifdlbqhhcgnh26r30mnvsbycmbnvf0r";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/5b7972602399f9df9139cff177e38653bb0f43ed/recipes/dyalog-mode";
-          sha256 = "1y17nd2xd8b3mhaybws8dr7yanzwqij9gzfywisy65ckflm9kfyq";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/e608f40d00a3b2a80a6997da00e7d04f76d8ef0d/recipes/dyalog-mode";
+          sha256 = "0w61inyfvxiyihx5z9fk1ckawcd3cr6xiradbbwzmn25k99gkbgr";
           name = "recipe";
         };
         packageRequires = [ cl-lib emacs ];
@@ -21046,12 +21299,12 @@
       melpaBuild {
         pname = "easy-hugo";
         ename = "easy-hugo";
-        version = "20180719.20";
+        version = "20180822.1826";
         src = fetchFromGitHub {
           owner = "masasam";
           repo = "emacs-easy-hugo";
-          rev = "8bf48b973905c4ab488633226b3dfb3317d8c745";
-          sha256 = "0yjxg1mql7ha6wa5wdkngs6y3lqz5y5y0hbsmpvqdw61paqm2ggs";
+          rev = "31cd8060d4ebb117599b90bee0f470ed148bcfba";
+          sha256 = "1sd38chf5zlhyiz2p56bwl35j22h7bfqqrwxxsccyypk217nrvnh";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/easy-hugo";
@@ -21072,12 +21325,12 @@
       melpaBuild {
         pname = "easy-jekyll";
         ename = "easy-jekyll";
-        version = "20180513.1107";
+        version = "20180821.1845";
         src = fetchFromGitHub {
           owner = "masasam";
           repo = "emacs-easy-jekyll";
-          rev = "84c19d0380617ce2e40a2b42ce9bedf65e52779d";
-          sha256 = "1vbb60vb98nqbwrxl6p3gcvjpnjlscp0hp4k53rcgjd75w9vbnsj";
+          rev = "dc8a97d3d512dccf908f63f54a2679e3450fec85";
+          sha256 = "0y6d9gmrk9cka1kl09qfjfrm8p70bxy7bisfl0c7ays9ky7pniix";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/c3f281145bad12c27bdbef32ccc07b6a5f13b577/recipes/easy-jekyll";
@@ -21125,12 +21378,12 @@
       melpaBuild {
         pname = "easy-kill-extras";
         ename = "easy-kill-extras";
-        version = "20161028.504";
+        version = "20180914.54";
         src = fetchFromGitHub {
           owner = "knu";
           repo = "easy-kill-extras.el";
-          rev = "e60a74d7121eff7c263098aea2901cc05a5f6acd";
-          sha256 = "1rabkb2pkafnfx68df1zjwbj8bl7361n35lvzrvldc3v85bfam48";
+          rev = "8ec0e03f7de50c292ddaba696d542a33dd583e8e";
+          sha256 = "131qkgszb0jq42zpnwirb6wp0g5qd4b4w8km50l3p7c0rlydwj04";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/7b55d93f78fefde47a2bd4ebbfd93c028fab1f40/recipes/easy-kill-extras";
@@ -21235,12 +21488,12 @@
       melpaBuild {
         pname = "ebib";
         ename = "ebib";
-        version = "20180428.1401";
+        version = "20180817.324";
         src = fetchFromGitHub {
           owner = "joostkremers";
           repo = "ebib";
-          rev = "212dea4a52f04eaa1d13a895fffea04f5884f12b";
-          sha256 = "150dggfk79pk11qlzfl2sk1xaibdy0sbh6n94r7i2w235p2yg8p5";
+          rev = "1b675d32ebeb8b52cd20934b6e4a4914361329fa";
+          sha256 = "0g12bg4wnzki6v780zhn8gxr80lrszldq8wpcni20l78kn799rdv";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/4e39cd8e8b4f61c04fa967def6a653bb22f45f5b/recipes/ebib";
@@ -21291,12 +21544,12 @@
       melpaBuild {
         pname = "eclim";
         ename = "eclim";
-        version = "20171113.1754";
+        version = "20180911.1026";
         src = fetchFromGitHub {
           owner = "emacs-eclim";
           repo = "emacs-eclim";
-          rev = "4f27d04c30a026f24c0ff18c3a7d36e3fb5b57a5";
-          sha256 = "1krrm123vzv6hw54kbkbh1xj6j090rdm4r2fcqp76b3hg8j8cpn1";
+          rev = "99fda18e661c3420fe997a217024cf7186303c2b";
+          sha256 = "19ri07pqry2v2l5ax0wvsay6fwibdw5s87v3axfjcyvq47qq0k8h";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1e9d3075587fbd9ca188535fd945a7dc451c6d7e/recipes/eclim";
@@ -21536,12 +21789,12 @@
       melpaBuild {
         pname = "ede-php-autoload";
         ename = "ede-php-autoload";
-        version = "20170428.933";
+        version = "20180901.555";
         src = fetchFromGitHub {
           owner = "stevenremot";
           repo = "ede-php-autoload";
-          rev = "65e502602dbc623257a820245d41f94cf2e1f07d";
-          sha256 = "1569g3rnklxnnknrs9nmyjk9axrdhpr9pcz2ma925sb388jyrf5r";
+          rev = "8a4eeeaa93b8d87b65a107c4ebcbeb14528d9449";
+          sha256 = "109cys3d4pfaa2c6gb33p5b40cd6wmisx63w20cxpj86drx8iabf";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/8ee9f7fd9cbc3397cd9af34b08b75c3d9d8bc551/recipes/ede-php-autoload";
@@ -21825,12 +22078,12 @@
       melpaBuild {
         pname = "editorconfig";
         ename = "editorconfig";
-        version = "20180708.228";
+        version = "20180903.1912";
         src = fetchFromGitHub {
           owner = "editorconfig";
           repo = "editorconfig-emacs";
-          rev = "cc5a99005d6f3834cbc7acf78a517044c5dcdad6";
-          sha256 = "05pkligzkvd7imn93mxcdsrmdsjarx5309hg0cyrxra76rngx2yv";
+          rev = "24d65714fe6a934266b5c19aa82ab3215bdb710a";
+          sha256 = "1v96yg4cb1fdxqn28m7a0mijyzvryc7prbxfmincjbqm96rns4zp";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/50d4f2ed288ef38153a7eab44c036e4f075b51d0/recipes/editorconfig";
@@ -21877,12 +22130,12 @@
       melpaBuild {
         pname = "editorconfig-custom-majormode";
         ename = "editorconfig-custom-majormode";
-        version = "20180507.1942";
+        version = "20180815.1944";
         src = fetchFromGitHub {
           owner = "10sr";
           repo = "editorconfig-custom-majormode-el";
-          rev = "ae613f0a56364afbbab19d4377c108406d5cfc7c";
-          sha256 = "0sm3xdysnqzc6nc2n7rcnr478l7qdy7bv8rhq500240aprzv63y4";
+          rev = "13ad1c83f847bedd4b3a19f9df7fd925853b19de";
+          sha256 = "1zagd6cliwm8xyhzfvpi7n7m58k78wv4ihc2snq00v7321jjh9bp";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/fcd47bf4630442ad1a941ad432cef64c7746aa71/recipes/editorconfig-custom-majormode";
@@ -22000,14 +22253,14 @@
         ename = "efire";
         version = "20151009.1331";
         src = fetchFromGitHub {
-          owner = "capitaomorte";
+          owner = "joaotavora";
           repo = "efire";
           rev = "d38dd6dd7974b7cb11bff6fd84846fd01163211a";
           sha256 = "15sc4648lkxsgv2frcfb878z86a7vynixsp1x5i5rg66bd9gzhfy";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/39dc592e92f0377a354d1b17f42172409a836484/recipes/efire";
-          sha256 = "1c8vdc58i0k7vvanwhckfc31226d3rb5xq77lh9ydgnd4i97gq2w";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/4150455d424326667390f72f6edd22b274d9fa01/recipes/efire";
+          sha256 = "0dhgms6s0c889xx75khn1mqfn8i32z4rjlx2w7i0chm2abxbgd3m";
           name = "recipe";
         };
         packageRequires = [ circe ];
@@ -22075,16 +22328,16 @@
       melpaBuild {
         pname = "egison-mode";
         ename = "egison-mode";
-        version = "20160603.103";
+        version = "20180910.133";
         src = fetchFromGitHub {
-          owner = "egisatoshi";
-          repo = "egison3";
-          rev = "0f8289294b1a8de029f89643438e8384e7ee789f";
-          sha256 = "1rkxz4gj11z1jpd3g71m6sbzb5j4ggm6sixk3r18wb8wv91v4fgs";
+          owner = "egison";
+          repo = "egison";
+          rev = "78ba8fb1e31167bc54aa96cf70e5a734eee2cd48";
+          sha256 = "0xs6g76i7hxqg83v3569ascaww3aph28ncdnwzg09fjhldcqmy89";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/f543dd136e2af6c36b12073ea75b3c4d4bc79769/recipes/egison-mode";
-          sha256 = "0x11fhv8kkx34h831k2q70y5qfz7wnfia4ka5mbmps7mpr68zcwi";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/egison-mode";
+          sha256 = "0bch4863l9wxrss63fj46gy3nx3hp635709xr4c2arw0j7n82lzd";
           name = "recipe";
         };
         packageRequires = [];
@@ -22102,12 +22355,12 @@
       melpaBuild {
         pname = "eglot";
         ename = "eglot";
-        version = "20180722.1107";
+        version = "20180908.1519";
         src = fetchFromGitHub {
           owner = "joaotavora";
           repo = "eglot";
-          rev = "8d61ecaa8c38a02322c281ac7072e2884d63012f";
-          sha256 = "0bcs97irg1qqsnjyby0ncm0kl64yrri3vgicfyakl978pixz5hr7";
+          rev = "6f1d64c21aa6b7031b28c8e84f49407d4abca5e8";
+          sha256 = "0h99bjwg3v46svgc09nlgkr2yv5z5cjmc0xh33lvs9vfqrbcx72x";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/6c644530eca56f93d94fac2c9d7663c35c2b8c01/recipes/eglot";
@@ -22217,12 +22470,12 @@
       melpaBuild {
         pname = "ein";
         ename = "ein";
-        version = "20180626.1257";
+        version = "20180909.751";
         src = fetchFromGitHub {
           owner = "millejoh";
           repo = "emacs-ipython-notebook";
-          rev = "cfd9c641c0c517738f33b7ead6de34d755ba24b1";
-          sha256 = "03csx3pbgbch2s5kkckczcxd5gqghapgvhz71jihxqxsal1r6mzn";
+          rev = "1122c88e0d34c63b52a4cba049e93ba80919d86e";
+          sha256 = "19mjwd5075i1vviah5m7qr6jfc7k08w8fd3i8w58f0xav21rl3w2";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/215e163755fe391ce1f049622e7b9bf9a8aea95a/recipes/ein";
@@ -22309,12 +22562,12 @@
       melpaBuild {
         pname = "ejc-sql";
         ename = "ejc-sql";
-        version = "20180701.1105";
+        version = "20180827.708";
         src = fetchFromGitHub {
           owner = "kostafey";
           repo = "ejc-sql";
-          rev = "f957bb5e1e9e1aab0c7f1770f5e8144b9c26c93f";
-          sha256 = "09556l03wvszx9dpndcp3rz72r0yfg1s79b84zmrbliwyq740xbz";
+          rev = "53ef8f3b2e809016ad3d2a1bafc5e6ac942a5557";
+          sha256 = "1njpz8dz3pmbll4lcx13mg5329anpyzl9rrn9gsg5yhvy11viqci";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/8f2cd74717269ef7f10362077a91546723a72104/recipes/ejc-sql";
@@ -22495,12 +22748,12 @@
       melpaBuild {
         pname = "el-patch";
         ename = "el-patch";
-        version = "20180720.821";
+        version = "20180904.1636";
         src = fetchFromGitHub {
           owner = "raxod502";
           repo = "el-patch";
-          rev = "aaa4c4c1afaa48da9da210010f5131affbff720a";
-          sha256 = "04hmhnx854519k53b8r04zmd21hi9bgs9j5yphv7kizn0cpbrjka";
+          rev = "15b3e84ab7001d42acd621cd6572ffdca839ea33";
+          sha256 = "0fg4zzvk7vddiqgk9hcq8h09j8xr6c3hxhh7fa9rah4ni6clxmaw";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/2f4f57e0edbae35597aa4a7744d22d2f971d5de5/recipes/el-patch";
@@ -22785,12 +23038,12 @@
       melpaBuild {
         pname = "elcord";
         ename = "elcord";
-        version = "20180411.1207";
+        version = "20180909.1402";
         src = fetchFromGitHub {
           owner = "Mstrodl";
           repo = "elcord";
-          rev = "0cef4ca13b00d79507292d5591be8ffb7df5a9ca";
-          sha256 = "1571r8iwrf4dagjr2pv7dgs1i0f20nq6jdkxm2dlwvkblcnlx3fm";
+          rev = "edc003bb2d35df54289c3a071aaa17dac156a5f6";
+          sha256 = "1h1k184qlfkf4vy3fx4gni2q09a5bxwfmxab2ww7a3vjzj2ypcdx";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/cf2c52366a8f60b68a33a40ea92cc96e7f0933d2/recipes/elcord";
@@ -22914,24 +23167,23 @@
                                      , fetchFromGitHub
                                      , fetchurl
                                      , lib
-                                     , melpaBuild
-                                     , names }:
+                                     , melpaBuild }:
       melpaBuild {
         pname = "electric-operator";
         ename = "electric-operator";
-        version = "20180627.1012";
+        version = "20180831.1046";
         src = fetchFromGitHub {
           owner = "davidshepherd7";
           repo = "electric-operator";
-          rev = "35db75d5c2dbed1eeab4e4126ccb84714136a307";
-          sha256 = "18f043wpp8y18c4q86b0r4njl5biy2jgnnvja5vvprf6karbx5z5";
+          rev = "33c7f737423d3712e5b2c29c81b4f8d52f8d3621";
+          sha256 = "1fccvqsb38hkjnh85yvjcc5lq3pghjrfc85vn3hqaxnhkrid397k";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/906cdf8647524bb76f644373cf8b65397d9053a5/recipes/electric-operator";
           sha256 = "043bkpvvk42lmkll5jnz4q8i0m44y4wdxvkz6hiqhqcp1rv03nw2";
           name = "recipe";
         };
-        packageRequires = [ dash emacs names ];
+        packageRequires = [ dash emacs ];
         meta = {
           homepage = "https://melpa.org/#/electric-operator";
           license = lib.licenses.free;
@@ -23021,12 +23273,12 @@
       melpaBuild {
         pname = "elfeed";
         ename = "elfeed";
-        version = "20180713.529";
+        version = "20180829.1016";
         src = fetchFromGitHub {
           owner = "skeeto";
           repo = "elfeed";
-          rev = "a6fc231e47f1071cd4d1363926868761f7f0bcd8";
-          sha256 = "0vlyrvzwj9rxhvnl6lawck8n2slrvhb96bxaf5pv37jqidrcsvyh";
+          rev = "3d1c6ecbe585f9fe6ca5a97a3fc352d68f303f9e";
+          sha256 = "1bzpl6lc7kq9bph4bfz1fn19207blrnhjr2g7yinhn0nnnjmxi8i";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/407ae027fcec444622c2a822074b95996df9e6af/recipes/elfeed";
@@ -23117,12 +23369,12 @@
       melpaBuild {
         pname = "elfeed-protocol";
         ename = "elfeed-protocol";
-        version = "20180409.813";
+        version = "20180728.207";
         src = fetchFromGitHub {
           owner = "fasheng";
           repo = "elfeed-protocol";
-          rev = "611a1f57373e3692abf5122652ea7f6f96d3f6ec";
-          sha256 = "0z9xij39p6m2855ksk40qaf830d04smhl3ag9gjb4fhzvw671k76";
+          rev = "81ae532fba657ff230568a14277d1f71940688a3";
+          sha256 = "09s5jnb5sbraszwcmwaa7fzvv8qd6l7cnyl18rzfszhkqkc17xhj";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/3f1eef8add7cd2cfefe6fad6d8e69d65696e9677/recipes/elfeed-protocol";
@@ -23145,12 +23397,12 @@
       melpaBuild {
         pname = "elfeed-web";
         ename = "elfeed-web";
-        version = "20180513.524";
+        version = "20180829.1016";
         src = fetchFromGitHub {
           owner = "skeeto";
           repo = "elfeed";
-          rev = "7e0abfee1470ae6323b559a7a9f843dd0076d622";
-          sha256 = "01x4ww63lvn04c7f3ab5vx2s20xqisvv8213qwswz7vr9nxja5yi";
+          rev = "3d1c6ecbe585f9fe6ca5a97a3fc352d68f303f9e";
+          sha256 = "1bzpl6lc7kq9bph4bfz1fn19207blrnhjr2g7yinhn0nnnjmxi8i";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/62459d16ee44d5fcf170c0ebc981ca2c7d4672f2/recipes/elfeed-web";
@@ -23171,12 +23423,12 @@
       melpaBuild {
         pname = "elgrep";
         ename = "elgrep";
-        version = "20180302.527";
+        version = "20180904.1622";
         src = fetchFromGitHub {
           owner = "TobiasZawada";
           repo = "elgrep";
-          rev = "01aece62e7910c50cd199ebbe70511776043f499";
-          sha256 = "0hlf3i2w1jmjj66ynxf7gvvq86yy3px24ww13hz849ai0lx5nazk";
+          rev = "55efe10b2c479e6c51725be68e64310f75c249b0";
+          sha256 = "0k2vv4vymsygxxxc43sigvc2f2rwpxn6qfqgs2bb54jzm5yaw01d";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/0d9ab623b2d634936a79ff6f4b98b31825d44b6d/recipes/elgrep";
@@ -23226,12 +23478,12 @@
       melpaBuild {
         pname = "elisp-def";
         ename = "elisp-def";
-        version = "20180410.224";
+        version = "20180806.23";
         src = fetchFromGitHub {
           owner = "Wilfred";
           repo = "elisp-def";
-          rev = "ff0730b8110f776862b29bf0b66e396fab2aaafb";
-          sha256 = "1zdbb1mgmb8hkzsmp6l4mv61831bw8ybfsfcwalnvrw5fvfwpaik";
+          rev = "368b04da68783601b52e3169312183381871cf9e";
+          sha256 = "0l1kj7xd4332xk821z24c14lhkpcmca5gmivpb8shlk10cvjvxjw";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1f027b844efdc5946d2ad80d7052a8f3b96aac3d/recipes/elisp-def";
@@ -23358,13 +23610,13 @@
         version = "20180715.1602";
         src = fetchFromGitHub {
           owner = "Wilfred";
-          repo = "refs.el";
+          repo = "elisp-refs";
           rev = "c3fefb803bd0a1b6de654dbd380a8487804789a5";
           sha256 = "1va1lgc6dhqif11wxsd3b5kzv01q7ys800sly2v605153ajafqw4";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/60891099e241ebd32d39bdcfe4953529a5a3263e/recipes/elisp-refs";
-          sha256 = "16h7dccmzvmap3knnwhjq79wm82xm3whria70vq5msl2y252f6cx";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/elisp-refs";
+          sha256 = "1pj3dm2z6m24179ibl7zhr8lhan2v2rjnm3abfciwp228piz1sfz";
           name = "recipe";
         };
         packageRequires = [ dash loop s ];
@@ -23435,14 +23687,14 @@
         ename = "elixir-mode";
         version = "20180711.545";
         src = fetchFromGitHub {
-          owner = "elixir-lang";
+          owner = "elixir-editors";
           repo = "emacs-elixir";
           rev = "90323cd7669eb472ee1f97b9d070056ebe225d15";
           sha256 = "06kq92r9nmw95l6isc87w0yb9jmd11bm09j3hwww4sn2bv5z2686";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/6374ced0de38d83bf99147f702f30706615480ed/recipes/elixir-mode";
-          sha256 = "1dba3jfg210i2rw8qy866396xn2xjgmbcyl006d6fibpr3j4lxaf";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/elixir-mode";
+          sha256 = "0d25p6sal1qg1xsq5yk343afnrxa0lzpx5gsh72khnx2i8pi40vz";
           name = "recipe";
         };
         packageRequires = [ emacs pkg-info ];
@@ -23490,12 +23742,12 @@
       melpaBuild {
         pname = "elm-mode";
         ename = "elm-mode";
-        version = "20180114.9";
+        version = "20180828.1527";
         src = fetchFromGitHub {
           owner = "jcollard";
           repo = "elm-mode";
-          rev = "09c6e62e14a2c9afaad03a867c7a268b6bc68ab0";
-          sha256 = "0vc0m5rg9py01w07pifg3fp2z9cna6y21k2xmfns7p6i5c5fjj2g";
+          rev = "5167d3fd8a32d384d999655dbed6870352b65673";
+          sha256 = "1njwjlvda9n96zjg1lrhjjg4rhnj3yc210qyhc3h8zpq46fpld96";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/5d1a4d786b137f61ed3a1dd4ec236d0db120e571/recipes/elm-mode";
@@ -23508,6 +23760,32 @@
           license = lib.licenses.free;
         };
       }) {};
+    elm-test-runner = callPackage ({ emacs
+                                   , fetchFromGitHub
+                                   , fetchurl
+                                   , lib
+                                   , melpaBuild }:
+      melpaBuild {
+        pname = "elm-test-runner";
+        ename = "elm-test-runner";
+        version = "20180830.612";
+        src = fetchFromGitHub {
+          owner = "juanedi";
+          repo = "elm-test-runner";
+          rev = "09a274ca8dc0e3d3a2d4ce15c4c5457ac52e95a9";
+          sha256 = "00xzvww0lm84lzgnmyxcyi3qpi12gxjlgcs80r7j3hryr5zvs5r0";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/064db8f60438927255458a7fbd8ae871f8264d67/recipes/elm-test-runner";
+          sha256 = "1axzp93a0xmbprskql4bdfnxnmcpfnq6xf7c4x7cgn5pbd1p6inz";
+          name = "recipe";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/elm-test-runner";
+          license = lib.licenses.free;
+        };
+      }) {};
     elm-yasnippets = callPackage ({ fetchFromGitHub
                                   , fetchurl
                                   , lib
@@ -23791,12 +24069,12 @@
       melpaBuild {
         pname = "elpy";
         ename = "elpy";
-        version = "20180720.155";
+        version = "20180915.346";
         src = fetchFromGitHub {
           owner = "jorgenschaefer";
           repo = "elpy";
-          rev = "db0ee080424ef39b4cd2782a3dbd0afccaaafd04";
-          sha256 = "0gzanxwv1g2hx80qm0m8iy1apsg51hhnh9rq1hicrwyvp1wzc24r";
+          rev = "1ef3ba3be237b2bbd9ecbbb79ca63cc7ba849c0d";
+          sha256 = "02hpy7cnd2mwm05cvajifigwg4y978b1sk3nwh0l500n4p1ac8kq";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1d8fcd8745bb15402c9f3b6f4573ea151415237a/recipes/elpy";
@@ -24042,12 +24320,12 @@
       melpaBuild {
         pname = "elvish-mode";
         ename = "elvish-mode";
-        version = "20170913.1939";
+        version = "20180809.912";
         src = fetchFromGitHub {
           owner = "ALSchwalm";
           repo = "elvish-mode";
-          rev = "9cf31b453ac79b011b84e83ca11c964c4e647649";
-          sha256 = "0ryg9c8pjw98a9l4hyjqwan7kcv492vzy0xxcrcfm69zn8vnw9k0";
+          rev = "c3a7e31564256b9755b1ab9fb40d32ad78cd1ad2";
+          sha256 = "0dxa8g49fq4h1ab3sawnbgy1fxaxxsdac3l6im34qfw4km8brp9y";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/0fc724072702a565af471f9ae523a1e6e48e3f04/recipes/elvish-mode";
@@ -24094,12 +24372,12 @@
       melpaBuild {
         pname = "elx";
         ename = "elx";
-        version = "20180614.1957";
+        version = "20180909.937";
         src = fetchFromGitHub {
           owner = "emacscollective";
           repo = "elx";
-          rev = "10a21c35915e249d5487aa3ced70fcfb749a9d0c";
-          sha256 = "1jl2lp4gas89vx1xjx5gzh56fhx16mvfqwqs84cpxdbwb2qzch21";
+          rev = "02b973c31f037806bcb676b4d98987ed7709f21e";
+          sha256 = "1ixk7j62j4z3i7n4v5wa5yhclshjh83qc1dhwfdqlc7g60xdl8p0";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/57a2fb9524df3fdfdc54c403112e12bd70888b23/recipes/elx";
@@ -24431,12 +24709,12 @@
       melpaBuild {
         pname = "ember-mode";
         ename = "ember-mode";
-        version = "20171208.559";
+        version = "20180823.306";
         src = fetchFromGitHub {
           owner = "madnificent";
           repo = "ember-mode";
-          rev = "755256782478cb724edd8f111225d7c8d342f90c";
-          sha256 = "02x12b26l9qyq9cmg56ys222qxbc8zldw40scq3mfhfqqk4b43g7";
+          rev = "0f984f9ea709dfc3b13acae3a29956147ad4e2c2";
+          sha256 = "0z0fhj2wj9m69rgc21b5rkk7a3g3css3c5gmla2x0mwnxwdc6fyb";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/9ac1eef4ad87b1b6b6d8e63d340ba03dc013425b/recipes/ember-mode";
@@ -24562,11 +24840,11 @@
       melpaBuild {
         pname = "emms";
         ename = "emms";
-        version = "20180708.1823";
+        version = "20180907.1359";
         src = fetchgit {
           url = "https://git.savannah.gnu.org/git/emms.git";
-          rev = "9b702f38e3486d67cb67194e98ea72dda25be1af";
-          sha256 = "13l0didxiagcv8rr9ifdjk92qpcghyqkqshpcr76ix4dm3mbaymk";
+          rev = "fd9079a9101cc99ca62cfe9187c28b1c8fd69eb6";
+          sha256 = "11560smmyh3wixpq5q6xh5chnq71q6ydri4d4py3paxsgmn268xb";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/caaa21f235c4864f6008fb454d0a970a2fd22a86/recipes/emms";
@@ -24960,12 +25238,12 @@
       melpaBuild {
         pname = "emojify-logos";
         ename = "emojify-logos";
-        version = "20171125.214";
+        version = "20180814.217";
         src = fetchFromGitHub {
           owner = "mxgoldstein";
           repo = "emojify-logos";
-          rev = "96c74383a7c69e839ba41de3507154ca4ad564a1";
-          sha256 = "1z2rhs2kvafcfqqvq78yb5zp0pnn9s0mhng0rymfghi704cdifm6";
+          rev = "a3e78bcbdf863092d4c9b026ac08bf7d1c7c0e8b";
+          sha256 = "1fhxf3nky9wlcn54q60f9254iawcccsrxw370q7cgpsrl1gj3dgp";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/114d5596a7b36f47c150c413c6ecc74de36ca239/recipes/emojify-logos";
@@ -25016,21 +25294,20 @@
                        , paredit
                        , popup
                        , projectile
-                       , redshank
                        , s }:
       melpaBuild {
         pname = "emr";
         ename = "emr";
-        version = "20180708.1011";
+        version = "20180908.817";
         src = fetchFromGitHub {
-          owner = "chrisbarrett";
+          owner = "Wilfred";
           repo = "emacs-refactor";
-          rev = "8e556aa5a932dcf21dff985c528cff41a99ba332";
-          sha256 = "18m9ypdarwisksh7pyxgvp3shv2ikvqjijdgjgm0l4jz3vrflpqw";
+          rev = "c3ff7f007ebd8241dea10a6632073bea778409a4";
+          sha256 = "0yqyn3plqs264c3zjnb6js7jmvnvlcjv6x4z9himi4vfy262wl3j";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/2cd2ebec5bd6465bffed284130e1d534f52169a9/recipes/emr";
-          sha256 = "05vpfxg6lviclnms2zyrza8dc87m60mimlwd11ihvsbngi9gcw8x";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/emr";
+          sha256 = "02a7yzv6vxdazi26wk1ijadrjffd4iaf1abhpv642xib86pgpfd6";
           name = "recipe";
         };
         packageRequires = [
@@ -25043,7 +25320,6 @@
           paredit
           popup
           projectile
-          redshank
           s
         ];
         meta = {
@@ -25136,12 +25412,12 @@
       melpaBuild {
         pname = "enh-ruby-mode";
         ename = "enh-ruby-mode";
-        version = "20180403.1251";
+        version = "20180730.1609";
         src = fetchFromGitHub {
           owner = "zenspider";
           repo = "enhanced-ruby-mode";
-          rev = "fd50e71913e4dc714f71020701ab398a18b524b6";
-          sha256 = "0al8bbhfjxqh40hkpiaziz5vsfy2m5saj7wcvs6xivz1ph5ass0b";
+          rev = "5e19f321d702ff6b698047af6b3ddcd1c9f0d979";
+          sha256 = "1x9qwfhmg9f01pg30sm05sv7jpnzqgm94xvz65ncz55qimjbydsl";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/cd1ac1ce69b77b11f34c4175611a852e7ec0806c/recipes/enh-ruby-mode";
@@ -26094,12 +26370,12 @@
       melpaBuild {
         pname = "erlang";
         ename = "erlang";
-        version = "20180618.557";
+        version = "20180910.600";
         src = fetchFromGitHub {
           owner = "erlang";
           repo = "otp";
-          rev = "9d5af99762b3795c763fb62c1516247bd3f8e12f";
-          sha256 = "0anlp0qj2blgdjzdw8rxmpz659yzbdl3r69b6slm1c1aa77ayc17";
+          rev = "2eccf112d0ed6d0736562ca5260740cc670b7ddb";
+          sha256 = "0yfycmb6vlhdgq0i7nmnxdsjx41q9h2bbig5qzxmjvn1brv8adca";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/d9cd526f43981e0826af59cdc4bb702f644781d9/recipes/erlang";
@@ -26112,6 +26388,33 @@
           license = lib.licenses.free;
         };
       }) {};
+    erlstack-mode = callPackage ({ dash
+                                 , emacs
+                                 , fetchFromGitHub
+                                 , fetchurl
+                                 , lib
+                                 , melpaBuild }:
+      melpaBuild {
+        pname = "erlstack-mode";
+        ename = "erlstack-mode";
+        version = "20180817.226";
+        src = fetchFromGitHub {
+          owner = "k32";
+          repo = "erlstack-mode";
+          rev = "d480d937f02f8cc66350bc583ee54942a786ac49";
+          sha256 = "1y664369wdhd4ir8lmhgvwrzj6w8j9s67327jkr310vmfdlgxhvy";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6ee61c1c5f116082b37fb13d15052ed9bbbc1dac/recipes/erlstack-mode";
+          sha256 = "0b7mj0rs8k3hdv4v3v5vmdqs0y26mss7dzc0sjjxj4d095yddqqf";
+          name = "recipe";
+        };
+        packageRequires = [ dash emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/erlstack-mode";
+          license = lib.licenses.free;
+        };
+      }) {};
     eros = callPackage ({ emacs
                         , fetchFromGitHub
                         , fetchurl
@@ -26188,7 +26491,8 @@
           license = lib.licenses.free;
         };
       }) {};
-    ert-junit = callPackage ({ ert ? null
+    ert-junit = callPackage ({ emacs
+                             , ert ? null
                              , fetchgit
                              , fetchurl
                              , lib
@@ -26196,18 +26500,18 @@
       melpaBuild {
         pname = "ert-junit";
         ename = "ert-junit";
-        version = "20180511.1548";
+        version = "20180809.1411";
         src = fetchgit {
           url = "https://bitbucket.org/olanilsson/ert-junit";
-          rev = "cd1f63627d4e6635086322f34be09ba535e26b97";
-          sha256 = "0a2ddvpm8yparl3zq05mp239k5dgplcmc9s61ak9d5qn65l8mwyr";
+          rev = "69177610824f20d4c4e16af4b9850fd96bea6491";
+          sha256 = "1mkxxpnzfhd0gf4jjnvrx2x0m8nxs8viwfzhs4r2rn6h7j48ynza";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/27c627eacab54896a1363dbabc56250a65343dd8/recipes/ert-junit";
           sha256 = "0bv22mhh1ahbjwi6s1csxkh11dmy0srabkddjd33l4havykxlg6g";
           name = "recipe";
         };
-        packageRequires = [ ert ];
+        packageRequires = [ emacs ert ];
         meta = {
           homepage = "https://melpa.org/#/ert-junit";
           license = lib.licenses.free;
@@ -26255,12 +26559,12 @@
       melpaBuild {
         pname = "ert-runner";
         ename = "ert-runner";
-        version = "20180215.857";
+        version = "20180831.445";
         src = fetchFromGitHub {
           owner = "rejeep";
           repo = "ert-runner.el";
-          rev = "0de42343a9de834320397d169c81725b2827e41f";
-          sha256 = "0jc7n6mdv1kka47wmjjhgfw46l16mqlj5kkkyw16gd9g8dwcf6sr";
+          rev = "90b8fdd5970ef76a4649be60003b37f82cdc1a65";
+          sha256 = "04nxmyzncacj2wmzd84vv9wkkr2dk9lcb10dvygqmg3p1gadnwzz";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/0a1acc68f296e80b6ed99a1783e9f67be54ffac9/recipes/ert-runner";
@@ -26627,14 +26931,14 @@
         ename = "eshell-prompt-extras";
         version = "20180109.2234";
         src = fetchFromGitHub {
-          owner = "hiddenlotus";
+          owner = "kaihaosw";
           repo = "eshell-prompt-extras";
           rev = "1d8825dcc005b488c6366d0b3015fc6686194eea";
           sha256 = "1nqzd24wwvyzf3bn7m7vd4xqmj4p8z51h8cnli07yja17cr5gwx6";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/7fabdb05de9b8ec18a3a566f99688b50443b6b44/recipes/eshell-prompt-extras";
-          sha256 = "0kh4lvjkayjdz5lqvdqmdcblxizxk9kwmigjwa68kx8z6ngmfwa5";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/eshell-prompt-extras";
+          sha256 = "0zkdb9a8dibk832b5hzb6wjich3l0lah5p64805rgd4qskzj10gx";
           name = "recipe";
         };
         packageRequires = [];
@@ -26762,8 +27066,8 @@
           sha256 = "0jdyxyc6mk0vh35wgic8ikvs9cid7b5ffqx94pkg1kpridm2wrzc";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/27c929ec2eac0459c7018019702599e09ac908fd/recipes/espresso-theme";
-          sha256 = "1bsff8fnq5z0f6cwg6wprz8qi3ivsqxpxx6v6fxfammn74qqyvb5";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/e608f40d00a3b2a80a6997da00e7d04f76d8ef0d/recipes/espresso-theme";
+          sha256 = "1njc1ppi1jvb3mdckr19kbk7g0a3dx8j4d6j101ygszzrr24ycmv";
           name = "recipe";
         };
         packageRequires = [];
@@ -26855,24 +27159,25 @@
       }) {};
     ess = callPackage ({ fetchFromGitHub
                        , fetchurl
+                       , julia-mode
                        , lib
                        , melpaBuild }:
       melpaBuild {
         pname = "ess";
         ename = "ess";
-        version = "20180720.131";
+        version = "20180911.1435";
         src = fetchFromGitHub {
           owner = "emacs-ess";
           repo = "ESS";
-          rev = "167b61af2c36c300a2f1f9ecea2c670af685451b";
-          sha256 = "1bcd652hq7j5azhmy470ha4279c5ld8db1gcqww65clay7gvnbkg";
+          rev = "bd6bdd45e800d36fbd6541289f0b00e15b352f98";
+          sha256 = "1h1ba55pp0prfjxc2jv14gy1j3qgd4j6qjhgz2f4nprwp6ql8s30";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/156a6fa9e6ee16174d215c1dcd524aff847b3bf0/recipes/ess";
           sha256 = "1psqrw9k7d2ha8zid2mkc6bgcyalrm3n53c00g3cgckkbahl7r6n";
           name = "recipe";
         };
-        packageRequires = [];
+        packageRequires = [ julia-mode ];
         meta = {
           homepage = "https://melpa.org/#/ess";
           license = lib.licenses.free;
@@ -26941,12 +27246,12 @@
       melpaBuild {
         pname = "ess-smart-underscore";
         ename = "ess-smart-underscore";
-        version = "20170222.1715";
+        version = "20180910.2223";
         src = fetchFromGitHub {
           owner = "mattfidler";
           repo = "ess-smart-underscore.el";
-          rev = "02e8a03553f34fe7184afff97f20e560d6f8d617";
-          sha256 = "0kk9n66xjm08cj6zdqxfn332fb4c2is4pdxgqamypdwsdjhcz57l";
+          rev = "863ed5c012acd702d71074c56315e668b61880ea";
+          sha256 = "1qnxsagvjar8513bsyp361iy41k0c5z6ricwaw56xyxna5h6i5ma";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/b4d6166f5c80cf37c79256402fa633ad2274d065/recipes/ess-smart-underscore";
@@ -26996,12 +27301,12 @@
       melpaBuild {
         pname = "esup";
         ename = "esup";
-        version = "20180506.1639";
+        version = "20180726.2042";
         src = fetchFromGitHub {
           owner = "jschaf";
           repo = "esup";
-          rev = "1182c490a7ddc275318c9eb25b8d5bbdf9b78d2b";
-          sha256 = "1nkglqr42r2s0vqkj092j131a0ykjrj6qiawgw6id60yn0grhpqb";
+          rev = "5acb60e8d7a8fef854178f325682765820522b10";
+          sha256 = "0bfrnzwf1imxigd7mxisywi54h0jb79488z2hba53yplmvr80p7p";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/b9d2948a42da5d4864404d2d11a924a4f235fc3b/recipes/esup";
@@ -27321,12 +27626,12 @@
       melpaBuild {
         pname = "evil";
         ename = "evil";
-        version = "20180517.1300";
+        version = "20180914.516";
         src = fetchFromGitHub {
           owner = "emacs-evil";
           repo = "evil";
-          rev = "230b87212c81aaa68ef5547a6b998d9c365fe139";
-          sha256 = "0c9zy3bpck10gcrv79kd3h7i4ygd5bgbgy773n0lg7a2r5kwn1gx";
+          rev = "6fde982d731e2cc4e5f6bded6f8955ab2daee3b7";
+          sha256 = "1w2fzsq15qhh3kqrjiyb236k84v61bsg22ym27rm3bd7gikd9v36";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/440482c0edac8ee8bd4fe22f6bc5c1607f34c7ad/recipes/evil";
@@ -27374,12 +27679,12 @@
       melpaBuild {
         pname = "evil-args";
         ename = "evil-args";
-        version = "20140329.1429";
+        version = "20180908.1457";
         src = fetchFromGitHub {
           owner = "wcsmith";
           repo = "evil-args";
-          rev = "b554f83a31dd47cac9799725f379675f54ed0a6a";
-          sha256 = "08743swy936v8fhbaplrr0wpwlp7vplvy2iwkh56p7gb5gqmlfli";
+          rev = "758ad5ae54ad34202064fec192c88151c08cb387";
+          sha256 = "0k35glgsirc3cph8v5hhjrqfh4ndwh8a28qbr03y3jl8s453xcj7";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/0976c82a22f1a8701b9da0b8ba4753ed48191376/recipes/evil-args";
@@ -27516,16 +27821,16 @@
       melpaBuild {
         pname = "evil-collection";
         ename = "evil-collection";
-        version = "20180722.1341";
+        version = "20180915.632";
         src = fetchFromGitHub {
           owner = "emacs-evil";
           repo = "evil-collection";
-          rev = "6e2c59c2ddd8b2d953c6152f467f41bc213533ee";
-          sha256 = "0m6dg93shs3fl3qimiiicjwfyrk6mhghb7qgd21qgdnb3yj4fw5j";
+          rev = "efc0a73eb8f6f30c1564004a954fd08501409ad0";
+          sha256 = "0bqawzf4qsnql7h2mmxp0nzhy5jjgfzh2jay1frhkh1fxdnlz0is";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/a9b93a8e3750e4e7767498e418f46d553d814604/recipes/evil-collection";
-          sha256 = "1fggdlssb8sai00vbrxph8cama3r0f7w8qhmiajj4cy2il7jgmhy";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/fbc35279115f6fdf1ce7d1ecef3b413c7ca9c4f1/recipes/evil-collection";
+          sha256 = "1l6x782ix873n90k9g00i9065h31dnhv07bgzrp28l7y7bivqwl7";
           name = "recipe";
         };
         packageRequires = [ cl-lib emacs evil ];
@@ -27668,29 +27973,26 @@
           license = lib.licenses.free;
         };
       }) {};
-    evil-escape = callPackage ({ cl-lib ? null
-                               , emacs
-                               , evil
-                               , fetchFromGitHub
+    evil-escape = callPackage ({ fetchFromGitHub
                                , fetchurl
                                , lib
                                , melpaBuild }:
       melpaBuild {
         pname = "evil-escape";
         ename = "evil-escape";
-        version = "20180623.2019";
+        version = "20180910.534";
         src = fetchFromGitHub {
           owner = "syl20bnr";
           repo = "evil-escape";
-          rev = "73b30bfd912f40657b1306ee5849d215f0f9ffbd";
-          sha256 = "0mqz7l1a4rxdj7g3fda17118f7y0vph4ica447ciad5vz3zx9i2z";
+          rev = "f4e9116bfbaac8c9d210c17ad488e0982291245f";
+          sha256 = "1whppnlzkjig1yrz0fjvp8cy86215gjahgh88166nzk95wlc3pvf";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/evil-escape";
           sha256 = "0jiwsgcqw8m6z4z82gx0m0r0vbvkcxc0czhn4mqjwkhhglwzgi8l";
           name = "recipe";
         };
-        packageRequires = [ cl-lib emacs evil ];
+        packageRequires = [];
         meta = {
           homepage = "https://melpa.org/#/evil-escape";
           license = lib.licenses.free;
@@ -27814,12 +28116,12 @@
       melpaBuild {
         pname = "evil-fringe-mark";
         ename = "evil-fringe-mark";
-        version = "20180619.1534";
+        version = "20180727.2347";
         src = fetchFromGitHub {
           owner = "Andrew-William-Smith";
           repo = "evil-fringe-mark";
-          rev = "fdb147d5ec8fbe087c73604374b3d491f143f2b2";
-          sha256 = "1cfsh0f4mfpm6pifxgk2v0h975hldvwdbx95zgw045w9sw325q5b";
+          rev = "37521e190dc0414a2bfddd6b219527b1a8dd3f58";
+          sha256 = "1hxylidf90j7zxr1rwgjkycc5l0qf2dvngrkfrvnl7r7yls6mgmd";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/70dcc07c389d5454de64fb08cd666d489d6d5483/recipes/evil-fringe-mark";
@@ -27868,12 +28170,12 @@
       melpaBuild {
         pname = "evil-goggles";
         ename = "evil-goggles";
-        version = "20180702.353";
+        version = "20180725.252";
         src = fetchFromGitHub {
           owner = "edkolev";
           repo = "evil-goggles";
-          rev = "ea5ab4012af0eb451e2c0d996455c58f1554f7c1";
-          sha256 = "18f96n8kkj1lza9za46dwjrsm4ni2s1gqbgdjjiqmkl06kj04fi8";
+          rev = "d7876e6566ac82b7c3251a59651e7db6ab756589";
+          sha256 = "0xr6svfk3p5py6q922p7nlaxqpd7iid2q1x5xwjfy4cg89h29vd2";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/811b1261705b4c525e165fa9ee23ae191727a623/recipes/evil-goggles";
@@ -27996,24 +28298,25 @@
                                , evil
                                , fetchFromGitHub
                                , fetchurl
+                               , ledger-mode
                                , lib
                                , melpaBuild }:
       melpaBuild {
         pname = "evil-ledger";
         ename = "evil-ledger";
-        version = "20170905.519";
+        version = "20180802.912";
         src = fetchFromGitHub {
           owner = "atheriel";
           repo = "evil-ledger";
-          rev = "17f3c4284fc4f8d9da4e1d805fbe712e0e02b8d4";
-          sha256 = "1vjiyi1kv62w7mbvp149zncvk7p4js75m897b69gh05g68j4ckk2";
+          rev = "7a9f9f5d39c42fffdba8004f8982642351f2b233";
+          sha256 = "010r1qn9l3clqqrlia0y25bqjbrixvf8i409v10yxqb949jvw1vk";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/500e99a1b92f0a0c144f843cd7645872034d9fbb/recipes/evil-ledger";
           sha256 = "13idy2kbzhckzfwrjnzjrf8h2881w3v8pmhlcj26xcyf4ch0dq9r";
           name = "recipe";
         };
-        packageRequires = [ emacs evil ];
+        packageRequires = [ emacs evil ledger-mode ];
         meta = {
           homepage = "https://melpa.org/#/evil-ledger";
           license = lib.licenses.free;
@@ -28145,8 +28448,8 @@
           sha256 = "01hccc49xxb6lnzr0lwkkwndbk4sv0jyyz3khbcxsgkpzjiydihv";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/089accfa2646fc4f265cb8e9b9a05dcf5aa4c4f6/recipes/evil-mark-replace";
-          sha256 = "03cq43vlv1b53w4kw7mjvk026i8rzhhryfb27ddn6ipgc6xh68a0";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/e608f40d00a3b2a80a6997da00e7d04f76d8ef0d/recipes/evil-mark-replace";
+          sha256 = "14j2d46288shlixb57nh5vlqdi3aiv20djvcbhiw1cm9ar2c3y4v";
           name = "recipe";
         };
         packageRequires = [ evil ];
@@ -28163,12 +28466,12 @@
       melpaBuild {
         pname = "evil-matchit";
         ename = "evil-matchit";
-        version = "20180526.557";
+        version = "20180822.12";
         src = fetchFromGitHub {
           owner = "redguardtoo";
           repo = "evil-matchit";
-          rev = "1c428e192b5c8698f8550d8862593bdca5ef9bfc";
-          sha256 = "1xip22vlzlki769hza3wssr41m5pl47ay7721fc4y5qv9yr9pjfa";
+          rev = "47894a6cc02c037dd782d0c0023a3193b6b49e89";
+          sha256 = "0wkgjpql7x27pgj3w20cxnl0gjcvjmphsxyvvlr79504lgmdk41a";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/aeab4a998bffbc784e8fb23927d348540baf9951/recipes/evil-matchit";
@@ -28427,6 +28730,35 @@
           license = lib.licenses.free;
         };
       }) {};
+    evil-python-movement = callPackage ({ cl-lib ? null
+                                        , dash
+                                        , emacs
+                                        , evil
+                                        , fetchgit
+                                        , fetchurl
+                                        , lib
+                                        , melpaBuild
+                                        , s }:
+      melpaBuild {
+        pname = "evil-python-movement";
+        ename = "evil-python-movement";
+        version = "20180724.720";
+        src = fetchgit {
+          url = "https://bitbucket.org/FelipeLema/evil-python-movement.el";
+          rev = "9936b3b7f8d96415d517c1f3604637889484a637";
+          sha256 = "11ivb95ilsw3svpna9n07yf8s9q3w36ia6js2qv6wf0d0dp2xb9r";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/130e6d17735ff86b962859528d7e50869f683251/recipes/evil-python-movement";
+          sha256 = "1qs0z93rpi9dz6hy64816afdr4k5gssyw2dhaxcn152ylg1yzkg3";
+          name = "recipe";
+        };
+        packageRequires = [ cl-lib dash emacs evil s ];
+        meta = {
+          homepage = "https://melpa.org/#/evil-python-movement";
+          license = lib.licenses.free;
+        };
+      }) {};
     evil-quickscope = callPackage ({ evil
                                    , fetchFromGitHub
                                    , fetchurl
@@ -28623,12 +28955,12 @@
       melpaBuild {
         pname = "evil-snipe";
         ename = "evil-snipe";
-        version = "20180503.141";
+        version = "20180731.1031";
         src = fetchFromGitHub {
           owner = "hlissner";
           repo = "evil-snipe";
-          rev = "8120c2398cb5ca9a81369f7201b3db19cd71e965";
-          sha256 = "0i6hjzidccxdy3dq7rrngfqlrrwb6yyc635fark3dnn90cpadwci";
+          rev = "8dd076cc56eb9b04494e4e303b86a959b048350b";
+          sha256 = "05zlmkyl1gms7pk2izh67j7xk4mb5y94jpyx63lg59yc391p5p07";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/6748f3febbe2f098761e967b4dc67791186d0aa7/recipes/evil-snipe";
@@ -29257,14 +29589,14 @@
         ename = "expand-line";
         version = "20151005.1907";
         src = fetchFromGitHub {
-          owner = "cheunghy";
+          owner = "zhangkaiyulw";
           repo = "expand-line";
           rev = "75a5d0241f35dd0748ab8ecb4ff16891535be372";
           sha256 = "0wz4h5hrr5ci0w8pynd2nr1b2zl5hl4pa8gc16mcabik5927rf7z";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/1c3fa6b17a8c6b08b0d77bdff0f91b7af34f4279/recipes/expand-line";
-          sha256 = "07nfgp6jlrb9wxqy835j79i4g88714zndidkda84z16qn2y901a9";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/expand-line";
+          sha256 = "0bzz7zrpfdxhjxs7nzlmzjb9jfajhxkivzr5sm87mg3zx8b6gjyi";
           name = "recipe";
         };
         packageRequires = [];
@@ -29280,12 +29612,12 @@
       melpaBuild {
         pname = "expand-region";
         ename = "expand-region";
-        version = "20180625.939";
+        version = "20180817.434";
         src = fetchFromGitHub {
           owner = "magnars";
           repo = "expand-region.el";
-          rev = "54e1b94fa8b65f066f731101a744287e956ae75f";
-          sha256 = "113d804gmvxmg3f32w7m4dc14xpl47aw25255nyr0w5bxm7vmnah";
+          rev = "27a78e7c364b4e6d39f6593f5a55a12c4a7675bc";
+          sha256 = "0dslj330729sjhxg080xqw5hasmm23niliwmihm9464cl51h1mhi";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/cae2ac3513e371a256be0f1a7468e38e686c2487/recipes/expand-region";
@@ -29435,12 +29767,12 @@
       melpaBuild {
         pname = "exwm-edit";
         ename = "exwm-edit";
-        version = "20180629.137";
+        version = "20180905.43";
         src = fetchFromGitHub {
           owner = "agzam";
           repo = "exwm-edit";
-          rev = "6ea0a64e47d06204d826e146c3c3082dec5c4007";
-          sha256 = "0sz2q4nj5inh42f37jfkc5z7fdw1lgsyz2fh5ljgjcvrd9xlb24l";
+          rev = "961c0f3ea45766b888c73d7353da13d329538034";
+          sha256 = "087pk5ckx753qrn6xpka9khhlp7iqlz76w7861x90av2f5cgy6fw";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/f247915e02e59ebd6a2a219e55870e034d41c938/recipes/exwm-edit";
@@ -30113,6 +30445,32 @@
           license = lib.licenses.free;
         };
       }) {};
+    fd-dired = callPackage ({ emacs
+                            , fetchFromGitHub
+                            , fetchurl
+                            , lib
+                            , melpaBuild }:
+      melpaBuild {
+        pname = "fd-dired";
+        ename = "fd-dired";
+        version = "20180731.349";
+        src = fetchFromGitHub {
+          owner = "yqrashawn";
+          repo = "fd-dired";
+          rev = "a92511929ce0d64d2bc05823920e12f106c4dfc7";
+          sha256 = "1l3mc39kb3w9pbc84998rz3g1n0ygr8pg9b9z5cgg638jh2cvzqm";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/1217e0d4f42df68cc22de9b4f27a36c0377509e3/recipes/fd-dired";
+          sha256 = "0g8zvg6b9hcxkmqn254y9khjm7jz2lz4mh7dhsxfcy64inaj0481";
+          name = "recipe";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/fd-dired";
+          license = lib.licenses.free;
+        };
+      }) {};
     feature-mode = callPackage ({ fetchFromGitHub
                                 , fetchurl
                                 , lib
@@ -30145,12 +30503,12 @@
       melpaBuild {
         pname = "feebleline";
         ename = "feebleline";
-        version = "20180604.515";
+        version = "20180914.1400";
         src = fetchFromGitHub {
           owner = "tautologyclub";
           repo = "feebleline";
-          rev = "9ece1c02a60ed0209cda661bcb864a7e624e8aca";
-          sha256 = "0fiq16bm28c9z62fdpr7n2fpnqbcmb278b72wi3gl386w34j6xl1";
+          rev = "89ddf31ecad885e5491e8d6b71b48c1591b3faec";
+          sha256 = "0v0m2vk7cxfrihcs1ipbw80wfj0nvyqzyfamzk3fnk42hj4qdb75";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/782295d8c530878bd0e20cde7e7f7f8f640953dd/recipes/feebleline";
@@ -30170,12 +30528,12 @@
       melpaBuild {
         pname = "fennel-mode";
         ename = "fennel-mode";
-        version = "20180509.1852";
+        version = "20180731.2050";
         src = fetchFromGitLab {
           owner = "technomancy";
           repo = "fennel-mode";
-          rev = "21e184b2a862290db9dcf839f0e4a2df480a642e";
-          sha256 = "0l3770w47skbr95775mrwpmw6apmbjk18i6c1zcz05pc46rcr15s";
+          rev = "b1f07dff0b16a0bc912528e3c1a70231488a1399";
+          sha256 = "1s07qbj6m93g4cjhmwxb1s7bh3py68knznnmhh3fqwxbqzm6bzf0";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/cda0732050a17b2dc70b80afd6fc6bb9cf8bb60f/recipes/fennel-mode";
@@ -30455,12 +30813,12 @@
       melpaBuild {
         pname = "find-file-in-project";
         ename = "find-file-in-project";
-        version = "20180705.1832";
+        version = "20180912.518";
         src = fetchFromGitHub {
           owner = "technomancy";
           repo = "find-file-in-project";
-          rev = "1c54325cb60bde7496dad4e19f4c2a857999df58";
-          sha256 = "1pxqqpj6cdwbhca6vaj98d86f1l0vl09zp054wf0sv759l25ac0l";
+          rev = "a3d89bc16432bd44d4a4ebfd01dab57a88025327";
+          sha256 = "033pfb1xc2chnbnwbf2vbhc96dnjmj37yhgbmxjl4b5hws73wh3c";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/cae2ac3513e371a256be0f1a7468e38e686c2487/recipes/find-file-in-project";
@@ -30482,14 +30840,14 @@
         ename = "find-file-in-repository";
         version = "20151113.519";
         src = fetchFromGitHub {
-          owner = "hoffstaetter";
+          owner = "h";
           repo = "find-file-in-repository";
           rev = "898fd7ea2727772ba09383a2ece7f3f7f1e77e29";
           sha256 = "090m5647dpc8r8fwi3mszvc8kp0420ma5sv0lmqr2fpxyn9ybkjh";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/58705ac6201b73851ce4ce9ebeb0e65463765961/recipes/find-file-in-repository";
-          sha256 = "0q1ym06w2yn3nzpj018dj6h68f7rmkxczyl061mirjp8z9c6a9q6";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/find-file-in-repository";
+          sha256 = "02rihpfpckppnf5a2zgd5s3dspdhq4mr6qchlrzg2fd4byjxra9s";
           name = "recipe";
         };
         packageRequires = [];
@@ -30762,12 +31120,12 @@
       melpaBuild {
         pname = "fish-completion";
         ename = "fish-completion";
-        version = "20180616.1223";
+        version = "20180827.129";
         src = fetchFromGitLab {
           owner = "Ambrevar";
           repo = "emacs-fish-completion";
-          rev = "bac15fda1392a891070574dfe5d2d50b10831e8b";
-          sha256 = "029s1ha8pc4df0xng5c0xwv2rlcl423mgh1ffgnbh0fx7ybr5n4v";
+          rev = "a73526d67c4c5f7f2e425cec79d56c7517c7f1e9";
+          sha256 = "0aip3gkkhysz74jfr4bbc31p3qwy31l436y3bvjskgk44zf7z78k";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/6d17ca0213ba5ef9dce92002e281e6f08c3492be/recipes/fish-completion";
@@ -30788,12 +31146,12 @@
       melpaBuild {
         pname = "fish-mode";
         ename = "fish-mode";
-        version = "20180306.818";
+        version = "20180826.2003";
         src = fetchFromGitHub {
           owner = "wwwjfy";
           repo = "emacs-fish";
-          rev = "bac709ac1235751952d6022dddc6307d9135d096";
-          sha256 = "0a74ghmjjrxfdhk4mvq6lar4w6l6lc4iilabs99smqr2fn5rsslq";
+          rev = "35fc7c1e243a7410823088a571ecf378e9f3efa6";
+          sha256 = "0rn08dm4gn0g0nz080zxm0am1z6hfkinvzqwqszv96qkxy250ghp";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/efac97c0f54a3300251020c4626056526c18b441/recipes/fish-mode";
@@ -31135,12 +31493,12 @@
       melpaBuild {
         pname = "flex-compile";
         ename = "flex-compile";
-        version = "20180528.853";
+        version = "20180812.1156";
         src = fetchFromGitHub {
           owner = "plandes";
           repo = "flex-compile";
-          rev = "0b6259944e78f0bc6ee4407d97e3d09db8fd400e";
-          sha256 = "1qzzrxq80fl14slirmgidmpazj1gmh9b12jkz72flsbdiy7whpal";
+          rev = "4ca1a706aa1bc684a143d3430f009147df9c8e82";
+          sha256 = "0dzh3f99hf5n3fzqsxm4asl34sr451rn15miy4xk7jlg9j6y8i9s";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/259caeebc317e81ab9d532a371ea85656c2b1619/recipes/flex-compile";
@@ -31264,12 +31622,12 @@
       melpaBuild {
         pname = "floobits";
         ename = "floobits";
-        version = "20170802.1500";
+        version = "20180731.2224";
         src = fetchFromGitHub {
           owner = "Floobits";
           repo = "floobits-emacs";
-          rev = "ed5586d1bf94f36354091648e824ccb6fcaf807f";
-          sha256 = "08m9snmkhdjmvw1pqww9l39xqas9f6yxksjxvfjjfnad8ak80x9b";
+          rev = "489b294a7f30ecd2af2edc0823dead8102f27af6";
+          sha256 = "1pw88qn6s8ln626c8mgxgpfax39h7ww4m930dp7gg4aklxjbspkn";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/95c859e8440049579630b4c2bcc31e7eaa13b1f1/recipes/floobits";
@@ -31317,12 +31675,12 @@
       melpaBuild {
         pname = "flower";
         ename = "flower";
-        version = "20180618.1222";
+        version = "20180821.902";
         src = fetchFromGitHub {
           owner = "PositiveTechnologies";
           repo = "flower";
-          rev = "4d05448dc0118078ec320f564d87acaa740ae47c";
-          sha256 = "02p74f5hfhrhv5l7b9cwfbczsgkpqajlmr66qmkdljgc8ksr86n2";
+          rev = "a0e6912e6e709e5cf083d48cebffdb60b809c59a";
+          sha256 = "04m6x5hiac9f4ffjw82g9gcy5r84vfrm4vj67f1vqr7llqbflkzm";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/c8a731715d360aea9af2b898242fd4eee5419d14/recipes/flower";
@@ -31455,12 +31813,12 @@
       melpaBuild {
         pname = "flycheck";
         ename = "flycheck";
-        version = "20180720.247";
+        version = "20180907.619";
         src = fetchFromGitHub {
           owner = "flycheck";
           repo = "flycheck";
-          rev = "740d6670384e76f86d675d8ab00ff21eb7e09fcb";
-          sha256 = "0hskxg1q100j55wszlzscy90vhcaylz40b2wqkrad4bflx4dv2x5";
+          rev = "253febbdab8630814eb6b59daf536dfdb948a575";
+          sha256 = "0azc678wrxqsqg504wslzb99r5fmwbivs7z7nbp2p9v2rmr56ixy";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/649f9c3576e81409ae396606798035173cc6669f/recipes/flycheck";
@@ -31644,12 +32002,12 @@
       melpaBuild {
         pname = "flycheck-clang-analyzer";
         ename = "flycheck-clang-analyzer";
-        version = "20180225.2039";
+        version = "20180903.2004";
         src = fetchFromGitHub {
           owner = "alexmurray";
           repo = "flycheck-clang-analyzer";
-          rev = "adc9e7663bafcc9b740c09b691898413627e74ab";
-          sha256 = "10c45myq9vgsssp5v3vnip4klj9dxk8dh42zap44f9lw99ascx2r";
+          rev = "6568e082057c028c721ceda69bddd745fee5c5d5";
+          sha256 = "1ljgwyn44qcqmxxwff332d7ks6ky3rcwji6kfyrx4cadcvsyc81g";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/8de7b717a1b0caf30f8f29d3e764b4756b93aeff/recipes/flycheck-clang-analyzer";
@@ -31997,14 +32355,14 @@
         ename = "flycheck-demjsonlint";
         version = "20161114.2318";
         src = fetchFromGitHub {
-          owner = "z4139jq";
+          owner = "zenkiezhu";
           repo = "flycheck-demjsonlint";
           rev = "1c433150fdf628dda4c9fad938bf7c79610b4460";
           sha256 = "0kmvwmaxw64xjgchq8szk9mhbi6xp2jhv7qpgqndf4svia4pqws6";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/b66df1afde83607408fb1b30e1260f22015bf448/recipes/flycheck-demjsonlint";
-          sha256 = "0prwgi6v48ng89vvizb901iq4ysmrlh0g2b3797p1a6z2mps0k57";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/flycheck-demjsonlint";
+          sha256 = "034n95wknsqapi6n38v83zym5zi07q364b8icm27clpvgv5jy2fi";
           name = "recipe";
         };
         packageRequires = [ flycheck ];
@@ -32127,12 +32485,12 @@
       melpaBuild {
         pname = "flycheck-dtrace";
         ename = "flycheck-dtrace";
-        version = "20180126.1135";
+        version = "20180903.930";
         src = fetchFromGitHub {
           owner = "juergenhoetzel";
           repo = "flycheck-dtrace";
-          rev = "c418a96cf1dc3bafc17b9bcd23d5097dcf334c92";
-          sha256 = "00f7p895nfy9qr1hbcz7h8h8514rcv6ikrxl1pm4nvd045jicfyb";
+          rev = "951fab3a15c11d92b9fac1ea4791a80dfe034a00";
+          sha256 = "1qkzir3lzz4lc5kn55qb52cm5y7iy8w1ljq6xxzcjxfbk9980y0y";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/cdcdd10fbcd58a5c67e4d07632212e7dedf42dbe/recipes/flycheck-dtrace";
@@ -32153,12 +32511,12 @@
       melpaBuild {
         pname = "flycheck-elixir";
         ename = "flycheck-elixir";
-        version = "20171122.507";
+        version = "20180809.2342";
         src = fetchFromGitHub {
           owner = "lbolla";
           repo = "emacs-flycheck-elixir";
-          rev = "1f19a739cdb93851c6b01b1e188e215d035cd4a1";
-          sha256 = "01820hm6231z3zaq97jmmvdrpnyp38cb0m6xms5ihq2r1fqx8z2c";
+          rev = "11998d7e3e63a33453e934d25b3673f7c558e579";
+          sha256 = "1hdbg0hvb6hwzjma9mxy0h888c8j2z4g38gwixrdixzbw5727r75";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/da2ab73ab1426f71ea2b2bea2b418941856b3454/recipes/flycheck-elixir";
@@ -32198,6 +32556,34 @@
           license = lib.licenses.free;
         };
       }) {};
+    flycheck-elsa = callPackage ({ cask
+                                 , emacs
+                                 , fetchFromGitHub
+                                 , fetchurl
+                                 , lib
+                                 , melpaBuild
+                                 , seq }:
+      melpaBuild {
+        pname = "flycheck-elsa";
+        ename = "flycheck-elsa";
+        version = "20180823.726";
+        src = fetchFromGitHub {
+          owner = "emacs-elsa";
+          repo = "flycheck-elsa";
+          rev = "74afd455e47b917899c81313392ce414042f252c";
+          sha256 = "1q81g96kg243y0ihz8vmvdzycyabzm3x1kd97qpj89a4vcka26id";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/2a15c49d2fc800a6b69304edd6dbad90aaa5053f/recipes/flycheck-elsa";
+          sha256 = "07a07hmy7cibm7263dw4x8kkv17g5hby8isaks7n2814ifblf30r";
+          name = "recipe";
+        };
+        packageRequires = [ cask emacs seq ];
+        meta = {
+          homepage = "https://melpa.org/#/flycheck-elsa";
+          license = lib.licenses.free;
+        };
+      }) {};
     flycheck-flawfinder = callPackage ({ emacs
                                        , fetchFromGitHub
                                        , fetchurl
@@ -32234,12 +32620,12 @@
       melpaBuild {
         pname = "flycheck-flow";
         ename = "flycheck-flow";
-        version = "20180216.1156";
+        version = "20180801.542";
         src = fetchFromGitHub {
           owner = "lbolla";
           repo = "emacs-flycheck-flow";
-          rev = "8173accf0e389f7ba0936d399da84839a7f887af";
-          sha256 = "14g3mi8i4iy5f3fd3f7yx8ha18zi0kxqgn3sxkvdnk9rp1cdfnk1";
+          rev = "5d42270c798918c05c5e983e774063930bd87838";
+          sha256 = "009nlyyb5z09d8474fhfwi0imia2igiq1adxa6ibqrz9km867b8q";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/4d18fb21d8ef9b33aa84bc26f5918e636c5771e5/recipes/flycheck-flow";
@@ -32360,6 +32746,32 @@
           license = lib.licenses.free;
         };
       }) {};
+    flycheck-grammalecte = callPackage ({ emacs
+                                        , fetchgit
+                                        , fetchurl
+                                        , flycheck
+                                        , lib
+                                        , melpaBuild }:
+      melpaBuild {
+        pname = "flycheck-grammalecte";
+        ename = "flycheck-grammalecte";
+        version = "20180723.204";
+        src = fetchgit {
+          url = "https://git.deparis.io/flycheck-grammalecte/";
+          rev = "4f5937c58f895a62ccb3466af20b26a61ef9071c";
+          sha256 = "15jpck7h2bn6idfzizjw79nfza3lm9dj03v0r44pnm1ryx7l89w7";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/fdd82aa0568d998a3d176b5ee47b8a227438ea09/recipes/flycheck-grammalecte";
+          sha256 = "0xqg995a42cl6mvmpi68ay56fgs636cbzg65q5si5yc1yzgl74nv";
+          name = "recipe";
+        };
+        packageRequires = [ emacs flycheck ];
+        meta = {
+          homepage = "https://melpa.org/#/flycheck-grammalecte";
+          license = lib.licenses.free;
+        };
+      }) {};
     flycheck-haskell = callPackage ({ dash
                                     , emacs
                                     , fetchFromGitHub
@@ -32427,12 +32839,12 @@
       melpaBuild {
         pname = "flycheck-inline";
         ename = "flycheck-inline";
-        version = "20180529.614";
+        version = "20180821.149";
         src = fetchFromGitHub {
           owner = "flycheck";
           repo = "flycheck-inline";
-          rev = "816d37bd7f7034502a7569515df1898a3bcd155c";
-          sha256 = "12lsf5f6866jgj5s40gcsg377gzvwni8bla6bx4l5jjn36lf1nvi";
+          rev = "259ad47ac4ab42b7cc5c41f6d80b9888941507c6";
+          sha256 = "0cfk1ji1sn3ikhk8jvs2bhdhpd60dw7162112s2zp6yrbr9d6lkw";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/a9ecc3a4696d2b3b0f0b8b1ca6e5285380ac046a/recipes/flycheck-inline";
@@ -32508,12 +32920,12 @@
       melpaBuild {
         pname = "flycheck-joker";
         ename = "flycheck-joker";
-        version = "20180712.2102";
+        version = "20180912.2204";
         src = fetchFromGitHub {
           owner = "candid82";
           repo = "flycheck-joker";
-          rev = "0d8d5683a273093ca12841bf93d10dae97ccbc5d";
-          sha256 = "0r9w0ky1522yz1jdi8fd36lpdjm30vxq41x77vswikqxvscri3dq";
+          rev = "51e99e697761ee8dab863930910abdba7607c1bd";
+          sha256 = "07pxfvnrgp7f3rb27j1zrq04pncvga4291krqqy3dzwazsjplz48";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/599bf33a5d4a4a590b355001e532cab4e1ee9ef6/recipes/flycheck-joker";
@@ -32587,12 +32999,12 @@
       melpaBuild {
         pname = "flycheck-ledger";
         ename = "flycheck-ledger";
-        version = "20180125.31";
+        version = "20180818.2021";
         src = fetchFromGitHub {
           owner = "purcell";
           repo = "flycheck-ledger";
-          rev = "044f28d126d1bce55c4b78ba6d5bc92e1f6cfd69";
-          sha256 = "1k14jwz79mjsm0cfig5lc0byfrhvm495wrkybdl36b56q4qhxf58";
+          rev = "8d7f52a4c7f80ca396ef0fc6c7d8e9f005778dfc";
+          sha256 = "0m5zhyzrh4lx7vzwdgdwcfkipdvi3y8kavhckbd7vd9zwx539ij1";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/dc715e6849aa5d6017e2478514c4a0d84c7ddbe5/recipes/flycheck-ledger";
@@ -32748,12 +33160,12 @@
       melpaBuild {
         pname = "flycheck-mypy";
         ename = "flycheck-mypy";
-        version = "20180518.4";
+        version = "20180907.316";
         src = fetchFromGitHub {
           owner = "lbolla";
           repo = "emacs-flycheck-mypy";
-          rev = "043e8bba13a6d5e760cde8374c8f77d90946a1f5";
-          sha256 = "0rcw8nxs5n9l8gdgs1yy240qnbad60j1m15xdy35s99nq7x1ksvn";
+          rev = "6f99166f5229c7b4298cff1818b7eaece1c9c8bd";
+          sha256 = "06rdwjljhficbdf74qzlxsy02xhd8msp79fx75nwbxbd84q6dr5w";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/b1f5ad8263ee33b8950ff68e39dca5b1f1748c1b/recipes/flycheck-mypy";
@@ -32903,6 +33315,34 @@
           license = lib.licenses.free;
         };
       }) {};
+    flycheck-pact = callPackage ({ emacs
+                                 , fetchFromGitHub
+                                 , fetchurl
+                                 , flycheck
+                                 , lib
+                                 , melpaBuild
+                                 , pact-mode }:
+      melpaBuild {
+        pname = "flycheck-pact";
+        ename = "flycheck-pact";
+        version = "20180830.846";
+        src = fetchFromGitHub {
+          owner = "kadena-io";
+          repo = "flycheck-pact";
+          rev = "45fae1ceeface5ab15fc63a9143440060f8d09c0";
+          sha256 = "1zvhffrl2xcxmmfv8qavm2ig8zvpax8g7azxbdbbjq3nc6b6fv7b";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/d0cf6f4a6c7c156aa0edc903521dca82e312621c/recipes/flycheck-pact";
+          sha256 = "1nxmh6p2id4cxzs7jxdrk88g8qmvk33nbzmrqhm7962iqizlvnrw";
+          name = "recipe";
+        };
+        packageRequires = [ emacs flycheck pact-mode ];
+        meta = {
+          homepage = "https://melpa.org/#/flycheck-pact";
+          license = lib.licenses.free;
+        };
+      }) {};
     flycheck-perl6 = callPackage ({ emacs
                                   , fetchFromGitHub
                                   , fetchurl
@@ -32940,12 +33380,12 @@
       melpaBuild {
         pname = "flycheck-phpstan";
         ename = "flycheck-phpstan";
-        version = "20180430.358";
+        version = "20180801.1041";
         src = fetchFromGitHub {
           owner = "emacs-php";
           repo = "phpstan.el";
-          rev = "3653f2a316f4199cbd3238e984eea2325e2618d5";
-          sha256 = "1dyba8hpr16nsdv1i45pl3w97728w7p8vl9gf5gvd18xcll4848d";
+          rev = "afd63d6183f75536c01e456c9cb16b65d0f70a95";
+          sha256 = "0dak9nc334dlcq4ss21palnafaysnxnrh8qws2shwvbwnq6kzz4j";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/5a2b6cc39957e6d7185bd2bdfa3755e5b1f474a6/recipes/flycheck-phpstan";
@@ -33188,12 +33628,12 @@
       melpaBuild {
         pname = "flycheck-pycheckers";
         ename = "flycheck-pycheckers";
-        version = "20180717.2300";
+        version = "20180820.1344";
         src = fetchFromGitHub {
           owner = "msherry";
           repo = "flycheck-pycheckers";
-          rev = "f85eb69318729689d09f69e955d800ddc6124d6a";
-          sha256 = "0dw342g27mhnfpv83ni7gjx47issmk94hinrakjaf91vm3bjwaag";
+          rev = "427e54a783174004202b6397b1e060c4b0a6989f";
+          sha256 = "0071qvqqyaniwc7xd8wq7vg17rx8w02k9nb6ji3fjhv5ywpk9w07";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/af36dca316b318d25d65c9e842f15f736e19ea63/recipes/flycheck-pycheckers";
@@ -33240,12 +33680,12 @@
       melpaBuild {
         pname = "flycheck-rebar3";
         ename = "flycheck-rebar3";
-        version = "20161030.615";
+        version = "20180806.1403";
         src = fetchFromGitHub {
           owner = "joedevivo";
           repo = "flycheck-rebar3";
-          rev = "56a7c94857f0a0ea6a2a73c476a1a2faadc0f7c6";
-          sha256 = "1pas49arri2vs9zm3r8jl4md74p5fpips3imc3s7nafbfrhh8ix3";
+          rev = "3cca1268c54643204b5bae52e3f0bf5bc921018c";
+          sha256 = "19jfzswli21zqffig0946y0zv9ringhsgg6g6av1rnpq716fhp6h";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/2acff5eea030b91e457df8aa75243993c87ca00e/recipes/flycheck-rebar3";
@@ -33298,12 +33738,12 @@
       melpaBuild {
         pname = "flycheck-rust";
         ename = "flycheck-rust";
-        version = "20180327.945";
+        version = "20180904.417";
         src = fetchFromGitHub {
           owner = "flycheck";
           repo = "flycheck-rust";
-          rev = "a722204cff5bffe26b8f127c7003cfc9ed00e34b";
-          sha256 = "1z0zkf4dxkma6qz83ysyhbfvr0sg2cwxvsapc9j9l1x9nskybv2g";
+          rev = "f1220ccd9acbdb2556765f49f2f3dcb00dca2970";
+          sha256 = "1m5ic4xapyansyifs8rrjdw2l9l4wnvmc51aflflmj7c13f0lvwr";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/68d8cdf3d225b13ebbbe5ce81a01366f33266aed/recipes/flycheck-rust";
@@ -33435,12 +33875,12 @@
       melpaBuild {
         pname = "flycheck-swiftlint";
         ename = "flycheck-swiftlint";
-        version = "20180312.1656";
+        version = "20180829.2040";
         src = fetchFromGitHub {
           owner = "jojojames";
           repo = "flycheck-swiftlint";
-          rev = "8496fd4499ef5c0e0cfeb65f4d76c6f9dd8991f3";
-          sha256 = "0d2s9brccv7lgw2vnglhhaq29mxb3pxiclhx4w28gb76x8r2rsf7";
+          rev = "65101873c4c9f8e7eac9471188b161eeddda1555";
+          sha256 = "007n0jv5z159pw5bcqcycv6h31rl0z16m22yrhqi94yc14jlw5ma";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/7e2a979726507e974a0a19dfc2ca6884157025be/recipes/flycheck-swiftlint";
@@ -33563,6 +34003,34 @@
           license = lib.licenses.free;
         };
       }) {};
+    flycheck-vdm = callPackage ({ emacs
+                                , fetchFromGitHub
+                                , fetchurl
+                                , flycheck
+                                , lib
+                                , melpaBuild
+                                , vdm-mode }:
+      melpaBuild {
+        pname = "flycheck-vdm";
+        ename = "flycheck-vdm";
+        version = "20180830.2352";
+        src = fetchFromGitHub {
+          owner = "peterwvj";
+          repo = "vdm-mode";
+          rev = "0c083ee4848ea5d78de7894a4a0722d6630839c9";
+          sha256 = "175zlxxjxl7zp80hm2hz5xw7gy3qh0hz3fdvqy8v3n0vz4zvqx1k";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/f246b9dcf7915a845b9e2cd44cc1a0833b412c8f/recipes/flycheck-vdm";
+          sha256 = "15ng1l8gfp8iz50yb5d39dy57763gd2x8j6z6rz0byiykgxhl9zg";
+          name = "recipe";
+        };
+        packageRequires = [ emacs flycheck vdm-mode ];
+        meta = {
+          homepage = "https://melpa.org/#/flycheck-vdm";
+          license = lib.licenses.free;
+        };
+      }) {};
     flycheck-xcode = callPackage ({ emacs
                                   , fetchFromGitHub
                                   , fetchurl
@@ -34059,6 +34527,32 @@
           license = lib.licenses.free;
         };
       }) {};
+    flymake-ktlint = callPackage ({ emacs
+                                  , fetchFromGitHub
+                                  , fetchurl
+                                  , lib
+                                  , melpaBuild }:
+      melpaBuild {
+        pname = "flymake-ktlint";
+        ename = "flymake-ktlint";
+        version = "20180830.2046";
+        src = fetchFromGitHub {
+          owner = "jojojames";
+          repo = "flymake-ktlint";
+          rev = "bea8bf350802c06756efd4e6dfba65f31dc41d78";
+          sha256 = "0sycdd3har8rxg8jm55nl25g8f41y3rsnsn4sblb7pbz5x5i6ixc";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/7b2e630e5e16044fb8ffe251f4fa58fb8f3d6bb9/recipes/flymake-ktlint";
+          sha256 = "07v90pkhmrz59m6hf1lzxq4h3kk4qblihw4qgz5phbj4l5pahivd";
+          name = "recipe";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/flymake-ktlint";
+          license = lib.licenses.free;
+        };
+      }) {};
     flymake-less = callPackage ({ fetchFromGitHub
                                 , fetchurl
                                 , flymake-easy
@@ -34121,14 +34615,14 @@
         ename = "flymake-perlcritic";
         version = "20120328.114";
         src = fetchFromGitHub {
-          owner = "illusori";
+          owner = "flymake";
           repo = "emacs-flymake-perlcritic";
           rev = "0692d6ad5495f6e5438bde0a10345829b8e1def8";
           sha256 = "11r982h5fhjkmm9ld8wfdip0ghinw523nm1w4fmy830g0bbkgkrq";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/ca7bf43ef8893bf04e9658390e306ef69e80a156/recipes/flymake-perlcritic";
-          sha256 = "0hibnh463wzhvpix7gygpgs04gi6salwjrsjc6d43lxlsn3y1im8";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/flymake-perlcritic";
+          sha256 = "1i0bc81cby2nsala2mhghzv7clhbf1gpp54vdxiq2wdanqy25vmk";
           name = "recipe";
         };
         packageRequires = [ flymake ];
@@ -34345,6 +34839,32 @@
           license = lib.licenses.free;
         };
       }) {};
+    flymake-shellcheck = callPackage ({ emacs
+                                      , fetchFromGitHub
+                                      , fetchurl
+                                      , lib
+                                      , melpaBuild }:
+      melpaBuild {
+        pname = "flymake-shellcheck";
+        ename = "flymake-shellcheck";
+        version = "20180830.445";
+        src = fetchFromGitHub {
+          owner = "federicotdn";
+          repo = "flymake-shellcheck";
+          rev = "d56607235bb2b0a08920c326702fea0724f118a7";
+          sha256 = "14jb789sn9najrkvwp5v3pjfq5va192wmc5zf86ni0am2856z3pl";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/8dccb106ff6c9cb4b14440be9026c3e427dddff2/recipes/flymake-shellcheck";
+          sha256 = "1gvm4sh1sga3gkkg0zi7ynvp9b09sx16cclj2qzawmgfv2c111vy";
+          name = "recipe";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/flymake-shellcheck";
+          license = lib.licenses.free;
+        };
+      }) {};
     flymake-solidity = callPackage ({ fetchFromGitHub
                                     , fetchurl
                                     , flymake-easy
@@ -34481,12 +35001,12 @@
       melpaBuild {
         pname = "flyspell-correct";
         ename = "flyspell-correct";
-        version = "20180427.1135";
+        version = "20180915.654";
         src = fetchFromGitHub {
           owner = "d12frosted";
           repo = "flyspell-correct";
-          rev = "e47b83e5efb524dfab5a6f92304b319fa6376ae0";
-          sha256 = "1w1idyryxq496i1plx8xjyfidakyncx3sa9j3ik7x148ywaf8kwm";
+          rev = "8aae6cf10527651b4a07b0b5f33257713d8f4211";
+          sha256 = "1xvnwd7pn5f6kyv8p6rc84414yvhg6qwfddwxbqyyb13d48haxvd";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/fa06fbe3bc40ae5e3f6d10dee93a9d49e9288ba5/recipes/flyspell-correct";
@@ -34824,12 +35344,12 @@
       melpaBuild {
         pname = "fold-this";
         ename = "fold-this";
-        version = "20180224.40";
+        version = "20180828.636";
         src = fetchFromGitHub {
           owner = "magnars";
           repo = "fold-this.el";
-          rev = "4fb509a4176e950d083a5321ad62742f2e9bcb7b";
-          sha256 = "1csazxx6wnnriklbrdqxmf7nc67gqb7c5zppr797bk4j4calskgf";
+          rev = "49bdb7fe6a8f207afb1f05382372674a7c876ba8";
+          sha256 = "1h9afb019y1c488c2s6w7nas32b89lngrl7f90rd8i9ynm5lbvr0";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/9853fcb99bd8717c77fa2b3bafb6e85d0d5d491c/recipes/fold-this";
@@ -35131,6 +35651,7 @@
         };
       }) {};
     format-all = callPackage ({ cl-lib ? null
+                              , emacs
                               , fetchFromGitHub
                               , fetchurl
                               , lib
@@ -35138,19 +35659,19 @@
       melpaBuild {
         pname = "format-all";
         ename = "format-all";
-        version = "20180722.159";
+        version = "20180902.458";
         src = fetchFromGitHub {
           owner = "lassik";
           repo = "emacs-format-all-the-code";
-          rev = "6b0bd2fadb8f672e93bc58f2de94be97f5a1b6d6";
-          sha256 = "1y2y2ank4bll0h4bsd0d60aqq5hlylna9zvg18q3n68isqagn7zh";
+          rev = "d4a832c2fb6d0db76dff14342d001e69296f9316";
+          sha256 = "1713aprpxhf9wp644rhmg3y8hdk6f557icx5hb5gmwkcp5hn03yx";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/f53143ebd42ef5be793b86d50b23f0a57617d6cc/recipes/format-all";
           sha256 = "1kmnv8ypxvgm3p79cc1wk8032fh7bl1pripys180vw89r2748qs9";
           name = "recipe";
         };
-        packageRequires = [ cl-lib ];
+        packageRequires = [ cl-lib emacs ];
         meta = {
           homepage = "https://melpa.org/#/format-all";
           license = lib.licenses.free;
@@ -35268,12 +35789,12 @@
       melpaBuild {
         pname = "fountain-mode";
         ename = "fountain-mode";
-        version = "20180715.145";
+        version = "20180911.534";
         src = fetchFromGitHub {
           owner = "rnkn";
           repo = "fountain-mode";
-          rev = "3f253598f2eb6c5eec71af967978a3ecf890240d";
-          sha256 = "1m3fq5mg87v48y0v9a5mlxjs49yqxkb718r6ympbihzknjh2a0qq";
+          rev = "55e8b6ac6e95a1478cf5fe9479d92b30c5ec71fd";
+          sha256 = "06hj78hqfcfp12pkx74yiqlia6db0qaadylz75vv5yf0iklbggkf";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/913386ac8d5049d37154da3ab32bde408a226511/recipes/fountain-mode";
@@ -35455,12 +35976,12 @@
       melpaBuild {
         pname = "frameshot";
         ename = "frameshot";
-        version = "20180228.408";
+        version = "20180723.1428";
         src = fetchFromGitHub {
           owner = "tarsius";
           repo = "frameshot";
-          rev = "65994602fdf3d8881f0cabffebbce6c0e493e3c8";
-          sha256 = "0crvvacpajlhdida54gvv4y11xx78qscr6nznx0bhdb12sj3n45q";
+          rev = "917efdd678e397aa01efa657e3488d34445eca90";
+          sha256 = "1c19magazz78jd65r7c58nhp0bcyfysrlvf4jbfgrdd9bf7xlkx6";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/e5cfaa4b5fda97054d45691fad9d79b559f2df14/recipes/frameshot";
@@ -35682,12 +36203,12 @@
       melpaBuild {
         pname = "fstar-mode";
         ename = "fstar-mode";
-        version = "20180713.1329";
+        version = "20180814.1244";
         src = fetchFromGitHub {
           owner = "FStarLang";
           repo = "fstar-mode.el";
-          rev = "a42763cdd81d6520651dfaad7a7e8c7388bad54c";
-          sha256 = "10nbzm22p9pgsh6zgc9fjy3v1i5vw8877g8f4x3fi8lvpv1ynwps";
+          rev = "20633d42734ff54d662d8da618dc5aa5e20c743f";
+          sha256 = "02xmz181ncfnbdbsjphdysdi1ia8i9ynk0pqfk8flhfkxx5karsv";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/c58ace42342c3d3ff5a56d86a16206f2ecb45f77/recipes/fstar-mode";
@@ -35897,12 +36418,12 @@
       melpaBuild {
         pname = "futhark-mode";
         ename = "futhark-mode";
-        version = "20180619.949";
+        version = "20180910.122";
         src = fetchFromGitHub {
           owner = "diku-dk";
           repo = "futhark-mode";
-          rev = "f834d03aeef2230315e541646e375e6c38a6a10c";
-          sha256 = "0ma8v56lv8bbb5159wg2nv286s5nn3jnjfy8kmrx751sw7jmzr2l";
+          rev = "ecfd751e243893445bc240d083e269a8ecf08231";
+          sha256 = "0jas5nkanvai6mjh38ljbx3xgskgi6kdi86szlf980rabi8q5lmn";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/97210774b450b7611d2bfdf36e04a425835d86b9/recipes/futhark-mode";
@@ -36153,11 +36674,11 @@
       melpaBuild {
         pname = "gap-mode";
         ename = "gap-mode";
-        version = "20160204.736";
+        version = "20180808.2145";
         src = fetchhg {
           url = "https://bitbucket.com/gvol/gap-mode";
-          rev = "617eff4ff846";
-          sha256 = "08dx8ijivhsfmqkxn33121qcjd6nckpn0jdlh0lhx4z4zg8x37bl";
+          rev = "00f251070b10";
+          sha256 = "0rk5smpzpdqzpmb5cp2l40042i51z3f40fkd3hma40id0ql2gy2w";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/83ec19a4ebac6b2d0fd84939b393848f82620978/recipes/gap-mode";
@@ -36336,12 +36857,12 @@
       melpaBuild {
         pname = "general";
         ename = "general";
-        version = "20180628.1112";
+        version = "20180901.852";
         src = fetchFromGitHub {
           owner = "noctuid";
           repo = "general.el";
-          rev = "e690ef9e706f7eea071357520709ef5407a42159";
-          sha256 = "1kgd0v9lgwsxa1p7n3cgsd2f62wi86hcjslb0vf96b9l1n1wjwdl";
+          rev = "f1feeb8241bc724ced9952f328d6694329178cf1";
+          sha256 = "05qw2g01pv6a0i58khs8kwwc3gy40ngrpis8y4rh81ghgp1i2j71";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/d86383b443622d78f6d8ff7b8ac74c8d72879d26/recipes/general";
@@ -36444,12 +36965,12 @@
       melpaBuild {
         pname = "gf";
         ename = "gf";
-        version = "20180606.1455";
+        version = "20180822.1325";
         src = fetchFromGitHub {
           owner = "grammaticalframework";
           repo = "gf-emacs-mode";
-          rev = "41070ecd1cd64fa52cf299dc09a5ea19aca4cf05";
-          sha256 = "090jy6p94syvf20b61l2jnm7m5pv6d2qxfjhr1wm0bg1wkvyw50c";
+          rev = "e8e55584b0a473922c58cbb4860306a84c3336e5";
+          sha256 = "09fqax9dr40rj8f6b4z7lkjrs305gnkm2f4q314f4k7yxnz3c055";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1c2cc74eb19c54219cd5c5c11d886074859f0948/recipes/gf";
@@ -36487,8 +37008,7 @@
           license = lib.licenses.free;
         };
       }) {};
-    ggtags = callPackage ({ cl-lib ? null
-                          , emacs
+    ggtags = callPackage ({ emacs
                           , fetchFromGitHub
                           , fetchurl
                           , lib
@@ -36496,19 +37016,19 @@
       melpaBuild {
         pname = "ggtags";
         ename = "ggtags";
-        version = "20180418.657";
+        version = "20180725.1013";
         src = fetchFromGitHub {
           owner = "leoliu";
           repo = "ggtags";
-          rev = "bf263afd377992f7c5d9e8f727bd381e74feb327";
-          sha256 = "182wqrkvk4asa483sb2zcym5np3z4h7l7ncpcrfgcs80jqbcaywx";
+          rev = "c737181c16a673d36e81b4c8ec4f389d630ec49d";
+          sha256 = "0analdydfnyvrv58062a6dgkp985zin4blyl0yygarj5drskn0k0";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/b158bb1bc2fbe3de61a6b21174eac7b1457edda2/recipes/ggtags";
           sha256 = "1cmry4knxbx9257ivhfxsd09z07z3g3wjihi99nrwmhb9h4mpqyw";
           name = "recipe";
         };
-        packageRequires = [ cl-lib emacs ];
+        packageRequires = [ emacs ];
         meta = {
           homepage = "https://melpa.org/#/ggtags";
           license = lib.licenses.free;
@@ -36724,28 +37244,31 @@
           license = lib.licenses.free;
         };
       }) {};
-    ghub = callPackage ({ emacs
+    ghub = callPackage ({ dash
+                        , emacs
                         , fetchFromGitHub
                         , fetchurl
+                        , graphql
                         , let-alist
                         , lib
-                        , melpaBuild }:
+                        , melpaBuild
+                        , treepy }:
       melpaBuild {
         pname = "ghub";
         ename = "ghub";
-        version = "20180715.1159";
+        version = "20180914.102";
         src = fetchFromGitHub {
           owner = "magit";
           repo = "ghub";
-          rev = "4202c1f389a5ad0b7841be0ac8ab3cc3b6b77cb6";
-          sha256 = "1adi6wsfkhx46x28fajjf45jw60hkqqgg9y7wdzzq0a2vkp3hwya";
+          rev = "440a563d65ae1f15ac8bc5e100e40968450d16fd";
+          sha256 = "06kj524cv5z73q4xasha1z02z26d04yxgdb4il7bfai1rfrffc8z";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/70a4dbd62fd6ebb4e056d0e97fa1a958437ddc91/recipes/ghub";
-          sha256 = "031bzp61aal2id5sazwjz30svydjvxvphw5wbv5cyy4dqyh7w2ps";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/f403587f77380d1db214aa34933a9b5cce1ef2bd/recipes/ghub";
+          sha256 = "15kjyi8ialpr1zjqvw68w9pa5sigcwy2szq21yvcy295z7ylzy4i";
           name = "recipe";
         };
-        packageRequires = [ emacs let-alist ];
+        packageRequires = [ dash emacs graphql let-alist treepy ];
         meta = {
           homepage = "https://melpa.org/#/ghub";
           license = lib.licenses.free;
@@ -36787,12 +37310,12 @@
       melpaBuild {
         pname = "gif-screencast";
         ename = "gif-screencast";
-        version = "20180616.1230";
+        version = "20180827.135";
         src = fetchFromGitLab {
           owner = "Ambrevar";
           repo = "emacs-gif-screencast";
-          rev = "12b25442b97b84abae74ecb5190a9d14ff7cfe5a";
-          sha256 = "0p7gfccvrv2267abldsyjdqbj4rg25wdy6vmcygiggl3lk0wrnwz";
+          rev = "62e69ea464e87f1f7791d95a4fbbe9b70a84668a";
+          sha256 = "1q02mk4pzaxdl8sf191iwxz481gaqfc9nvd4v95ggjyp3ahq1y4n";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/6d17ca0213ba5ef9dce92002e281e6f08c3492be/recipes/gif-screencast";
@@ -37050,12 +37573,12 @@
       melpaBuild {
         pname = "git-commit";
         ename = "git-commit";
-        version = "20180713.1444";
+        version = "20180912.312";
         src = fetchFromGitHub {
           owner = "magit";
           repo = "magit";
-          rev = "d7412da3277d6ec5810e7ac20d64eb6c5cc0c30b";
-          sha256 = "02xfxp6bsp9g0sz9kaykibygqxndgqa59w0a6flma4mkkgwsid9c";
+          rev = "d913880e165b162420347cbcf10a40dc21094248";
+          sha256 = "1ad3al4qkxrwl6nc40ql6r14axfypzlcr3fnp68csfbd5zig595g";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/cec5af50ae7634cc566adfbfdf0f95c3e2951c0c/recipes/git-commit";
@@ -37581,12 +38104,12 @@
       melpaBuild {
         pname = "github-elpa";
         ename = "github-elpa";
-        version = "20180704.2247";
+        version = "20180831.111";
         src = fetchFromGitHub {
           owner = "10sr";
           repo = "github-elpa";
-          rev = "abe92cc25c9d75dab4f8bcf0eccafdd8a26774d6";
-          sha256 = "0rx61fsvl99r2p3f3y7rgwf7m084lqi0xsdz0w8cml67sd5qm54g";
+          rev = "cbde5bc239687e07347cecf46ba5aa31948ebe1d";
+          sha256 = "1d7a9mp2kpcw1gvn9j3k8p0896i07m53xkbcx1vbg013w8kpwpak";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/81ec06e370f51b750ba3313b661d7386710cffb0/recipes/github-elpa";
@@ -37769,13 +38292,13 @@
         version = "20170630.1501";
         src = fetchFromGitHub {
           owner = "philiparvidsson";
-          repo = "emacs-github-theme";
+          repo = "GitHub-Theme-for-Emacs";
           rev = "29f00a51d949a248a5f6355a97131e216747c797";
           sha256 = "16ldfz1k0hxc1b785gzrf70hg0q88ijjxp39hb62iax1k1aw9vlw";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/f4ace4a150faa312ef531182f328a3e039045bd7/recipes/github-theme";
-          sha256 = "1c22p17a1d0s30cj40zrszyznch6nji2risq3b47jhh9i6m32jif";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/github-theme";
+          sha256 = "132jahd8vvhzhhkm71dzq6x46wmaakbbxg9s7r9779bfwbrms9j9";
           name = "recipe";
         };
         packageRequires = [];
@@ -38027,28 +38550,26 @@
           license = lib.licenses.free;
         };
       }) {};
-    glab = callPackage ({ emacs
-                        , fetchFromGitHub
+    glab = callPackage ({ fetchFromGitHub
                         , fetchurl
-                        , ghub
                         , lib
                         , melpaBuild }:
       melpaBuild {
         pname = "glab";
         ename = "glab";
-        version = "20180419.308";
+        version = "20180821.851";
         src = fetchFromGitHub {
           owner = "magit";
           repo = "ghub";
-          rev = "4831933da059ee084a16016558b9ccd8c581a8ff";
-          sha256 = "1b5jrpj3z989r3mf4jfch8rnaaa5hyb2395xz3v37f0vsphd7s0y";
+          rev = "d75ba1bd8843f53ae3e37b206187b3b97d9f3540";
+          sha256 = "0h9v8l1v9wa5sxng16qqlpgqpdi6an7fn83frrk4lfxf555mm2aq";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/70a4dbd62fd6ebb4e056d0e97fa1a958437ddc91/recipes/glab";
-          sha256 = "0ym8bgym11mdv5bw22lgkcxyqy7qgxxm0yjmrq8qx7i55gqayyb8";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/f403587f77380d1db214aa34933a9b5cce1ef2bd/recipes/glab";
+          sha256 = "0kyr1znf82qi15r6iha6dbyhmfzghx969hd364rsvkly8ry8pk5m";
           name = "recipe";
         };
-        packageRequires = [ emacs ghub ];
+        packageRequires = [];
         meta = {
           homepage = "https://melpa.org/#/glab";
           license = lib.licenses.free;
@@ -38905,12 +39426,12 @@
       melpaBuild {
         pname = "go-projectile";
         ename = "go-projectile";
-        version = "20170302.1705";
+        version = "20180808.1122";
         src = fetchFromGitHub {
           owner = "dougm";
           repo = "go-projectile";
-          rev = "4c449eae696d4e3a15078c336c98ea779da227ab";
-          sha256 = "1cyvd2va0vgbh7im5rhapyd66ql469cl2hswg946qj961kdxc7s9";
+          rev = "11989b104a4bef406bf0e7b31ef6608aa6057cf7";
+          sha256 = "1w61jxmwardmv383xms4rjfk6czdzr9j8qbpbmaw1lj0b8lbkvgs";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/3559a179be2a5cda71ee0a5a18bead4b3a1a8138/recipes/go-projectile";
@@ -39984,6 +40505,32 @@
           license = lib.licenses.free;
         };
       }) {};
+    graphql = callPackage ({ emacs
+                           , fetchFromGitHub
+                           , fetchurl
+                           , lib
+                           , melpaBuild }:
+      melpaBuild {
+        pname = "graphql";
+        ename = "graphql";
+        version = "20180911.1731";
+        src = fetchFromGitHub {
+          owner = "vermiculus";
+          repo = "graphql.el";
+          rev = "672dd9ebd7e67d8089388b0c484cd650e76565f3";
+          sha256 = "0sp0skc1rnhi39szfbq1i99pdgd3bhn4c15cff05iqhjy2d4hniw";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3e801ae56f11b64a5a3e52cf1a6c152940ab8c97/recipes/graphql";
+          sha256 = "139fng2psn535ymqa7c6hm1r7ja1gs5mdvb487jj6fh0bl9wq8la";
+          name = "recipe";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/graphql";
+          license = lib.licenses.free;
+        };
+      }) {};
     graphql-mode = callPackage ({ emacs
                                 , fetchFromGitHub
                                 , fetchurl
@@ -40168,12 +40715,12 @@
       melpaBuild {
         pname = "green-screen-theme";
         ename = "green-screen-theme";
-        version = "20171130.234";
+        version = "20180816.802";
         src = fetchFromGitHub {
           owner = "rbanffy";
           repo = "green-screen-emacs";
-          rev = "c348ea0adf0e6ae99294a05be183a7b425a4bab0";
-          sha256 = "1rqhac5j06gpc9gp44g4r3zdkw1baskwrz3bw1n1haw4a1k0657q";
+          rev = "774e8f6c033786406267f71ec07319d906a30b75";
+          sha256 = "0f12lqgfi1vlhq8p5ia04vlmvmyb4f40q7dm2nbh5y8r6k89hisg";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/821744ca106f1b74941524782e4581fc93800fed/recipes/green-screen-theme";
@@ -40379,12 +40926,12 @@
       melpaBuild {
         pname = "groovy-mode";
         ename = "groovy-mode";
-        version = "20180601.738";
+        version = "20180809.2307";
         src = fetchFromGitHub {
           owner = "Groovy-Emacs-Modes";
           repo = "groovy-emacs-modes";
-          rev = "a5afa3ac0a23c1bdebea014d06e5c30dde56ee8b";
-          sha256 = "04jciwr7614cw3dl9hfiypmqc28njbrin6j3g5r27xn1f91sd5ni";
+          rev = "c32f82dd3a11be5871a71e8ffac55022bbbc5cfb";
+          sha256 = "1jh197yzkfdviiq09hihhn0ycxfn7g9hk4a376a7ybv8q7wkal0m";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/3fe318b4e51a280a55c01fa30455e4a180df8bd6/recipes/groovy-mode";
@@ -40646,12 +41193,12 @@
       melpaBuild {
         pname = "guix";
         ename = "guix";
-        version = "20180705.315";
+        version = "20180914.1413";
         src = fetchFromGitHub {
           owner = "alezost";
           repo = "guix.el";
-          rev = "f220e82b2dd94fb349ae37665912a42196d53975";
-          sha256 = "12k2qib7qbxxkidsnw2a44jakw0lgbz8kksgxfbqmaryzi35wh5v";
+          rev = "0111d16547d730fda81374714267775b06897501";
+          sha256 = "0agh5nyiwc5vvwgqhshffj0vds1505q67xr2fnfpd2d21l04bki2";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/b3d8c73e8a946b8265487a0825d615d80aa3337d/recipes/guix";
@@ -40773,12 +41320,12 @@
       melpaBuild {
         pname = "habamax-theme";
         ename = "habamax-theme";
-        version = "20180702.958";
+        version = "20180820.219";
         src = fetchFromGitHub {
           owner = "habamax";
           repo = "habamax-theme";
-          rev = "b40e3e7c637e67c8f9164b0db9e75c0ec4eb6a0f";
-          sha256 = "0fgvnfqgg6gqrwlb8yibs4nybvskd6awxqdpj4yy9jfqibggppld";
+          rev = "23a87d831f35ec0a187a2bd9aa8ffbe06e671f8e";
+          sha256 = "160jbd024f6f5nfpahddinvdlpzi0xc1bbi5dymp8nmi48fppp2c";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/77386484ad0b31c2818fae52cd312821c4632cb8/recipes/habamax-theme";
@@ -40818,6 +41365,32 @@
           license = lib.licenses.free;
         };
       }) {};
+    hack-mode = callPackage ({ emacs
+                             , fetchFromGitHub
+                             , fetchurl
+                             , lib
+                             , melpaBuild }:
+      melpaBuild {
+        pname = "hack-mode";
+        ename = "hack-mode";
+        version = "20180914.615";
+        src = fetchFromGitHub {
+          owner = "hhvm";
+          repo = "hack-mode";
+          rev = "306bc45412665b74c05267a3367f3ae7b03604db";
+          sha256 = "0q2n8nfll6480xhz7wap88xgxbxrzwx1qpg1kinfw796a3l6vy2s";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/27e238e5d2aaca810fd3fb6836ca49c9fa07cc87/recipes/hack-mode";
+          sha256 = "1zs7p6fczj526wz9kvyhmxqkgrkfkkrvm9ma4cg349sfpjpxwkbl";
+          name = "recipe";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/hack-mode";
+          license = lib.licenses.free;
+        };
+      }) {};
     hack-time-mode = callPackage ({ emacs
                                   , fetchFromGitLab
                                   , fetchurl
@@ -40854,14 +41427,14 @@
         ename = "hacker-typer";
         version = "20170206.720";
         src = fetchFromGitHub {
-          owner = "therockmandolinist";
+          owner = "dieggsy";
           repo = "emacs-hacker-typer";
           rev = "d5a23714a4ccc5071580622f278597d5973f40bd";
           sha256 = "13wp7cg9d9ij44inxxyk1knczglxrbfaq50wyhc4x5zfhz5yw7wx";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/8e04a3a1606ea23865c04d93e3dc77cb55b9931f/recipes/hacker-typer";
-          sha256 = "128y562cxi8rblnqjdzhqc6b58bxi67f6hz569gqw4jywz0xcd0g";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/hacker-typer";
+          sha256 = "0vf18hylhszvplam6c4yynr53zc3n816p9k36gywm6awwblfpyfb";
           name = "recipe";
         };
         packageRequires = [ emacs ];
@@ -40878,12 +41451,12 @@
       melpaBuild {
         pname = "hackernews";
         ename = "hackernews";
-        version = "20180220.419";
+        version = "20180902.2312";
         src = fetchFromGitHub {
           owner = "clarete";
           repo = "hackernews.el";
-          rev = "89077fdb98ab1e77459c7839decdf21b87f4341b";
-          sha256 = "11id6gp6mz97sm2izz6y47n3sphlibdb6nzvbkcxl7l7av53wxg7";
+          rev = "e14dcab09dccb8128198e83d42a75fc310da5329";
+          sha256 = "0z1jf8hvfb28dmjfm2sbxf6gg7v3gq9502b62nnsn4mdl1yk2p1d";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/c43a342e47e5ede468bcf51a60d4dea3926f51bd/recipes/hackernews";
@@ -40905,14 +41478,14 @@
         ename = "hal-mode";
         version = "20160704.1046";
         src = fetchFromGitHub {
-          owner = "strahlex";
+          owner = "machinekoder";
           repo = "hal-mode";
           rev = "cd2f66f219ee520198d4586fb6b169cef7ad3f21";
           sha256 = "0xibwmngijq0wv9hkahs5nh02qj3ma0bkczl07hx8wnl6j27f0nj";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/955a4d94110bb2048d899a3d7671937e69d5ac79/recipes/hal-mode";
-          sha256 = "1b1hvlm80awbyjjs5d51v46hw8a2jfz8dv9r61h7vvwh9a8wpgk2";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/hal-mode";
+          sha256 = "0nlan5f3llhn04p86a6l47dl9g83a51wzrchs2q8rvfcy4161nn4";
           name = "recipe";
         };
         packageRequires = [];
@@ -41294,12 +41867,12 @@
       melpaBuild {
         pname = "haskell-mode";
         ename = "haskell-mode";
-        version = "20180601.143";
+        version = "20180912.2048";
         src = fetchFromGitHub {
           owner = "haskell";
           repo = "haskell-mode";
-          rev = "dd0ea640fa449d021399a17db65e4d50d3f0f2a9";
-          sha256 = "0cc8mhjn4qhn3zs3x7azkjnvalg156b6h0n13b8wzlvyp9ka28yj";
+          rev = "d6c2666eacab9ddf3b88f2a31d5e6f2ca7e039a8";
+          sha256 = "09k3bjdlwz2far2s7r3li4cwf0l80jgcs11aybj31xyzzpr7fglm";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/7f18b4dcbad4192b0153a316cff6533272898f1a/recipes/haskell-mode";
@@ -41662,12 +42235,12 @@
       melpaBuild {
         pname = "helm";
         ename = "helm";
-        version = "20180719.1206";
+        version = "20180905.2217";
         src = fetchFromGitHub {
           owner = "emacs-helm";
           repo = "helm";
-          rev = "345842e1a36b8dfa23eb516e8a8cb64783505f6b";
-          sha256 = "0k8i2ay8mmqfxsfyg12mp2rg27h9xqbvvsfmd38xgc2ni4c1sd1f";
+          rev = "f4e0168b281e127b8ace87e5fc28cac4116d893d";
+          sha256 = "047s677kas4vpy4q709248i6kcrfbc97i6d93pvkip9xqb9pvybg";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/7e8bccffdf69479892d76b9336a4bec3f35e919d/recipes/helm";
@@ -41881,12 +42454,12 @@
       melpaBuild {
         pname = "helm-backup";
         ename = "helm-backup";
-        version = "20171204.2357";
+        version = "20180910.2314";
         src = fetchFromGitHub {
           owner = "antham";
           repo = "helm-backup";
-          rev = "a2c0fa16113e628500d6822c6605280b94e24038";
-          sha256 = "0j4dkz9za2zng43dx8ph688gl5973isxr89v5bw160c65n4lbc6w";
+          rev = "691fe542f38fc7c8cca409997f6a0ff5d76ad6c2";
+          sha256 = "0zi1md5f1haqcrclqfk4ilvr6hbm389kl3ajnyx230rq22vmb9ca";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/5e6eba7b201e91211e43c39e501f6066f0afeb8b/recipes/helm-backup";
@@ -41940,12 +42513,12 @@
       melpaBuild {
         pname = "helm-bibtex";
         ename = "helm-bibtex";
-        version = "20180612.619";
+        version = "20180826.848";
         src = fetchFromGitHub {
           owner = "tmalsburg";
           repo = "helm-bibtex";
-          rev = "21f802aaf5b78dec18b72601dd8276c5244e39f5";
-          sha256 = "13jg728v8k227p68ngiwknlygzqdvasg6n9ax1a2xgjbx3di12vv";
+          rev = "b1a4f7d7c0dd3a258ee9f5cdc22b9a7847a2c4c6";
+          sha256 = "1mmm10jb6gng6s7fnkm96sz5pwfiiwqsi1lydi7g939pgl1rhbp6";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/f4118a7721435240cf8489daa4dd39369208855b/recipes/helm-bibtex";
@@ -42433,12 +43006,12 @@
       melpaBuild {
         pname = "helm-company";
         ename = "helm-company";
-        version = "20180213.1405";
+        version = "20180828.912";
         src = fetchFromGitHub {
           owner = "Sodel-the-Vociferous";
           repo = "helm-company";
-          rev = "acc9c7901e094c1591327a0db1ec7a439f67a84d";
-          sha256 = "1d4q9clp0q56br80c21a4wz1gc4jw3mdy97z9mq07x9i8rhlppzs";
+          rev = "d3fc093a0e833b4dee6561c00d6df3d62aa50f3f";
+          sha256 = "1ciirsanhajdqm5iwl8k9ywf4jha1wdv4sc4d9kslyrfr9zn4q6k";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/8acf7420f2ac8a36474594bc34316f187b43d771/recipes/helm-company";
@@ -42460,12 +43033,12 @@
       melpaBuild {
         pname = "helm-core";
         ename = "helm-core";
-        version = "20180712.137";
+        version = "20180825.2215";
         src = fetchFromGitHub {
           owner = "emacs-helm";
           repo = "helm";
-          rev = "8de42d08f45a7052ed858132de43a76f933f58f7";
-          sha256 = "1g36knyppz8lfbcn84hx6ivf8b34s26wx5dh4xw85sq6pwi5yn7s";
+          rev = "40a3fd4f232dc3cc0f9fc9a00276c1ee95992a2d";
+          sha256 = "05x5liway8idqj3fd6dl2j0wibfmmsn2hggxz7jfyf3hkgs1z4lc";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/ef7a700c5665e6d72cb4cecf7fb5a2dd43ef9bf7/recipes/helm-core";
@@ -42544,12 +43117,12 @@
       melpaBuild {
         pname = "helm-ctest";
         ename = "helm-ctest";
-        version = "20180125.2058";
+        version = "20180821.305";
         src = fetchFromGitHub {
           owner = "danlamanna";
           repo = "helm-ctest";
-          rev = "034927a922f40d9f5978786feed9bc9fe1f7655f";
-          sha256 = "0mbsxlc0isfzqlwvwqxyjkcdvpn9a6qsa29r7mqqihy0jkqi4473";
+          rev = "0c73689692a290f56080e95325c15362e90d529b";
+          sha256 = "143vyd64w3gycc68jcsji474nz2ggda58hgwq6hyiwb7s0gm1gd3";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1cc85ff5554df10fc2066eec4d90de3b25536923/recipes/helm-ctest";
@@ -42733,14 +43306,14 @@
         ename = "helm-dired-recent-dirs";
         version = "20131228.614";
         src = fetchFromGitHub {
-          owner = "akisute3";
+          owner = "yynozk";
           repo = "helm-dired-recent-dirs";
           rev = "3bcd125b44f5a707588ae3868777d91192351523";
           sha256 = "14sifdrfg8ydvi9mj8qm2bfphbffglxrkb5ky4q5b3j96bn8v110";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/b4e24a676ec0c5804b80c1497606b32c4f2cbe9d/recipes/helm-dired-recent-dirs";
-          sha256 = "0kh0n5674ksswjzi9gji2qmx8v8g0axx8xbi0m3zby9nwcpv4qzs";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/helm-dired-recent-dirs";
+          sha256 = "1rm47if91hk6hi4xil9vb6rs415s5kvhwc6zkrmcvay9hiw9vrpw";
           name = "recipe";
         };
         packageRequires = [ helm ];
@@ -42899,12 +43472,12 @@
       melpaBuild {
         pname = "helm-eww";
         ename = "helm-eww";
-        version = "20180511.618";
+        version = "20180827.136";
         src = fetchFromGitHub {
           owner = "emacs-helm";
           repo = "helm-eww";
-          rev = "1a09f11b2376dec8237df40140f056be8a256ef0";
-          sha256 = "1kqdjhz2xiqw3bxjhfl9namhqrkbc2x70gcv6ljljya5hbkm62sm";
+          rev = "2bb7b644f953c45b5dd03298b556312440618026";
+          sha256 = "0cm6ja6jhkp0yniqj4r3mdzlwwm0ab7fczgzfd745sx1xy1jfiwk";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/455a32c1d4642dc6752408c4f5055f5f4d1288eb/recipes/helm-eww";
@@ -42954,12 +43527,12 @@
       melpaBuild {
         pname = "helm-exwm";
         ename = "helm-exwm";
-        version = "20180703.919";
+        version = "20180827.137";
         src = fetchFromGitHub {
           owner = "emacs-helm";
           repo = "helm-exwm";
-          rev = "56266f261ba3b3d2753b374b50da20eb768c06f5";
-          sha256 = "064ziinqa5sdv7rfjn0y278l12kld176fr88k4h78pgf2f2n7cd8";
+          rev = "e21c6ffabadd2fe8d6c7805b6027cc59a6f914e9";
+          sha256 = "11fyqk3h9cqynifc2zzqn0czrcj082wkdg1qhbj97nl4gcj787rl";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/8ecdf9e00cf19fabbeade12a66d66cd010561366/recipes/helm-exwm";
@@ -43601,12 +44174,12 @@
       melpaBuild {
         pname = "helm-hatena-bookmark";
         ename = "helm-hatena-bookmark";
-        version = "20170821.646";
+        version = "20180803.2246";
         src = fetchFromGitHub {
           owner = "masutaka";
           repo = "emacs-helm-hatena-bookmark";
-          rev = "d64833a5bbb4ae112ed176f6473232e526138572";
-          sha256 = "01b6nlbidk93arnnd2irm088qlws4i4p1sagsh9v153x6sk0r38k";
+          rev = "274e18182fe20c11e96009387a8e38e8cd2a1d7e";
+          sha256 = "13s36gyb37asgrc9qca9d196i5bnxqy4acmda5cas08b48wp4lxk";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/3e9335ad16d4151dd4970c4a3ad1fee9a84404fa/recipes/helm-hatena-bookmark";
@@ -43885,6 +44458,34 @@
           license = lib.licenses.free;
         };
       }) {};
+    helm-jira = callPackage ({ cl-lib ? null
+                             , emacs
+                             , fetchFromGitHub
+                             , fetchurl
+                             , helm
+                             , lib
+                             , melpaBuild }:
+      melpaBuild {
+        pname = "helm-jira";
+        ename = "helm-jira";
+        version = "20180802.115";
+        src = fetchFromGitHub {
+          owner = "DeX3";
+          repo = "helm-jira";
+          rev = "75d6ed5bd7a041fa8c1adb21cbbbe57b5a7c7cc7";
+          sha256 = "08cczc4jnkdgvzs0s3wq2dqmhnsvyhpl65dydmi7pmayl7zg6jir";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/b91a22c2117403e278a8116ea1180bed736ae1e3/recipes/helm-jira";
+          sha256 = "1fb2hk97zlr30gzln8b5x7xc3v119ki8kbiyh7shxnaqx7dy1ihs";
+          name = "recipe";
+        };
+        packageRequires = [ cl-lib emacs helm ];
+        meta = {
+          homepage = "https://melpa.org/#/helm-jira";
+          license = lib.licenses.free;
+        };
+      }) {};
     helm-js-codemod = callPackage ({ emacs
                                    , fetchFromGitHub
                                    , fetchurl
@@ -44390,12 +44991,12 @@
       melpaBuild {
         pname = "helm-notmuch";
         ename = "helm-notmuch";
-        version = "20180521.407";
+        version = "20180730.1022";
         src = fetchFromGitHub {
           owner = "xuchunyang";
           repo = "helm-notmuch";
-          rev = "3176305a700c571e3bd6cdb37598708ad283ea73";
-          sha256 = "097h2v5dxlcyb5myk9ijbjnf1qfi52ivaqq56hf5yll3k7i9m65d";
+          rev = "9988eb0f787c82c779f2417b5613b9142a5b1c9b";
+          sha256 = "1jwhmlqlgzxj2zfz0za33vn8m2zrsmkmnq2vx5i1nry70p9h43b4";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/98667b3aa43d3e0f6174eeef82acaf71d7019aac/recipes/helm-notmuch";
@@ -44722,12 +45323,12 @@
       melpaBuild {
         pname = "helm-projectile";
         ename = "helm-projectile";
-        version = "20180722.1426";
+        version = "20180815.814";
         src = fetchFromGitHub {
           owner = "bbatsov";
           repo = "helm-projectile";
-          rev = "74349fc9132502af2b2e6ca9a51185ae4c9391b4";
-          sha256 = "0b24gypvbr1k7pks4fvniwa6smi4vflr5lgd3b82y2ah0b8x758m";
+          rev = "8a2dbc973548fac89356c11d70f7f474ea1367a5";
+          sha256 = "1lyka93dw4ndpw1qr1ixrng5lfdbz84yha5zl37imvkg68v6zi1x";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/8bc4e3a5af7ba86d277c73a1966a91c87d3d855a/recipes/helm-projectile";
@@ -44783,8 +45384,8 @@
           sha256 = "03ys40rr0pvgp35j5scw9c28j184f1c9m58a3x0c8f0lgyfpssjk";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/550eb9f42c90fd9e80714579c12ee6bfcacb5bb7/recipes/helm-pt";
-          sha256 = "1imhy0bsm9aldv0pvf88280qdya01lznxpx5gi5wffhrz17yh4pi";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/e608f40d00a3b2a80a6997da00e7d04f76d8ef0d/recipes/helm-pt";
+          sha256 = "1pvipzjw9h668jkbwwkmphvp806fs9q4mb2v2bjxpb0f3kn2qk3n";
           name = "recipe";
         };
         packageRequires = [ helm ];
@@ -45483,12 +46084,12 @@
       melpaBuild {
         pname = "helm-system-packages";
         ename = "helm-system-packages";
-        version = "20180628.1131";
+        version = "20180911.1432";
         src = fetchFromGitHub {
           owner = "emacs-helm";
           repo = "helm-system-packages";
-          rev = "d510562f4ea21245496199dffb731d00152f8a2b";
-          sha256 = "0qzv395gm1i56f7rahx44b0v816mjk7fx52nwkwspdmixyzckzn2";
+          rev = "2b4636dc861ffe2c4a2025b67ab40460f85b9563";
+          sha256 = "01by0c4lqi2cw8xmbxkjw7m9x78zssm31sx4hdpw5j35s2951j0f";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/0c46cfb0fcda0500e15d04106150a072a1a75ccc/recipes/helm-system-packages";
@@ -45592,12 +46193,12 @@
       melpaBuild {
         pname = "helm-tramp";
         ename = "helm-tramp";
-        version = "20180610.717";
+        version = "20180829.9";
         src = fetchFromGitHub {
           owner = "masasam";
           repo = "emacs-helm-tramp";
-          rev = "07d2f02166038c14052009f6fb9c2a163118e2cc";
-          sha256 = "1yi4wq484nrjb1yphp6dbaqjgfq7hr78gh9v9cys7dqg910ngy4f";
+          rev = "2148e21fd1a6c8a0b61678bd187ab5a7e387ae64";
+          sha256 = "1dinm85z5dz7ql75bh9hy4kmasfb05amnch32y6xscjdg6736w8j";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/helm-tramp";
@@ -45872,12 +46473,12 @@
       melpaBuild {
         pname = "helpful";
         ename = "helpful";
-        version = "20180722.1557";
+        version = "20180912.1643";
         src = fetchFromGitHub {
           owner = "Wilfred";
           repo = "helpful";
-          rev = "89668dd787248c7f0d35d4ab26f4a61f2efefdcb";
-          sha256 = "0fwgvpp6bchvr0fr1s1rb56dywbgw8345v8i3c9sp2xa3ahqmvri";
+          rev = "2565d0425297567ab176ab55670c7d0d108b1cb9";
+          sha256 = "1dxilg2dhm844hmf0b1mq4f3a1mn2lwzf5hgq9b98qk40vgdc50k";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/889d34b654de13bd413d46071a5ff191cbf3d157/recipes/helpful";
@@ -45999,12 +46600,12 @@
       melpaBuild {
         pname = "hexo";
         ename = "hexo";
-        version = "20180223.1944";
+        version = "20180814.1919";
         src = fetchFromGitHub {
           owner = "kuanyui";
           repo = "hexo.el";
-          rev = "ff21ab2d95e13666f36a243989ffea2027842191";
-          sha256 = "1g7i4vlpac7npx8c7f7i9w3f30is7q7zsxp0sqwp7x7rsa5783nn";
+          rev = "6bca18f911f6b2cd5c055ed73ddec98c385f9f86";
+          sha256 = "1zawz3nry832rhx80hyfqfs0gfw3hyrn96060zj3n75avx13rr8j";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/21de1b7db0fa4af4fc0014207d41893a0713d738/recipes/hexo";
@@ -46320,6 +46921,31 @@
           license = lib.licenses.free;
         };
       }) {};
+    highlight-doxygen = callPackage ({ fetchFromGitHub
+                                     , fetchurl
+                                     , lib
+                                     , melpaBuild }:
+      melpaBuild {
+        pname = "highlight-doxygen";
+        ename = "highlight-doxygen";
+        version = "20180829.1118";
+        src = fetchFromGitHub {
+          owner = "Lindydancer";
+          repo = "highlight-doxygen";
+          rev = "53f2250018725fa19548e1771ee79fcc23641694";
+          sha256 = "0l6zh5cmp771h30i16bv3qvcq40pz9fxn3j7a8yx708vanb4d7kc";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/0153353e5abfa7513e74485049eaa384aaddbd58/recipes/highlight-doxygen";
+          sha256 = "0jkzf2mqn7y465c77vglaj3mr0cpfy2z810mywd1q21d71lsqmbl";
+          name = "recipe";
+        };
+        packageRequires = [];
+        meta = {
+          homepage = "https://melpa.org/#/highlight-doxygen";
+          license = lib.licenses.free;
+        };
+      }) {};
     highlight-escape-sequences = callPackage ({ fetchFromGitHub
                                               , fetchurl
                                               , lib
@@ -46379,12 +47005,12 @@
       melpaBuild {
         pname = "highlight-indent-guides";
         ename = "highlight-indent-guides";
-        version = "20180529.1039";
+        version = "20180910.1027";
         src = fetchFromGitHub {
           owner = "DarthFennec";
           repo = "highlight-indent-guides";
-          rev = "88b9bc22efc2006cc7a650c81b95c210a96828ba";
-          sha256 = "0qv9010q1ylgh3l0yxlg7js6pxc8bkdxw20r6vrihglb5qf49m08";
+          rev = "e46356487d4b19144af3025cf16f1b1bd174a450";
+          sha256 = "1fm13mx7qcwr0jnwknaja4qg92l2yq1f303hx4fjqm609s5vm1hz";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/c8acca65a5c134d4405900a43b422c4f4e18b586/recipes/highlight-indent-guides";
@@ -47072,12 +47698,12 @@
       melpaBuild {
         pname = "hledger-mode";
         ename = "hledger-mode";
-        version = "20171201.1156";
+        version = "20180821.733";
         src = fetchFromGitHub {
           owner = "narendraj9";
           repo = "hledger-mode";
-          rev = "594ce27f898ba027cb7f326179ff7875072b03e0";
-          sha256 = "1jla31az52qygabd99m8ibq60f4almkbjlg1z63kz7zl98hfxnw7";
+          rev = "af51c0a7a0952c244e5c6bb818ab4ce3b9806609";
+          sha256 = "1j3bi47wfwa9d34yf6c2bmibmmags8q3vd3l2raqriagjf5gzwgb";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/hledger-mode";
@@ -47244,6 +47870,33 @@
           license = lib.licenses.free;
         };
       }) {};
+    home-end = callPackage ({ emacs
+                            , fetchFromGitHub
+                            , fetchurl
+                            , keypress-multi-event
+                            , lib
+                            , melpaBuild }:
+      melpaBuild {
+        pname = "home-end";
+        ename = "home-end";
+        version = "20180817.155";
+        src = fetchFromGitHub {
+          owner = "Boruch-Baum";
+          repo = "emacs-home-end";
+          rev = "211914c5e7b25f35f02626575a9b10536f81ba1d";
+          sha256 = "1ppjm0sb4svarnqcv6j581sqnjjsps27ghx63759v9wkylqyi995";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/f67c9cf33e0f11a9bd6e1521af86d180177111c4/recipes/home-end";
+          sha256 = "0xnpb0n4kd7b0m80g2a88ylfk5gbvkcgwb78nig98dmgjg48z2ly";
+          name = "recipe";
+        };
+        packageRequires = [ emacs keypress-multi-event ];
+        meta = {
+          homepage = "https://melpa.org/#/home-end";
+          license = lib.licenses.free;
+        };
+      }) {};
     homebrew-mode = callPackage ({ dash
                                  , emacs
                                  , fetchFromGitHub
@@ -47388,14 +48041,14 @@
         ename = "how-many-lines-in-project";
         version = "20140806.2142";
         src = fetchFromGitHub {
-          owner = "hiddenlotus";
+          owner = "kaihaosw";
           repo = "how-many-lines-in-project";
           rev = "8a37ef885d004fe2ce231bfe05ed4867c6192d9b";
           sha256 = "0vygbdjy2dv7n50vrkcnqyswq48sgas0zzjfsac8x5g9vhxjkawj";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/7fabdb05de9b8ec18a3a566f99688b50443b6b44/recipes/how-many-lines-in-project";
-          sha256 = "1dfh1ydpjbrawqpsj6kydvy8sz3rlwn4ma5cizfw5spd2gcmj1zb";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/how-many-lines-in-project";
+          sha256 = "0rsl8f0ww2q5w87a8ddfjadw4mx4g2ahb62yb6xw7pzadmmz89f8";
           name = "recipe";
         };
         packageRequires = [];
@@ -48307,6 +48960,31 @@
           license = lib.licenses.free;
         };
       }) {};
+    idle-highlight-in-visible-buffers-mode = callPackage ({ fetchFromGitHub
+                                                          , fetchurl
+                                                          , lib
+                                                          , melpaBuild }:
+      melpaBuild {
+        pname = "idle-highlight-in-visible-buffers-mode";
+        ename = "idle-highlight-in-visible-buffers-mode";
+        version = "20180810.2331";
+        src = fetchFromGitHub {
+          owner = "ignacy";
+          repo = "idle-highlight-in-visible-buffers-mode";
+          rev = "09bb527ff9b8e5ad3da15aa461d595f187b91172";
+          sha256 = "0yfxd2ffib7xjk9hbx3xhm6dap01a4649x333bfva0bpz26g55np";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/b5a533be3b8dea556438d93ac48853dd3a9690f1/recipes/idle-highlight-in-visible-buffers-mode";
+          sha256 = "0kv06qlv1zp5hwaya0l90z6d5lhxcg69qac6x24ky6kf97vcdq72";
+          name = "recipe";
+        };
+        packageRequires = [];
+        meta = {
+          homepage = "https://melpa.org/#/idle-highlight-in-visible-buffers-mode";
+          license = lib.licenses.free;
+        };
+      }) {};
     idle-highlight-mode = callPackage ({ fetchFromGitHub
                                        , fetchurl
                                        , lib
@@ -48526,12 +49204,12 @@
       melpaBuild {
         pname = "ido-flex-with-migemo";
         ename = "ido-flex-with-migemo";
-        version = "20180323.456";
+        version = "20180817.740";
         src = fetchFromGitHub {
           owner = "ROCKTAKEY";
           repo = "ido-flex-with-migemo";
-          rev = "02fa776e44cb5756205aa574ebfd5c3f86f4cf3c";
-          sha256 = "0cyszakyj3kb2bdy6wb5y3m3w6y1fniakjlx92g8mvb6ycwkj2p3";
+          rev = "acced7c19f3ad505cc27cd95ab05593b8194d2e5";
+          sha256 = "186idn1385n342cdrbf9glkd9bw8vihyq51mlk642fmkiadv9hwd";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1647d1ae7400ddbc8367c355ade16b5c360b42fc/recipes/ido-flex-with-migemo";
@@ -48966,12 +49644,12 @@
       melpaBuild {
         pname = "iedit";
         ename = "iedit";
-        version = "20180207.219";
+        version = "20180829.2231";
         src = fetchFromGitHub {
           owner = "victorhge";
           repo = "iedit";
-          rev = "412490db4387ad9d040bfb5854f25de4c40c2146";
-          sha256 = "1995j0yvvls5i7zfxw8zwfk05in8b0n82k05qdrap29v6nq2v4bx";
+          rev = "2ab2e8bea4b25cf7dcdabccffc81fcb9db7bbff9";
+          sha256 = "00pkdr0wj488r7k7r1hbazjhw3z5gzb5nw3j587mwmwc5z6d5n95";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/iedit";
@@ -49402,12 +50080,12 @@
       melpaBuild {
         pname = "impatient-mode";
         ename = "impatient-mode";
-        version = "20180528.916";
+        version = "20180901.1607";
         src = fetchFromGitHub {
           owner = "skeeto";
           repo = "impatient-mode";
-          rev = "96c068d5add95595dc5be42115d100cf99f908ba";
-          sha256 = "18fawpnqcm1yv7f83sz05pjihwydmafmccfmizyg0hlgayhj0izf";
+          rev = "b1146e87b4ee31ca7bfc17009e779e273137b081";
+          sha256 = "1065m5gyqihmk36im7k0din7dngbmq3a4p8v2qwfl8ybxrsfajvg";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/aaa64c4d43139075d77f4518de94bcbe475d21fc/recipes/impatient-mode";
@@ -49612,26 +50290,26 @@
                           , fetchFromGitHub
                           , fetchurl
                           , js2-mode
+                          , js2-refactor
                           , lib
                           , melpaBuild
-                          , seq
-                          , websocket }:
+                          , seq }:
       melpaBuild {
         pname = "indium";
         ename = "indium";
-        version = "20180521.1355";
+        version = "20180914.102";
         src = fetchFromGitHub {
           owner = "NicolasPetton";
           repo = "Indium";
-          rev = "bc9ab60ded9af501fb4424359737cbff29cecfb1";
-          sha256 = "1f6asv98vsxkizb1nf37q6wacqdbqnqzk035j6sdsmj7p3plb3iy";
+          rev = "db2d38359358e225753066913ca2e0099acc2956";
+          sha256 = "1nlgrr147z31i6kak45n050rh48vnpj6ykd39vhv7if0q6jrsqir";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/4292058cc6e31cabc0de575134427bce7fcef541/recipes/indium";
           sha256 = "024ljx7v8xahmr8jm41fiy8i5jbg48ybqp5n67k4jwg819cz8wvl";
           name = "recipe";
         };
-        packageRequires = [ company emacs js2-mode seq websocket ];
+        packageRequires = [ company emacs js2-mode js2-refactor seq ];
         meta = {
           homepage = "https://melpa.org/#/indium";
           license = lib.licenses.free;
@@ -49725,14 +50403,14 @@
         ename = "inf-mongo";
         version = "20180408.638";
         src = fetchFromGitHub {
-          owner = "tobiassvn";
+          owner = "endofunky";
           repo = "inf-mongo";
           rev = "2e498d1c88bd1904eeec18ed06b1a0cf8bdc2a92";
           sha256 = "1m6skisj6r3fbxadpwwgf3a3934b2qvwb7zj975qksxq56ij0wkq";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/be9b27d5354d4b30cc9dd3be730d79e5a5bc1f74/recipes/inf-mongo";
-          sha256 = "09hf3jmacsk4hl0rxk35cza8vjl0xfmv19dagb8h8fli97fb65hh";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/inf-mongo";
+          sha256 = "0f12yb3dgkjnpr4d36jwfnncqzz7kl3bnnrmjw7hv223p2ryzwpx";
           name = "recipe";
         };
         packageRequires = [];
@@ -49775,14 +50453,14 @@
         ename = "inferior-spim";
         version = "20160826.646";
         src = fetchFromGitHub {
-          owner = "hiddenlotus";
+          owner = "kaihaosw";
           repo = "inferior-spim";
           rev = "93f67ee49f1c6899a7efd52ea4e80e9f9da3371c";
           sha256 = "1ffa29clfsr3wb00irzqlazk9d0qmjxn9wy8zfca61lh0ax5khbg";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/d2ce70b5dc05096a6de46069e8d26323d3df78b6/recipes/inferior-spim";
-          sha256 = "1bl29ww55vabgly84wdg18qq1md4vxzvsb6kvxymf6bpw55k313s";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/inferior-spim";
+          sha256 = "0p0g8diqijxpgr21890lnmzkyl74sv42ddgpfpv51b9fwnqky524";
           name = "recipe";
         };
         packageRequires = [];
@@ -50336,12 +51014,12 @@
       melpaBuild {
         pname = "intero";
         ename = "intero";
-        version = "20180703.18";
+        version = "20180806.1445";
         src = fetchFromGitHub {
           owner = "commercialhaskell";
           repo = "intero";
-          rev = "60e2e3f76f647b20d9de8418f9576ea157e21864";
-          sha256 = "0srim6q3p749xpqp28c6zfxf0aj0d87jdc1smn62wc37fxkf1wgq";
+          rev = "0eec1536a0b051d1628895205c273d498385c7a7";
+          sha256 = "0cr9z1inn8sjqs6lh5shwfdxqkvrr52fjmrs4y5fi9s96hmyx07l";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1b56ca344ad944e03b669a9974e9b734b5b445bb/recipes/intero";
@@ -50619,12 +51297,12 @@
       melpaBuild {
         pname = "ipython-shell-send";
         ename = "ipython-shell-send";
-        version = "20171212.318";
+        version = "20180909.2146";
         src = fetchFromGitHub {
           owner = "jackkamm";
           repo = "ipython-shell-send-el";
-          rev = "36523a387c15ee1652a5b0e291d4d4838da5e912";
-          sha256 = "1iba7jpagc0n436pbylpcbwbdxk6bw7y0i7pjgxxwfm8akaj9i68";
+          rev = "ff944b436db381e6772a26c09b0b20a097eb323e";
+          sha256 = "14s6hxnkv7r3idzj7s6vnvifpc8prykzpm6nhb6149yymal4hjkc";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/9d3513d38f94de4d86124b5d5a33be8d5f0bfa43/recipes/ipython-shell-send";
@@ -50869,6 +51547,32 @@
           license = lib.licenses.free;
         };
       }) {};
+    isolate = callPackage ({ emacs
+                           , fetchFromGitHub
+                           , fetchurl
+                           , lib
+                           , melpaBuild }:
+      melpaBuild {
+        pname = "isolate";
+        ename = "isolate";
+        version = "20180902.1237";
+        src = fetchFromGitHub {
+          owner = "casouri";
+          repo = "isolate";
+          rev = "ec44bcb44d0332111d76d697deb6699c4ab2a91d";
+          sha256 = "1f6dfj974ss0wy78phkjkk8h81qf5lqdnijfrmlk1cf2i2wj5sf3";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/c8091f8d72c24a103f6dcaadc18bbec745c1c3d3/recipes/isolate";
+          sha256 = "1ldyvw01nq2ynxaaqmw9ihk9kwfss9rqpaydn9f41bqj15xrypjc";
+          name = "recipe";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/isolate";
+          license = lib.licenses.free;
+        };
+      }) {};
     isortify = callPackage ({ emacs
                             , fetchFromGitHub
                             , fetchurl
@@ -51088,12 +51792,12 @@
       melpaBuild {
         pname = "ivy";
         ename = "ivy";
-        version = "20180719.1037";
+        version = "20180911.1001";
         src = fetchFromGitHub {
           owner = "abo-abo";
           repo = "swiper";
-          rev = "31e18fd15780c5f6eedbe3d6a14f86aade673d01";
-          sha256 = "0xv9ddgq218xy68bbf7d8l243g932viwlqmlk04jmalk3qyv4hj9";
+          rev = "41bd2486b174f0feff953722d3203a086d8e537e";
+          sha256 = "0jgxi3vznfj7apzp8w74blmnfj0rhhisz3h823r6rg1zj8c31gy3";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/06c24112a5e17c423a4d92607356b25eb90a9a7b/recipes/ivy";
@@ -51120,12 +51824,12 @@
       melpaBuild {
         pname = "ivy-bibtex";
         ename = "ivy-bibtex";
-        version = "20180612.619";
+        version = "20180826.848";
         src = fetchFromGitHub {
           owner = "tmalsburg";
           repo = "helm-bibtex";
-          rev = "21f802aaf5b78dec18b72601dd8276c5244e39f5";
-          sha256 = "13jg728v8k227p68ngiwknlygzqdvasg6n9ax1a2xgjbx3di12vv";
+          rev = "b1a4f7d7c0dd3a258ee9f5cdc22b9a7847a2c4c6";
+          sha256 = "1mmm10jb6gng6s7fnkm96sz5pwfiiwqsi1lydi7g939pgl1rhbp6";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/c23c09225c57a9b9abe0a0a770a9184ae2e58f7c/recipes/ivy-bibtex";
@@ -51456,12 +52160,12 @@
       melpaBuild {
         pname = "ivy-posframe";
         ename = "ivy-posframe";
-        version = "20180707.2016";
+        version = "20180817.2124";
         src = fetchFromGitHub {
           owner = "tumashu";
           repo = "ivy-posframe";
-          rev = "ff2578a044dbe3ba5711ed727cc778b5aa108676";
-          sha256 = "0nphklyn3czr5zvdl5m31fc3sc80mn0izdmmxnq9cj7hz8fc61ch";
+          rev = "b92aaa1c4695e2c6012cdbc1469b89e8c0dac4c2";
+          sha256 = "0hng52hcarpxry99cppl5sysf13rv536n22fqj8myh1b1657186a";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/9e7c6f7ca439683abf11dcaa38672ac139c0da4f/recipes/ivy-posframe";
@@ -51484,12 +52188,12 @@
       melpaBuild {
         pname = "ivy-prescient";
         ename = "ivy-prescient";
-        version = "20180716.907";
+        version = "20180823.1838";
         src = fetchFromGitHub {
           owner = "raxod502";
           repo = "prescient.el";
-          rev = "a1464272d62f4054c314d1a3196f7b7673325752";
-          sha256 = "1w6xbyrk48mdv7iyspqkjv7ppp4r8rf1dispk08p8qig2d9crvl7";
+          rev = "1e0db9451e75f0db29668bebe98dfa747c6b4bcf";
+          sha256 = "0zm9phc4cv7ldgyngcj84fxc1j0nh12c05lxiwv0n1xb8wc6awvf";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/a92495d09689932ab9f0b716078ceeeb9cc154e0/recipes/ivy-prescient";
@@ -51539,12 +52243,12 @@
       melpaBuild {
         pname = "ivy-rich";
         ename = "ivy-rich";
-        version = "20180704.1845";
+        version = "20180826.2356";
         src = fetchFromGitHub {
           owner = "yevgnen";
           repo = "ivy-rich";
-          rev = "6575eb27510e841607b9e8cea87998a50fbc7be7";
-          sha256 = "0agnpkkwvhf3g0cpl1c8p5dj4cnlg3890pg73p4rvrv2i27ni2h4";
+          rev = "b40a76d5c2c29fcc035daa04a7125ffadbedc471";
+          sha256 = "0ayf3dwfhafcbqnckm65zy8nc1rv9ji939qfn53wbhxkrgqdicgz";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/0fc297f4949e8040d1b0b3271c9a70c64887b960/recipes/ivy-rich";
@@ -51601,8 +52305,8 @@
           sha256 = "07208qdk1a77dgh9qmpn164x5mgkzvprsdvb7y35ax12r2q541b8";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/97909da7899d4187e8eb6b3284f6225ebec7fa51/recipes/ivy-todo";
-          sha256 = "12sfg2rbnk73a34ap94g4g70gx13llcgsrmfdrgrzk83a2274a2r";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/e608f40d00a3b2a80a6997da00e7d04f76d8ef0d/recipes/ivy-todo";
+          sha256 = "06mn430zkisnqrmad81gn88pl7lz0m8rm1yvpngpakwwnhwm0q96";
           name = "recipe";
         };
         packageRequires = [ emacs ivy ];
@@ -51647,12 +52351,12 @@
       melpaBuild {
         pname = "ivy-xref";
         ename = "ivy-xref";
-        version = "20180701.2117";
+        version = "20180821.511";
         src = fetchFromGitHub {
           owner = "alexmurray";
           repo = "ivy-xref";
-          rev = "f8ab1eeab05f025a97ddf2f239862db14e3430e9";
-          sha256 = "0k6v3iamdchwnlpr1vbw1wjzc8hr2745qpvmwa74rsqgbj79p9pg";
+          rev = "61864f82e554121be0a26ba0a1d8f48b669dd5f0";
+          sha256 = "0cgl8lzw0rzswqsl8wk6b39bm2781mwvz3qwm06r2n3kjy7c79b4";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/a4cd8724e8a4119b61950a97b88219bf56ce3945/recipes/ivy-xref";
@@ -51665,7 +52369,8 @@
           license = lib.licenses.free;
         };
       }) {};
-    ivy-yasnippet = callPackage ({ dash
+    ivy-yasnippet = callPackage ({ cl-lib ? null
+                                 , dash
                                  , emacs
                                  , fetchFromGitHub
                                  , fetchurl
@@ -51676,24 +52381,53 @@
       melpaBuild {
         pname = "ivy-yasnippet";
         ename = "ivy-yasnippet";
-        version = "20180620.2336";
+        version = "20180831.915";
         src = fetchFromGitHub {
           owner = "mkcms";
           repo = "ivy-yasnippet";
-          rev = "817c52a0f74dcd156c7f8c6433dfb6b32753428a";
-          sha256 = "1qx71alaj3bzis6qd3vs9jg52lkr871830rbpgxy1s7ks6qj79yd";
+          rev = "1d4ac765f5376263fa25b595b9cd7dcfb999cc52";
+          sha256 = "1850a0x64qc0kwc2qp1pb3v8l6dvdkyyzw1v01hfp3jnx3gxkw17";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/8c76857d716afab46f5efe46e353935921d5f217/recipes/ivy-yasnippet";
           sha256 = "180q6hrsnkssbf9x9bj74dyy26kym4akbsjlj81x4193nnmc5w67";
           name = "recipe";
         };
-        packageRequires = [ dash emacs ivy yasnippet ];
+        packageRequires = [ cl-lib dash emacs ivy yasnippet ];
         meta = {
           homepage = "https://melpa.org/#/ivy-yasnippet";
           license = lib.licenses.free;
         };
       }) {};
+    ivy-ycmd = callPackage ({ dash
+                            , emacs
+                            , fetchFromGitHub
+                            , fetchurl
+                            , ivy
+                            , lib
+                            , melpaBuild
+                            , ycmd }:
+      melpaBuild {
+        pname = "ivy-ycmd";
+        ename = "ivy-ycmd";
+        version = "20180909.525";
+        src = fetchFromGitHub {
+          owner = "abingham";
+          repo = "emacs-ivy-ycmd";
+          rev = "25bfee8f676e4ecbb645e4f30b47083410a00c58";
+          sha256 = "1ywrkx8ddncy4qhv5gh4qf1cpapyvny42i51p91j9ip7xmihy6lm";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/22e925d1b66f53d25eb1b3a2746dea82e8555783/recipes/ivy-ycmd";
+          sha256 = "0vlf75qv9m84gx83rxz0acnlx5lspq92d94q82ba2p4cc6yjyvj3";
+          name = "recipe";
+        };
+        packageRequires = [ dash emacs ivy ycmd ];
+        meta = {
+          homepage = "https://melpa.org/#/ivy-ycmd";
+          license = lib.licenses.free;
+        };
+      }) {};
     ivy-youtube = callPackage ({ cl-lib ? null
                                , fetchFromGitHub
                                , fetchurl
@@ -52297,12 +53031,12 @@
       melpaBuild {
         pname = "jdee";
         ename = "jdee";
-        version = "20180711.1336";
+        version = "20180831.800";
         src = fetchFromGitHub {
           owner = "jdee-emacs";
           repo = "jdee";
-          rev = "9192578df89dc92c88a7faf71d8aaf4f60bcb84c";
-          sha256 = "0ahpygiw7ik82y75khhhr8d81883cpnld10xdcarzj0mblhi3vqf";
+          rev = "8451b811b11d8cb428bafab31752e93180a3c724";
+          sha256 = "08rjr1lr1hq47bpc6iy1ib24vky9zlpj9q5gdvb6cd4zzvlm2qw7";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/a6d2c98f3bf2075e33d95c7befe205df802e798d/recipes/jdee";
@@ -52807,12 +53541,12 @@
       melpaBuild {
         pname = "js-auto-format-mode";
         ename = "js-auto-format-mode";
-        version = "20180123.830";
+        version = "20180807.652";
         src = fetchFromGitHub {
           owner = "ybiquitous";
           repo = "js-auto-format-mode";
-          rev = "1558fb539e0beb7f98901280d695968a2351384d";
-          sha256 = "16l2mjklazmfpdin3vz3ddf083phhyrhi18n0rfhv5rwh9m23wr9";
+          rev = "59caa137c4beec4dec4a7d7ebf8bcb6af44d72f0";
+          sha256 = "10xxg8lc4g9wdl4lz7kx6la23agpbq4ls1mn5d4y364j8nfcxf9g";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/2d3be16771b5b5fde639da3ee97890620354ee7a/recipes/js-auto-format-mode";
@@ -52940,12 +53674,12 @@
       melpaBuild {
         pname = "js-import";
         ename = "js-import";
-        version = "20170115.853";
+        version = "20180817.356";
         src = fetchFromGitHub {
           owner = "jakoblind";
           repo = "js-import";
-          rev = "7b1b7c963e3df9c76ed6cfb66c908c80775c6cfb";
-          sha256 = "03a13bcipk32hdvh5bm2z8kxs4b2xp3r1phwxmvb49lxx6417bs9";
+          rev = "c98e74a0b43d6ccb8764cf572cdde95ca27f5633";
+          sha256 = "1qhigx8lgp044348wr8lwidbn0xcs4j7jrm8qjva5zryjvbxy881";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/js-import";
@@ -53020,12 +53754,12 @@
       melpaBuild {
         pname = "js2-mode";
         ename = "js2-mode";
-        version = "20180627.744";
+        version = "20180724.101";
         src = fetchFromGitHub {
           owner = "mooz";
           repo = "js2-mode";
-          rev = "3bea9ab39b6c0b6dd442d69fe53183c1f7652284";
-          sha256 = "039ffsqc40ydg4ma4ycvw76rxa6s8g54dbvcm8fyypkb8ibn7yn6";
+          rev = "2ed3cc070c7819556c9c89826b0f5c4629b104ef";
+          sha256 = "08168z2figb7x99jwixmzrqcdi7iv7c1x1w8gf1k082c4yf5qlmg";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/cae2ac3513e371a256be0f1a7468e38e686c2487/recipes/js2-mode";
@@ -53285,12 +54019,12 @@
       melpaBuild {
         pname = "jsonnet-mode";
         ename = "jsonnet-mode";
-        version = "20180310.2256";
+        version = "20180822.919";
         src = fetchFromGitHub {
           owner = "mgyucht";
           repo = "jsonnet-mode";
-          rev = "4eb52cff8ce6020f5a6309a1c0465b5cdd6c698e";
-          sha256 = "0l9q6g00yxz5j1hchd2vim33n39zshv7qmmga1zf8qcn20yxz7mm";
+          rev = "0d68681d501fd57ebde5ed4fe100033a5d3aafa8";
+          sha256 = "1r54fhmrcr9nrmiwrz10y2fyx0cvvb5mcmb3g0iypwpbg86vklv4";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/ba17372732723f73e8eeb6e7c47abc0edeb20da4/recipes/jsonnet-mode";
@@ -53345,14 +54079,14 @@
         ename = "jst";
         version = "20150604.438";
         src = fetchFromGitHub {
-          owner = "cheunghy";
+          owner = "zhangkaiyulw";
           repo = "jst-mode";
           rev = "865ff97449a4cbbcb40d38b4908cf4d7b22a5108";
           sha256 = "066ql5czrzikznlx7vww6m8h0pfkixfm8qnydfwpfndcqq6ypd90";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/85d7aec81b7b8ff3721fd577cbdc10ed2288f76d/recipes/jst";
-          sha256 = "0hp1f7p6m1gfv1a3plavzkzn87dllb5g2xrgg3mch4qsgdbqx65i";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/jst";
+          sha256 = "1kxf8ckhsh0sgc4xqkkyh7ghk17farqqz35ibvmyrkl9s19ydj1q";
           name = "recipe";
         };
         packageRequires = [ dash emacs f pcache s ];
@@ -53417,16 +54151,16 @@
       melpaBuild {
         pname = "julia-mode";
         ename = "julia-mode";
-        version = "20171116.642";
+        version = "20180816.1417";
         src = fetchFromGitHub {
-          owner = "JuliaLang";
+          owner = "JuliaEditorSupport";
           repo = "julia-emacs";
-          rev = "2ef6992125a85674532a1e37dacd5c60bee4feeb";
-          sha256 = "0vjsaws0rqrkv1mqxwf9lp8qmaq92piippybsf4ncizxwbnh8x6d";
+          rev = "ec01995f60486480cf2240bbd3b9a2ff3fa9e0f0";
+          sha256 = "18lgdr07mllxmjrqyzx9z2js9ajj4pfz407r1ph6fjliyv2c61p5";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/8522d197cb1b2c139959e7189765001c5ee7e61a/recipes/julia-mode";
-          sha256 = "0m49v67fs5yq0q3lwkcfmrzsjdzi1qrkfjyvjcdwnfmp29w14kq6";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/julia-mode";
+          sha256 = "1f26j3nxspwrvnsk3kmam8rw4jwikwmi9a5zwsx9aa1rrasg58w3";
           name = "recipe";
         };
         packageRequires = [];
@@ -53443,12 +54177,12 @@
       melpaBuild {
         pname = "julia-repl";
         ename = "julia-repl";
-        version = "20171116.46";
+        version = "20180910.141";
         src = fetchFromGitHub {
           owner = "tpapp";
           repo = "julia-repl";
-          rev = "f808a12e7ebe403f82036899c2dace640be73154";
-          sha256 = "1lh4pbxrnld205ga58036jwnxkmgabdd8hyr6g7fahw94llq2cpa";
+          rev = "06678ed0cb07807f6cb153c6b0997edc6a18f22c";
+          sha256 = "1z03pgmfs8r9rwd8yhbb71fkl2lhr8i5ajs7n5gg1syrhnlj89ml";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/9a2a494969a9caf2f4513b12504379c9685047dc/recipes/julia-repl";
@@ -53888,12 +54622,12 @@
       melpaBuild {
         pname = "kaolin-themes";
         ename = "kaolin-themes";
-        version = "20180722.1037";
+        version = "20180915.16";
         src = fetchFromGitHub {
           owner = "ogdenwebb";
           repo = "emacs-kaolin-themes";
-          rev = "8d0d8513541c293646aaff886d1fb81621d3cf45";
-          sha256 = "00bn5wr4wvdn4nn1minlqnbj57rdb8biv4w9bmkgipsmkr27zaxz";
+          rev = "a6b22fd71c539f6c13c7e261ead25961a1f297b4";
+          sha256 = "1x4cwakxs971pdj9s13g1nwwb16fkkc9wdm93igymk8wplfwl8m1";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/043a4e3bd5301ef8f4df2cbda0b3f4111eb399e4/recipes/kaolin-themes";
@@ -53933,6 +54667,34 @@
           license = lib.licenses.free;
         };
       }) {};
+    kapacitor = callPackage ({ emacs
+                             , fetchFromGitHub
+                             , fetchurl
+                             , lib
+                             , magit
+                             , magit-popup
+                             , melpaBuild }:
+      melpaBuild {
+        pname = "kapacitor";
+        ename = "kapacitor";
+        version = "20180909.2142";
+        src = fetchFromGitHub {
+          owner = "Manoj321";
+          repo = "kapacitor-el";
+          rev = "b0e95f98b965f215be6ead14779949d5cf358ea5";
+          sha256 = "0ahi9ar32kwf7cinxp29c3yhjfibg509pvxv5s0gn31szdqq216p";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/db1f8cfcda2fa2b9be74a6cd9f95608e8b3f50bb/recipes/kapacitor";
+          sha256 = "108b3y71p7s3lcwbqxp7hy2l304yj4hxm2nq8iv7ljr8av1q7kn6";
+          name = "recipe";
+        };
+        packageRequires = [ emacs magit magit-popup ];
+        meta = {
+          homepage = "https://melpa.org/#/kapacitor";
+          license = lib.licenses.free;
+        };
+      }) {};
     karma = callPackage ({ emacs
                          , fetchFromGitHub
                          , fetchurl
@@ -54265,6 +55027,32 @@
           license = lib.licenses.free;
         };
       }) {};
+    keypress-multi-event = callPackage ({ emacs
+                                        , fetchFromGitHub
+                                        , fetchurl
+                                        , lib
+                                        , melpaBuild }:
+      melpaBuild {
+        pname = "keypress-multi-event";
+        ename = "keypress-multi-event";
+        version = "20180817.153";
+        src = fetchFromGitHub {
+          owner = "Boruch-Baum";
+          repo = "emacs-keypress-multi-event";
+          rev = "64e3037fa4520b6bca2141f1217d3fa988e01a91";
+          sha256 = "0ppkmbk9i7h038x577v2j67y37c7jlwssay80rv83hl4lwb5ayvb";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/fd02baaf1d49d55b066695d8fa9887c454bb1750/recipes/keypress-multi-event";
+          sha256 = "07va7w6vgjf6jqrfzpsq8732b8aka07g29h661yh1xn4x6464hyp";
+          name = "recipe";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/keypress-multi-event";
+          license = lib.licenses.free;
+        };
+      }) {};
     keyset = callPackage ({ cl-lib ? null
                           , dash
                           , fetchFromGitHub
@@ -54666,12 +55454,12 @@
       melpaBuild {
         pname = "kodi-remote";
         ename = "kodi-remote";
-        version = "20180609.1654";
+        version = "20180820.15";
         src = fetchFromGitHub {
           owner = "spiderbit";
           repo = "kodi-remote.el";
-          rev = "bca7250bb69e09c1a9829e15ef4aed1f486777eb";
-          sha256 = "1d67gvhkvcdii2nj0ngh5lnvv1y3iw1ccl70lmi39srz5p2hjw59";
+          rev = "e2df2b6032255a6dc4292e95992e72f579262aaf";
+          sha256 = "10s40dbyhhw44y0163wlrb0pb4qwnh9rkbfcqkvjk7x265b786nm";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/08f06dd824e67250afafdecc25128ba794ca971f/recipes/kodi-remote";
@@ -54846,14 +55634,14 @@
         ename = "kroman";
         version = "20150827.1640";
         src = fetchFromGitHub {
-          owner = "cheunghy";
+          owner = "zhangkaiyulw";
           repo = "kroman-el";
           rev = "431144a3cd629a2812a668a29ad85182368dc9b0";
           sha256 = "0miywc3vfqi3hjb7lk8baz1y2nbp9phjjxclqriyqra4gw4n0vhc";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/07ff16db526dce9d720a858aa14010f297bf31a6/recipes/kroman";
-          sha256 = "0y9ji3c8kndrz605n7b4w5xq0qp093d61hxwhblm3qrh3370mws7";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/kroman";
+          sha256 = "0rcy3343pmlqzqzhmz2c3r0b44pn8fsyp39mvn9nmdnaxsn6q3k8";
           name = "recipe";
         };
         packageRequires = [];
@@ -55072,6 +55860,32 @@
           license = lib.licenses.free;
         };
       }) {};
+    lammps-mode = callPackage ({ emacs
+                               , fetchFromGitHub
+                               , fetchurl
+                               , lib
+                               , melpaBuild }:
+      melpaBuild {
+        pname = "lammps-mode";
+        ename = "lammps-mode";
+        version = "20180801.619";
+        src = fetchFromGitHub {
+          owner = "HaoZeke";
+          repo = "lammps-mode";
+          rev = "a5b68d7a59975770b56ee8f6e66fa4f703a72ffe";
+          sha256 = "1ma33bszv7d6am47n5r74ja4ks7n46m8xfkkr3vcqymlfhbdpq73";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/8f5471a8e17977c17ad84b12a77fe80f37eda25e/recipes/lammps-mode";
+          sha256 = "06i48pxp9vq4z7hffna0cndr6iblapim169659pmhidbc4pp7bm4";
+          name = "recipe";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/lammps-mode";
+          license = lib.licenses.free;
+        };
+      }) {};
     lang-refactor-perl = callPackage ({ fetchFromGitHub
                                       , fetchurl
                                       , lib
@@ -55494,12 +56308,12 @@
       melpaBuild {
         pname = "lcr";
         ename = "lcr";
-        version = "20180414.1256";
+        version = "20180902.1219";
         src = fetchFromGitHub {
           owner = "jyp";
           repo = "lcr";
-          rev = "49a59d80a4b55cc421cb55430ff8258887382c3d";
-          sha256 = "1fds0s0if9m155v5hk5l0ihc6wr331qif5bc013w04hrlkn4v5jh";
+          rev = "c14f40692292d59156c7632dbdd2867c086aa75f";
+          sha256 = "0mc55icihxqpf8b05990q1lc2nj2792wcgyr73xsiqx0963sjaj8";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/29374d3da932675b7b3e28ab8906690dad9c9cbe/recipes/lcr";
@@ -55525,12 +56339,12 @@
       melpaBuild {
         pname = "lean-mode";
         ename = "lean-mode";
-        version = "20180712.57";
+        version = "20180906.945";
         src = fetchFromGitHub {
           owner = "leanprover";
           repo = "lean-mode";
-          rev = "529b8fa535cfa090a6b62566794161556ffade80";
-          sha256 = "0gqwc65m42kkal390a7qx1r5b9ixsbg6avn8s35n5r1qf2w0qx5p";
+          rev = "a9912c73387aa69183e12e4a5335128a7965c420";
+          sha256 = "1w0cmircqnbi0qyi6sl3nnshjy2fdgaav88lj30g3qmnyiac1dnz";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/42f4d6438c8aeb94ebc1782f2f5e2abd17f0ffde/recipes/lean-mode";
@@ -55583,12 +56397,12 @@
       melpaBuild {
         pname = "ledger-mode";
         ename = "ledger-mode";
-        version = "20180705.138";
+        version = "20180825.1943";
         src = fetchFromGitHub {
           owner = "ledger";
           repo = "ledger-mode";
-          rev = "ac93ac5c36dd66fc97417697d92688c5e2570024";
-          sha256 = "0yhr1d40wk2h514p6rjpnhvdxwjdbmr3bkh1wnc6pafpcryhydi1";
+          rev = "b0e31e8788dac15c7eed855e5c92ad3d2b45c114";
+          sha256 = "0163m5rwzvny769df5zq03cnv2ma39vxmsaf11hs24il02b11w99";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1549048b6f57fbe9d1f7fcda74b78a7294327b7b/recipes/ledger-mode";
@@ -56193,6 +57007,31 @@
           license = lib.licenses.free;
         };
       }) {};
+    linguistic = callPackage ({ fetchFromGitHub
+                              , fetchurl
+                              , lib
+                              , melpaBuild }:
+      melpaBuild {
+        pname = "linguistic";
+        ename = "linguistic";
+        version = "20180902.631";
+        src = fetchFromGitHub {
+          owner = "andcarnivorous";
+          repo = "linguistic";
+          rev = "b1c586fa71f20a8de5e6062592862641b7970c04";
+          sha256 = "17gl4yrr7fzcmgkidyn4lvs88w715z4zn8v04qw3ix7c0qvbsq50";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/aedc03a846b873edf2426c422abb8c75732158f8/recipes/linguistic";
+          sha256 = "0yhyrr7yknvky6fb6js0lfxbl13i6a218kya7cpj2dpzdckcbhca";
+          name = "recipe";
+        };
+        packageRequires = [];
+        meta = {
+          homepage = "https://melpa.org/#/linguistic";
+          license = lib.licenses.free;
+        };
+      }) {};
     link = callPackage ({ fetchFromGitHub
                         , fetchurl
                         , lib
@@ -56449,12 +57288,12 @@
       melpaBuild {
         pname = "lispy";
         ename = "lispy";
-        version = "20180716.839";
+        version = "20180914.1138";
         src = fetchFromGitHub {
           owner = "abo-abo";
           repo = "lispy";
-          rev = "a8b0e0afb73b7687cae370fc84384db65bd73fca";
-          sha256 = "0y9k91gabgab7fwml4grhna2vzfwbxl9l1n58f5nl9xhia6zfqzi";
+          rev = "bc025d9710beaa5bd0341cbb285e8352470db943";
+          sha256 = "1nk4pwg772lhp5z6sy5lgcd7qm4p5kp6lmff1pya7pg6xcqnwvdd";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/e23c062ff32d7aeae486c01e29c56a74727dcf1d/recipes/lispy";
@@ -56791,12 +57630,12 @@
       melpaBuild {
         pname = "live-code-talks";
         ename = "live-code-talks";
-        version = "20150115.1423";
+        version = "20180907.947";
         src = fetchFromGitHub {
           owner = "david-christiansen";
           repo = "live-code-talks";
-          rev = "fece58108939a53104f88d348298c9e122f25b75";
-          sha256 = "1j0qa96vlsqybhp0082a466qb1hd2b0621306brl9pfl5srf5jsj";
+          rev = "97f16a9ee4e6ff3e0f9291eaead772c66e3e12ae";
+          sha256 = "1clcm1yps38wdyj415hh7bl20fcpfin92hh5njsldqbvgcpndaqi";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/live-code-talks";
@@ -56817,12 +57656,12 @@
       melpaBuild {
         pname = "live-py-mode";
         ename = "live-py-mode";
-        version = "20180330.1758";
+        version = "20180811.1120";
         src = fetchFromGitHub {
           owner = "donkirkby";
           repo = "live-py-plugin";
-          rev = "ab2f9bea32dbad11a6464a4880e5487645a0f65a";
-          sha256 = "0w3kpszsrh0gj0a62iqhnhm3flmmgq0pl0d6w5r61mvlq9wck5dv";
+          rev = "efd9bba8a40448cccfcb745a84d479cb5275122b";
+          sha256 = "0va4cirxwv0k9q74ac313pvxvnkvqpp6zqxwscpx4v6hp1gw7wvw";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/c7615237e80b46b5c50cb51a3ed5b07d92566fb7/recipes/live-py-mode";
@@ -57320,6 +58159,7 @@
       }) {};
     logview = callPackage ({ datetime
                            , emacs
+                           , extmap
                            , fetchFromGitHub
                            , fetchurl
                            , lib
@@ -57327,19 +58167,19 @@
       melpaBuild {
         pname = "logview";
         ename = "logview";
-        version = "20180522.1054";
+        version = "20180913.1037";
         src = fetchFromGitHub {
           owner = "doublep";
           repo = "logview";
-          rev = "902c881f5e1ca802761b856b3945bd418847dd79";
-          sha256 = "1df41wabldg1ahcbqi5szwml5hqdjm6p3hj5b8ajkkagykrnh8xg";
+          rev = "6a45a358635dccc5eb970722f14444415e40e832";
+          sha256 = "0fd79ig5fha207959qr9hib0b4l7wlg7sis03zbhx944xqr8mrv9";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1df3c11ed7738f32e6ae457647e62847701c8b19/recipes/logview";
           sha256 = "0gks3j5avx8k3427a36lv7gr95id3cylaamgn5qwbg14s54y0vsh";
           name = "recipe";
         };
-        packageRequires = [ datetime emacs ];
+        packageRequires = [ datetime emacs extmap ];
         meta = {
           homepage = "https://melpa.org/#/logview";
           license = lib.licenses.free;
@@ -57497,6 +58337,60 @@
           license = lib.licenses.free;
         };
       }) {};
+    lsp-clangd = callPackage ({ emacs
+                              , fetchFromGitHub
+                              , fetchurl
+                              , lib
+                              , lsp-mode
+                              , melpaBuild }:
+      melpaBuild {
+        pname = "lsp-clangd";
+        ename = "lsp-clangd";
+        version = "20180828.957";
+        src = fetchFromGitHub {
+          owner = "emacs-lsp";
+          repo = "lsp-clangd";
+          rev = "37ca521483e3ce5b63b97672916368dbf4566a67";
+          sha256 = "1km0jphg3zhy8cf127jh819yc5vx88xifml9ic5xidzmy26gq6s1";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/71646b47e5f5702e80bf6c56f882d041074ef3c0/recipes/lsp-clangd";
+          sha256 = "05dmzyb9xw2m4kck7y3cj8dm2542p3vi48lqs21gcrvm5vbrkx3g";
+          name = "recipe";
+        };
+        packageRequires = [ emacs lsp-mode ];
+        meta = {
+          homepage = "https://melpa.org/#/lsp-clangd";
+          license = lib.licenses.free;
+        };
+      }) {};
+    lsp-css = callPackage ({ emacs
+                           , fetchFromGitHub
+                           , fetchurl
+                           , lib
+                           , lsp-mode
+                           , melpaBuild }:
+      melpaBuild {
+        pname = "lsp-css";
+        ename = "lsp-css";
+        version = "20180627.1251";
+        src = fetchFromGitHub {
+          owner = "emacs-lsp";
+          repo = "lsp-css";
+          rev = "1395b48209c5744e19f688ebb5fe8201e5a006df";
+          sha256 = "1h043gmrly820gnx1ccavms1f6xkc2zbdhfm5lbaix45i61z62jm";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/a9d16c625893fce39d1253b101b826ba96e1f26e/recipes/lsp-css";
+          sha256 = "05mm0pshs9jk3ls7mqicq4a5w66fg3mhi73mjx7kp5asqk64fim1";
+          name = "recipe";
+        };
+        packageRequires = [ emacs lsp-mode ];
+        meta = {
+          homepage = "https://melpa.org/#/lsp-css";
+          license = lib.licenses.free;
+        };
+      }) {};
     lsp-go = callPackage ({ fetchFromGitHub
                           , fetchurl
                           , lib
@@ -57505,12 +58399,12 @@
       melpaBuild {
         pname = "lsp-go";
         ename = "lsp-go";
-        version = "20180630.1101";
+        version = "20180913.2215";
         src = fetchFromGitHub {
           owner = "emacs-lsp";
           repo = "lsp-go";
-          rev = "0d354e1682fe1db074a924d7812f6ea62048d73d";
-          sha256 = "0rk1brvy9hmjwykzf3pgli7h5gp3m6ra4yspv0rknbd2drzw4r94";
+          rev = "2327556e78682770a7a434610b08115f20ea5b1a";
+          sha256 = "10n9vrf46rsacsibv9sh5s92lmr3lz7x2lbgxzf5xn1y1vlg02ap";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1a7b69312e688211089a23b75910c05efb507e35/recipes/lsp-go";
@@ -57531,12 +58425,12 @@
       melpaBuild {
         pname = "lsp-hack";
         ename = "lsp-hack";
-        version = "20180703.1837";
+        version = "20180817.1900";
         src = fetchFromGitHub {
           owner = "jra3";
           repo = "lsp-hack";
-          rev = "a3b6725dc7b16246d71a7d4ddbddd0fec1a009eb";
-          sha256 = "1amkdlc0dpxv953f8v7l5i3a54gm6nxrdmrizkgc28plbvcpqdqy";
+          rev = "a7fe82cc598264be3a0a378426a1da2c41ffc140";
+          sha256 = "0kq8p4pdrlggi16hbzkzvi218fps4q955papj9w9vxm55bpfqsiq";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/a70d8442c653554d28dc87425913424ab42ab5c8/recipes/lsp-hack";
@@ -57558,12 +58452,12 @@
       melpaBuild {
         pname = "lsp-haskell";
         ename = "lsp-haskell";
-        version = "20180131.459";
+        version = "20180828.138";
         src = fetchFromGitHub {
           owner = "emacs-lsp";
           repo = "lsp-haskell";
-          rev = "bd7d0a4c3b54dbaa4c89b80f4f0268d717b4dd6f";
-          sha256 = "13dp655kdi6z6s9is0q1qf6yvmfxzv7bjjlhp2f7bjiv2jh5yzyv";
+          rev = "11871b327ddee15da8e80bd3e678d6cee0e95348";
+          sha256 = "08ac95kw7j9fyd7g972ip10g8s24hkn6zac26xd1154p6fca0hxq";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1a7b69312e688211089a23b75910c05efb507e35/recipes/lsp-haskell";
@@ -57611,12 +58505,12 @@
       melpaBuild {
         pname = "lsp-intellij";
         ename = "lsp-intellij";
-        version = "20180621.1131";
+        version = "20180831.1351";
         src = fetchFromGitHub {
           owner = "Ruin0x11";
           repo = "lsp-intellij";
-          rev = "0911f703ac50164a702b6ee213173e763eda3094";
-          sha256 = "1nc4bi6annxd4i94wznh28di3pvq73yvz3g4nhs1l95jczl13rpj";
+          rev = "cf30f0ac63bd0140e758840b8ab070e8313697b2";
+          sha256 = "0ghw2as9fbnfhrr1nbqk97jcl7yb451xpmfbksxh7mvjm3lhmyvz";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/9d72cbb85fe4e0c6bea9a704dc1545f88efa56d2/recipes/lsp-intellij";
@@ -57634,23 +58528,24 @@
                             , fetchurl
                             , lib
                             , lsp-mode
+                            , markdown-mode
                             , melpaBuild }:
       melpaBuild {
         pname = "lsp-java";
         ename = "lsp-java";
-        version = "20180701.111";
+        version = "20180905.2337";
         src = fetchFromGitHub {
           owner = "emacs-lsp";
           repo = "lsp-java";
-          rev = "b3d671ccc264b32492e30f48b4d5a52f6b88145d";
-          sha256 = "17dqz2fmsczl46vq6id9918hxy5b332lncgwzrzjbbpqi3ysa1s3";
+          rev = "17f80c9935a0004e59c2e706de4b91eba45344c8";
+          sha256 = "11ki7mb2pivvmqhn3ya67ph7vz7l3pfa0cqmv6jny12l6iq6awcb";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1a7b69312e688211089a23b75910c05efb507e35/recipes/lsp-java";
           sha256 = "1y5wxggkr7v4a2a3h2n01911gd1xv047dikbvyy1gappf05fdngj";
           name = "recipe";
         };
-        packageRequires = [ emacs lsp-mode ];
+        packageRequires = [ emacs lsp-mode markdown-mode ];
         meta = {
           homepage = "https://melpa.org/#/lsp-java";
           license = lib.licenses.free;
@@ -57666,12 +58561,12 @@
       melpaBuild {
         pname = "lsp-javacomp";
         ename = "lsp-javacomp";
-        version = "20180218.2334";
+        version = "20180904.2251";
         src = fetchFromGitHub {
           owner = "tigersoldier";
           repo = "lsp-javacomp";
-          rev = "4423fc41974e25ddf4a46fb13bd64680d52b420a";
-          sha256 = "1k66h5l52al3glsz261j2lcfl8pddxh55m8slr9p1kaxzr67fl6a";
+          rev = "6a8779417466a67475f4d71a234ab6ae02e404b2";
+          sha256 = "1rq62zq89l705a7nfii86rqhh25xx058s5jzvq20ig4pv7ylip87";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/6b8a1c034554579a7e271409fa72020cfe441f68/recipes/lsp-javacomp";
@@ -57747,12 +58642,12 @@
       melpaBuild {
         pname = "lsp-mode";
         ename = "lsp-mode";
-        version = "20180708.1914";
+        version = "20180911.1129";
         src = fetchFromGitHub {
           owner = "emacs-lsp";
           repo = "lsp-mode";
-          rev = "5ea5c6398a923e24c4fedf6d782004b4dc4cb254";
-          sha256 = "1pn9lnd8r4zl35hqwi00qcsb6v6aj533hbm7faj1d3nndlf2qmbh";
+          rev = "14eac3f677a52063e95bb93d46a968cd967ea010";
+          sha256 = "0inbav1zybyp15lj98fhl6fm9lf8mp49q2bhdcslykmpb2cgdcff";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1a7b69312e688211089a23b75910c05efb507e35/recipes/lsp-mode";
@@ -57792,6 +58687,32 @@
           license = lib.licenses.free;
         };
       }) {};
+    lsp-p4 = callPackage ({ fetchFromGitHub
+                          , fetchurl
+                          , lib
+                          , lsp-mode
+                          , melpaBuild }:
+      melpaBuild {
+        pname = "lsp-p4";
+        ename = "lsp-p4";
+        version = "20180728.1215";
+        src = fetchFromGitHub {
+          owner = "dmakarov";
+          repo = "p4ls";
+          rev = "be807f8bf12bc354d2649c654f853689e3113765";
+          sha256 = "0qhyd39743gb4y7hxznvvq3iikcj5yi145snhfic7l1l7yvbqz97";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/53f0da8b3d2903adeffdbc3d8df7d630bfd9ff71/recipes/lsp-p4";
+          sha256 = "0cd3n17lqwz08zfkm9g5cr1cj2asznlbhxrym2a7b7shdmn3yx5f";
+          name = "recipe";
+        };
+        packageRequires = [ lsp-mode ];
+        meta = {
+          homepage = "https://melpa.org/#/lsp-p4";
+          license = lib.licenses.free;
+        };
+      }) {};
     lsp-php = callPackage ({ emacs
                            , fetchFromGitHub
                            , fetchurl
@@ -57827,12 +58748,12 @@
       melpaBuild {
         pname = "lsp-python";
         ename = "lsp-python";
-        version = "20180609.16";
+        version = "20180816.614";
         src = fetchFromGitHub {
           owner = "emacs-lsp";
           repo = "lsp-python";
-          rev = "28a3ad4e98af5ede860ef4c2fe47048ce676559b";
-          sha256 = "0y8cglfmjn4j1apyjr66vpqln3rzqdkada3ggxlap4iirgb5iqgf";
+          rev = "b97688aa82b41828d3ffb5345c809d1fee88839d";
+          sha256 = "1ic14lvpyga0y66fayvciwb60mrcx7nnppsxl2n9j0pvk6pd5907";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1a7b69312e688211089a23b75910c05efb507e35/recipes/lsp-python";
@@ -57845,6 +58766,33 @@
           license = lib.licenses.free;
         };
       }) {};
+    lsp-ruby = callPackage ({ emacs
+                            , fetchFromGitHub
+                            , fetchurl
+                            , lib
+                            , lsp-mode
+                            , melpaBuild }:
+      melpaBuild {
+        pname = "lsp-ruby";
+        ename = "lsp-ruby";
+        version = "20180910.1221";
+        src = fetchFromGitHub {
+          owner = "emacs-lsp";
+          repo = "lsp-ruby";
+          rev = "8016a714403587f95a9bf6516c2a91a0a880fa2f";
+          sha256 = "00jm2fvvgidxd4vsajhaqw8s9r61smxjfzdshhpqnq1zkfxa7yjc";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/41422dbdee6ecc71a9e4b1520c705a6fd07c9c94/recipes/lsp-ruby";
+          sha256 = "1pmmlbxqzzj8zyqyya1p8v6g5v0kisx00d1c5zqja4sqw2n82glr";
+          name = "recipe";
+        };
+        packageRequires = [ emacs lsp-mode ];
+        meta = {
+          homepage = "https://melpa.org/#/lsp-ruby";
+          license = lib.licenses.free;
+        };
+      }) {};
     lsp-rust = callPackage ({ dash
                             , emacs
                             , fetchFromGitHub
@@ -57885,12 +58833,12 @@
       melpaBuild {
         pname = "lsp-typescript";
         ename = "lsp-typescript";
-        version = "20180614.1311";
+        version = "20180905.2224";
         src = fetchFromGitHub {
           owner = "emacs-lsp";
           repo = "lsp-javascript";
-          rev = "7e7c5f66b02321f402712841064347cb872c41e4";
-          sha256 = "1ilhnbdvfjanv0cjwk289dq1whpf69qzw0hh9ak37gbi4pqvsbdv";
+          rev = "ab62826962887e82f0bc968817be4fc89a6953e4";
+          sha256 = "0fwmclcgl0lv3j2nqw6njxmi4sbgyp508v66d0ymjl419mhlqdrg";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/e7903d6b51132c0d8ad209f13ffe915c1bc5a76d/recipes/lsp-typescript";
@@ -57916,12 +58864,12 @@
       melpaBuild {
         pname = "lsp-ui";
         ename = "lsp-ui";
-        version = "20180618.1951";
+        version = "20180914.2117";
         src = fetchFromGitHub {
           owner = "emacs-lsp";
           repo = "lsp-ui";
-          rev = "bd5970edae874338bd01d0bc50c4671ea4cae390";
-          sha256 = "0s5an922wfias2n0h5jqa2n4mxvrfg6sav470him4dbwqqrgx5ck";
+          rev = "35caa39d8d4776472f4f54ab54c94d2de2532d06";
+          sha256 = "14qgd6z9sharw5x27jv2avfq6mjnvb5lqasiib5ck07b8x9czav8";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1e4fa7cdf71f49f6998b26d81de9522248bc58e6/recipes/lsp-ui";
@@ -58028,12 +58976,12 @@
       melpaBuild {
         pname = "lush-theme";
         ename = "lush-theme";
-        version = "20141107.806";
+        version = "20180816.1500";
         src = fetchFromGitHub {
           owner = "andre-richter";
           repo = "emacs-lush-theme";
-          rev = "fd69cf6e254b329d7997acd37fe04c17139f3435";
-          sha256 = "0gcyxvkpfi1vsa7gyx13rb29x86j2i2nnqldli1sna4v87jw288g";
+          rev = "7cfc993709d712f75c51b505078608c9e1c11466";
+          sha256 = "0v17srm3l8p556d4j5im2bn7brxv7v0g2crlm4gb8x1cwjrbajzf";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/8b29b2f36852e711ce3520d71e83921a1dcb9ccf/recipes/lush-theme";
@@ -58157,12 +59105,12 @@
       melpaBuild {
         pname = "lyrics";
         ename = "lyrics";
-        version = "20180123.2004";
+        version = "20180812.1141";
         src = fetchFromGitHub {
           owner = "emacs-pe";
           repo = "lyrics.el";
-          rev = "fb35b387796f64f48b4daa5a163f4a576210f200";
-          sha256 = "17al49f633h3fsa6aq9v5c1r8dp2gj97f46z1fhmgxbijmpfzs0w";
+          rev = "d0b920be634a5be81ad49418cfaada0f0a57d6cd";
+          sha256 = "0926avnlxi8qkr1faplk1aj4lji0ixa4lv81badi5zsmpyyrwmm7";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/b04c8f3dfa9fc07cc0ff3df5c4069f864b6db92e/recipes/lyrics";
@@ -58412,6 +59360,31 @@
           license = lib.licenses.free;
         };
       }) {};
+    magik-mode = callPackage ({ fetchFromGitHub
+                              , fetchurl
+                              , lib
+                              , melpaBuild }:
+      melpaBuild {
+        pname = "magik-mode";
+        ename = "magik-mode";
+        version = "20180910.1128";
+        src = fetchFromGitHub {
+          owner = "roadrunner1776";
+          repo = "magik";
+          rev = "bd9739e9d7d5bb2e939e4e9ea7f19326bc0a9aaf";
+          sha256 = "1dvh4swnnzjxzswj1inmygaykaivmcnslacpmjvs9warhyr266jk";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/291cce8e8e3475348b446ba38833eb1e37d4db65/recipes/magik-mode";
+          sha256 = "1d6n7mpwavrajcgai6j0y5khhgc4jaag1ig1xx8w04mr48xrjxqk";
+          name = "recipe";
+        };
+        packageRequires = [];
+        meta = {
+          homepage = "https://melpa.org/#/magik-mode";
+          license = lib.licenses.free;
+        };
+      }) {};
     magit = callPackage ({ async
                          , dash
                          , emacs
@@ -58426,12 +59399,12 @@
       melpaBuild {
         pname = "magit";
         ename = "magit";
-        version = "20180720.1712";
+        version = "20180915.659";
         src = fetchFromGitHub {
           owner = "magit";
           repo = "magit";
-          rev = "c5269547ae178f4893a8ec662f71b0e032d4c0fa";
-          sha256 = "1qyyi1pyb1hr66b43ka0sshafizddxgzlbqlnlfncb2rm8fyab0h";
+          rev = "8adbe43554d5a36acf1de6a23f4395bfa82a85e2";
+          sha256 = "1fzil54zra5m12wdg5fxxfn2y8wphc4lvyzm0kmxpa2m9hfaw7p3";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/ac8feccfa0f4eb5bda2ef561a6be66ba145c00e0/recipes/magit";
@@ -58737,12 +59710,12 @@
       melpaBuild {
         pname = "magit-popup";
         ename = "magit-popup";
-        version = "20180618.1602";
+        version = "20180726.1337";
         src = fetchFromGitHub {
           owner = "magit";
           repo = "magit-popup";
-          rev = "e2060ccb3105555f55992a995587221820341b24";
-          sha256 = "1z1xi6mkz1h0vxbhwp1ypn5jpa0a859b296k4ds2j1i18h1lvgad";
+          rev = "6e07f745a18af514c2885eeabe9b2b2a5216e53c";
+          sha256 = "08952nzn0cb6gxscqyiljk4fq2zxjvr3ism0lvgw0gs9hl5phiwx";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/0263ca6aea7bf6eae26a637454affbda6bd106df/recipes/magit-popup";
@@ -58818,12 +59791,12 @@
       melpaBuild {
         pname = "magit-tbdiff";
         ename = "magit-tbdiff";
-        version = "20180527.652";
+        version = "20180912.1946";
         src = fetchFromGitHub {
           owner = "magit";
           repo = "magit-tbdiff";
-          rev = "15af196860defda2554aa16ddc172a55ccf03a0d";
-          sha256 = "0d24y9sj2qzcm5an37yd7s0gxbq5q8p9xlgxyzz60ln30hwnx107";
+          rev = "bbc4d070b3e89511595dc182565004101a1e65e2";
+          sha256 = "16jhk7m3kgdh7hdij9bpli5q4qmdzpy4bcp1xvlpycv6b6k270h6";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/ad97eea866c8732e3adc17551d37a6d1ae511e6c/recipes/magit-tbdiff";
@@ -58836,9 +59809,7 @@
           license = lib.licenses.free;
         };
       }) {};
-    magit-todos = callPackage ({ a
-                               , anaphora
-                               , async
+    magit-todos = callPackage ({ async
                                , dash
                                , emacs
                                , f
@@ -58853,30 +59824,19 @@
       melpaBuild {
         pname = "magit-todos";
         ename = "magit-todos";
-        version = "20180716.2339";
+        version = "20180909.2328";
         src = fetchFromGitHub {
           owner = "alphapapa";
           repo = "magit-todos";
-          rev = "d12e2e3ccad4b87d5df5285ade0c56ec5f46ad63";
-          sha256 = "006yy13hjzalwz7pz0br32zifxlxrrf8cvnz0j3km55sxpdvqmil";
+          rev = "ced8717d61ba66b5310a62e61fb8cf718ea2661c";
+          sha256 = "1bbsi8xavs7hbs88k8qbb98vjwl8dnsmw60pfxxca5hw69rkaij8";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/b4544ab55d2c8b8c3b7eb739b9fb90ebb246d68b/recipes/magit-todos";
           sha256 = "0vqmbw0qj8a5wf4ig9hgc0v3l1agdkvgprzjv178hs00297br2s8";
           name = "recipe";
         };
-        packageRequires = [
-          a
-          anaphora
-          async
-          dash
-          emacs
-          f
-          hl-todo
-          magit
-          pcre2el
-          s
-        ];
+        packageRequires = [ async dash emacs f hl-todo magit pcre2el s ];
         meta = {
           homepage = "https://melpa.org/#/magit-todos";
           license = lib.licenses.free;
@@ -58893,14 +59853,14 @@
         ename = "magit-topgit";
         version = "20160313.1254";
         src = fetchFromGitHub {
-          owner = "magit";
+          owner = "greenrd";
           repo = "magit-topgit";
           rev = "243fdfa7ce62dce4efd01b6b818a2791868db2f0";
           sha256 = "06fbjv3zd92lvg4xjsp9l4jkxx2glhng3ys3s9jmvy5y49pymwb2";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/cec5af50ae7634cc566adfbfdf0f95c3e2951c0c/recipes/magit-topgit";
-          sha256 = "1ngrgf40n1g6ncd5nqgr0zgxwlkmv9k4fik96dgzysgwincx683i";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/magit-topgit";
+          sha256 = "1194hdcphir4cmvzg9cxrjiyg70hr9zmml2rljih94vl7zrw7335";
           name = "recipe";
         };
         packageRequires = [ emacs magit ];
@@ -58922,15 +59882,15 @@
       melpaBuild {
         pname = "magithub";
         ename = "magithub";
-        version = "20180625.2104";
+        version = "20180908.739";
         src = fetchFromGitHub {
           owner = "vermiculus";
           repo = "magithub";
-          rev = "bc318ec9953b919195fbaa980b6873b6af7bed81";
-          sha256 = "1c8sfrahxk8q7jarvxmrwsgdy8xcjhky14vc268jbrrz197yp006";
+          rev = "9be91acd1ecc06cfcfab7912821a08cbf1b1fff2";
+          sha256 = "11w856cnj52zq2640sk5pk5j4n90c4ldpl62f342mjkjvisfzxrd";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/magithub";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/e555b46f5de7591aa8e10a7cf67421e26a676db8/recipes/magithub";
           sha256 = "11par5rncsa866gazdw98d4902rvyjnnwbiwpndlyh06ak0lryab";
           name = "recipe";
         };
@@ -59549,12 +60509,12 @@
       melpaBuild {
         pname = "markdown-mode";
         ename = "markdown-mode";
-        version = "20180707.555";
+        version = "20180904.901";
         src = fetchFromGitHub {
           owner = "jrblevin";
           repo = "markdown-mode";
-          rev = "b92f00d10e2582028d4306d3be8730add58e9fa1";
-          sha256 = "0cwfc4l7rqwa9hgxz73lzm6czjqnif39dkcmacxb2gi9gpxwlxjn";
+          rev = "30ae22215da05c4e02fcc3bfee0317cfec9c8fe5";
+          sha256 = "02p2ivh81pipjqiahw2jchla563rgksdhc7r81nb7p522ma5463v";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/74610ec93d4478e835f8b3b446279efc0c71d644/recipes/markdown-mode";
@@ -59852,12 +60812,12 @@
       melpaBuild {
         pname = "mastodon";
         ename = "mastodon";
-        version = "20180305.1909";
+        version = "20180810.1920";
         src = fetchFromGitHub {
           owner = "jdenen";
           repo = "mastodon.el";
-          rev = "ae8dabda04e377a6ac22cb854e4844f68073f533";
-          sha256 = "1avf2wkzd14dj27i9skm3mn3ipkr1zp93yrwxrk2q5kphj1qji2j";
+          rev = "e4482232a5bb2a3036664eba598bf12506fe0b6e";
+          sha256 = "07fq3k62j9cz1567i2x11q1j9pwybb7qxwcilnnrphf4aibgq6kn";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/809d963b69b154325faaf61e54ca87b94c1c9a90/recipes/mastodon";
@@ -60056,12 +61016,12 @@
       melpaBuild {
         pname = "mb-url";
         ename = "mb-url";
-        version = "20161224.1806";
+        version = "20180906.1901";
         src = fetchFromGitHub {
           owner = "dochang";
           repo = "mb-url";
-          rev = "129a0bb6a684be76fb9f09010e710065d0e5baaa";
-          sha256 = "1apy7abjhdbgh8001rzv41q40bfl444rcz62lvgdwj3lg45zb8xc";
+          rev = "aa13abfc6231076a53b8a9903c9804443960d589";
+          sha256 = "17qlx1n2vxc5dhvjiw6nl9n74ansbra6hzazcxx0xrz5vx0ssh1i";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/dd9a8ff6e094b061a7b9d790df1fd4086c5d0a9d/recipes/mb-url";
@@ -60271,12 +61231,12 @@
       melpaBuild {
         pname = "meghanada";
         ename = "meghanada";
-        version = "20180717.1810";
+        version = "20180909.1931";
         src = fetchFromGitHub {
           owner = "mopemope";
           repo = "meghanada-emacs";
-          rev = "1fe888ad929f0ebed9a8cde7bb0a605881e1386c";
-          sha256 = "1b7cri71fikvyxcc6q9rci1zc4q45a1bvz00ks7gvx6w2sd7h5gd";
+          rev = "59568a4b32373d2ae7917673896369a922375a3e";
+          sha256 = "12sswa3fyf0pgawfz6ak9xc97da3bnv1qng2apw42gwg5yc0qlq4";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/4c75c69b2f00be9a93144f632738272c1e375785/recipes/meghanada";
@@ -60455,14 +61415,14 @@
         ename = "merlin";
         version = "20180214.242";
         src = fetchFromGitHub {
-          owner = "the-lambda-church";
+          owner = "ocaml";
           repo = "merlin";
           rev = "0a14a7df44cd8f5cea7928f3097b5bb5257cb61d";
           sha256 = "145r8bhvkar0fwajsg4msyg40na8ii0xbrwbi9b81cx1g17k5c7k";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/b1b9bfd3164e62758dc0a3362d85c6627ed7cbf8/recipes/merlin";
-          sha256 = "177cy9xcrjckxv8gvi1zhg2ndfr8cmsr37inyvpi5dxqy6d6alhp";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/merlin";
+          sha256 = "1b6zdm68ds94mqiygifqi45k3czrmwvaki58jwxbbddn3ya7iinz";
           name = "recipe";
         };
         packageRequires = [];
@@ -60480,12 +61440,12 @@
       melpaBuild {
         pname = "merlin-eldoc";
         ename = "merlin-eldoc";
-        version = "20180630.1026";
+        version = "20180830.316";
         src = fetchFromGitHub {
           owner = "khady";
           repo = "merlin-eldoc";
-          rev = "6e1626d755a8bee0a03f89a951bdf69eaf4db5f9";
-          sha256 = "1xa8dfdi7w8ip7m6n0cqz28p9zvqsshd76zg27g4pmhgv1n3fnkc";
+          rev = "85dec436648f43c050048524fae7a3ad7ad4c019";
+          sha256 = "1kpdz540j32hpjykyagpwvzh7cf4gx2rfp3pdq2agc7b3bsg2jyz";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/a7130ec893175323775e887babbcec7a1e324c01/recipes/merlin-eldoc";
@@ -60636,14 +61596,14 @@
         ename = "metaweblog";
         version = "20171216.1840";
         src = fetchFromGitHub {
-          owner = "punchagan";
+          owner = "org2blog";
           repo = "metaweblog";
           rev = "aa14380eb7e7b879a0c16c96866b20a987cd3f2a";
           sha256 = "146w9laysdqbikpzr2gc9vnjrdsa87d8i13f2swlh1kvq2dn3rz5";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/7fabdb05de9b8ec18a3a566f99688b50443b6b44/recipes/metaweblog";
-          sha256 = "10kwqnfafby4ap0572mfkkdssr13y9p2gl9z3nmxqjjy04fkfi8b";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/metaweblog";
+          sha256 = "0qgmcvq1fhgljia9ncjgvgrv0mzih0l9mglwbwcszn613wmx8bkg";
           name = "recipe";
         };
         packageRequires = [ xml-rpc ];
@@ -60659,12 +61619,12 @@
       melpaBuild {
         pname = "mew";
         ename = "mew";
-        version = "20180709.1817";
+        version = "20180910.1823";
         src = fetchFromGitHub {
           owner = "kazu-yamamoto";
           repo = "Mew";
-          rev = "d4eac40c09ef349e09f0169bc2725d050dc8c7ad";
-          sha256 = "03k2nw8v9xzani2sk37x4abbmljm5h2ixxpczhv8njpqfmy8rm8x";
+          rev = "91a78fd6c6d74d0881d68c51dcd9be8cae065c02";
+          sha256 = "1ydiqafai6ji57p807iwlm3hzxqs19ghc5j3f19r6w17y65w06m1";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/362dfc4d0fdb3e5cb39564160de62c3440ce182e/recipes/mew";
@@ -60686,14 +61646,14 @@
         ename = "mexican-holidays";
         version = "20160109.1342";
         src = fetchFromGitHub {
-          owner = "shopClerk";
+          owner = "sggutier";
           repo = "mexican-holidays";
           rev = "43ced1f9e40a04be6927d1a1be64060f9be4f5c5";
           sha256 = "0bhllmyk1r9y63jw5gx10v09791w33lc54qs31gcxbnss094l6py";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/17cf468b17eead32f38e0386e8ec60ecfe11b767/recipes/mexican-holidays";
-          sha256 = "0awf4vv6mbp1xr92nsgdn513g4adqhp21k12q4fbm85b2l3jlspb";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/mexican-holidays";
+          sha256 = "0an6kkr2vwkqc9219rgn74683h7f4cmd1g74lirn0qhqcfcb5yrc";
           name = "recipe";
         };
         packageRequires = [];
@@ -60736,12 +61696,12 @@
       melpaBuild {
         pname = "mhc";
         ename = "mhc";
-        version = "20180717.2009";
+        version = "20180723.2158";
         src = fetchFromGitHub {
           owner = "yoshinari-nomura";
           repo = "mhc";
-          rev = "e29e69ab2f282131039a63f56f48e39d56c175d9";
-          sha256 = "0lxn4vg3qxzdxad1fv0ssnw4rjhzvrys4k3lqx87sbg28l9ykk77";
+          rev = "2cd1e97fa2e32e7dfde5ee7878fb9a915fb6a3b8";
+          sha256 = "1rr7205q2gwi8bw4hab7p7061bc15sqrj4mam02hlplg7dcj476q";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/d8d3efa0fcd6cd4af94bc99b35614ef6402cbdba/recipes/mhc";
@@ -61586,12 +62546,12 @@
       melpaBuild {
         pname = "mode-icons";
         ename = "mode-icons";
-        version = "20170216.620";
+        version = "20180910.804";
         src = fetchFromGitHub {
           owner = "ryuslash";
           repo = "mode-icons";
-          rev = "dd0a161272823294f2b9afb8b919fd11323ef6b4";
-          sha256 = "1d1rhqi0adac8jgz977jrnbnf9kan8cwr1fghlxb2q7p33kp1d29";
+          rev = "26138d825cba7e6bd882707a909505d5536acb9b";
+          sha256 = "1z62g5dhv36x5an89za8h5vdab0ss7af13p42kjnjrs54f50pv9f";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/0fda2b54a0ff0b6fc3bd6d20cfcbbf63cae5380f/recipes/mode-icons";
@@ -61837,12 +62797,12 @@
       melpaBuild {
         pname = "monky";
         ename = "monky";
-        version = "20180716.720";
+        version = "20180806.39";
         src = fetchFromGitHub {
           owner = "ananthakumaran";
           repo = "monky";
-          rev = "f1aaea2b8334d5870c8179f2c70b4088882caff8";
-          sha256 = "1ibfigbkir4y87wl7nhz6z5fb13gqmhiby1315yqw8p7d604am56";
+          rev = "c40038710db855a5b71fa8ba0032b397a6730d2d";
+          sha256 = "0a264j6w3q0jhzqqbxfazp2c15xk2k5lm5004m958lhi53sr34fa";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/9b33d35e3004f3cc8a5c17aa1ee07dd21d2d46dc/recipes/monky";
@@ -61913,12 +62873,12 @@
       melpaBuild {
         pname = "monokai-theme";
         ename = "monokai-theme";
-        version = "20180402.221";
+        version = "20180730.629";
         src = fetchFromGitHub {
           owner = "oneKelvinSmith";
           repo = "monokai-emacs";
-          rev = "1143c072f5153ae1a69807e5e8af163069b947d2";
-          sha256 = "0dy8c3349j7fmp8052hbgvk0b7ldlv5jqpg0paq1i0hlypivd30i";
+          rev = "f4ef092129f4a35edaee0a9b2219c17e86309730";
+          sha256 = "1dshz153y25pmff0pn2rsvgxsv0jv0pjn5cpzvr5x11b65ijwshy";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/2bc9ce95a02fc4bcf7bc7547849c1c15d6db5089/recipes/monokai-theme";
@@ -62016,12 +62976,12 @@
       melpaBuild {
         pname = "moom";
         ename = "moom";
-        version = "20180618.1245";
+        version = "20180909.2138";
         src = fetchFromGitHub {
           owner = "takaxp";
           repo = "moom";
-          rev = "54b50eac555c9195ad39060e31fd4aac5662b5fd";
-          sha256 = "1xxxwy67fcgll6m0wiypv3r85vg45g8f6fkhx5m52cs3w8iav7il";
+          rev = "a8820f19a8168ab395ba835872606280ad96916d";
+          sha256 = "1lpkmbabw9n50hf7yr6n4aim8x0km1wa15mpf7mv9w91ca2blg5d";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/c55081230ee02346ed02e0ab19ee2302e7b9ffa7/recipes/moom";
@@ -62729,12 +63689,12 @@
       melpaBuild {
         pname = "mu4e-conversation";
         ename = "mu4e-conversation";
-        version = "20180722.159";
+        version = "20180827.145";
         src = fetchFromGitLab {
           owner = "ambrevar";
           repo = "mu4e-conversation";
-          rev = "223cc66e99c7665326e3d991d6d383cb0d7512bb";
-          sha256 = "1ncawxcgsnk6ila5h30ka66x350xnkpxadlpnszbf3lc3w2scxjp";
+          rev = "32236a1a296a5f8e31673040fb2f0c008afd7d5f";
+          sha256 = "1pfq12kxhaxwbikf3kqqp310da0c3lnz10arh30ggfszvipimspj";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/7638aecc7a2cd4b1646c6e32fe83e18ef212bbaa/recipes/mu4e-conversation";
@@ -63095,12 +64055,12 @@
       melpaBuild {
         pname = "multiple-cursors";
         ename = "multiple-cursors";
-        version = "20180615.518";
+        version = "20180913.537";
         src = fetchFromGitHub {
           owner = "magnars";
           repo = "multiple-cursors.el";
-          rev = "9c49874fa444a4e7255ec05f62c01daed31c7b09";
-          sha256 = "176jyz5sfxn9sp94ymd8ksimmribhdrw2fr7wpwyf4wi17ksvxq4";
+          rev = "6a7c3c0853e3fe9e4b8e5985dbed8fd4075f33ff";
+          sha256 = "0g4mqjahfya5n0hjw4z7ivd2g1kjbsr5h94d052qx6bcnmp66h3r";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/a5f015e6b88be2a5ded363bd882a558e94d1f391/recipes/multiple-cursors";
@@ -63363,8 +64323,8 @@
           sha256 = "0ci1kdc7qs04yny6sxhbncb3d4gzcsdhk2w51phpb8m2rilm0xgl";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/08911f0409c238d009c22051ede04a8d4cdcafa9/recipes/mxf-view";
-          sha256 = "08xyfi74pja2cyfmhigq83yxwfhf9k1797wfz7hrxx9zw6kqa840";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/e608f40d00a3b2a80a6997da00e7d04f76d8ef0d/recipes/mxf-view";
+          sha256 = "1a8hlp0r04p1cww3dmsqdxlm3ll522wjb0rnmj80d7mqizkbf52p";
           name = "recipe";
         };
         packageRequires = [ emacs ];
@@ -64238,12 +65198,12 @@
       melpaBuild {
         pname = "nerdtab";
         ename = "nerdtab";
-        version = "20180527.408";
+        version = "20180810.2039";
         src = fetchFromGitHub {
           owner = "casouri";
           repo = "nerdtab";
-          rev = "7af72c3d798ec3a44e6bc8cec18200198192ad9a";
-          sha256 = "0n8av79pdq7as45pfd81pffrpg1wrd3ppdk7zd0i85rmyknnix7r";
+          rev = "601d531fa3748db733fbdff157a0f1cdf8a66416";
+          sha256 = "0l9pbgpp90rhji42zmcn8rlp6pnhkplnpn8w6xflw51iwhdkm1rb";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/59bc273db1d34997ea5d51cc6adc33ec785bc7f3/recipes/nerdtab";
@@ -64265,12 +65225,12 @@
       melpaBuild {
         pname = "netease-music";
         ename = "netease-music";
-        version = "20180429.1822";
+        version = "20180911.2013";
         src = fetchFromGitHub {
           owner = "nicehiro";
           repo = "netease-music";
-          rev = "aecf451fd69f9faa9f86232550ebf8ced5a48254";
-          sha256 = "0cb5adrnprlhrpcw06wi84fiva3mwac92rxfi5pgcw9ga213qhy8";
+          rev = "a4b86ba91398657ab08a8758a22a71ca0804e880";
+          sha256 = "0gh9smjn5s2axzs9ahqn8djlbrzayp5g4n39wk68sdpljmkjadwz";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/ca3d4a8f8d9080e26a8fe2c38c0001d5cfc3c88c/recipes/netease-music";
@@ -64445,12 +65405,12 @@
       melpaBuild {
         pname = "ng2-mode";
         ename = "ng2-mode";
-        version = "20180520.1731";
+        version = "20180908.2119";
         src = fetchFromGitHub {
           owner = "AdamNiederer";
           repo = "ng2-mode";
-          rev = "177248bca3787fabab70f3026ccf390395171f0d";
-          sha256 = "1s6nvjby3vxh0sfmxg4c43vj9fkr8358v8plqvczpnjk3jxk4xvm";
+          rev = "b2ba86b3c38873fb34cf01f07cddfbaeac320346";
+          sha256 = "0rm7nk23zn758vrbgx6nbb9l42s5mvki8s0gq03h7v85jk3b0kvq";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/a856ecd8aca2d9232bb20fa7019de9e1dbbb19f4/recipes/ng2-mode";
@@ -64630,12 +65590,12 @@
       melpaBuild {
         pname = "nimbus-theme";
         ename = "nimbus-theme";
-        version = "20180606.1936";
+        version = "20180907.257";
         src = fetchFromGitHub {
           owner = "m-cat";
           repo = "nimbus-theme";
-          rev = "d4adcf0e821648aef066f9b97808a3c691615749";
-          sha256 = "0hvyvc5pvv0n4dv4y1h09vq84gzbf2xjavpiryfxb100hcjicjss";
+          rev = "bbf3c06f4d1046920c079414b4de4b13889fab70";
+          sha256 = "03bg73xn2yhwl6h5vjwz9zsnwbixhjd4k9hzqkv024c44m1cqni0";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/fc0e6b456b76e2379c64a86ad844362c58146dc6/recipes/nimbus-theme";
@@ -64658,14 +65618,14 @@
         ename = "ninja-mode";
         version = "20141203.2159";
         src = fetchFromGitHub {
-          owner = "martine";
+          owner = "ninja-build";
           repo = "ninja";
           rev = "d3238428c6ed77eb08dfc57854325634401481e2";
           sha256 = "05scnv74g9m70dfj1y71iw0dw38zbb77h2s7kciicr9pdrvdg8d4";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/aed2f32a02cb38c49163d90b1b503362e2e4a480/recipes/ninja-mode";
-          sha256 = "1m7f25sbkz8k343giczrnw2ah5i3mk4c7csi8kk9x5y16030asik";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/ninja-mode";
+          sha256 = "1v6wy9qllbxl37fp9h47000lwp557qss6fdjb3a1f20msg8f70av";
           name = "recipe";
         };
         packageRequires = [ emacs ];
@@ -64709,12 +65669,12 @@
       melpaBuild {
         pname = "nix-mode";
         ename = "nix-mode";
-        version = "20180629.1501";
+        version = "20180908.1540";
         src = fetchFromGitHub {
           owner = "NixOS";
           repo = "nix-mode";
-          rev = "57ac40d53b4f4fe0d61fcabb41f8f3992384048e";
-          sha256 = "0l5m5p3rsrjf7ghik3z1bglf255cwliglgr3hiv6qpp121k4p0ga";
+          rev = "fde8c8e38c9f94518661b31eb24a535c93306868";
+          sha256 = "0s66a3s5mh2ngs53z3b2xd5hmwy8m9hg0hm00skz7z89pd429zqd";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/e1870d786dbfac3b14386c8030e06f2d13ab9da6/recipes/nix-mode";
@@ -64949,12 +65909,12 @@
       melpaBuild {
         pname = "no-littering";
         ename = "no-littering";
-        version = "20180620.600";
+        version = "20180825.651";
         src = fetchFromGitHub {
           owner = "emacscollective";
           repo = "no-littering";
-          rev = "f1ac5274ba49e3533c356c4cd6d5f8ebed0ec517";
-          sha256 = "07w2x6s29332m3q1cy1igbjqpsyfq3l9x9gk0chn4n0c93wa0174";
+          rev = "3f6d290bb43d75ba749d56fffc21c15f1d4157d2";
+          sha256 = "1lp2nbszixd2m6v8j026z02shihrf77p1lpvvpkmr8dc88ma9hzb";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/57a2fb9524df3fdfdc54c403112e12bd70888b23/recipes/no-littering";
@@ -65104,12 +66064,12 @@
       melpaBuild {
         pname = "nodejs-repl";
         ename = "nodejs-repl";
-        version = "20170722.443";
+        version = "20180914.2151";
         src = fetchFromGitHub {
           owner = "abicky";
           repo = "nodejs-repl.el";
-          rev = "4a4104dbf2cd314e90f35d200f28bd93c34708d0";
-          sha256 = "1hcvi4nhgfrjalq8nw20kjjpcf4xmjid70qpqdv8dsgfann5i3wl";
+          rev = "d67fdc7beda4a9021763e9f2ca1e3ed72864ad7d";
+          sha256 = "1mc39wc7q7n5vs02cwj5r264bnwkllvi7i67r6zxc33abx2zmlwa";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/14f22f97416111fcb02e299ff2b20c44fb75f049/recipes/nodejs-repl";
@@ -65148,6 +66108,32 @@
           license = lib.licenses.free;
         };
       }) {};
+    nodenv = callPackage ({ emacs
+                          , fetchFromGitHub
+                          , fetchurl
+                          , lib
+                          , melpaBuild }:
+      melpaBuild {
+        pname = "nodenv";
+        ename = "nodenv";
+        version = "20180830.517";
+        src = fetchFromGitHub {
+          owner = "twlz0ne";
+          repo = "nodenv.el";
+          rev = "7ea70f1ee6c7bee422b9d090a49af6041ed81668";
+          sha256 = "1kaky6qzr7w1v4ib79s54f882gp6biy2lzsy2022pl0mxyg1jx7f";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/272df58a1112c8c082c740d54bd37469af513d4a/recipes/nodenv";
+          sha256 = "15wqlpswp4m19widnls21rm5n0ijfhmw3vyx0ch5k2bhi4a5rip6";
+          name = "recipe";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/nodenv";
+          license = lib.licenses.free;
+        };
+      }) {};
     noflet = callPackage ({ fetchFromGitHub
                           , fetchurl
                           , lib
@@ -65207,12 +66193,12 @@
       melpaBuild {
         pname = "nord-theme";
         ename = "nord-theme";
-        version = "20180102.1001";
+        version = "20180913.1049";
         src = fetchFromGitHub {
           owner = "arcticicestudio";
           repo = "nord-emacs";
-          rev = "b5c1dc762fe3acaa88a0ce9640085d45d0109c43";
-          sha256 = "0j1cbwlh646gkjp70maqbq7izchgc23wdax50ykgkw3mxhjrlsf2";
+          rev = "c4e0b5548e2f3a149658617b33813cb115bdecfe";
+          sha256 = "0am2gpk63b4cjlpdy1z2mrhq09q1hi54jqpmh2rvdvijsvp6335q";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/31cb60069825abe3998c8b43bc9177b39a7f3659/recipes/nord-theme";
@@ -65307,11 +66293,11 @@
       melpaBuild {
         pname = "notmuch";
         ename = "notmuch";
-        version = "20180503.1659";
+        version = "20180829.227";
         src = fetchgit {
           url = "https://git.notmuchmail.org/git/notmuch";
-          rev = "c20a5eb80520a11cb697a45b0d9553c68e2199c8";
-          sha256 = "13gpsgx5k26x8r38q56y01mfz2r1haxw76hc52mq8vypfl1gpw3x";
+          rev = "cfd015bda413a5fee0bcc80e73008234fe88736f";
+          sha256 = "19w0kn414xz4xaiiwn4npgpy57iip5406rf65fxn0w7bgvqanjk0";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/d05fbde3aabfec4efdd19a33fd2b1297905acb5a/recipes/notmuch";
@@ -65386,12 +66372,12 @@
       melpaBuild {
         pname = "nova-theme";
         ename = "nova-theme";
-        version = "20180530.801";
+        version = "20180905.1211";
         src = fetchFromGitHub {
           owner = "muirmanders";
           repo = "emacs-nova-theme";
-          rev = "2f41855ac250d822d2e8cec4610c8645718bd7e3";
-          sha256 = "0gc4jw9mdv2kmhwwf1avxr0magrdhpqlxakd29dxjq9md8qybrvj";
+          rev = "932c83e6e06e795c2a380b69eee3913a3a805cea";
+          sha256 = "1mawj1dxp2s9fqg24j0v5xfn0r6wrlvplbl4a71q553rsr3q63il";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/16457166c17fb1cc074a34c61e52ebc285c0eacc/recipes/nova-theme";
@@ -65546,12 +66532,12 @@
       melpaBuild {
         pname = "nu-mode";
         ename = "nu-mode";
-        version = "20180619.1428";
+        version = "20180907.1315";
         src = fetchFromGitHub {
           owner = "pyluyten";
           repo = "emacs-nu";
-          rev = "22cf474e70c4e72045bfb1630814ef03e3b76096";
-          sha256 = "0hfrf92kf3p91d5yn3b4i8x24j20v42rph4dvspmbmkfcyh9qinh";
+          rev = "21bb07edb120fb3f888e4b38f1dc99508bb83640";
+          sha256 = "1zhy2sg41l4nak1ry5xgzw373isdhj955zg3i4ivw1yax4c2h9pf";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/230d5f8fdd965a24b8ff3cc94acf378d04815fca/recipes/nu-mode";
@@ -65888,12 +66874,12 @@
       melpaBuild {
         pname = "ob-async";
         ename = "ob-async";
-        version = "20180624.1553";
+        version = "20180816.853";
         src = fetchFromGitHub {
           owner = "astahlman";
           repo = "ob-async";
-          rev = "2333106205fd3fa244ccdfbd95fcabf29eb81116";
-          sha256 = "0lqazlzqsqhhkag7k82ar2clbhhm17mv4bdw0fh8nh4bkpph7p5a";
+          rev = "2470490e6efb3f8efde1702f7986f6e31cc1ab6c";
+          sha256 = "0p1m5bg9nv0pxlg880v6i12j1hiviw53rwn8yi0qgdi00vccszkk";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ob-async";
@@ -66412,12 +67398,12 @@
       melpaBuild {
         pname = "ob-kotlin";
         ename = "ob-kotlin";
-        version = "20170725.718";
+        version = "20180823.621";
         src = fetchFromGitHub {
           owner = "zweifisch";
           repo = "ob-kotlin";
-          rev = "3b2f57e9944cfc36f2714dc550db42159904929a";
-          sha256 = "1fgfl4j0jgz56a1w8h2mvnzisz123c1xz7ga380bg1hmy44dbv5j";
+          rev = "b817ffb7fd03a25897eb2aba24af2035bbe3cfa8";
+          sha256 = "1w31cj1wbblm9raav4kxbykf124k6rvn0ryxfn6myvv1x900w02a";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/7aa74d349eb55aafddfc4327b6160ae2da80d689/recipes/ob-kotlin";
@@ -66591,12 +67577,12 @@
       melpaBuild {
         pname = "ob-restclient";
         ename = "ob-restclient";
-        version = "20180703.902";
+        version = "20180904.9";
         src = fetchFromGitHub {
           owner = "alf";
           repo = "ob-restclient.el";
-          rev = "3af542c0895d7b4fabe84275ac5c7a214340c8ec";
-          sha256 = "0khrvpn92kxpfndzybk9h2and5a7rzazvj598lpwllfs1y8fbsas";
+          rev = "00b2c5a6637ab6e504708612357ffb29b5416e4b";
+          sha256 = "03jsdczywys5df1ac7bmli31wkxvbsymd5k0s6iaz62kc454l3wj";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/28c1d3af3f8b2f598b80b03b64de5d15cbb3f13d/recipes/ob-restclient";
@@ -66616,12 +67602,12 @@
       melpaBuild {
         pname = "ob-rust";
         ename = "ob-rust";
-        version = "20180606.1646";
+        version = "20180911.835";
         src = fetchFromGitHub {
           owner = "micanzhang";
           repo = "ob-rust";
-          rev = "a0e3c62ac3d4d44ae73746b5a45c04322c908bd3";
-          sha256 = "1hjn27k9jnykipb9lbk2py83abaawvsm503pkzmggd4zzpf6f9qq";
+          rev = "f57b489d931d6a7f9ca2b688af3352fd706f5f6b";
+          sha256 = "1fsvfy2yr22mhjkdn0bv3n3i8039a5gw5rs1cq41msv8ghb2cp0i";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/843affc2fd481647c5377bf9a96b636b39718034/recipes/ob-rust";
@@ -66740,6 +67726,34 @@
           license = lib.licenses.free;
         };
       }) {};
+    ob-tmux = callPackage ({ emacs
+                           , fetchFromGitHub
+                           , fetchurl
+                           , lib
+                           , melpaBuild
+                           , s
+                           , seq }:
+      melpaBuild {
+        pname = "ob-tmux";
+        ename = "ob-tmux";
+        version = "20180831.317";
+        src = fetchFromGitHub {
+          owner = "ahendriksen";
+          repo = "ob-tmux";
+          rev = "73bed0ebad27f0ad57ea67582494543eb2fab73d";
+          sha256 = "0wgfjm3xf4wz8kfxnijfmgkifp6f6fwk5y31vdwadkjjggbhp0pk";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/a3f47fbfe745972e690e8028f893bb38ba30978d/recipes/ob-tmux";
+          sha256 = "12c0m2xxd75lbc98h7cwprmdn823mh2ii59pxr6fgnq7araqkz20";
+          name = "recipe";
+        };
+        packageRequires = [ emacs s seq ];
+        meta = {
+          homepage = "https://melpa.org/#/ob-tmux";
+          license = lib.licenses.free;
+        };
+      }) {};
     ob-translate = callPackage ({ fetchFromGitHub
                                 , fetchurl
                                 , google-translate
@@ -67457,12 +68471,12 @@
       melpaBuild {
         pname = "omnisharp";
         ename = "omnisharp";
-        version = "20180606.318";
+        version = "20180805.924";
         src = fetchFromGitHub {
           owner = "OmniSharp";
           repo = "omnisharp-emacs";
-          rev = "ef369f79f5e65077b640b0d7525a1c9a3739713f";
-          sha256 = "19awri250vya7c4pjmkwwxxnsimw0rjy75gary0g1hzr492zibdb";
+          rev = "fccbc4a7f63a3a140476bd8c56320ccb6cd18df2";
+          sha256 = "17qzdvwb4qzxdl4k8ndwggmxr7pnsinh6nz2ac19ammpbs1308fn";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/e327c483be04de32638b420c5b4e043d12a2cd01/recipes/omnisharp";
@@ -67967,14 +68981,14 @@
         ename = "org-alert";
         version = "20180523.1833";
         src = fetchFromGitHub {
-          owner = "groksteve";
+          owner = "spegoraro";
           repo = "org-alert";
           rev = "f87bff4acbd839acb4d2245b56b2c3d21f950911";
           sha256 = "05xhp1ggpcgd48vcrxf9l43aasxfjw1ypgzpq3gp7031x83m9rr6";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/2976b7f9271bc46679a5774ff5f388b81a9f0cf8/recipes/org-alert";
-          sha256 = "0n5a24iv8cj395xr0gfgi0hs237dd98zm2fws05k47vy3ygni152";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/org-alert";
+          sha256 = "01bb0s22wa14lyr9wi58cvk4b03xqq268y3dvxbrhymw1ld97zk2";
           name = "recipe";
         };
         packageRequires = [ alert dash s ];
@@ -68113,6 +69127,7 @@
         };
       }) {};
     org-bookmark-heading = callPackage ({ emacs
+                                        , f
                                         , fetchFromGitHub
                                         , fetchurl
                                         , lib
@@ -68120,19 +69135,19 @@
       melpaBuild {
         pname = "org-bookmark-heading";
         ename = "org-bookmark-heading";
-        version = "20170510.1008";
+        version = "20180904.1009";
         src = fetchFromGitHub {
           owner = "alphapapa";
           repo = "org-bookmark-heading";
-          rev = "8e184f1ab1ef68417db9f12c7dce4d221fe6d496";
-          sha256 = "1bhkfn2x02vpd0rxdgwz6lyycdnak2hxplna0hizim1k804gkxwn";
+          rev = "eba5ef7a3c992c4a9da86f64d12fca0c1158208a";
+          sha256 = "1amq48yldydg9prcxvxn5yi0k8xk87h1azscr9hh9phnll2yys1d";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/eaadbd149399c6e3c48ac5cbeedeb29a3f5791f1/recipes/org-bookmark-heading";
           sha256 = "1q92rg9d945ypcpb7kig2r0cr7nb7avsylaa7nxjib25advx80n9";
           name = "recipe";
         };
-        packageRequires = [ emacs ];
+        packageRequires = [ emacs f ];
         meta = {
           homepage = "https://melpa.org/#/org-bookmark-heading";
           license = lib.licenses.free;
@@ -68172,12 +69187,12 @@
       melpaBuild {
         pname = "org-bullets";
         ename = "org-bullets";
-        version = "20171127.526";
+        version = "20180208.1543";
         src = fetchFromGitHub {
           owner = "emacsorphanage";
           repo = "org-bullets";
-          rev = "5b096148bc37306f73b27da838dca751d5b1936f";
-          sha256 = "1yxikvbsbrqv9kjh1dc55w3xm44x4s7gamxq4f6jm045p8abfqrr";
+          rev = "b56f2e3812626f2c4ac1686073d102c71f4a8513";
+          sha256 = "0a0dml6y49n3469vrfpgci40k4xxlk0q4kh2b27shjb440wrmv4x";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/fe60fc3c60d87b5fd7aa24e858c79753d5f7d2f6/recipes/org-bullets";
@@ -68232,8 +69247,8 @@
           sha256 = "01ffkk79wz2qkh9h9cjl59j34wvbiqzzxbbc9a06lh2rc946wgis";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/b20edd229469b33ea87c40cfd06aa0bf95d149de/recipes/org-capture-pop-frame";
-          sha256 = "0g0b3vifwg39rb0fmad7y955dcqccnm01c6m27cv2x4xfib8ik3w";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/e608f40d00a3b2a80a6997da00e7d04f76d8ef0d/recipes/org-capture-pop-frame";
+          sha256 = "1k0njip25527nkn8w11yl7dbk3zv9p9lhx0a9xx293havjxygvyi";
           name = "recipe";
         };
         packageRequires = [ emacs ];
@@ -68304,12 +69319,12 @@
       melpaBuild {
         pname = "org-cliplink";
         ename = "org-cliplink";
-        version = "20180717.408";
+        version = "20180810.1334";
         src = fetchFromGitHub {
           owner = "rexim";
           repo = "org-cliplink";
-          rev = "7d35b09ebdb160a2aee3145766454a11d27b3fb7";
-          sha256 = "0kskxy07i2yhb36ncsqxm50m2cry40qc7gg4x4z7rhbmski653ab";
+          rev = "d99f6f9618ad8ed6185714786ed0e89fc439749d";
+          sha256 = "1q2abr0r1wv16wxl7gwzv1gxbq6bd4mg6l3kzi4pf73wjbnicq8s";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/7ddb13c59441fdf4eb1ba3816e147279dea7d429/recipes/org-cliplink";
@@ -68516,14 +69531,14 @@
         ename = "org-doing";
         version = "20161017.920";
         src = fetchFromGitHub {
-          owner = "omouse";
+          owner = "rudolfolah";
           repo = "org-doing";
           rev = "4819e75c827c2115bd28f3b3148d846aa64ccd9b";
           sha256 = "0pb7ljysh8ap572f9y813js6lvvac4kjky2a5r39hv28px33hmx5";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/4c497b87e14ab614c963f4b2f041bc0111b6e936/recipes/org-doing";
-          sha256 = "17w49z78fvbz182sxv9mnryj124gm9jbdmbybppjqz4rk6wvnm2j";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/org-doing";
+          sha256 = "10vg0wl8dsy12r51178qi4rzi94img692z5x3zv8dxa29lmn26xs";
           name = "recipe";
         };
         packageRequires = [];
@@ -68541,12 +69556,12 @@
       melpaBuild {
         pname = "org-dotemacs";
         ename = "org-dotemacs";
-        version = "20151119.1022";
+        version = "20180801.1728";
         src = fetchFromGitHub {
           owner = "vapniks";
           repo = "org-dotemacs";
-          rev = "99a066508fedf8c80a3bfef08e015e612499d417";
-          sha256 = "15zrnd168n4pwa1bj5fz79hcrgw61braf0b095rsfhjh5w2sasy7";
+          rev = "49072168158b6cd45796e92e940c9ac71e181722";
+          sha256 = "18p9qpp1pja7b8bjsdghb2bfsqz72xg01ysmlj7105vn6zrsm161";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/4c1847184312c8c95e7e81e5b3b73e5621cc2509/recipes/org-dotemacs";
@@ -68567,12 +69582,12 @@
       melpaBuild {
         pname = "org-download";
         ename = "org-download";
-        version = "20180625.842";
+        version = "20180831.631";
         src = fetchFromGitHub {
           owner = "abo-abo";
           repo = "org-download";
-          rev = "434447251343164e3aacd9db17e67dd2a10b6e65";
-          sha256 = "1ckkwdyvxiwhlxl00fd96v01vb71bdnzb3xyl04pxwjsydcbsai0";
+          rev = "cf87c16810a08c8eaed790e99c2bea5b3c9bb1ae";
+          sha256 = "1jr0n426zm85nn6y2alrzldy3dn6j8gkwr2vaihb8xxcvp0vhjb8";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/edab283bc9ca736499207518b4c9f5e71e822bd9/recipes/org-download";
@@ -68776,6 +69791,32 @@
           license = lib.licenses.free;
         };
       }) {};
+    org-emms = callPackage ({ emacs
+                            , fetchFromGitHub
+                            , fetchurl
+                            , lib
+                            , melpaBuild }:
+      melpaBuild {
+        pname = "org-emms";
+        ename = "org-emms";
+        version = "20180820.1427";
+        src = fetchFromGitHub {
+          owner = "jagrg";
+          repo = "org-emms";
+          rev = "69752f482dbc265aafedbf1d19e7fd8f4265ca0b";
+          sha256 = "08naas4cpidy0lhbl7waq1qp4s9ljnq431k39q0lki2klbypg2ww";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/7455b0d5439e058f39d17a75ec3232c8ac3e26ec/recipes/org-emms";
+          sha256 = "0gdv38dk70ncjn6xcrr8x75mw37f6p2w91jjy87v9zzrd7s22blh";
+          name = "recipe";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/org-emms";
+          license = lib.licenses.free;
+        };
+      }) {};
     org-evil = callPackage ({ dash
                             , evil
                             , fetchFromGitHub
@@ -68842,16 +69883,16 @@
       melpaBuild {
         pname = "org-gcal";
         ename = "org-gcal";
-        version = "20170420.1401";
+        version = "20180827.108";
         src = fetchFromGitHub {
-          owner = "myuhe";
+          owner = "kidd";
           repo = "org-gcal.el";
-          rev = "270ae5d94a5d2e22cdd1fc4063534483a0dfef87";
-          sha256 = "0j6i05qczv14k1rw5bry6ys66ykh46dx9837lyswfl0mwrgl3i04";
+          rev = "8636d25c81f8cb02d6522427753e76b853bda491";
+          sha256 = "1hgbwp32psij3h0bypw2rl7bw5dsb8swy3426rfbsw9qllx3ivqw";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/1c2d5bd8d8f2616dae19b9232d9442fe423d6e5e/recipes/org-gcal";
-          sha256 = "1mp6cm0rhd4r9pfvsjjp86sdqxjbbg7gk41zx0zf0s772smddy3q";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/d97c701819ea8deaa8a9664db1f391200ee52c4f/recipes/org-gcal";
+          sha256 = "014h67ba0cwi4i1llngypscyvyrm74ljh067i3iapx5a18q7xw5v";
           name = "recipe";
         };
         packageRequires = [ alert cl-lib emacs org request-deferred ];
@@ -68947,12 +69988,12 @@
       melpaBuild {
         pname = "org-index";
         ename = "org-index";
-        version = "20180720.127";
+        version = "20180830.850";
         src = fetchFromGitHub {
           owner = "marcihm";
           repo = "org-index";
-          rev = "54b1485eea187575840e4eac79b950273d243455";
-          sha256 = "1fmq30768cqhz52frkvrcr52wzbpaqbgwvgl28gac2dxzypg9zgb";
+          rev = "953f5a78f570be4745fb267523174e5f3fddc8a1";
+          sha256 = "15q9hp3w5k4a8f9n3cbsgmpzyc9v0w74chdi1s47hkw9dgq8ajpw";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/54946e733901986304f7a7a5139b2818ebf97eb3/recipes/org-index";
@@ -68994,6 +70035,7 @@
         };
       }) {};
     org-jira = callPackage ({ cl-lib ? null
+                            , dash
                             , emacs
                             , fetchFromGitHub
                             , fetchurl
@@ -69004,19 +70046,19 @@
       melpaBuild {
         pname = "org-jira";
         ename = "org-jira";
-        version = "20180625.2111";
+        version = "20180910.1339";
         src = fetchFromGitHub {
           owner = "ahungry";
           repo = "org-jira";
-          rev = "03d6ebcf177db7b208c6a99386695e839f314314";
-          sha256 = "07hy37by9ics7rc1sgkpg8qk2xzp67ny4i4rkd7q7j4abqdr131v";
+          rev = "28c23a10788682cce27aa479e5eb942138e1b03e";
+          sha256 = "15yw7ppm0l8rggdbgvc1izwn6w1lrgxpr4g74q3fjh9dkzmiyx0s";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/730a585e5c9216a2428a134c09abcc20bc7c631d/recipes/org-jira";
-          sha256 = "0dvh9k0i75jxyy3v01c4cfyws8ij6718hsivi2xyrgig7pwp16ib";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/e0a2fae6eecb6b4b36fe97ad99691e2c5456586f/recipes/org-jira";
+          sha256 = "1sbypbz00ki222zpm47yplyprx7h2q076b3l07qfilk0sr8kf4ql";
           name = "recipe";
         };
-        packageRequires = [ cl-lib emacs request s ];
+        packageRequires = [ cl-lib dash emacs request s ];
         meta = {
           homepage = "https://melpa.org/#/org-jira";
           license = lib.licenses.free;
@@ -69030,12 +70072,12 @@
       melpaBuild {
         pname = "org-journal";
         ename = "org-journal";
-        version = "20180603.102";
+        version = "20180903.307";
         src = fetchFromGitHub {
           owner = "bastibe";
           repo = "org-journal";
-          rev = "2395db4deb255c05d0d3a75c95f53263b74939c9";
-          sha256 = "018wjn7v8a1z4z1sycz7b01rdck73ap13cr3lvfqvp9mms94qq71";
+          rev = "db9c4c352bd56bebcac940adc70bfb89063ef3b9";
+          sha256 = "0wigkkdi9yww83f076ykw6akwd716s2lwrc3hfr96vsw0zg33vh8";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/7fabdb05de9b8ec18a3a566f99688b50443b6b44/recipes/org-journal";
@@ -69058,12 +70100,12 @@
       melpaBuild {
         pname = "org-kanban";
         ename = "org-kanban";
-        version = "20180722.1158";
+        version = "20180819.1755";
         src = fetchFromGitHub {
           owner = "gizmomogwai";
           repo = "org-kanban";
-          rev = "4f499e97c4583e99b042f579110a8be197337bda";
-          sha256 = "0z7k240j1jqw8dqxwqr06ljnlmx3q0grrbangfr5py9z48dc63vl";
+          rev = "2fc1ed815f7155df1169f68b19c1ad847e620fee";
+          sha256 = "141j9z5a31hpxj073vf0yyhmdw3j89ywqac1a97c2k4967ps0nw1";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/a9f3a10c126fa43a6fa60ee7f8e50c7a9661dbc1/recipes/org-kanban";
@@ -69165,12 +70207,12 @@
       melpaBuild {
         pname = "org-listcruncher";
         ename = "org-listcruncher";
-        version = "20180630.1326";
+        version = "20180814.2303";
         src = fetchFromGitHub {
           owner = "dfeich";
           repo = "org-listcruncher";
-          rev = "6fb86f740f8b9fb283049132e108863d1918a893";
-          sha256 = "04nykrcmsx5pqhyk305n0xh828fmdng2pqhhnylisnwds1v13cbp";
+          rev = "daa948f54631dda96ed83a2c63265e176b177ff3";
+          sha256 = "0r6gmadd20w3giw40973kyl83954pdmhslxagn6vafh1ygg9vi83";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/5bed5078a3e56a825be61d158ca8321763b92f7c/recipes/org-listcruncher";
@@ -69249,12 +70291,12 @@
       melpaBuild {
         pname = "org-mind-map";
         ename = "org-mind-map";
-        version = "20180614.1352";
+        version = "20180826.1640";
         src = fetchFromGitHub {
           owner = "theodorewiles";
           repo = "org-mind-map";
-          rev = "c0578ee519ad54451e758e401acae2914f52c47a";
-          sha256 = "1z43c3vwmd8h8nnncp6fya0l73rfqmb6ij01mp027pxpazq3skhc";
+          rev = "41df4b2e30455494f1848b4e06cc9208aa9e902b";
+          sha256 = "0y0yjb0w6s5yxklcxkmylmw031plxhl9dvachx325mb9qcwskycp";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/3c8683ee547a6a99f8d258561c3ae157b1f427f2/recipes/org-mind-map";
@@ -69385,12 +70427,12 @@
       melpaBuild {
         pname = "org-noter";
         ename = "org-noter";
-        version = "20180722.853";
+        version = "20180912.1347";
         src = fetchFromGitHub {
           owner = "weirdNox";
           repo = "org-noter";
-          rev = "447c890e173884e9ca459b73ac3a771fc59e8512";
-          sha256 = "01akk7zdyijclb3igmm56xyz2h9ffc0j0skawb1xwwrni7aphnbm";
+          rev = "9acb7c226e3ff0f922e8670bf67de391cfdb324a";
+          sha256 = "037sfxdrx886ih98hljxl96y3zpjbcibnc5q96ax9lgif9f6qz8r";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/4a2bc0d95dc2744277d6acbba1f7483b4c14d75c/recipes/org-noter";
@@ -69989,12 +71031,12 @@
       melpaBuild {
         pname = "org-ref";
         ename = "org-ref";
-        version = "20180706.614";
+        version = "20180913.1607";
         src = fetchFromGitHub {
           owner = "jkitchin";
           repo = "org-ref";
-          rev = "0f951f8b59adc1ad4e82f514eaf1e3487b9a036e";
-          sha256 = "1d4f89ssy6wgsyl4w1linns73k22lkmcvhq5rc8sg9vdsb8inw6k";
+          rev = "25833720609736f92b4b8c82740dfdb1985e8c1e";
+          sha256 = "009qbp4z19dmqf34hbvbhk71y5sl6g6r0vss57mnizqq7wyk2y14";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/550e4dcef2f74fbd96474561c1cb6c4fd80091fe/recipes/org-ref";
@@ -70158,12 +71200,12 @@
       melpaBuild {
         pname = "org-send-ebook";
         ename = "org-send-ebook";
-        version = "20180401.1015";
+        version = "20180731.2223";
         src = fetchFromGitHub {
           owner = "stardiviner";
           repo = "org-send-ebook";
-          rev = "efa80f3c1a26347097a16eca4dda2610627fcdf0";
-          sha256 = "097cpr9v0c03117z76cy0b9faq3zjvi45anvgrw4bkbgs5mh9x2l";
+          rev = "39ee6440ec6f29f67cb24e3c62e179342d3a7b11";
+          sha256 = "04q5kh6jxny2n68im1if8d4p257lx2q7gymlnbsslppl5jrnj8b5";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/646106cf43649544056285aef8c4035b6e5bbbdb/recipes/org-send-ebook";
@@ -70241,12 +71283,12 @@
       melpaBuild {
         pname = "org-super-agenda";
         ename = "org-super-agenda";
-        version = "20180714.1348";
+        version = "20180912.354";
         src = fetchFromGitHub {
           owner = "alphapapa";
           repo = "org-super-agenda";
-          rev = "3b5e8faeec1333aca3cafbbaa350dacc95412086";
-          sha256 = "1l19c1pbxgyrc19jv8zp8mv60xhwf50g8fc7jmc24p73ckvff7w4";
+          rev = "4fb15caa693b588a73f82788861a964489316b67";
+          sha256 = "0adfv63zhqlpwvhr432hklpxkd5110sv891l3rgkxlhnz69n8p49";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/fd27b2df7594a867529de4b84c8107f82dabe2e9/recipes/org-super-agenda";
@@ -70448,6 +71490,33 @@
           license = lib.licenses.free;
         };
       }) {};
+    org-timeline = callPackage ({ dash
+                                , emacs
+                                , fetchFromGitHub
+                                , fetchurl
+                                , lib
+                                , melpaBuild }:
+      melpaBuild {
+        pname = "org-timeline";
+        ename = "org-timeline";
+        version = "20180812.419";
+        src = fetchFromGitHub {
+          owner = "Fuco1";
+          repo = "org-timeline";
+          rev = "701f13246ad1ce286be69cc16c1126536b71e7ca";
+          sha256 = "09w5qd4bsahsp8qa14z380ahg5lmwdgvf6lqh092s142kljmag27";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/298bd714f6cefd83d594b0eea731a01fb2faf1ad/recipes/org-timeline";
+          sha256 = "0zlhjzjc7jwqh6wcys17hraz76n2hnjwffis02x71maclrf2cfdd";
+          name = "recipe";
+        };
+        packageRequires = [ dash emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/org-timeline";
+          license = lib.licenses.free;
+        };
+      }) {};
     org-toodledo = callPackage ({ cl-lib ? null
                                 , emacs
                                 , fetchFromGitHub
@@ -70537,12 +71606,12 @@
       melpaBuild {
         pname = "org-tree-slide";
         ename = "org-tree-slide";
-        version = "20180424.1636";
+        version = "20180906.249";
         src = fetchFromGitHub {
           owner = "takaxp";
           repo = "org-tree-slide";
-          rev = "6608f8d43bf40acbddeb4434715283e5884c8a02";
-          sha256 = "0cp1pbpvb8dyg5milrhlarsygdfyzpy44yhf7xhrbfmk96v8073w";
+          rev = "d45152fad1c0a153251073806f1b65ebd3731411";
+          sha256 = "1qqjvbcwacxfkyq2y6vxsmlnq6z8b4fmxg91a9k4ws827qxrnass";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/6160c259bc4bbcf3b98c220222430f798ee6463f/recipes/org-tree-slide";
@@ -70673,12 +71742,12 @@
       melpaBuild {
         pname = "org-web-tools";
         ename = "org-web-tools";
-        version = "20180531.1808";
+        version = "20180903.34";
         src = fetchFromGitHub {
           owner = "alphapapa";
           repo = "org-web-tools";
-          rev = "58c37ab50e99775cf4ed3d6884aa9c3f45d855de";
-          sha256 = "18kwlwv85qdaahp71r43h2hv1pn078jkfqfpmb7vvsks23i4vvh2";
+          rev = "7ad832950cb17890a4da751ae6d6817a7428f342";
+          sha256 = "0kak9h5ny00d39gnwspv53nadnag01brw2fq9zk5wpfc91h9bjng";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/f082bfb480649d21f586b7eb331c19d57e7a84cf/recipes/org-web-tools";
@@ -70763,14 +71832,14 @@
         ename = "org2blog";
         version = "20171218.1911";
         src = fetchFromGitHub {
-          owner = "punchagan";
+          owner = "org2blog";
           repo = "org2blog";
           rev = "04ea7e80497ab7f7bc0d097f1807d3a085074812";
           sha256 = "1qpw5bs5qjlpw3hphbf2jg0h8bdrcgrb8xavdsx8viwjl013d4ps";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/org2blog";
-          sha256 = "1xa03k9z8fq74w0w3vfkigz24i6c8s4vib077l16vqik7wg4yh40";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/org2blog";
+          sha256 = "15nr6f45z0i265llf8xs87958l5hvafh518k0s7jan7x1l6w5q33";
           name = "recipe";
         };
         packageRequires = [ htmlize metaweblog org xml-rpc ];
@@ -70995,12 +72064,12 @@
       melpaBuild {
         pname = "orgbox";
         ename = "orgbox";
-        version = "20140528.1826";
+        version = "20180826.1918";
         src = fetchFromGitHub {
           owner = "yasuhito";
           repo = "orgbox";
-          rev = "612dd2250dbae01c85342923223f9063aae535c5";
-          sha256 = "02mxp17p7bj4xamg0m6zk832hmpqcgzc7bjbjcnvbvrawhc255hy";
+          rev = "609e5e37348815ec3ba53ab6d643e38b0cc4fe17";
+          sha256 = "0kg5ns87p8v6vsb7abgqcfnzi55fbgi7b5dj98hrvnlkv4sqz7pc";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/b1948eca5a18f35b61b9a0baf532753fd105ba3a/recipes/orgbox";
@@ -71133,12 +72202,12 @@
       melpaBuild {
         pname = "orgtbl-aggregate";
         ename = "orgtbl-aggregate";
-        version = "20180620.1043";
+        version = "20180731.1454";
         src = fetchFromGitHub {
           owner = "tbanel";
           repo = "orgaggregate";
-          rev = "10996132229aff46a46d37b4983d8afb54446b07";
-          sha256 = "19f4gwixhr9v669ggbriyd4rnq43bz8qzqllxzfdbygm39vm2ira";
+          rev = "1079dfc3ca0f86fef6ca3e251f3829e031aef8c4";
+          sha256 = "17acwy9x23xh2fb3xhy5w3lz6ssnrv5nf33zsqadra9y1cxs9fcc";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/bf64b53c9d49718a8ffc39b14c90539b36840280/recipes/orgtbl-aggregate";
@@ -71968,12 +73037,12 @@
       melpaBuild {
         pname = "ox-hugo";
         ename = "ox-hugo";
-        version = "20180720.1121";
+        version = "20180915.2";
         src = fetchFromGitHub {
           owner = "kaushalmodi";
           repo = "ox-hugo";
-          rev = "b7e04248bfdc3188e7f1dbd3d55b8d3b9c40906c";
-          sha256 = "0nfkrw4qvmhap19q6a1i8yml80jkrlrvzni9dfvxm8qjhihd74kc";
+          rev = "bdc20fb5bc3be9830d9265d75ebeb1cf7dffc7b9";
+          sha256 = "16ifi5gnp401rqpdqp0rgrdzdq7l0vmi72rsqv4m4p4hvvrkxzgs";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1e1240bb7b5bb8773f804b987901566a20e3e8a9/recipes/ox-hugo";
@@ -72042,6 +73111,31 @@
           license = lib.licenses.free;
         };
       }) {};
+    ox-jekyll-md = callPackage ({ fetchFromGitHub
+                                , fetchurl
+                                , lib
+                                , melpaBuild }:
+      melpaBuild {
+        pname = "ox-jekyll-md";
+        ename = "ox-jekyll-md";
+        version = "20180831.1032";
+        src = fetchFromGitHub {
+          owner = "gonsie";
+          repo = "ox-jekyll-md";
+          rev = "f997f41d89afd2360973ef8118b5221f17bba757";
+          sha256 = "1padg3nq2fn7f5x96z19iqmknk5z3aa8yyipz0v3bdv0a3iqngli";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/4e7ddae7938158d9da24bee861a88d4875235269/recipes/ox-jekyll-md";
+          sha256 = "0lfnrikrismcd2zyfb0sf3pwwx12cyki7kzs2mjlswq3sap8w544";
+          name = "recipe";
+        };
+        packageRequires = [];
+        meta = {
+          homepage = "https://melpa.org/#/ox-jekyll-md";
+          license = lib.licenses.free;
+        };
+      }) {};
     ox-jira = callPackage ({ fetchFromGitHub
                            , fetchurl
                            , lib
@@ -72500,12 +73594,12 @@
       melpaBuild {
         pname = "package-build";
         ename = "package-build";
-        version = "20180628.2221";
+        version = "20180806.1922";
         src = fetchFromGitHub {
           owner = "melpa";
           repo = "package-build";
-          rev = "befbd7fcb9d1c7143e3ce432eaae69160112e96d";
-          sha256 = "04mfnmcxrcd4kg5wcwkcnqk4ixr2mxhpc4aj3xgm5j1b3slma7zf";
+          rev = "dfcb7f0cdd949a55ad023fb76ce2ea66e149d762";
+          sha256 = "11qw5f2gfcf1s45z1v25g0bngcxwp6l9g98xf2aydh7p1pvpwpjp";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/948fb86b710aafe6bc71f95554655dfdfcab0cca/recipes/package-build";
@@ -72570,31 +73664,6 @@
           license = lib.licenses.free;
         };
       }) {};
-    package-plus = callPackage ({ fetchFromGitHub
-                                , fetchurl
-                                , lib
-                                , melpaBuild }:
-      melpaBuild {
-        pname = "package-plus";
-        ename = "package+";
-        version = "20170815.1956";
-        src = fetchFromGitHub {
-          owner = "zenspider";
-          repo = "package";
-          rev = "09f37a21256223a770d3b6a6174cb7da427720c3";
-          sha256 = "149ba7nq380azi4rypvk0xqdv3bin2sqvab9q1kcwg3kidhspx8a";
-        };
-        recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/49cfbbc4535aa7e175aa819d67b8aa52a6f94384/recipes/package+";
-          sha256 = "1mbsxr4llz8ny7n7w3lykld9yvbaywlfqnvr9l0aiv9rvmdv03bn";
-          name = "recipe";
-        };
-        packageRequires = [];
-        meta = {
-          homepage = "https://melpa.org/#/package+";
-          license = lib.licenses.free;
-        };
-      }) {};
     package-safe-delete = callPackage ({ emacs
                                        , epl
                                        , fetchFromGitHub
@@ -72704,6 +73773,32 @@
           license = lib.licenses.free;
         };
       }) {};
+    pact-mode = callPackage ({ emacs
+                             , fetchFromGitHub
+                             , fetchurl
+                             , lib
+                             , melpaBuild }:
+      melpaBuild {
+        pname = "pact-mode";
+        ename = "pact-mode";
+        version = "20180905.947";
+        src = fetchFromGitHub {
+          owner = "kadena-io";
+          repo = "pact-mode";
+          rev = "5f401b282e2f8f897fd67e882312875f967be4d6";
+          sha256 = "1nqr7jw2anyicr9pxypsmqqwzjn9qnn770gsmdz6r2xam55j81vg";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/b8e11b488c937ac9290f2e6acde92a87024a9012/recipes/pact-mode";
+          sha256 = "1awmczhz4cl2vxrn0h1wqkrhy1n9p4j3ayksvgifr4cfhqlsxk6v";
+          name = "recipe";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/pact-mode";
+          license = lib.licenses.free;
+        };
+      }) {};
     paganini-theme = callPackage ({ emacs
                                   , fetchFromGitHub
                                   , fetchurl
@@ -72712,12 +73807,12 @@
       melpaBuild {
         pname = "paganini-theme";
         ename = "paganini-theme";
-        version = "20180710.821";
+        version = "20180815.1221";
         src = fetchFromGitHub {
           owner = "onurtemizkan";
           repo = "paganini";
-          rev = "c7474dd275dca81e77542987c459b4baba1fe190";
-          sha256 = "0pvrsv3a94rp7g2p9is3f3mqkqlnd7kcpspdfn7wry3ighc0gqzq";
+          rev = "255c5a2a8abee9c5935465ec42b9c3604c178c3c";
+          sha256 = "0qhmj8dyy722ds8cmwghhxknwwis1w64wix2hdmzs21c5pa5hgkw";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/d6fbb609b411df4fe6f66a7afe27eda7d297f140/recipes/paganini-theme";
@@ -72898,12 +73993,12 @@
       melpaBuild {
         pname = "panda-theme";
         ename = "panda-theme";
-        version = "20180203.2318";
+        version = "20180807.443";
         src = fetchFromGitHub {
           owner = "jamiecollinson";
           repo = "emacs-panda-theme";
-          rev = "548b06f3e37f017fa3996015016fb0e565b84d93";
-          sha256 = "1f2kzmk03vkq5jdkad6hg2rqjll1l91g48dh2piwdqrkjjbkwsvy";
+          rev = "53b4cbb6bfdd531a8366bf1d01eede420e1f93c9";
+          sha256 = "1l7vc6m6iklcdm3hw8h54q71wfk055mmmmzyp0hbvrnlicg5yvr9";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/a90ca1275ceab8e1ea4fdfa9049fbd24a5fd0bf5/recipes/panda-theme";
@@ -72951,12 +74046,12 @@
       melpaBuild {
         pname = "pandoc-mode";
         ename = "pandoc-mode";
-        version = "20180710.746";
+        version = "20180727.1501";
         src = fetchFromGitHub {
           owner = "joostkremers";
           repo = "pandoc-mode";
-          rev = "f1fa01d3fd079a82c0561e6227b5e984910ec458";
-          sha256 = "0yy7h87zykdc8mrvam7rqjfibzbvci2phxzipq0cfq1mcq7ypdlm";
+          rev = "a3f25fec81022a76bc6aab236548d352b2a420cf";
+          sha256 = "0dfqgan4qwk826jjzyhdlihfq9sxnxgays83fb2150v29yjyj0n6";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/4e39cd8e8b4f61c04fa967def6a653bb22f45f5b/recipes/pandoc-mode";
@@ -73240,12 +74335,12 @@
       melpaBuild {
         pname = "parinfer";
         ename = "parinfer";
-        version = "20180718.16";
+        version = "20180904.144";
         src = fetchFromGitHub {
           owner = "DogLooksGood";
           repo = "parinfer-mode";
-          rev = "04dd27a3f39d6dbe8e4e717a6f7dac26c9798bd8";
-          sha256 = "1n1ggfzyvnw9w3acqahiv4pnzhlmvr5rzv15m3iw35w77yki87x4";
+          rev = "a7c041454e05ec2b88333a73e72debaa671ed596";
+          sha256 = "14ld7r2867aqa1rzk75bzf6qivqd1va4ilawggnxbbx5j2d82r1d";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/470ab2b5cceef23692523b4668b15a0775a0a5ba/recipes/parinfer";
@@ -73318,12 +74413,12 @@
       melpaBuild {
         pname = "parsec";
         ename = "parsec";
-        version = "20171202.2031";
+        version = "20180729.1716";
         src = fetchFromGitHub {
           owner = "cute-jumper";
           repo = "parsec.el";
-          rev = "212f848d95c2614a86f135c1bf3de15ef0e09805";
-          sha256 = "11qr9i55530pzmiwilfazaqxcjw8sx1iry19jvzdqsffjqvx2mnl";
+          rev = "2cbbbc2254aa7bcaa4fb5e07c8c1bf2f381dba26";
+          sha256 = "1g1s8s45g3kkbi3h7w0pmadmzdswb64mkdvdpg2lihg341kx37gm";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/248aaf5ff9c98cd3e439d0a26611cdefe6b6c32a/recipes/parsec";
@@ -73560,12 +74655,12 @@
       melpaBuild {
         pname = "password-store-otp";
         ename = "password-store-otp";
-        version = "20170928.18";
+        version = "20180814.2310";
         src = fetchFromGitHub {
           owner = "volrath";
           repo = "password-store-otp.el";
-          rev = "a39a64a91de36e87b852339635bd3c5fb0e32441";
-          sha256 = "0gb48blvnn6ci2wl45z81p41ny7vbgl610hqy6b2hyr2171qjd60";
+          rev = "1819cd88463cd98a5be9a63273b09202dc2bba63";
+          sha256 = "1p53bpwbkjfq4b7znqy0283f7rv7hj4lpcrd9vcvwby6vz4312j7";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/fc89d02554a6ff150ad42634879073892f3e88be/recipes/password-store-otp";
@@ -73973,14 +75068,14 @@
         ename = "pcmpl-homebrew";
         version = "20170110.1609";
         src = fetchFromGitHub {
-          owner = "hiddenlotus";
+          owner = "kaihaosw";
           repo = "pcmpl-homebrew";
           rev = "d001520fec4715c9a4c73f02fd948bac371cc50a";
           sha256 = "0mw8w2jd9qgyhxdbnvjays5q6c83i0sb3diizrkq23axprfg6d70";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/7fabdb05de9b8ec18a3a566f99688b50443b6b44/recipes/pcmpl-homebrew";
-          sha256 = "11yd18s79iszp8gas97hqpa0b0whgh7dvlyci3nd4z28467p83v8";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/pcmpl-homebrew";
+          sha256 = "1mfkg9i2hqq8mkhnc8yzc9br9wlhjv17vdvjzwhkybcbmhqf2qkm";
           name = "recipe";
         };
         packageRequires = [];
@@ -74001,14 +75096,14 @@
         ename = "pcmpl-pip";
         version = "20171201.33";
         src = fetchFromGitHub {
-          owner = "hiddenlotus";
+          owner = "kaihaosw";
           repo = "pcmpl-pip";
           rev = "8b001b579fc015f80ee0e4f3211058b830bf7c47";
           sha256 = "0f8s2gn82dhyrnv0j688697xy0ig2yhn5m94gwhcllxq5a3yhbdg";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/7fabdb05de9b8ec18a3a566f99688b50443b6b44/recipes/pcmpl-pip";
-          sha256 = "19a3np5swpqvrx133yvziqnr2pvj8zi0b725j8kxhp2bj1g1c6hr";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/pcmpl-pip";
+          sha256 = "17nmgq4wgv4yl2rsdf32585hfa58j0825mzzajrlwgmjiqx9i778";
           name = "recipe";
         };
         packageRequires = [ f s seq ];
@@ -74441,12 +75536,12 @@
       melpaBuild {
         pname = "persp-fr";
         ename = "persp-fr";
-        version = "20180103.642";
+        version = "20180801.27";
         src = fetchFromGitHub {
           owner = "rocher";
           repo = "persp-fr";
-          rev = "aeb3b5de6135269091bb9aa0396973766c27fc88";
-          sha256 = "0l6hlgn54iw2f6ry0gw79rsbz1r4svxf2xwffi580vi68wrcnvf2";
+          rev = "3f536440b120499464106fd25f182d7580192870";
+          sha256 = "0bnplxv6igry7ak3wvn2b88zm4aarv35z4z5q38x52k4zac94rl8";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/8e09213dddf003a1275eafb767431a507ecf7639/recipes/persp-fr";
@@ -74601,12 +75696,12 @@
       melpaBuild {
         pname = "pfuture";
         ename = "pfuture";
-        version = "20180715.524";
+        version = "20180908.404";
         src = fetchFromGitHub {
           owner = "Alexander-Miller";
           repo = "pfuture";
-          rev = "e39d0d2953a5db7d9f567596865239012e506ac4";
-          sha256 = "0nd1asv8a0iqjvgaaxy4pyyfxcyk3rlyxndia78rzskkl53dqrc6";
+          rev = "7e312204f97d4fd3d602d3cf72e8340513a9ab85";
+          sha256 = "0h9gskp7d8l1a44g9ks49akrp8ansyfpnlg6mfqb255nnrnc2vdj";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/5fb70c9f56a58b5c7a2e8b69b191aa2fc7c9bcc8/recipes/pfuture";
@@ -75123,16 +76218,16 @@
       melpaBuild {
         pname = "php-mode";
         ename = "php-mode";
-        version = "20180608.250";
+        version = "20180828.2220";
         src = fetchFromGitHub {
-          owner = "ejmr";
+          owner = "emacs-php";
           repo = "php-mode";
-          rev = "cf1907be2ddca079146ef258ba95d525f17787e3";
-          sha256 = "1dpyid4qp8lak6pvhjh1p5nwbgz67nq1yhwir54k4wk39r1g6i08";
+          rev = "16b3f7c1ae894c74b4f59026470b0183bf1bc188";
+          sha256 = "0mc5nk8kabk6fp0xdbwwwhahxi6j7padm09g094hjgm2v293prxs";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/7cdbc35fee67b87b87ec72aa00e6dca77aef17c4/recipes/php-mode";
-          sha256 = "1lc4d3fgxhanqr3b8zr99z0la6cpzs2rksj806lnsfw38klvi89y";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/2e41dc09413eaa93704e7d9f55bd2bd01f658806/recipes/php-mode";
+          sha256 = "1gqmcynz2wx09xjnk70db1a2pbnrh1vfm5vd6mks1s10y59bh0zq";
           name = "recipe";
         };
         packageRequires = [ cl-lib emacs ];
@@ -75231,12 +76326,12 @@
       melpaBuild {
         pname = "phpactor";
         ename = "phpactor";
-        version = "20180721.1022";
+        version = "20180823.438";
         src = fetchFromGitHub {
           owner = "emacs-php";
           repo = "phpactor.el";
-          rev = "a09b2eb76228b39a9a6823dc6782e44bafc4b974";
-          sha256 = "10x999z1rlnjdvnpq4c7gf6n19a47nj954y3vbshb15d6wzxd923";
+          rev = "3a37596c4f663419520f864d682250116252abcd";
+          sha256 = "0jwxpygs0fw8261saafifpznck9ykzs68dpq9hr7m09qsgr4gcbi";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/d67b98ecd541c227c011615f67d7a0890f5e1af3/recipes/phpactor";
@@ -75313,12 +76408,12 @@
       melpaBuild {
         pname = "phpunit";
         ename = "phpunit";
-        version = "20171127.301";
+        version = "20180829.738";
         src = fetchFromGitHub {
           owner = "nlamirault";
           repo = "phpunit.el";
-          rev = "a13706733f98be3639c47311fc820b3b50f4bc33";
-          sha256 = "0vfvybjinj0knim4ax0xspz7zr3n2y9ap1lvwqx1gwydr06w4jrl";
+          rev = "fe6bc91c3bd8b329c6d26ad883a025f06b5121ee";
+          sha256 = "1silbfmv85r73pbc7f5cm4znc6644ngihfnhibk1fgp9j0rf7ahc";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/0670b42c0c998daa7bf01080757976ac3589ec06/recipes/phpunit";
@@ -75416,12 +76511,12 @@
       melpaBuild {
         pname = "picpocket";
         ename = "picpocket";
-        version = "20180610.359";
+        version = "20180914.1119";
         src = fetchFromGitHub {
           owner = "johanclaesson";
           repo = "picpocket";
-          rev = "ce4b6ed088384f2414af82e8e4eae5b92c2874bf";
-          sha256 = "15vpbcv83mc4j1pvrk7xic0klh2bl9gzg2xxs7c2lmnix52hy8mv";
+          rev = "f0f9947a097b2a02901d6d0bb427c7a6e02f2af7";
+          sha256 = "0fnafiax2xb97vkvr8fd2x3rpnw72661k0p163mkvp1zp59zy6is";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/e88dc89311d4bfe82dc15f22b84c4b76abb3fd69/recipes/picpocket";
@@ -75858,12 +76953,12 @@
       melpaBuild {
         pname = "pkgbuild-mode";
         ename = "pkgbuild-mode";
-        version = "20180609.931";
+        version = "20180723.531";
         src = fetchFromGitHub {
           owner = "juergenhoetzel";
           repo = "pkgbuild-mode";
-          rev = "b19759d8c4fcb27ac3455d277ad8b81886f0ad97";
-          sha256 = "038xgic6ngvgsbn3ss3nvhdy3bhq425sas5lgg8z1nql8f4rz2kb";
+          rev = "358911236a070c5ec4e79887d8f45e67e141c547";
+          sha256 = "1kksj7w5kyhwc5bd1ys8f41ahai6xm8sdi3i4hj5bxbkskzsix6n";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/ca7bf43ef8893bf04e9658390e306ef69e80a156/recipes/pkgbuild-mode";
@@ -75909,12 +77004,12 @@
       melpaBuild {
         pname = "plan9-theme";
         ename = "plan9-theme";
-        version = "20180606.2035";
+        version = "20180804.741";
         src = fetchFromGitHub {
           owner = "john2x";
           repo = "plan9-theme.el";
-          rev = "4c9455033e877b7ce464bc99de32f310cf0bcda9";
-          sha256 = "0arbhpms38i75a9dpqn9krv64bx47jaiccanqdgzf4slcb8kvk6z";
+          rev = "4c1050b8ed42e0f99ef64c77ec370a786bd0003c";
+          sha256 = "1l2bgdip617zkd9470rja1qyijpc896dvmc6dgclvaz1ajgjwa9j";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/cdc4c2bafaa09e38edd485a9091db689fbda2fe6/recipes/plan9-theme";
@@ -75953,26 +77048,27 @@
           license = lib.licenses.free;
         };
       }) {};
-    plantuml-mode = callPackage ({ fetchFromGitHub
+    plantuml-mode = callPackage ({ emacs
+                                 , fetchFromGitHub
                                  , fetchurl
                                  , lib
                                  , melpaBuild }:
       melpaBuild {
         pname = "plantuml-mode";
         ename = "plantuml-mode";
-        version = "20170819.1033";
+        version = "20180816.312";
         src = fetchFromGitHub {
           owner = "skuro";
           repo = "plantuml-mode";
-          rev = "5a2e8d0dd2ba9286fc3c82d8689d25050290f68d";
-          sha256 = "1gcv5gmps371wd2sjbq4g5p2yj2ip8lpn81lypwb5xavqa7gjhlv";
+          rev = "82ab084c8631e70b089448ace72525f647af4f10";
+          sha256 = "0jcsbswpg41r27i5xb5lvw17n1kndwl8df9iwyhpm26jh2i2hpyv";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/38e74bb9923044323f34473a5b13867fe39bed25/recipes/plantuml-mode";
           sha256 = "03srbg34512vxcqn95q4r7h2aqbqq0sd5c9ffnbx2a75vsblqc6h";
           name = "recipe";
         };
-        packageRequires = [];
+        packageRequires = [ emacs ];
         meta = {
           homepage = "https://melpa.org/#/plantuml-mode";
           license = lib.licenses.free;
@@ -76415,12 +77511,12 @@
       melpaBuild {
         pname = "pocket-reader";
         ename = "pocket-reader";
-        version = "20180719.1453";
+        version = "20180819.1307";
         src = fetchFromGitHub {
           owner = "alphapapa";
           repo = "pocket-reader.el";
-          rev = "baef400c607cb192fac9157d3f6ce5e1573628bd";
-          sha256 = "12j1za5d98svll26xi8igxk0zh8vz4i0bbscx8m39gn0grh5kmnb";
+          rev = "0eb2e678b3fdc8899e420e6ecca03a2ada4b6283";
+          sha256 = "0060h0g2992iw030qp5fr81gl0cac43dj9w2apzslp7dqmk3d9df";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/835a7bf2f72987183e9d15ada7ae747fb5715c11/recipes/pocket-reader";
@@ -76476,12 +77572,12 @@
       melpaBuild {
         pname = "poet-theme";
         ename = "poet-theme";
-        version = "20180603.1523";
+        version = "20180913.7";
         src = fetchFromGitHub {
           owner = "kunalb";
           repo = "poet";
-          rev = "fddb662bfc55c535e5b13b3368e430916d8be70c";
-          sha256 = "1dicjjh68rs1mzzgy81s1phjbdc5mirwxb3ym8y1yirpb2hj4bal";
+          rev = "a419b8faa60c07a1445da3868e88035651137cbd";
+          sha256 = "1wbwsq04ld959f7x1h591wrp7a9zpcx9fq8g7da3ihipphvqccp0";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/40bbe29dee56f7989d8e87c03f4842e2b191acc3/recipes/poet-theme";
@@ -76596,6 +77692,142 @@
           license = lib.licenses.free;
         };
       }) {};
+    poly-R = callPackage ({ emacs
+                          , fetchFromGitHub
+                          , fetchurl
+                          , lib
+                          , melpaBuild
+                          , polymode }:
+      melpaBuild {
+        pname = "poly-R";
+        ename = "poly-R";
+        version = "20180906.1329";
+        src = fetchFromGitHub {
+          owner = "polymode";
+          repo = "poly-R";
+          rev = "b0518a2768740f97bdc65bf6291241ef143b7abd";
+          sha256 = "1ip1awfpq20m6rqxqmsprgfyji9i5np24x2q3fqk8y2pbfigpbaf";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3058351c4500fdcbe7f40b4c96ac8d6de9bbeb1d/recipes/poly-R";
+          sha256 = "1v2was6pdynwm22b4n2hkwyrr0c0iir9kp1wz4hjab8haqxz68ii";
+          name = "recipe";
+        };
+        packageRequires = [ emacs polymode ];
+        meta = {
+          homepage = "https://melpa.org/#/poly-R";
+          license = lib.licenses.free;
+        };
+      }) {};
+    poly-erb = callPackage ({ emacs
+                            , fetchFromGitHub
+                            , fetchurl
+                            , lib
+                            , melpaBuild
+                            , polymode }:
+      melpaBuild {
+        pname = "poly-erb";
+        ename = "poly-erb";
+        version = "20180906.1354";
+        src = fetchFromGitHub {
+          owner = "polymode";
+          repo = "poly-erb";
+          rev = "187f9594251b4d15dd52f6ff838439df9b217267";
+          sha256 = "0xbb8bz98mj2glhnqhb3jgkwgglmf9hzilhnvq265hza00mkg28p";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3058351c4500fdcbe7f40b4c96ac8d6de9bbeb1d/recipes/poly-erb";
+          sha256 = "01c1z2jll497k1y8835pp54n121y0gkyz1pdxcdjjqv7ia8jwfyy";
+          name = "recipe";
+        };
+        packageRequires = [ emacs polymode ];
+        meta = {
+          homepage = "https://melpa.org/#/poly-erb";
+          license = lib.licenses.free;
+        };
+      }) {};
+    poly-markdown = callPackage ({ emacs
+                                 , fetchFromGitHub
+                                 , fetchurl
+                                 , lib
+                                 , markdown-mode
+                                 , melpaBuild
+                                 , polymode }:
+      melpaBuild {
+        pname = "poly-markdown";
+        ename = "poly-markdown";
+        version = "20180912.1153";
+        src = fetchFromGitHub {
+          owner = "polymode";
+          repo = "poly-markdown";
+          rev = "fd9e89c08538326843dee6cf45331c674ae99237";
+          sha256 = "11f7lnfppis6a8sd3h69v2xs8ra7gzdfmkcbm2wq6sna6m3sn51k";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3058351c4500fdcbe7f40b4c96ac8d6de9bbeb1d/recipes/poly-markdown";
+          sha256 = "0pxai5x2vz6j742s3bpcy82dxja6441fsgclhz1hbv2ykazbm141";
+          name = "recipe";
+        };
+        packageRequires = [ emacs markdown-mode polymode ];
+        meta = {
+          homepage = "https://melpa.org/#/poly-markdown";
+          license = lib.licenses.free;
+        };
+      }) {};
+    poly-noweb = callPackage ({ emacs
+                              , fetchFromGitHub
+                              , fetchurl
+                              , lib
+                              , melpaBuild
+                              , polymode }:
+      melpaBuild {
+        pname = "poly-noweb";
+        ename = "poly-noweb";
+        version = "20180906.719";
+        src = fetchFromGitHub {
+          owner = "polymode";
+          repo = "poly-noweb";
+          rev = "cdc7227e1ba2ea9433487e66fd618699cf22c87d";
+          sha256 = "13dhf0a4cgrx3s0l12k0ynaiyl2q3b4alpy51rgznfvd45fvjnad";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3058351c4500fdcbe7f40b4c96ac8d6de9bbeb1d/recipes/poly-noweb";
+          sha256 = "1692js29wdjpxvcbcaxysbsq6pxdqr38frqf88ksldlz35cmy62b";
+          name = "recipe";
+        };
+        packageRequires = [ emacs polymode ];
+        meta = {
+          homepage = "https://melpa.org/#/poly-noweb";
+          license = lib.licenses.free;
+        };
+      }) {};
+    poly-org = callPackage ({ emacs
+                            , fetchFromGitHub
+                            , fetchurl
+                            , lib
+                            , melpaBuild
+                            , polymode }:
+      melpaBuild {
+        pname = "poly-org";
+        ename = "poly-org";
+        version = "20180902.1536";
+        src = fetchFromGitHub {
+          owner = "polymode";
+          repo = "poly-org";
+          rev = "7e958ddc40a4d713dec8ce6664b3ae44df2c536c";
+          sha256 = "05l7mdifhnirl2kyb62rpp7ij3r54qfa0z5m57yxx6sv0cdy8rx4";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3058351c4500fdcbe7f40b4c96ac8d6de9bbeb1d/recipes/poly-org";
+          sha256 = "1xrhdjmz3p5d3sgbfpmf6wksa1cpxqhy1wg17b5x8ah4w4yhpdca";
+          name = "recipe";
+        };
+        packageRequires = [ emacs polymode ];
+        meta = {
+          homepage = "https://melpa.org/#/poly-org";
+          license = lib.licenses.free;
+        };
+      }) {};
     poly-ruby = callPackage ({ emacs
                              , fetchFromGitHub
                              , fetchurl
@@ -76605,12 +77837,12 @@
       melpaBuild {
         pname = "poly-ruby";
         ename = "poly-ruby";
-        version = "20170802.648";
+        version = "20180905.229";
         src = fetchFromGitHub {
           owner = "knu";
           repo = "poly-ruby.el";
-          rev = "e6f50a92d29a5ff567d70cafa6621c4f89056d11";
-          sha256 = "1pdimvcrjq0k6a9kijcl6zmsmmvssdqsdkgcz14qs4444qly4l9b";
+          rev = "794ebb926ace23e9c1398da934701951432dcea2";
+          sha256 = "1ffm81hg1gah7hb9x556hda5g4j3gk4c986q9gaacvfizqak3gyy";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/68213703359324d09553a2164f1f6ecca7c16854/recipes/poly-ruby";
@@ -76623,6 +77855,34 @@
           license = lib.licenses.free;
         };
       }) {};
+    poly-slim = callPackage ({ emacs
+                             , fetchFromGitHub
+                             , fetchurl
+                             , lib
+                             , melpaBuild
+                             , polymode
+                             , slim-mode }:
+      melpaBuild {
+        pname = "poly-slim";
+        ename = "poly-slim";
+        version = "20180902.1537";
+        src = fetchFromGitHub {
+          owner = "polymode";
+          repo = "poly-slim";
+          rev = "cbf6ad711d4e166afc288eef95025d239b8d70ad";
+          sha256 = "1x9jkia12h5yrgm7hi5hlj0ffnmc4c9027wj16j528cv1hhs19l1";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3058351c4500fdcbe7f40b4c96ac8d6de9bbeb1d/recipes/poly-slim";
+          sha256 = "15nh0d8y79rwc24akxfpf346jypadfgjjn6vlgaj6xjnj7wsp7ax";
+          name = "recipe";
+        };
+        packageRequires = [ emacs polymode slim-mode ];
+        meta = {
+          homepage = "https://melpa.org/#/poly-slim";
+          license = lib.licenses.free;
+        };
+      }) {};
     polymode = callPackage ({ emacs
                             , fetchFromGitHub
                             , fetchurl
@@ -76631,16 +77891,16 @@
       melpaBuild {
         pname = "polymode";
         ename = "polymode";
-        version = "20170307.322";
+        version = "20180912.1154";
         src = fetchFromGitHub {
-          owner = "vspinu";
+          owner = "polymode";
           repo = "polymode";
-          rev = "0340f5e7e55235832e59673f027cc79a23cbdcd6";
-          sha256 = "057cybkq3cy07n5s332k071sjiky3mziy003lza4rh75mgqkwhmh";
+          rev = "056ce9ea6e55655065bbbf234a03a04f5d0ed21d";
+          sha256 = "0zd97i1n4vqzjsjgn8cmng14qf0843anxp93l88yqmn9f5qzb5l5";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/7fabdb05de9b8ec18a3a566f99688b50443b6b44/recipes/polymode";
-          sha256 = "0md02l7vhghvzplxa04sphimhphmksvmz079zykxajcvpm2rgwc8";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3058351c4500fdcbe7f40b4c96ac8d6de9bbeb1d/recipes/polymode";
+          sha256 = "15i9masklpy4iwskc7dzqjhb430ggn0496z4wb1zjj0b9xx4wj66";
           name = "recipe";
         };
         packageRequires = [ emacs ];
@@ -76760,12 +78020,12 @@
       melpaBuild {
         pname = "ponylang-mode";
         ename = "ponylang-mode";
-        version = "20171028.1356";
+        version = "20180804.821";
         src = fetchFromGitHub {
           owner = "SeanTAllen";
           repo = "ponylang-mode";
-          rev = "5e23459dc395eb77fa4c6cfa3d6c08b1b185a6df";
-          sha256 = "0iwdnv56200w53ba4f66vih7gha2nb36ajnvbqixc0byibwcsnc9";
+          rev = "963abdcdb398b71fb13a4f7d2ffde23eb20e2a23";
+          sha256 = "1h0y6x4h7higwdq569h2lk0iddd23c3csqjk7y5phvc0lq812xs0";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/7d51adec3c6519d6ffe9b3f7f8a86b4dbc2c9817/recipes/ponylang-mode";
@@ -77075,12 +78335,12 @@
       melpaBuild {
         pname = "posframe";
         ename = "posframe";
-        version = "20180708.702";
+        version = "20180901.1905";
         src = fetchFromGitHub {
           owner = "tumashu";
           repo = "posframe";
-          rev = "945761dc70c62a04747c4c892bdf5fc38670e50e";
-          sha256 = "051gr067ac0bd59nzs4jqjqc27kbb6gl8whs106jwn39z0b0ndri";
+          rev = "08ef38d27dad266fb3f666890df4994db2346427";
+          sha256 = "056vkjgm9c875ngkzbmm4s7rnzj1hf59jzzkk1ma9fahc7yfinmi";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/fa3488f2ede1201faf4a147313456ed90271f050/recipes/posframe";
@@ -77364,12 +78624,12 @@
       melpaBuild {
         pname = "prescient";
         ename = "prescient";
-        version = "20180702.1140";
+        version = "20180823.1838";
         src = fetchFromGitHub {
           owner = "raxod502";
           repo = "prescient.el";
-          rev = "18ddbe85e040dcf6fa9aeba8c8ce9d143921423a";
-          sha256 = "1jaw3awjs1w65nclas891gramr2ib3svy8sph989wjbmlbg377zh";
+          rev = "1e0db9451e75f0db29668bebe98dfa747c6b4bcf";
+          sha256 = "0zm9phc4cv7ldgyngcj84fxc1j0nh12c05lxiwv0n1xb8wc6awvf";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/ec02349e31531c347e4a43fbde56ae4386898cc6/recipes/prescient";
@@ -77493,14 +78753,14 @@
         ename = "pretty-mode";
         version = "20160614.1146";
         src = fetchFromGitHub {
-          owner = "akatov";
+          owner = "pretty-mode";
           repo = "pretty-mode";
           rev = "500085206e25b98d00b9ec996f91c87ba569c4ce";
           sha256 = "0m7ii971zxlz8a9yx2ljf9fmd8k6hc9w1q8mi5xi32v9viccjabs";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/4a2fe9feae4c1f007e51272a97917a63dcf6bbe5/recipes/pretty-mode";
-          sha256 = "1zxi4nj7vnchiiz1ndx17b719a1wipiqniykzn4pa1w7dsnqg21f";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/pretty-mode";
+          sha256 = "0zm6azbl70qmq2ybi576wfs3mx0ny54mf97b94ac501miv4fv0mq";
           name = "recipe";
         };
         packageRequires = [];
@@ -77984,12 +79244,12 @@
       melpaBuild {
         pname = "projectile";
         ename = "projectile";
-        version = "20180721.352";
+        version = "20180910.2240";
         src = fetchFromGitHub {
           owner = "bbatsov";
           repo = "projectile";
-          rev = "06f7148ad5168476879c11dcacc02e76439a0226";
-          sha256 = "167libx4b0xgnrz5xafbpylig4jmmn4dmqwqqcrf9953p37pn8ga";
+          rev = "0944c25d7679621cef1473ebb81cb560e9547a34";
+          sha256 = "0vw94x9n8cq9sr3w9jwazhvv8g17fif2f5sk2fcdmzdkwg3wxbq9";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/ca7bf43ef8893bf04e9658390e306ef69e80a156/recipes/projectile";
@@ -78154,12 +79414,12 @@
       melpaBuild {
         pname = "projectile-ripgrep";
         ename = "projectile-ripgrep";
-        version = "20180301.651";
+        version = "20180914.800";
         src = fetchFromGitHub {
           owner = "nlamirault";
           repo = "ripgrep.el";
-          rev = "1f4338eeeb4bb3084a4b43762fa69a2c93ddff85";
-          sha256 = "0im6l8gn3msl5jks3qif0jmi358kj46a50p2lirpjh6rnilmnanq";
+          rev = "93eca9138f6d6eea1af92f476c797ce19fa573d9";
+          sha256 = "0b1pa7srl1qmxaylv6iqy7rn4ajv9l87agpjrni01al01z6jfk1x";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/195f340855b403128645b59c8adce1b45e90cd18/recipes/projectile-ripgrep";
@@ -78294,12 +79554,12 @@
       melpaBuild {
         pname = "projector";
         ename = "projector";
-        version = "20180712.1549";
+        version = "20180724.1122";
         src = fetchFromGitHub {
           owner = "waymondo";
           repo = "projector.el";
-          rev = "aeecd317b3031834569d2cd51171e377eacd0685";
-          sha256 = "1nnggqrla6w58ll19fh01fndhssqx7l1blw21r8j9rv1vvjmvf3p";
+          rev = "d4aad9449960457932c19123c7ea2d60a67d1cca";
+          sha256 = "1zj9kg99allzb1hlz646hhhq3d0spvs26hc3y3pxykr58s611lrv";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/420ffea4549f59677a16c1ee89c77b866487e302/recipes/projector";
@@ -78443,6 +79703,32 @@
           license = lib.licenses.free;
         };
       }) {};
+    proof-general = callPackage ({ emacs
+                                 , fetchFromGitHub
+                                 , fetchurl
+                                 , lib
+                                 , melpaBuild }:
+      melpaBuild {
+        pname = "proof-general";
+        ename = "proof-general";
+        version = "20180901.1008";
+        src = fetchFromGitHub {
+          owner = "ProofGeneral";
+          repo = "PG";
+          rev = "65d69a7a6a4a5aa5518fd55671d58b0b4a350fe2";
+          sha256 = "0a2b4lsyqmh7vv4jr1awnqimpmi7p0c8zq71pvcii6bbaj9x5351";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/135c8f2a04739145b500b8742a697907e398d270/recipes/proof-general";
+          sha256 = "10zif9ax4d3m8sa9y2xqz7g24xa2r3m2x5l0zqa06wm4afq29p87";
+          name = "recipe";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/proof-general";
+          license = lib.licenses.free;
+        };
+      }) {};
     prop-menu = callPackage ({ cl-lib ? null
                              , emacs
                              , fetchFromGitHub
@@ -79488,12 +80774,12 @@
       melpaBuild {
         pname = "pyim";
         ename = "pyim";
-        version = "20180712.640";
+        version = "20180910.2113";
         src = fetchFromGitHub {
           owner = "tumashu";
           repo = "pyim";
-          rev = "b0ad82aa86124d74f9dfbdcad24199e111e5445c";
-          sha256 = "03dq9mnz5mdbk3q9id0i4wf41r9ap3p5avihd0f4m77sspjfn9ix";
+          rev = "bdc8d921ae4d0f96716954c8734a2d0620aec809";
+          sha256 = "0iabp7x3za0w6a5yv7rcvz32d8qvwyxxw90n138v1z2a6753fc8k";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/151a0af91a58e27f724854d85d5dd9668229fe8d/recipes/pyim";
@@ -79878,12 +81164,12 @@
       melpaBuild {
         pname = "python-mode";
         ename = "python-mode";
-        version = "20180721.1147";
+        version = "20180814.21";
         src = fetchFromGitLab {
           owner = "python-mode-devs";
           repo = "python-mode";
-          rev = "acb7714fd24ce06e1800fb955d547d367c64439d";
-          sha256 = "1bmd0qc7qbzpxfg0wj4fs4qmdqdjar2zn8ljgr845j7qbxd0hcav";
+          rev = "2353ed7b039693e70b39bd829f01d235b23fbbd3";
+          sha256 = "0rc1kqz2b6r6b6wvbvlrhgcc7dxs6hml01hb4plmgsnqsi8hx4g7";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/82861e1ab114451af5e1106d53195afd3605448a/recipes/python-mode";
@@ -79909,12 +81195,12 @@
       melpaBuild {
         pname = "python-pytest";
         ename = "python-pytest";
-        version = "20180614.253";
+        version = "20180725.446";
         src = fetchFromGitHub {
           owner = "wbolster";
           repo = "emacs-python-pytest";
-          rev = "1ddb1ec183872dbcf383a4cc60b60944aaba7727";
-          sha256 = "190ccqvdnxdsslsdn7c2b3a2377jrrpi4gj8rdbbksmjyr20gbf2";
+          rev = "09ad688df207ee9b02c990d3897a9e2841931d97";
+          sha256 = "18v7kxdhrayxg2pgbysm0y47xpdvwa15fmazpkfg0q8dfp2j3022";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/d95442748827911e082a55f4fd7c348a3757e274/recipes/python-pytest";
@@ -79996,12 +81282,12 @@
       melpaBuild {
         pname = "python-x";
         ename = "python-x";
-        version = "20180218.1447";
+        version = "20180802.1042";
         src = fetchFromGitLab {
           owner = "wavexx";
           repo = "python-x.el";
-          rev = "35d6719953e809a07c0bb8f770deb5fa712d00e5";
-          sha256 = "1s24a9ji549nhlanm13gq7ghnz0zj6mwpbbmbqk8igsw3arx2nvr";
+          rev = "74d8c7eb824846de94705b1e74ee03ef109868d1";
+          sha256 = "00vy3qqkg3zzvjk1cmkl72nmvjdhrccybd36ggnzszq73szcl7n2";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/c1cf98dff029d494007fe25d29bd8bcfecc5b8e6/recipes/python-x";
@@ -80024,12 +81310,12 @@
       melpaBuild {
         pname = "pythonic";
         ename = "pythonic";
-        version = "20180624.2212";
+        version = "20180807.2120";
         src = fetchFromGitHub {
           owner = "proofit404";
           repo = "pythonic";
-          rev = "838eaf47c23628c5e88a59796bbe4653c57bf5c0";
-          sha256 = "11gq0crq9ng6wy15kpv3zgahczyzv8clakwal1mvb6b5jq6ndmb5";
+          rev = "4eb5ad0d80308495c8a369c4268825d3ae2d3807";
+          sha256 = "1mm2np4vrqj60ni4d9rvhg8v9ihban5j85sl8w9l6ca1j3wf20jv";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/5589c55d459f15717914061d0f0f4caa32caa13c/recipes/pythonic";
@@ -80049,12 +81335,12 @@
       melpaBuild {
         pname = "pyvenv";
         ename = "pyvenv";
-        version = "20180720.214";
+        version = "20180831.147";
         src = fetchFromGitHub {
           owner = "jorgenschaefer";
           repo = "pyvenv";
-          rev = "5824c8986bc3d21b1b0ab6a00d396bedbe1506b2";
-          sha256 = "0qdaxfl6bhxg41r6fhpqwzjrxmjnp7pznrk1r3zfyris60ih91cq";
+          rev = "921ae2356b6a111ac0b7e44fd04cba8e95cbe936";
+          sha256 = "04kxx8fjqzzdl2rn56vn9jac2v3irpmr9dfckwfa3r4gslvipybm";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/e37236b89b9705ba7a9d134b1fb2c3c003953a9b/recipes/pyvenv";
@@ -80204,10 +81490,10 @@
       melpaBuild {
         pname = "quelpa";
         ename = "quelpa";
-        version = "20180711.1338";
+        version = "20180907.1532";
         src = fetchgit {
           url = "https://framagit.org/steckerhalter/quelpa.git";
-          rev = "66c760b43eb6158f520df4e514f1d9c8e4ddee71";
+          rev = "571ee896e00fd0b90373b94bf2689e1b9741a60e";
           sha256 = "0qz5zfj24cmaw903xszf8zg4hmas6q8k6bx5c10vq45rwqkdcgva";
         };
         recipe = fetchurl {
@@ -80231,11 +81517,11 @@
       melpaBuild {
         pname = "quelpa-use-package";
         ename = "quelpa-use-package";
-        version = "20180617.2356";
+        version = "20180812.329";
         src = fetchgit {
           url = "https://framagit.org/steckerhalter/quelpa-use-package.git";
-          rev = "54ebc63607647fe4f26b56519d81e18f0e70a689";
-          sha256 = "1f007lkjb42rlfsnwkj61fdqyncw4587x8a9qbhq583bfh2d3p5c";
+          rev = "90fc1eadf3f7ff3a3bef07d229a807aba2f7beef";
+          sha256 = "1ij5fqnd0ypn66v8b4s2577b47ninmk085hnjjc4fav6a5gd5csr";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/a496196d405c152600d44ef4aa28557f489c542c/recipes/quelpa-use-package";
@@ -80523,12 +81809,12 @@
       melpaBuild {
         pname = "racket-mode";
         ename = "racket-mode";
-        version = "20180719.854";
+        version = "20180830.918";
         src = fetchFromGitHub {
           owner = "greghendershott";
           repo = "racket-mode";
-          rev = "0f75097771a8ad9b9356c915ba877353aff1e7f6";
-          sha256 = "0ms31sjxxww93j0f731ww7yj3adl2scpr3m1zx4w5094mi69babg";
+          rev = "2b1c7d476dc71b1707fd5222f963ab6509e50805";
+          sha256 = "0qdjn4xvnkamfzn6aq1lmmfmzw9ddj6p2azxpwi8cxzz1irdlydp";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/7ad88d92cf02e718c9318d197dd458a2ecfc0f46/recipes/racket-mode";
@@ -81267,12 +82553,12 @@
       melpaBuild {
         pname = "real-auto-save";
         ename = "real-auto-save";
-        version = "20180107.1850";
+        version = "20180802.2147";
         src = fetchFromGitHub {
           owner = "chillaranand";
           repo = "real-auto-save";
-          rev = "d813632c1e754539cc92953ac4c3609105f9af58";
-          sha256 = "0gz0w7zxl865shz9mf5xv8xi5mjq969600jqh4laazvhyk32skmg";
+          rev = "fb1477244fe365cc79c6946507fde2caf71af600";
+          sha256 = "0g4a3cmfngx59byn22ihq6izpjg1srpgn3gkx13jdsxdwxrwbg14";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/525039a3dc29190829bf50d608ef09bc4a8557af/recipes/real-auto-save";
@@ -81299,14 +82585,14 @@
         ename = "realgud";
         version = "20180710.1953";
         src = fetchFromGitHub {
-          owner = "rocky";
-          repo = "emacs-dbgr";
+          owner = "realgud";
+          repo = "realgud";
           rev = "da2a74b50a770a2c1166656a05ba9d132a2a5c73";
           sha256 = "0w5lbwjaraw11sj36a9hsywa187g97hnvksrd6wbf8prbfwhghlx";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/7ca56f05df6c8430a5cbdc55caac58ba79ed6ce5/recipes/realgud";
-          sha256 = "0qmvd35ng1aqclwj3pskn58c0fi98kvx9666wp3smgj3n88vgy15";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/realgud";
+          sha256 = "0wbcclgd23d91c7lx8yx7qigcbc0ywr4hjh7h49pi2avy1cm2q0v";
           name = "recipe";
         };
         packageRequires = [
@@ -81333,14 +82619,14 @@
         ename = "realgud-byebug";
         version = "20180308.1923";
         src = fetchFromGitHub {
-          owner = "rocky";
+          owner = "realgud";
           repo = "realgud-byebug";
           rev = "de603d58aa9ef72a2619247a0234fccf6bc2cc9a";
           sha256 = "1hk2z7axy1v5yvx4xgkisfk00varq5rf8j88f0l63ywylyw1fwhl";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/7ca56f05df6c8430a5cbdc55caac58ba79ed6ce5/recipes/realgud-byebug";
-          sha256 = "1m4pqnvnnfzq7b9bv5fkz70pifklddwqrwbwnrfyiawx9vdgrpz9";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/realgud-byebug";
+          sha256 = "1akv9raa6yb5h4lsvz7mxlnd9l7adg2rpgw7ski6036n6facn18a";
           name = "recipe";
         };
         packageRequires = [ cl-lib emacs realgud ];
@@ -81361,14 +82647,14 @@
         ename = "realgud-old-debuggers";
         version = "20170316.31";
         src = fetchFromGitHub {
-          owner = "rocky";
+          owner = "realgud";
           repo = "realgud-old-debuggers";
           rev = "1e1d573a6ba731afbe68c1309a316457ca3fbb94";
           sha256 = "1gk8k9lqbvqq4ngw0ffp3sqhkaj23n54m3ndh2ba9gvlmx7mxm7g";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/260b4d5a85c380dda0f7bb0370e3ffa8cc3c0275/recipes/realgud-old-debuggers";
-          sha256 = "0iwi1byfwcpviaizdw9wzdcjlbk35ql4wfzj0ynh331g0hmibhs9";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/realgud-old-debuggers";
+          sha256 = "14kig9yxss9nfc0cc54ph80pbdrmh1mdazypiwxbnj2nk1dk3qsv";
           name = "recipe";
         };
         packageRequires = [ cl-lib emacs realgud ];
@@ -81389,14 +82675,14 @@
         ename = "realgud-pry";
         version = "20160805.745";
         src = fetchFromGitHub {
-          owner = "rocky";
+          owner = "realgud";
           repo = "realgud-pry";
           rev = "fca36075a223f6a4a643764199babe3d1dfde2ac";
           sha256 = "08jnav5v5q1mwgk9x100magm3jcprzfhmx8z6x8vcmp7xf79n1pp";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/7ca56f05df6c8430a5cbdc55caac58ba79ed6ce5/recipes/realgud-pry";
-          sha256 = "1p5ijig5rczndcykllq0vy6w4askwl0yd8b5fqg7yl5yx45r8xgs";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/realgud-pry";
+          sha256 = "1f8qap30r26gg33i76474zk6fs3r9qjf7jrxpm4xwpbjraggqy3z";
           name = "recipe";
         };
         packageRequires = [ cl-lib emacs realgud ];
@@ -81415,14 +82701,14 @@
         ename = "realgud-rdb2";
         version = "20160303.43";
         src = fetchFromGitHub {
-          owner = "rocky";
+          owner = "realgud";
           repo = "realgud-ruby-debugger2";
           rev = "e63eeed131517a9e8225f972c9f6c975c8121e41";
           sha256 = "0skaw5fzvqk56mfk3ciy9n85vznq1sxv6w575v3jd80w2dns4yay";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/7ca56f05df6c8430a5cbdc55caac58ba79ed6ce5/recipes/realgud-rdb2";
-          sha256 = "0wqvgb3h2b0ys76sq2z462cjv0fajqc41f7wqvf53wfcs2zw4l9y";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/realgud-rdb2";
+          sha256 = "16pk034g26xnbsz0w9z8p76jiaraz8lvbf5hf0mmg1f5f4xlinz7";
           name = "recipe";
         };
         packageRequires = [ realgud ];
@@ -81439,12 +82725,12 @@
       melpaBuild {
         pname = "reason-mode";
         ename = "reason-mode";
-        version = "20180722.437";
+        version = "20180727.1158";
         src = fetchFromGitHub {
           owner = "reasonml-editor";
           repo = "reason-mode";
-          rev = "5777cce583039df82a49c6fc8b57c99f127b2565";
-          sha256 = "0baxdq02i0lwk2ll3jddfz5w1paq496vd3if2p7vfipgf79y0n8g";
+          rev = "4123ee5b3dccf8986e94d5f51220a544deee0b93";
+          sha256 = "0w5957fniyx58a4qnmabrkisz8302f3hmsip7gg2r272fbf29nzc";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/f9f1a18c13601f3a4fd7b1bbfe7d5da07746e492/recipes/reason-mode";
@@ -81457,6 +82743,32 @@
           license = lib.licenses.free;
         };
       }) {};
+    reazon = callPackage ({ emacs
+                          , fetchFromGitHub
+                          , fetchurl
+                          , lib
+                          , melpaBuild }:
+      melpaBuild {
+        pname = "reazon";
+        ename = "reazon";
+        version = "20180908.2010";
+        src = fetchFromGitHub {
+          owner = "nickdrozd";
+          repo = "reazon";
+          rev = "3735592366666f6fccae37ce2f4ca07c0d3b5da9";
+          sha256 = "1z9s55vzc0ckap3ngsbvw5f5wy3sf053w9j46xzx8qcvz0zgr76j";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/77020b6ea36a4115bdddbc9599fe4f4193ecc29d/recipes/reazon";
+          sha256 = "1lymdc1lnwr7s8s15mnjcavxdyqncy2rkfdj571lf1a37y52jcj1";
+          name = "recipe";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/reazon";
+          license = lib.licenses.free;
+        };
+      }) {};
     rebecca-theme = callPackage ({ emacs
                                  , fetchFromGitHub
                                  , fetchurl
@@ -81777,12 +83089,12 @@
       melpaBuild {
         pname = "redshank";
         ename = "redshank";
-        version = "20180128.1348";
+        version = "20180729.2107";
         src = fetchFromGitHub {
           owner = "emacsattic";
           repo = "redshank";
-          rev = "f3eef7d4891570e6bcb74eb52c73edb765a639b8";
-          sha256 = "00mihmjd0amr9wzb3qsz69bp7y5iqx9vvh1hg77i57zlm88x6ma6";
+          rev = "d059c5841044aa163664f8bf87c1d981bf0a04fe";
+          sha256 = "1545z1dd85zg8sg2r5r5gdnmgxbxwjvl5xklx5nvpd0gbxlwbpqk";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/2677a5cf74ebace6510517f47eaa43b35f736683/recipes/redshank";
@@ -82298,12 +83610,12 @@
       melpaBuild {
         pname = "replace-with-inflections";
         ename = "replace-with-inflections";
-        version = "20170911.245";
+        version = "20180830.2335";
         src = fetchFromGitHub {
           owner = "knu";
           repo = "replace-with-inflections.el";
-          rev = "e286036a5d1dbac06a72a1e831b2a8d9cad27238";
-          sha256 = "1szbps1k3na3w9djkqxm3s1anm12505ajr7ay9j7pmd00qf75379";
+          rev = "d9201e047856492f282da65459b28aba25998dbb";
+          sha256 = "09yvn489z33hww7mi1flh344faxrpbkzqhm0i6xb2rridcj7acqh";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/7892eb506b8f4260bde4be2805bf3b2d594ab640/recipes/replace-with-inflections";
@@ -82343,7 +83655,7 @@
         };
       }) {};
     req-package = callPackage ({ dash
-                               , fetchFromGitHub
+                               , fetchFromGitLab
                                , fetchurl
                                , ht
                                , lib
@@ -82353,16 +83665,16 @@
       melpaBuild {
         pname = "req-package";
         ename = "req-package";
-        version = "20180506.2350";
-        src = fetchFromGitHub {
+        version = "20180121.2100";
+        src = fetchFromGitLab {
           owner = "edvorg";
           repo = "req-package";
-          rev = "f97d7531a3e7526f2d7b008868eb647c80d0de5d";
-          sha256 = "1yl1ap5jlrkvhw47c1xyb9q4khqqnz38y5rvbvw4zib1ik9vwhmc";
+          rev = "0c0ac7451149dac6bfda2adfe959d1df1c273de6";
+          sha256 = "0sx3kw1gpliifbc0gh2z1lvig68v3gwqjbj0izgn77js8kqxad84";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/f58a801f0791566d0c39493a5f82ff0d15d7ab41/recipes/req-package";
-          sha256 = "1438f60dnmc3a2dh6hd0wslrh25nd3af797aif70kv6qc71h87vf";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/aa5bc1909f807ec03ad441d78013ba8626cd410a/recipes/req-package";
+          sha256 = "1zjhc6f9qcb3j72k1llp6vym25lxnvq1jgqgmnrjxxwc4fhxx595";
           name = "recipe";
         };
         packageRequires = [ dash ht log4e use-package ];
@@ -82719,12 +84031,12 @@
       melpaBuild {
         pname = "reykjavik-theme";
         ename = "reykjavik-theme";
-        version = "20160109.0";
+        version = "20180823.844";
         src = fetchFromGitHub {
           owner = "mswift42";
           repo = "reykjavik-theme";
-          rev = "0d04f21a8d4c98accd278a1ba360ea3fa7cac812";
-          sha256 = "07gcz2zmz1hhrailad9jfjflkyf1lkm8cdyvnd752064dkdja7y7";
+          rev = "2cd0043ae6d046f812a95bb26398ea23141beccc";
+          sha256 = "0rk0fw5b1lz7if779h3bngc86iix8v9k8bz3zw8icwfwmjsgg1fh";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/10bf153e2b84050304ba2532f5eb41c7a4e7632f/recipes/reykjavik-theme";
@@ -82747,12 +84059,12 @@
       melpaBuild {
         pname = "rg";
         ename = "rg";
-        version = "20180626.1041";
+        version = "20180915.350";
         src = fetchFromGitHub {
           owner = "dajva";
           repo = "rg.el";
-          rev = "ca5afceb3dd84590ffadd525a9643befbae0959f";
-          sha256 = "03f13vcknlwdbq4997q82z6gl718mv83k88rnynh1m4v4hcpwv09";
+          rev = "d1f4ec40cabc24524306d9a58590a3ad3c49b9cf";
+          sha256 = "0fzzw7c5ydja20n3grwmv3rl6q3f5z2prcnl8xny1l5nr4iv2r4r";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/9ce1f721867383a841957370946f283f996fa76f/recipes/rg";
@@ -82876,12 +84188,12 @@
       melpaBuild {
         pname = "rimero-theme";
         ename = "rimero-theme";
-        version = "20180630.515";
+        version = "20180901.648";
         src = fetchFromGitHub {
           owner = "yveszoundi";
           repo = "emacs-rimero-theme";
-          rev = "dc6917b7404d3f79044046c231a195c40c9d0a88";
-          sha256 = "0zjs76lp4mpds7hkxbks2lj77ifbnzgq74xdl6minfcxc3wjkbvi";
+          rev = "a2e706c2b34f749019979a133f08a2d94a1104b3";
+          sha256 = "1kcvvaizggzi7s3dlh611bkirdf6y89kzddc273drdks705s01wh";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/c6d07b0c021001195e6e0951c890566a5a784ce1/recipes/rimero-theme";
@@ -83008,12 +84320,12 @@
       melpaBuild {
         pname = "rjsx-mode";
         ename = "rjsx-mode";
-        version = "20180624.1758";
+        version = "20180913.1524";
         src = fetchFromGitHub {
           owner = "felipeochoa";
           repo = "rjsx-mode";
-          rev = "8bdb234f2b66a2ce0563b676447ebb8db37d593f";
-          sha256 = "047mfmj6rklxiqg43ji4gb5qr86z8q1717imsjffrkbjq3iqlw6j";
+          rev = "68fe4c0e0277220e04f420e1968b9d251b4b75d1";
+          sha256 = "1x187pna2dbx8wqiy1w3ffs8wggnn33s5rcakqmailin6z2vkdch";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/b83be7efdef2457e1320fe3dec46484fbd20263c/recipes/rjsx-mode";
@@ -83289,12 +84601,12 @@
       melpaBuild {
         pname = "rtags";
         ename = "rtags";
-        version = "20180619.823";
+        version = "20180909.1049";
         src = fetchFromGitHub {
           owner = "Andersbakken";
           repo = "rtags";
-          rev = "015cde3b77d9971e890f25b54cccfdb2582970fa";
-          sha256 = "00fs8181nrgnx9bcsc479rhgvxx7hh8byxnzi9g6kl4ak1cmc7jx";
+          rev = "ce3bdfd90a73dd891b450e60c6a7683ce4f724f5";
+          sha256 = "0ijhz6p6xd0xbbk6b5sz1ynr7fbh81yv7r82q6ic3pb5a737sc6k";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/3dea16daf0d72188c8b4043534f0833fe9b04e07/recipes/rtags";
@@ -83370,14 +84682,14 @@
         ename = "rubocop";
         version = "20170311.2211";
         src = fetchFromGitHub {
-          owner = "bbatsov";
+          owner = "rubocop-hq";
           repo = "rubocop-emacs";
           rev = "980bedb455e3551d35a212fae515c054888907c1";
           sha256 = "152ara2p59imry2ymfnk5mycbc07rblcmfmqjgm5fijb2x94xv8p";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/00f2cf3e8e28bce5c26c86aba54390ffff48d7da/recipes/rubocop";
-          sha256 = "114azl0fasmnq0fxxyiif3363mpg8qz3ynx91in5acqzh902fa3q";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/rubocop";
+          sha256 = "07ma4fv015wzpj5j4rdb0ckwwmhkxs3k5vy33qxgwghqmn6xby6x";
           name = "recipe";
         };
         packageRequires = [ emacs ];
@@ -83877,24 +85189,23 @@
                                    , fetchFromGitHub
                                    , fetchurl
                                    , lib
-                                   , melpaBuild
-                                   , rust-mode }:
+                                   , melpaBuild }:
       melpaBuild {
         pname = "rust-playground";
         ename = "rust-playground";
-        version = "20180507.1032";
+        version = "20180807.458";
         src = fetchFromGitHub {
           owner = "grafov";
           repo = "rust-playground";
-          rev = "2f22ec74e4158984e0e70cf0bf728bbd42eb661b";
-          sha256 = "1p80zghdk3hsfj36z30sfkllqr3b4yi279zkg0la9kfg6785x2cg";
+          rev = "092c8b11d62dea23953a004744833092bac85fe1";
+          sha256 = "0n2c1pjbvy46ic0k84jd3ffwwb5hibjqc1wv7knzkldi5agigfsh";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/rust-playground";
           sha256 = "0ml0zr9vz2vjd9wr0v706w4v4qqfzpa56rdzfak2kb5llx53j89v";
           name = "recipe";
         };
-        packageRequires = [ emacs rust-mode ];
+        packageRequires = [ emacs ];
         meta = {
           homepage = "https://melpa.org/#/rust-playground";
           license = lib.licenses.free;
@@ -83906,26 +85217,39 @@
                           , fetchFromGitHub
                           , fetchurl
                           , lib
+                          , magit
+                          , markdown-mode
                           , melpaBuild
                           , projectile
                           , s
+                          , spinner
                           , xterm-color }:
       melpaBuild {
         pname = "rustic";
         ename = "rustic";
-        version = "20180722.1209";
+        version = "20180913.838";
         src = fetchFromGitHub {
           owner = "brotzeit";
           repo = "rustic";
-          rev = "15e4d58ded3436b4da4b1a54e5f527ca3d5de22b";
-          sha256 = "1jra1l0bz7bxkgsc0jgi9xmf1vipvzazkg40m58hhlbq1hynxm8z";
+          rev = "78143a0dcb0a11b37d011b06c4b16eb0ab4f9bb6";
+          sha256 = "00pz9snlp4m0mga700wqnjiikfngfpmis25kndvyb21s1vlrnrb0";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/716c14a2ed8f5817c09c1ff530a4980c17b44bb3/recipes/rustic";
           sha256 = "13bwrdqmm6xb34k8r72c0r3b9aym5dwsalp63bkfh9k9kq9hic0n";
           name = "recipe";
         };
-        packageRequires = [ dash emacs f projectile s xterm-color ];
+        packageRequires = [
+          dash
+          emacs
+          f
+          magit
+          markdown-mode
+          projectile
+          s
+          spinner
+          xterm-color
+        ];
         meta = {
           homepage = "https://melpa.org/#/rustic";
           license = lib.licenses.free;
@@ -84408,12 +85732,12 @@
       melpaBuild {
         pname = "sayid";
         ename = "sayid";
-        version = "20180404.1139";
+        version = "20180901.203";
         src = fetchFromGitHub {
           owner = "bpiel";
           repo = "sayid";
-          rev = "8ea70573e6eb1a0d1a450fd501f38c2cf26ce27f";
-          sha256 = "02yp3h16yzys27lxcxn7qzb23z95vjdaxhinz0swdixgr5qwwc77";
+          rev = "a6d319ff55dc2f06d873d43f3924339d1dffd4c5";
+          sha256 = "1a3l7l47sncmizs3d0zj1qais89yzfksvki5smry02l4q3nzk52h";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/2bd2e05f9c9328d8f9ae434c86697a4a04af8b0d/recipes/sayid";
@@ -84587,14 +85911,14 @@
         ename = "scheme-here";
         version = "20141028.18";
         src = fetchFromGitHub {
-          owner = "hiddenlotus";
+          owner = "kaihaosw";
           repo = "scheme-here";
           rev = "fccf668bb8f1d481be6e70fffa2b52ea681e32a5";
           sha256 = "1m5aqcm4pd0m0rz3r09i52q55nlx3ga7hca9xlzf0gwcyyn8xzyg";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/7fabdb05de9b8ec18a3a566f99688b50443b6b44/recipes/scheme-here";
-          sha256 = "04lmkf3zc396anlp9s9irdkqavsc0lzlpzprswd4r2kp4xp7kcks";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/scheme-here";
+          sha256 = "17r77b99nh03v79r97fzr3pyvigp4w8gr41k6zzj82xka2swhr2h";
           name = "recipe";
         };
         packageRequires = [];
@@ -84743,12 +86067,12 @@
       melpaBuild {
         pname = "scpaste";
         ename = "scpaste";
-        version = "20171101.922";
+        version = "20180822.851";
         src = fetchFromGitHub {
           owner = "technomancy";
           repo = "scpaste";
-          rev = "10559d6b0feb34dc60f039a237052adcca77b5d9";
-          sha256 = "10z8jpi6f3mhq8ymxcv1lc291sqr2kzvgwx8mlmck0bmlys12pqc";
+          rev = "9757bb5b38f2ec9200391864a9f6971a14b60fc9";
+          sha256 = "0sp8rkaylwpibdxvvxdb3zf4fi8klfcmkkbd7hdll36dwc3yk75v";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/9007fb32097bc63731c3615dae9342fcef2558a2/recipes/scpaste";
@@ -84924,14 +86248,14 @@
         ename = "scratches";
         version = "20151005.2116";
         src = fetchFromGitHub {
-          owner = "cheunghy";
+          owner = "zhangkaiyulw";
           repo = "scratches";
           rev = "9441afe6396ca38f08029123fab5d87429cbf315";
           sha256 = "10hmy0p4pkrzvvyisk4rjc6hqqyk2sir1rszqgmkhrdywl010vlc";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/3691aaaed27d0cf67af417f75fbb693ab856bd47/recipes/scratches";
-          sha256 = "0409v1wi10q48rrh8iib6dw9icmswfrpjx9x7xcma994z080d2fy";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/scratches";
+          sha256 = "116bjy1m35h83r2c354i2xk1br87nmvd99kbzax0wgkkkcjff8c4";
           name = "recipe";
         };
         packageRequires = [ dash f ];
@@ -85369,12 +86693,12 @@
       melpaBuild {
         pname = "semi";
         ename = "semi";
-        version = "20180204.1448";
+        version = "20180825.201";
         src = fetchFromGitHub {
           owner = "wanderlust";
           repo = "semi";
-          rev = "44aa82ecf78273d8ff4c84f2121b885fb7149f41";
-          sha256 = "1wl12gsz9pn4wzgbffv3ymr49kcxjggc2jx19kxqyjmwdnw004yf";
+          rev = "d445dbdf39bab9aaf00582506357f25f1b78d76d";
+          sha256 = "10bd95fd9sf3fn7x1vrfl7nra5sg4df8v39bl7yc3i9gh9yiiy9q";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/e78849c2d1df187b7f0ef4c34985a341e640ad3e/recipes/semi";
@@ -85641,12 +86965,12 @@
       melpaBuild {
         pname = "sesman";
         ename = "sesman";
-        version = "20180719.213";
+        version = "20180903.1126";
         src = fetchFromGitHub {
           owner = "vspinu";
           repo = "sesman";
-          rev = "43b0c9ef2a9ba7608d27c24fb0daedc1deabf179";
-          sha256 = "1w0fy74snc7gy7cmxfmlbvmdgpywi3grj5ph72liinxlpl1cw218";
+          rev = "5a9727ee82a74035fa6aee1e4b94829bd4260f0c";
+          sha256 = "0afnbgdq6cbiy2q4nqfvfg2xq7mhlyzfdcw8adbnql4x8a9z94ih";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/31110e9bd82ad9c817e6cb597fa9c26c4cdc93ed/recipes/sesman";
@@ -86149,12 +87473,12 @@
       melpaBuild {
         pname = "shen-elisp";
         ename = "shen-elisp";
-        version = "20170427.1502";
+        version = "20180915.958";
         src = fetchFromGitHub {
           owner = "deech";
           repo = "shen-elisp";
-          rev = "ffe17dee05f75539cf5e4c59395e4c7400ececaa";
-          sha256 = "10dq3qj1q8i6f604zws97xrvjxwrdcjj3ygh6xpna00cvf40llc2";
+          rev = "e719fa0fe45926d098676b5c73bae62598b90451";
+          sha256 = "1ki3jxk00gpyb6b1rfln591mm7nmndn8rdxh5gj73bhp7i4pz5ln";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/shen-elisp";
@@ -86514,12 +87838,12 @@
       melpaBuild {
         pname = "shx";
         ename = "shx";
-        version = "20180528.1408";
+        version = "20180909.859";
         src = fetchFromGitHub {
           owner = "riscy";
           repo = "shx-for-emacs";
-          rev = "207e6cd292a26fb1162072e2e20df9aa5efd61ef";
-          sha256 = "1hnjmnnmg6axgw4z57rmc8h8wpnbi2rwyr4bv2sdrkk12d3i2kp5";
+          rev = "758ad3ab21daa055982ee5d165522a0de7948e93";
+          sha256 = "0p923v4iqmyr4fhr2h5ydfaqplkhqllig6dcgp0bjvj7n9v8zpng";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/7a2ff78ae3c4289ebf9e06cdfd8f8082c395a16f/recipes/shx";
@@ -86564,12 +87888,12 @@
       melpaBuild {
         pname = "sicp";
         ename = "sicp";
-        version = "20171028.1523";
+        version = "20180823.522";
         src = fetchFromGitHub {
           owner = "webframp";
           repo = "sicp-info";
-          rev = "8e13f7ff4695a05471486d37a6c5f979a5b965fb";
-          sha256 = "15krfnj2qz4j2ns4a05a4wwaknhx77m4jhazg7zvz9xm4b4j1qm8";
+          rev = "33acfa10a058aa65b6b22084a5b86a82410d794e";
+          sha256 = "1l8isy8kicr4xa6iilxj0cf0f5rqmkidzr6pigql74204db56jhd";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1363d7b6e95375ac63f07eed2b3947f4f81bc9ba/recipes/sicp";
@@ -86927,12 +88251,12 @@
       melpaBuild {
         pname = "simpleclip";
         ename = "simpleclip";
-        version = "20170803.540";
+        version = "20180811.908";
         src = fetchFromGitHub {
           owner = "rolandwalker";
           repo = "simpleclip";
-          rev = "d461c462c237cd896553adb468cd77499d0d26ad";
-          sha256 = "1dfa1sa7rbadj36nbzyxbpbvkdlh1s5n0mx6hxn52psqin1ra6yn";
+          rev = "7fff9a1e574466878b5f91e9b56b16e490045aaa";
+          sha256 = "02bj8b4xg930wzrjam0569k5cj1y0gkv28sjy567skdiw5zl14nn";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/7c921e27d6aafc1b82d37f6beb8407840034377a/recipes/simpleclip";
@@ -87276,12 +88600,12 @@
       melpaBuild {
         pname = "slime";
         ename = "slime";
-        version = "20180719.1821";
+        version = "20180903.1409";
         src = fetchFromGitHub {
           owner = "slime";
           repo = "slime";
-          rev = "289e4d7117b034dea668a6d28f9ddb7eb80f57ed";
-          sha256 = "0sanswnqyk50hgkr0p0zhxm3dfg72p4xcv7ivf2vivfqq68pyvym";
+          rev = "114bc26170523f3215b319baa35569ba6b3e6917";
+          sha256 = "1v8xxdq7djjqbvxyh2zcx5rifxfdgnyxl5bg2vbsjry7lysqs7jr";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/14c60acbfde13d5e9256cea83d4d0d33e037d4b9/recipes/slime";
@@ -87453,6 +88777,32 @@
           license = lib.licenses.free;
         };
       }) {};
+    slow-keys = callPackage ({ emacs
+                             , fetchFromGitHub
+                             , fetchurl
+                             , lib
+                             , melpaBuild }:
+      melpaBuild {
+        pname = "slow-keys";
+        ename = "slow-keys";
+        version = "20180830.2159";
+        src = fetchFromGitHub {
+          owner = "manuel-uberti";
+          repo = "slow-keys";
+          rev = "b93ad77f9fc1d14e080d7d64864fc9cb222248b6";
+          sha256 = "1s4yk6w9fqf6hmimjcq8r7b54v7f2hz3isihiaidj3sv5zclhflw";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/5d16756967dd9077399b92cde2ddd7784739b693/recipes/slow-keys";
+          sha256 = "03p0qx8a3g8mapjhdf9pjp3n0ng2pxmizpqn87wk8mbc8cmlwk2w";
+          name = "recipe";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/slow-keys";
+          license = lib.licenses.free;
+        };
+      }) {};
     slstats = callPackage ({ cl-lib ? null
                            , emacs
                            , fetchFromGitHub
@@ -87488,16 +88838,16 @@
       melpaBuild {
         pname = "sly";
         ename = "sly";
-        version = "20180722.1611";
+        version = "20180906.558";
         src = fetchFromGitHub {
-          owner = "capitaomorte";
+          owner = "joaotavora";
           repo = "sly";
-          rev = "4b260fdda880f8287327c0c0055e2f18fd91201d";
-          sha256 = "05s248657hgi4sp8g1d5zsq1x4nwxvairzx17psqkwflxc11cpv6";
+          rev = "25255c1756ac4b78d60db9a6bb979ccb2c5cdf29";
+          sha256 = "109srjg00r87fcsd9vj2iilkph9r716hria4zmixxh4z8rgiww12";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/79e7213183df892c5058a766b5805a1854bfbaec/recipes/sly";
-          sha256 = "1pmyqjk8fdlzwvrlx8h6fq0savksfny78fhmr8r7b07pi20y6n9l";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/4150455d424326667390f72f6edd22b274d9fa01/recipes/sly";
+          sha256 = "18as0g1fi1x6lgjzd9rn2s6iw3n00q3nxi99lchjnn004pwsv8kq";
           name = "recipe";
         };
         packageRequires = [ emacs ];
@@ -87516,14 +88866,14 @@
         ename = "sly-hello-world";
         version = "20160119.636";
         src = fetchFromGitHub {
-          owner = "capitaomorte";
+          owner = "joaotavora";
           repo = "sly-hello-world";
           rev = "1bfcca692b6ec0670ed309ffe29eb9384397c183";
           sha256 = "1fxsv83fcv5l7cndsysd8salvfwsabvd84sm7zli2ksf678774gp";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/d52ef4b249a42432eed6a260a758e26b50bc31d6/recipes/sly-hello-world";
-          sha256 = "03ybjgczp6ssk4hmwd486vshlk7ql27k1lyhmvk26gmrf554z90n";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/4150455d424326667390f72f6edd22b274d9fa01/recipes/sly-hello-world";
+          sha256 = "0mry5r0qc2w9k31kifqfc9slmh8mp2pz44qb36f41i3znckf7xy4";
           name = "recipe";
         };
         packageRequires = [ sly ];
@@ -87543,14 +88893,14 @@
         ename = "sly-macrostep";
         version = "20160119.434";
         src = fetchFromGitHub {
-          owner = "capitaomorte";
+          owner = "joaotavora";
           repo = "sly-macrostep";
           rev = "b0830871e2bd96ed58876aed6b49f1328d78a3cb";
           sha256 = "00lw6hkxs71abjyi7nhzi8j6n55jyhzsp81ycn6f2liyp4rmqgi7";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/74a0acfc6261d1c9e62ece0397f6b4d873ef5bb7/recipes/sly-macrostep";
-          sha256 = "1i004mb0bg13j3zhdsjz1795dh0ry8winzvdghr1wardc9np60h7";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/4150455d424326667390f72f6edd22b274d9fa01/recipes/sly-macrostep";
+          sha256 = "0gg9r5np2008593n1igq5chda1a3x1iblj0r4mqnnxa0r1hdsw3j";
           name = "recipe";
         };
         packageRequires = [ macrostep sly ];
@@ -87569,14 +88919,14 @@
         ename = "sly-named-readtables";
         version = "20150817.816";
         src = fetchFromGitHub {
-          owner = "capitaomorte";
+          owner = "joaotavora";
           repo = "sly-named-readtables";
           rev = "f3c28a2e636bd1776b6c7dbc563ef5080bed9f5c";
           sha256 = "1yw1fg1vc6l85v7d6bg16lknxpg7ns1gfw0bxyzyb698zmwzsv60";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/7e5a29c194bb7fc1a82131b7a9bd4c465660a2bd/recipes/sly-named-readtables";
-          sha256 = "11ymzbj1ji7avfjqafj9p5zx0m4y1jfjcmyanpjq1frdcz639ir9";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/4150455d424326667390f72f6edd22b274d9fa01/recipes/sly-named-readtables";
+          sha256 = "0wy0z9m8632qlcxb4pw3csc52yaq7dj7gdf3pbg0wb67f32ihihz";
           name = "recipe";
         };
         packageRequires = [ sly ];
@@ -87595,14 +88945,14 @@
         ename = "sly-quicklisp";
         version = "20170112.135";
         src = fetchFromGitHub {
-          owner = "capitaomorte";
+          owner = "joaotavora";
           repo = "sly-quicklisp";
           rev = "8a9e3c0c07c6861ec33b338cc46ac12e7ce6a477";
           sha256 = "17xx79s2nx8prmg0xhfs9i8sdprbysaajc8k4131lnahj65v159l";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/330d04e4e79eee221bcffb8be3e46e097306b175/recipes/sly-quicklisp";
-          sha256 = "1hpcz84g9c6g0x8qal02xgjj02gxqz3bysyz0l59jxiga0m634v8";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/4150455d424326667390f72f6edd22b274d9fa01/recipes/sly-quicklisp";
+          sha256 = "0j0qkvs2v563dz2rd70dfmd0qpdwicymx59zv3gn57z5a8m14866";
           name = "recipe";
         };
         packageRequires = [ sly ];
@@ -87848,12 +89198,12 @@
       melpaBuild {
         pname = "smart-jump";
         ename = "smart-jump";
-        version = "20180709.2205";
+        version = "20180821.1839";
         src = fetchFromGitHub {
           owner = "jojojames";
           repo = "smart-jump";
-          rev = "1b216416a977dc94a6f3b5e40adde7b502d97c2f";
-          sha256 = "1rrd4x2pcy473gbha2dysawzqywlfp8yhl6xq6z8s2ggp9c825dn";
+          rev = "7424267c88afcd113ef445272dde292ae5ff0fed";
+          sha256 = "0flfla7jyw18jqvdpvpm9b1wph39cqa3dddyi15narg014sad76q";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/52f29e14e61b28cd1637ca5d6bd878d91a71251f/recipes/smart-jump";
@@ -87875,14 +89225,14 @@
         ename = "smart-mark";
         version = "20150911.1910";
         src = fetchFromGitHub {
-          owner = "cheunghy";
+          owner = "zhangkaiyulw";
           repo = "smart-mark";
           rev = "d179cdc3f53001a5ce99d5095f493cdf3a792567";
           sha256 = "0kd3rh6idlaqand9i6sc44s1iahg5jdhqs9jpvivxlycj6z9p7m8";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/7a0a35a06aedbfe6f66d9d8498d325540367d3ea/recipes/smart-mark";
-          sha256 = "1vv65sa0pwl407mbxcp653kycgx8jz87n6wshias1dp9lv21pj6v";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/smart-mark";
+          sha256 = "0kx34983qqxkx2afql1daj155294dkbinw861lhx537614fq7wmn";
           name = "recipe";
         };
         packageRequires = [];
@@ -87900,12 +89250,12 @@
       melpaBuild {
         pname = "smart-mode-line";
         ename = "smart-mode-line";
-        version = "20180422.1459";
+        version = "20180731.2041";
         src = fetchFromGitHub {
           owner = "Malabarba";
           repo = "smart-mode-line";
-          rev = "96e7ea0caba37fec485ea8b683afb4aed46d1d24";
-          sha256 = "0rrb1mgnj1hw92hl0m9ybvilrd070n6a44lb6jj42hk8ybb0cxh2";
+          rev = "9a81b51cd37fc5b6d47abfbb2b32f98f36a0fcfc";
+          sha256 = "055w1pcr96bfgbmig6ll2sgcisw82rf9dh4n8dhnsl75p32g1rcn";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1e6aed365c42987d64d0cd9a8a6178339b1b39e8/recipes/smart-mode-line";
@@ -88136,12 +89486,12 @@
       melpaBuild {
         pname = "smartparens";
         ename = "smartparens";
-        version = "20180717.335";
+        version = "20180912.1050";
         src = fetchFromGitHub {
           owner = "Fuco1";
           repo = "smartparens";
-          rev = "34b53320f4ac41a60d641c5363cd5e02db37089e";
-          sha256 = "1yv31wzf7wzkqpvmr3rdiphg4h7224bjfv5pr17gmgzjv9hlq3k2";
+          rev = "14a4d62b18da022bb7a4db4584dd82cda6d2f779";
+          sha256 = "11phg3fp6558hvv8fk17wf9k293kknnh2jciczh1c3yla7x0593c";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/bd98f85461ef7134502d4f2aa8ce1bc764f3bda3/recipes/smartparens";
@@ -88542,12 +89892,12 @@
       melpaBuild {
         pname = "snakemake-mode";
         ename = "snakemake-mode";
-        version = "20180519.1739";
+        version = "20180831.2150";
         src = fetchFromGitHub {
           owner = "kyleam";
           repo = "snakemake-mode";
-          rev = "8bc919296755ce58f52fd800ee21863c7aefb430";
-          sha256 = "1zdiy0w95f9wm27czwjzxqyb5v16q61l1q8xrahh471x9pij632s";
+          rev = "89caed9a05a9a18a21c312163b971795253678ac";
+          sha256 = "01517mqkvmw61kc2ain743nvybmjd9d3gjiicr5fha0a9qlf97f7";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/c3a5b51fee1c9e6ce7e21555faa355d118d34b8d/recipes/snakemake-mode";
@@ -88834,12 +90184,12 @@
       melpaBuild {
         pname = "solarized-theme";
         ename = "solarized-theme";
-        version = "20180621.1407";
+        version = "20180807.2239";
         src = fetchFromGitHub {
           owner = "bbatsov";
           repo = "solarized-emacs";
-          rev = "f829e99dd1508a1cdaf9146511012a33b0d4f68b";
-          sha256 = "1a83qsz41v208iasqwfnblgzhgjjwg1lkc0vgxndvq1kk2sj18dg";
+          rev = "d662ab1ff554cd083e29b5626fe3f28544b0d253";
+          sha256 = "1f2klyzv9jfka5sgybgg78d8fhvvsl4al4pp8z347hy8g3xy8rxh";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/cae2ac3513e371a256be0f1a7468e38e686c2487/recipes/solarized-theme";
@@ -88859,12 +90209,12 @@
       melpaBuild {
         pname = "solidity-mode";
         ename = "solidity-mode";
-        version = "20180721.1614";
+        version = "20180912.1454";
         src = fetchFromGitHub {
           owner = "ethereum";
           repo = "emacs-solidity";
-          rev = "d89dae03c9c6cb86f4e935081cb828c6c5c62830";
-          sha256 = "11n3z0ibgsw16r34ba8i6fl43b1hx4q7b6v6g12kmfpss86dvv1d";
+          rev = "1b71fd08998411b59c832aad0419cdfc71b19e92";
+          sha256 = "0i2fnln5na3jdd41js285jwwz7v8bjijpzdjp7i1lrv57yy90kn6";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/bb9df5ec0692352b6494d435d11166f4ea26c99e/recipes/solidity-mode";
@@ -88968,14 +90318,14 @@
         ename = "sos";
         version = "20141214.2003";
         src = fetchFromGitHub {
-          owner = "omouse";
+          owner = "rudolfolah";
           repo = "emacs-sos";
           rev = "2469bf1d7c47a55b0ffa8a6ceef0bb21252b3c3a";
           sha256 = "0zhz1j389jmfcxmzvp3gj2bkg996nk1mcf0sxw04wbyivh38hnql";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/36e02223b4ff9c0be4662991d734ca4a4e756f4b/recipes/sos";
-          sha256 = "1gkd0plx7152s3dj8a9lwlwh8bgs1m006s80l10agclx6aay8rvb";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/sos";
+          sha256 = "0d0n2h7lbif32qgz0z2c36536mrx36d22gq86xm7kmxday6iy19k";
           name = "recipe";
         };
         packageRequires = [ org ];
@@ -89334,12 +90684,12 @@
       melpaBuild {
         pname = "spacemacs-theme";
         ename = "spacemacs-theme";
-        version = "20180618.1129";
+        version = "20180817.604";
         src = fetchFromGitHub {
           owner = "nashamri";
           repo = "spacemacs-theme";
-          rev = "af8a6093cd729c158da0532a8345612956553c8b";
-          sha256 = "0890cdqacm2zri0mj9fdyyd5zplvl2p4gl499073qk076840l21f";
+          rev = "3e1768ec49f0d5e58a66d7a9238a4adb4e9e43b6";
+          sha256 = "18cv8inizksi2in232f6h237y58cf95zlly0zdjhyll179dczii5";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/6c8ac39214856c1598beca0bd609e011b562346f/recipes/spacemacs-theme";
@@ -90093,12 +91443,12 @@
       melpaBuild {
         pname = "srcery-theme";
         ename = "srcery-theme";
-        version = "20180623.619";
+        version = "20180825.436";
         src = fetchFromGitHub {
           owner = "srcery-colors";
           repo = "srcery-emacs";
-          rev = "b81c4ff3805e3857f77008982efe30f27b78e7e7";
-          sha256 = "1v7qlgdalff7m943zcgyg4da692g7sk18xj6l9zpwpnbxix8iirr";
+          rev = "ff83762f00c2d36f002c2aad1d939d96b6d04fb4";
+          sha256 = "1xi3cvlqim6vp7iv87481g0axcv9m2mnjrsmg7mdwz220zxkn42h";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/2654fc05f55c7fab7d550b7db1d187edc9ff0f42/recipes/srcery-theme";
@@ -90137,6 +91487,32 @@
           license = lib.licenses.free;
         };
       }) {};
+    srv = callPackage ({ emacs
+                       , fetchFromGitHub
+                       , fetchurl
+                       , lib
+                       , melpaBuild }:
+      melpaBuild {
+        pname = "srv";
+        ename = "srv";
+        version = "20180715.1259";
+        src = fetchFromGitHub {
+          owner = "legoscia";
+          repo = "srv.el";
+          rev = "b1eb7b109bc1c616dbf027429a90dc3b1a4263f1";
+          sha256 = "05kp8ajbqk7vxzkv23akyk2m7yg81pbrxpl3dsw67101sjazsybi";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6b0b7f22631e7749da484ced9192d8ae5e1be941/recipes/srv";
+          sha256 = "0xrgbi63vg0msxkcmcnvijkxa9y0s7613liqac7fs9514yvkbwin";
+          name = "recipe";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/srv";
+          license = lib.licenses.free;
+        };
+      }) {};
     ssass-mode = callPackage ({ emacs
                               , fetchFromGitHub
                               , fetchurl
@@ -90205,8 +91581,8 @@
           sha256 = "0895n7bss4wdydic1gflr03f2cwdyqywl16gvb599lpn288jhwvz";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/b9a9e4bd0205908bfb99762c7daaf3be276bb03a/recipes/ssh-agency";
-          sha256 = "0lci3fhl2p9mwilvq1njzy13dkq5cp5ighymf3zs4gzm3w0ih3h8";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/e608f40d00a3b2a80a6997da00e7d04f76d8ef0d/recipes/ssh-agency";
+          sha256 = "1b25fl1kk4mwsd25pg9s0lazlpmaa6s9wnfgvlqk8k65d7p7idzz";
           name = "recipe";
         };
         packageRequires = [ dash emacs ];
@@ -90248,12 +91624,12 @@
       melpaBuild {
         pname = "ssh-deploy";
         ename = "ssh-deploy";
-        version = "20180713.650";
+        version = "20180818.2246";
         src = fetchFromGitHub {
           owner = "cjohansson";
           repo = "emacs-ssh-deploy";
-          rev = "b13ba60ea175798cfd1395ab833082789724073d";
-          sha256 = "0fgcxvs2ngv65chnkb9w5rrak187xkwxiwmpc25iqvrrnrfr43s6";
+          rev = "67313e2c1c795317bf2bfb634705499757e4b889";
+          sha256 = "1j1hcyl3vsx4w8q6zyrsl572pxl6gmrznsjsblaxsn4qqh3h0c52";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ssh-deploy";
@@ -90765,12 +92141,12 @@
       melpaBuild {
         pname = "string-inflection";
         ename = "string-inflection";
-        version = "20180518.1707";
+        version = "20180827.601";
         src = fetchFromGitHub {
           owner = "akicho8";
           repo = "string-inflection";
-          rev = "a9de404b2ece932da9b1c9aa1c29dbf7cf506e76";
-          sha256 = "1km8xxb0zc3yll1yzlsrrz14ch3inblpq2nhglwp1wskqwdhwly5";
+          rev = "e9a50855a4c718592c28a5a892f164ecf46e39a8";
+          sha256 = "03kvp5xrv9p46m4w25jr5nvi801yafq5vxzif42y0dav7ifmmdfp";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/5c2e2b6dba8686236c2595475cfddac5fd700e60/recipes/string-inflection";
@@ -91094,12 +92470,12 @@
       melpaBuild {
         pname = "sudo-edit";
         ename = "sudo-edit";
-        version = "20180608.911";
+        version = "20180731.1208";
         src = fetchFromGitHub {
           owner = "nflath";
           repo = "sudo-edit";
-          rev = "185edd69729b2adc8dccd015266636dae2df83d3";
-          sha256 = "1rffxd2jjz40hjlsv7fh49pa24sym387d98sckkr95g3m9y1blvp";
+          rev = "cc3d478937b1accd38742bfceba92af02ee9357d";
+          sha256 = "1qv58x5j5a3v1s2ylhck1ykbfclq0mbi0gsvaql3nyv8cxazqlwl";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/3b08d4bbdb23b988db5ed7cb5a2a925b7c2e242e/recipes/sudo-edit";
@@ -91176,12 +92552,12 @@
       melpaBuild {
         pname = "suggest";
         ename = "suggest";
-        version = "20180722.350";
+        version = "20180725.1612";
         src = fetchFromGitHub {
           owner = "Wilfred";
           repo = "suggest.el";
-          rev = "06784aba76d2681456871bd79304b62b4957b411";
-          sha256 = "0qi4slfdx0x9z2rzd2ibcl2zjqcrxvnh672l5xkyhjh873f16xar";
+          rev = "ce7be778b0b32bf679e5929d013c310b061b5541";
+          sha256 = "1alb42drkc7wfn54nhaw07x6m2bpfdgkb6jcpl0z91kzgxb9kc7z";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/b9fd27e812549587dc2ec26bb58974177ff263ff/recipes/suggest";
@@ -91237,8 +92613,8 @@
           sha256 = "18qfcrr4xlwwhhaq7dwh31bbl84a53akgrw2c6lynnyyi4vk2wpq";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/bfd68b90234222dbf5907a29d506b6c4e61a372b/recipes/sunburn-theme";
-          sha256 = "09shmaaii0lfd52v49cazn91sj4jz2siqbanw682vi7zsl79jx9f";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/e608f40d00a3b2a80a6997da00e7d04f76d8ef0d/recipes/sunburn-theme";
+          sha256 = "07nz7vr0yzf5746d8khlzl6ghaj44yfp0ar9ylbpdpfj7rdx17sa";
           name = "recipe";
         };
         packageRequires = [ emacs ];
@@ -91512,12 +92888,12 @@
       melpaBuild {
         pname = "swap-regions";
         ename = "swap-regions";
-        version = "20180116.253";
+        version = "20180915.646";
         src = fetchFromGitHub {
           owner = "xuchunyang";
           repo = "swap-regions.el";
-          rev = "6e7a1bc68f11afe00809c8e27c13bca08393a91c";
-          sha256 = "02z552qsc96big3davdj3yaz6f4fg72ljpn7nvzccp2wwchzfa1c";
+          rev = "f4fd9880cf690e003fcde88dcf2b46adbbbb03cd";
+          sha256 = "1d45yanqk4w0idqwkrwig1dl22wr820k11r3gynv7an643k4wngp";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/6805c7710618ed1178ffd3488295d4d6b33e8ebe/recipes/swap-regions";
@@ -91570,14 +92946,14 @@
         ename = "swift-mode";
         version = "20180721.35";
         src = fetchFromGitHub {
-          owner = "chrisbarrett";
+          owner = "swift-emacs";
           repo = "swift-mode";
           rev = "d2f2f1da6085c6fad2709b951d6891dd139a6080";
           sha256 = "1ldf593qzbscwlngbabxb52kcpriwhglk95l82qs8y3q1x6aj0cw";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/19cb133191cd6f9623e99e958d360113595e756a/recipes/swift-mode";
-          sha256 = "1imr53f8agfza9zxs1h1mwyhg7yaywqqffd1lsvm1m84nvxvri2d";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/swift-mode";
+          sha256 = "103nix9k2agxgfpwyhsracixl4xvzqlgidd25r1fpj679hr42bg8";
           name = "recipe";
         };
         packageRequires = [ emacs seq ];
@@ -91621,12 +92997,12 @@
       melpaBuild {
         pname = "swiper";
         ename = "swiper";
-        version = "20180713.946";
+        version = "20180813.925";
         src = fetchFromGitHub {
           owner = "abo-abo";
           repo = "swiper";
-          rev = "93d51d6188956da2592c1458b68d7cef48d967ae";
-          sha256 = "024kj37xa4s49z8klcmn3a30zy3yzk5n9j9damzqmzd4d8klawi6";
+          rev = "2f5576ae9bfa7167a697dc34df05ca621d32b344";
+          sha256 = "0wl88ry7b1h2pkmhmlmmjz656sn9607w1ji9afvfwk7z0z8b2658";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/e64cad81615ef3ec34fab1f438b0c55134833c97/recipes/swiper";
@@ -91700,12 +93076,12 @@
       melpaBuild {
         pname = "switch-window";
         ename = "switch-window";
-        version = "20180623.1115";
+        version = "20180723.2118";
         src = fetchFromGitHub {
           owner = "dimitri";
           repo = "switch-window";
-          rev = "a5dc9a9c68ba77d86d7170f183ba1e003569ad8e";
-          sha256 = "0466lk1spk6bl1fnc0v7gwr71msccc25a3j7jzd7h0zssc2l403c";
+          rev = "ceade03eba1b735aefcac70eefbab6b582750c48";
+          sha256 = "0m1rs8chfifkkqa71c2i3s4fl9nyn74a6rk00nfylishvw2r9xvl";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/7d2204e3b53ade1e400e143ac219f3c7ab63a1e9/recipes/switch-window";
@@ -91810,12 +93186,12 @@
       melpaBuild {
         pname = "symbol-overlay";
         ename = "symbol-overlay";
-        version = "20180412.339";
+        version = "20180814.2040";
         src = fetchFromGitHub {
           owner = "wolray";
           repo = "symbol-overlay";
-          rev = "b76f510037eb8e0ea018272495f356c71ff5b758";
-          sha256 = "0dlb7rm4adm2ccqga5a1w6m2jvs4ics9ihf76hqyx4px9m9ca1ll";
+          rev = "a37404a6a0e76ee2033d3ab31c2248d30c89c63a";
+          sha256 = "0iy0hf7mkpbddwszq3lpsg0ns1sc1rm4pzcb3gbljx7syrian29q";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/c2a468ebe1a3e5a35ef40c59a62befbf8960bd7b/recipes/symbol-overlay";
@@ -92048,12 +93424,12 @@
       melpaBuild {
         pname = "syntactic-close";
         ename = "syntactic-close";
-        version = "20180722.935";
+        version = "20180909.141";
         src = fetchFromGitHub {
           owner = "emacs-berlin";
           repo = "syntactic-close";
-          rev = "128d5bf059512a55c77cac0e96a7775f38184139";
-          sha256 = "0l9hklj39p6rsl2dcw6pka39glkp6qvyccqdy7qcnwxmffy204m6";
+          rev = "902dd0aafe962d1577d0cba2db743ba73bdb2478";
+          sha256 = "135k2nffhh01hyapamwwqyd30mlpfxf3g470f9xbsi8rkvfq8k59";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/f2c15c0c8ee37a1de042a974c6daddbfa7f33f1d/recipes/syntactic-close";
@@ -92123,12 +93499,12 @@
       melpaBuild {
         pname = "system-packages";
         ename = "system-packages";
-        version = "20180516.1450";
+        version = "20180911.1548";
         src = fetchFromGitLab {
           owner = "jabranham";
           repo = "system-packages";
-          rev = "7f59e325e8607aeb3036c7fb1590b0f8e2caa063";
-          sha256 = "0k7jflghql0sa7my1qfzz0prpwk54rmb244k6jwhbgsyfsspr12l";
+          rev = "b408ce44f56b1b6a038b511691cef94e30653793";
+          sha256 = "1997da6jbpffq415dj8mglf2df5hxpifri3lrdhv9ciqy381xs1q";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/7d3c7af03e0bca3f834c32827cbcca29e29ef4db/recipes/system-packages";
@@ -92280,14 +93656,14 @@
         ename = "tab-jump-out";
         version = "20151005.1830";
         src = fetchFromGitHub {
-          owner = "cheunghy";
+          owner = "zhangkaiyulw";
           repo = "tab-jump-out";
           rev = "1c3fec1826d2891177ea78e4e7cce1dc67e83e51";
           sha256 = "0h7sfbca1nzcjylwl7zp25yj6wxnlx8g8a50zc6sg6jg4rggi2fm";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/3691aaaed27d0cf67af417f75fbb693ab856bd47/recipes/tab-jump-out";
-          sha256 = "0nlbyzym8l8g9w2xvykpcl5r449v30gal2k1dnz74rq4y8w4rh7n";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/tab-jump-out";
+          sha256 = "1p2hkj0d9hbiwbf746l3rad8a5x6hk97b0ajl6q6cwbmy2qm3cca";
           name = "recipe";
         };
         packageRequires = [ dash emacs ];
@@ -92303,12 +93679,12 @@
       melpaBuild {
         pname = "tabbar";
         ename = "tabbar";
-        version = "20160524.1401";
+        version = "20180726.1035";
         src = fetchFromGitHub {
           owner = "dholm";
           repo = "tabbar";
-          rev = "b6c285a7d59dcdb1f17716f0b60787922fa4be82";
-          sha256 = "1akvwm4dqq4ihphlsdn8d1mm08q923y2iqh15lvc0cd0hxp3ni0q";
+          rev = "82bbda31cbe8ef367dd6501c3aa14b7f2c835910";
+          sha256 = "01sw76wp8bvh21h30pkc3kjr98c8m6qid6misk1y7hkyld0bzxay";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/806420d75561cbeffbc1b387345a56c21cc20179/recipes/tabbar";
@@ -92537,12 +93913,12 @@
       melpaBuild {
         pname = "tao-theme";
         ename = "tao-theme";
-        version = "20171221.1001";
+        version = "20180911.1053";
         src = fetchFromGitHub {
           owner = "11111000000";
           repo = "tao-theme-emacs";
-          rev = "a97df8c51d77696787aaf55c67207f19c803fabe";
-          sha256 = "1djp4gbs6gr956a5hpkwh5laasc7pypqip32l7djd7405vx5ixp2";
+          rev = "0ec17c48f428fd3139fe5fdf34f2acb020410f1e";
+          sha256 = "070w0p31cbyi26zlssbj6qpw1s069vn2h7sam4hpa8q2dafxpr7i";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/94b70f11655944080507744fd06464607727ecef/recipes/tao-theme";
@@ -92562,12 +93938,12 @@
       melpaBuild {
         pname = "taskpaper-mode";
         ename = "taskpaper-mode";
-        version = "20180710.158";
+        version = "20180820.711";
         src = fetchFromGitHub {
           owner = "saf-dmitry";
           repo = "taskpaper-mode";
-          rev = "e822c44ebc5b15750ba68af67417ea5fe67641c0";
-          sha256 = "08ilrykg9ggksxwrkns0jkbjjvpzxb5w1l2s2krxnf4nj5d9x3qb";
+          rev = "b09e5d6afb2d3cd0b5349835d2c2ce79d6f00cbd";
+          sha256 = "176vll1c4j7hcjxsarl9668l2v0hpkdpxx7in45yvn89piniyg2l";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/f969b1cd58dfd22041a8a2b116db0f48e321e546/recipes/taskpaper-mode";
@@ -92670,17 +94046,18 @@
                       , melpaBuild }:
       melpaBuild {
         pname = "tc";
-        version = "20150113.1926";
+        ename = "tc";
+        version = "20180715.6";
         src = fetchFromGitHub {
-          owner = "kozo2";
+          owner = "kanchoku";
           repo = "tc";
-          rev = "6aa9d27c475be8d009adf9cd417f2cdf348a91e8";
-          sha256 = "1xpkrlfqb0np9zyxk41f3pxfkw98ii4q0xh8whq4llv5bmfxynzk";
+          rev = "91bd7e29322f7477c9adb6a816c6207dcb48f6c1";
+          sha256 = "1gb8zqnsaljm2qq2grk5y5pgrj8kg2cg0m4x6f6ngnf0bpfq4zjs";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/55fa57c74237ec7afe651d162228fae595579fe5/recipes/tc";
-          sha256 = "13qdnfslnik4f97lz9bxayyhgcp1knh5gaqy00ps863j3vpzjb9s";
-          name = "tc";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/9fddfc79ed2c614c33e90ba80f300912fdab88a3/recipes/tc";
+          sha256 = "05lnsaizlh4wqjkp0wqcm1756r9ia46as8zf01k8qsi0mm452g6q";
+          name = "recipe";
         };
         packageRequires = [];
         meta = {
@@ -92801,12 +94178,12 @@
       melpaBuild {
         pname = "telephone-line";
         ename = "telephone-line";
-        version = "20180601.1943";
+        version = "20180907.1507";
         src = fetchFromGitHub {
           owner = "dbordak";
           repo = "telephone-line";
-          rev = "1cc28a7811245e6f24234b36fc1004a1357a3df3";
-          sha256 = "1qjlil6xy6jacz1lhwz76n5xqx1xw2bqlnkijrka04v9gws42jaj";
+          rev = "3cb6ab4afcefec1e08d5ca70f9bd4320a37a7fcf";
+          sha256 = "055vzi64w6wpcrpghnx6nj74ww389av2g95253bs4sm8254b2kzj";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/9c998b70365fb0a210c3b9639db84034c7d45097/recipes/telephone-line";
@@ -92865,8 +94242,8 @@
           sha256 = "155yyinh342k8fz8g4xzz0glqkxkjl6p6y2wym6p12phk7v2x3ic";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/0f89e65ce7b302a0330f0110564320c724acc254/recipes/temporary-persistent";
-          sha256 = "1q141cdnwchfra6gp6fs0nlkxv6fdf8rx5ry04kcpr9a1y56z362";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/e608f40d00a3b2a80a6997da00e7d04f76d8ef0d/recipes/temporary-persistent";
+          sha256 = "0afjcad97pzbrjs1v80l6c98vi5asgaxcn2rq95gz1ld7nn0a9zh";
           name = "recipe";
         };
         packageRequires = [ dash emacs names s ];
@@ -93145,6 +94522,32 @@
           license = lib.licenses.free;
         };
       }) {};
+    terminal-focus-reporting = callPackage ({ emacs
+                                            , fetchFromGitHub
+                                            , fetchurl
+                                            , lib
+                                            , melpaBuild }:
+      melpaBuild {
+        pname = "terminal-focus-reporting";
+        ename = "terminal-focus-reporting";
+        version = "20180830.19";
+        src = fetchFromGitHub {
+          owner = "veelenga";
+          repo = "terminal-focus-reporting.el";
+          rev = "8b84bf18f4c5f1b59a11692eb706f13c3598d9a5";
+          sha256 = "0bbcl0mq62f22n2aipgzx93164x81bgybfd0x7gvsfva76qs8pc4";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/19e7149a0a2db7df7f890a2c1ad22266e97694d7/recipes/terminal-focus-reporting";
+          sha256 = "0iwq0rabq0sdn4apa5ibfp912j76w7hzg3q5lbxp7fspfwwynvg2";
+          name = "recipe";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/terminal-focus-reporting";
+          license = lib.licenses.free;
+        };
+      }) {};
     terminal-here = callPackage ({ cl-lib ? null
                                  , emacs
                                  , fetchFromGitHub
@@ -93602,12 +95005,12 @@
       melpaBuild {
         pname = "tfsmacs";
         ename = "tfsmacs";
-        version = "20180629.1011";
+        version = "20180911.1414";
         src = fetchFromGitHub {
           owner = "sebasmonia";
           repo = "tfsmacs";
-          rev = "8eb5906aa7e1ec469f6347545afabca787b2b223";
-          sha256 = "0an6hz0kd5mvcx61xhdi62zw15x6yqqx8mmm7jsd008kifrk27d4";
+          rev = "13ee3f528ff616880611f563a68d921250692ef8";
+          sha256 = "035avqp9m1mbffvc1xd5qvyg93vsxjsphmf394mq15gawqs33ik4";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/b449d004bdb498c2a1d155671070e0745c7d7598/recipes/tfsmacs";
@@ -93915,12 +95318,12 @@
       melpaBuild {
         pname = "tide";
         ename = "tide";
-        version = "20180713.30";
+        version = "20180809.2103";
         src = fetchFromGitHub {
           owner = "ananthakumaran";
           repo = "tide";
-          rev = "4aaa1b3d3a978a76d773f2fbee6143eda9085f23";
-          sha256 = "1vkgjy5gfiwqjnq5mbxbfh4c1f6kn2pbibki6hmq593wd4212lnn";
+          rev = "d21568528c9bb1ba55627f548c7012f6bcc2fe58";
+          sha256 = "04vhz8f00m5i36szml9npn4hwmcm2rp131r7m3z6dd0n01x8qr9k";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/a21e063011ebbb03ac70bdcf0a379f9e383bdfab/recipes/tide";
@@ -94049,12 +95452,12 @@
       melpaBuild {
         pname = "timesheet";
         ename = "timesheet";
-        version = "20160530.1445";
+        version = "20180801.1902";
         src = fetchFromGitHub {
           owner = "tmarble";
           repo = "timesheet.el";
-          rev = "2ed6fea9b508eb7eaff659d9a34a09ba064d4df8";
-          sha256 = "028d1sn29idznzsc95w2c1sdz3rpmf3vgk2365li0vvs99s51hi2";
+          rev = "67ca6a9f6733052066b438301fb2dd81b8b3f6eb";
+          sha256 = "0rmh8lik27pmq95858jbjzgvf6rsfdnpynwcagj1fgkval5kzdbs";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/40009ef2f6845c83242ca5d0a8c9c2c1e4ef8a9d/recipes/timesheet";
@@ -94324,12 +95727,12 @@
       melpaBuild {
         pname = "toc-org";
         ename = "toc-org";
-        version = "20180613.840";
+        version = "20180815.27";
         src = fetchFromGitHub {
           owner = "snosov1";
           repo = "toc-org";
-          rev = "e38e81af3f12633579c62f2ccf4bd0c8f18e2b88";
-          sha256 = "13jdz0b4jqpb5idfxszlsapfk7h488773m3ipj1ayfapxmly92gm";
+          rev = "ce9e49303c602c30c58ae98d3ce5202e8419a3bc";
+          sha256 = "17vnzdzjbbiyyk0pz532fj5h4x60varl4n3yaswd52mxzhvzn1fw";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1305d88eca984a66039444da1ea64f29f1950206/recipes/toc-org";
@@ -94775,7 +96178,8 @@
           license = lib.licenses.free;
         };
       }) {};
-    traad = callPackage ({ dash
+    traad = callPackage ({ bind-map
+                         , dash
                          , deferred
                          , f
                          , fetchFromGitHub
@@ -94789,12 +96193,12 @@
       melpaBuild {
         pname = "traad";
         ename = "traad";
-        version = "20180720.512";
+        version = "20180729.1748";
         src = fetchFromGitHub {
           owner = "abingham";
           repo = "emacs-traad";
-          rev = "1a4bb39dc36ac79fe540923096411e75a6dcfdf4";
-          sha256 = "0jj81p7v6qrqnlgyqdjygvzrid1phgrx5j4kfnsd3gy2k0i9k3vj";
+          rev = "98e23363b7e8a590a2f55976123a8c3da75c87a5";
+          sha256 = "121p80vsa3xff1anwy876gvlpm0jdbfm5vaxszds73wrv6gih8m3";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/2b3eb31c077fcaff94b74b757c1ce17650333943/recipes/traad";
@@ -94802,6 +96206,7 @@
           name = "recipe";
         };
         packageRequires = [
+          bind-map
           dash
           deferred
           f
@@ -94927,14 +96332,14 @@
         ename = "transfer-sh";
         version = "20180603.731";
         src = fetchFromGitHub {
-          owner = "Brillow";
+          owner = "SRoskamp";
           repo = "transfer-sh.el";
           rev = "55da85f963d347255a2b46568954923679331798";
           sha256 = "0yv4i4ps379kz1q9qmjh4q3pk5ik77xw86faxmwpjx4yzp1wsz9v";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/b4f74dd06d4d5249beaf67b2befec4251c8c18ed/recipes/transfer-sh";
-          sha256 = "1gii2avqg9mdmdj2r562s9382fcmw53w9zsvprpnkcyhxhgfy8sy";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/transfer-sh";
+          sha256 = "0xc6dkmayk935grmy8883l4cyv4zrq3fb77fj16knfj4yw8w6c9j";
           name = "recipe";
         };
         packageRequires = [ async ];
@@ -94952,12 +96357,12 @@
       melpaBuild {
         pname = "transmission";
         ename = "transmission";
-        version = "20180610.1653";
+        version = "20180728.1017";
         src = fetchFromGitHub {
           owner = "holomorph";
           repo = "transmission";
-          rev = "7e8c3690bb54bd8c3ff89b89092ccaa94e116652";
-          sha256 = "0wwnd2fc4b8ir58vxb69nw4rcyri2yhdpaphsgrs8dw9ziixpmvx";
+          rev = "ba567b12a1e953880c6e7083963c52556cdc567f";
+          sha256 = "0wr9npzz34cwhsmn7ry0bfvvm4dl5cpadw4mnpdjl1f85x8zasip";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/9ed7e414687c0bd82b140a1bd8044084d094d18f/recipes/transmission";
@@ -95090,12 +96495,12 @@
       melpaBuild {
         pname = "treemacs";
         ename = "treemacs";
-        version = "20180722.503";
+        version = "20180910.832";
         src = fetchFromGitHub {
           owner = "Alexander-Miller";
           repo = "treemacs";
-          rev = "98d02cb1ca4742c6b3d7148c82109d4a0b0df27e";
-          sha256 = "0kk36i7d6pddx97zxpa37mz1pa7kygbyrqzl73mmx4cbisk3c2gw";
+          rev = "7784111791e38bd9a1c60c32e9b186e029cf8e78";
+          sha256 = "021rzb6k18grj17z6l2d7qdp5j9kr9wdywl72lfkp1jlykqjgq1b";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/91038c1ab2f463102263dcc3701c0fdaad55de4c/recipes/treemacs";
@@ -95117,12 +96522,12 @@
       melpaBuild {
         pname = "treemacs-evil";
         ename = "treemacs-evil";
-        version = "20180622.426";
+        version = "20180803.317";
         src = fetchFromGitHub {
           owner = "Alexander-Miller";
           repo = "treemacs";
-          rev = "d0f874c90990400c02a8029d4efe815d3548ba5c";
-          sha256 = "0hclgsv96gr50z9cqj97rp45c5r50q2zb6hq5jcx3xmlw12k9pk7";
+          rev = "82061efe99e34ac69367726d65fa0f517947b40b";
+          sha256 = "0f2ybaf149ji54rgf7q9xbdx55jr2jgz9qbahsh2q7gl800nkg17";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/91038c1ab2f463102263dcc3701c0fdaad55de4c/recipes/treemacs-evil";
@@ -95170,12 +96575,12 @@
       melpaBuild {
         pname = "treepy";
         ename = "treepy";
-        version = "20180722.538";
+        version = "20180723.2356";
         src = fetchFromGitHub {
           owner = "volrath";
           repo = "treepy.el";
-          rev = "ae972c73dbf56452a4fe5dca635a75c502a78a15";
-          sha256 = "1r3410v4y4zc6xdpf6z0947ivbw055zy1pcplr4215nr5346m6nc";
+          rev = "b40e6b09eb9be45da67b8c9e4990a5a0d7a2a09d";
+          sha256 = "04zwm6gx9pxfvgfkizx6pvb1ql8pqxjyzqp8flz0432x0gq5nlxk";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/63c94a703841f8c11948200d86d98145bc62162c/recipes/treepy";
@@ -95217,6 +96622,32 @@
           license = lib.licenses.free;
         };
       }) {};
+    trinary = callPackage ({ emacs
+                           , fetchFromGitHub
+                           , fetchurl
+                           , lib
+                           , melpaBuild }:
+      melpaBuild {
+        pname = "trinary";
+        ename = "trinary";
+        version = "20180904.1613";
+        src = fetchFromGitHub {
+          owner = "emacs-elsa";
+          repo = "trinary-logic";
+          rev = "886232c6d7e92a8e9fe573eef46754ebe321f90d";
+          sha256 = "10h6p2dwl2k2p35pi3n8y85qh5y0zrr9nhfr4sviwzj1nbqdrvdr";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/48fff02dde8a678e151f2765ea7c3a383912c68b/recipes/trinary";
+          sha256 = "1k2jpay1wx2m54fpja9mrhqyk15ikml8xf15irh8yrxb3hah8f8k";
+          name = "recipe";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/trinary";
+          license = lib.licenses.free;
+        };
+      }) {};
     trr = callPackage ({ fetchFromGitHub
                        , fetchurl
                        , lib
@@ -95405,12 +96836,12 @@
       melpaBuild {
         pname = "tuareg";
         ename = "tuareg";
-        version = "20180512.1306";
+        version = "20180914.1324";
         src = fetchFromGitHub {
           owner = "ocaml";
           repo = "tuareg";
-          rev = "faa976ac930d3fba42ec59881046929c90ffa8f3";
-          sha256 = "1f29bwivmdd6k7wblmrlwf7q43kdkrdadf5r3mk372p04d7c2nrx";
+          rev = "40f974d3b0777f9666928d0b4a5126a4c7491b17";
+          sha256 = "049nw6pkkxnq3k4vv4ksl93csiybm7q29xigdkc7cr9cls6h8jf0";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/01fb6435a1dfeebdf4e7fa3f4f5928bc75526809/recipes/tuareg";
@@ -95513,14 +96944,14 @@
         ename = "turing-machine";
         version = "20180221.2038";
         src = fetchFromGitHub {
-          owner = "therockmandolinist";
+          owner = "dieggsy";
           repo = "turing-machine";
           rev = "ad1dccc9c445f9e4465e1c67cbbfea9583153047";
           sha256 = "0qaz4r5ahg2fxsfyxilb8c9956i5ra9vg80l82slm8vrnsinzll6";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/a003b40a52a92b3ab4d1ffc003f570d4fa6bfbde/recipes/turing-machine";
-          sha256 = "1ndy953q9hr1psqqkkqsffyvj800cnqdxcrixqiw0ls77f2kczcn";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/turing-machine";
+          sha256 = "0q9a31m5wnz9j9l4i8czdl7z12nrcdjw72w8sqvf94ri2g5dbpkq";
           name = "recipe";
         };
         packageRequires = [ emacs ];
@@ -95688,12 +97119,12 @@
       melpaBuild {
         pname = "twittering-mode";
         ename = "twittering-mode";
-        version = "20180507.721";
+        version = "20180818.751";
         src = fetchFromGitHub {
           owner = "hayamiz";
           repo = "twittering-mode";
-          rev = "6d10d1765a7b4de4c723395c8a2200a1649beeb0";
-          sha256 = "0pzj1yslggha5hh98ah634s03p7185wppzxfx53xws0mid6wsf85";
+          rev = "ab26e683674a854a1e518995d60967ff417b2cff";
+          sha256 = "1z5mv2n7pbkm0mvcgkcs70ngp46n5rmz8ff1s3b7p71k8j1sklsw";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/091dcc3775ec2137cb61d66df4e72aca4900897a/recipes/twittering-mode";
@@ -95765,12 +97196,12 @@
       melpaBuild {
         pname = "typing";
         ename = "typing";
-        version = "20171115.2331";
+        version = "20180830.1503";
         src = fetchFromGitHub {
           owner = "kensanata";
           repo = "typing";
-          rev = "1ada06484695b8959f4a7c41cacf7f78c2aad998";
-          sha256 = "0mh1y960zd7878j7nhrjijck6jxxqnbmxr579s095k7yk2ynpkkg";
+          rev = "a2ef25dde2d8eb91bd9c0c6164cb5208208647fa";
+          sha256 = "1dbh0srbf54lgd60ia79y9cfnq3kxlgw01qzdjs9mk3nfazzpgnv";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/e6e75695594ce17b618ad8786c8a04e283f68b11/recipes/typing";
@@ -96539,12 +97970,12 @@
       melpaBuild {
         pname = "universal-emotions-emoticons";
         ename = "universal-emotions-emoticons";
-        version = "20171209.1820";
+        version = "20180729.1241";
         src = fetchFromGitHub {
           owner = "grettke";
           repo = "universal-emotions-emoticons";
-          rev = "9f249b39172bf9b8e148856ad941eee485161215";
-          sha256 = "1qn757pn1hcfik05i458bic32dm812xznsfz5vgxn2v8wxihjlf8";
+          rev = "9cedd09ee65cb9fa71f27b0ab46a8353bdc00902";
+          sha256 = "17blqfnf384l2hd2igrw5p0zblw6bxz69vvzli22nr84kpkh5jx4";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/57f913112c98db2248cf69e44deb69fd09cee042/recipes/universal-emotions-emoticons";
@@ -96794,7 +98225,7 @@
           license = lib.licenses.free;
         };
       }) {};
-    use-package-el-get = callPackage ({ fetchFromGitHub
+    use-package-el-get = callPackage ({ fetchFromGitLab
                                       , fetchurl
                                       , lib
                                       , melpaBuild
@@ -96803,15 +98234,15 @@
         pname = "use-package-el-get";
         ename = "use-package-el-get";
         version = "20180130.2105";
-        src = fetchFromGitHub {
+        src = fetchFromGitLab {
           owner = "edvorg";
           repo = "use-package-el-get";
           rev = "f33c448ed43ecb003b60ff601ee7ef9b08cff947";
           sha256 = "1wzn3h8k7aydj3hxxws64b0v4cr3b77cf7z128xh3v6xz2w62m4z";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/ee4a96cf467bcab171a0adfd4ef754abec1a9971/recipes/use-package-el-get";
-          sha256 = "0sg9ijkjax6w25p0q7rw5rjn8r2i83z5jfzjkvy8pxil5cg8zyh0";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/aca60522257353fbfd9d032f8c3cae7914d6bd36/recipes/use-package-el-get";
+          sha256 = "143vydssjxmkcgs661hz6nhg310r8qypn2a4vyxy5sb31wqcclzg";
           name = "recipe";
         };
         packageRequires = [ use-package ];
@@ -96829,12 +98260,12 @@
       melpaBuild {
         pname = "use-package-ensure-system-package";
         ename = "use-package-ensure-system-package";
-        version = "20180710.29";
+        version = "20180913.801";
         src = fetchFromGitHub {
           owner = "jwiegley";
           repo = "use-package";
-          rev = "cfce01be52162d2eb4526bbb9b3bf721cca74202";
-          sha256 = "0wlyl0zya165kbf5f8swnkkbqnzxwggyc597xz0wy5wmiyr55v4l";
+          rev = "2b89ca4b9102baaf3f84f3fc8177c8a17288e291";
+          sha256 = "18xpjqvnrk72jybbd5xipnsbngkj38hqd9vfq0kb42fhiv1v5b92";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/6240afa625290187785e4b7535ee7b0d7aad8969/recipes/use-package-ensure-system-package";
@@ -97421,6 +98852,59 @@
           license = lib.licenses.free;
         };
       }) {};
+    vdm-mode = callPackage ({ emacs
+                            , fetchFromGitHub
+                            , fetchurl
+                            , lib
+                            , melpaBuild }:
+      melpaBuild {
+        pname = "vdm-mode";
+        ename = "vdm-mode";
+        version = "20180830.2352";
+        src = fetchFromGitHub {
+          owner = "peterwvj";
+          repo = "vdm-mode";
+          rev = "0c083ee4848ea5d78de7894a4a0722d6630839c9";
+          sha256 = "175zlxxjxl7zp80hm2hz5xw7gy3qh0hz3fdvqy8v3n0vz4zvqx1k";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/f246b9dcf7915a845b9e2cd44cc1a0833b412c8f/recipes/vdm-mode";
+          sha256 = "0paafpyzncl2325ly89591jnxhl9zc8jwsphav38nw0fsm9r9ah9";
+          name = "recipe";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/vdm-mode";
+          license = lib.licenses.free;
+        };
+      }) {};
+    vdm-snippets = callPackage ({ emacs
+                                , fetchFromGitHub
+                                , fetchurl
+                                , lib
+                                , melpaBuild
+                                , yasnippet }:
+      melpaBuild {
+        pname = "vdm-snippets";
+        ename = "vdm-snippets";
+        version = "20180902.1135";
+        src = fetchFromGitHub {
+          owner = "peterwvj";
+          repo = "vdm-mode";
+          rev = "d2d9a4074906f4a1370a251180cebf958eb9e461";
+          sha256 = "0rddkjnm4xggv7pr99p58n16ix0whxccyihamc373r0ld762qf3v";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/f246b9dcf7915a845b9e2cd44cc1a0833b412c8f/recipes/vdm-snippets";
+          sha256 = "1js1hjs2r9bbqm50bl389y87xn68f30xrh2z6nd5kz2hdgkm6lhj";
+          name = "recipe";
+        };
+        packageRequires = [ emacs yasnippet ];
+        meta = {
+          homepage = "https://melpa.org/#/vdm-snippets";
+          license = lib.licenses.free;
+        };
+      }) {};
     vector-utils = callPackage ({ fetchFromGitHub
                                 , fetchurl
                                 , lib
@@ -97895,12 +99379,12 @@
       melpaBuild {
         pname = "visual-fill-column";
         ename = "visual-fill-column";
-        version = "20180511.211";
+        version = "20180727.1525";
         src = fetchFromGitHub {
           owner = "joostkremers";
           repo = "visual-fill-column";
-          rev = "606d86e38ca99704cf745fe9cadd603d6001cb0d";
-          sha256 = "1fjzlw6i4jpd0lmdxkzgaypgr2cx5klkb6xwc5k684ly3xp8snc2";
+          rev = "ca65ed65d27bdce189bbb15f58399a682aa6f02b";
+          sha256 = "1hxsh4jmbb6mykydy8c1vam538d2grdyv2f9zimk8q5mwgpnfggm";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/c7628c805840c4687686d0b9dc5007342864721e/recipes/visual-fill-column";
@@ -98077,13 +99561,13 @@
         version = "20150718.1309";
         src = fetchFromGitHub {
           owner = "dbrock";
-          repo = "volume-el";
+          repo = "volume.el";
           rev = "ecc1550b3c8b501d37e0f0116b54b535d15f90f6";
           sha256 = "0ymibjq6iwab5ia1fglhz4gm5cnbi792018fmrabcqkisj2zsjb7";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/bde261750a2754c5bcf01b9a9260429609b8c2bf/recipes/volume";
-          sha256 = "1r01v453bpyh561j8ja36609hy60gc30arvmz4z3c1cybhv8sk1i";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/volume";
+          sha256 = "1gm2zaf6qwbdhayaj153882qm21cl4qdyjkdnqrlssb2mcgf017w";
           name = "recipe";
         };
         packageRequires = [];
@@ -98128,16 +99612,16 @@
       melpaBuild {
         pname = "vue-mode";
         ename = "vue-mode";
-        version = "20180515.2012";
+        version = "20180826.1715";
         src = fetchFromGitHub {
-          owner = "CodeFalling";
+          owner = "AdamNiederer";
           repo = "vue-mode";
-          rev = "5491a4a765814c392de13617ca3ad4a32edd6399";
-          sha256 = "10m5kc0zsvfwr1km66c36qzs6bckq1x0cx4r79vs7sxwwfz8mq2b";
+          rev = "e5faa5767308dcd87139813957eabba62b7caf19";
+          sha256 = "1lw647sjrmwll5hxb027xpd8ax4pjp00ksr3ndjrpfj0zqpnad04";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/2e5e0a9fff332aeec09f6d3d758e2b67dfdf8397/recipes/vue-mode";
-          sha256 = "0gy7a5sliaijq0666l55vbkg15anrw7k1828szdn1ppkraw14bn0";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/vue-mode";
+          sha256 = "0npzn7pycqfdakv4plkigq8aw1bqhz3y03y3ypx21q5a186ds0g5";
           name = "recipe";
         };
         packageRequires = [ edit-indirect mmm-mode ssass-mode vue-html-mode ];
@@ -98332,12 +99816,12 @@
       melpaBuild {
         pname = "wakib-keys";
         ename = "wakib-keys";
-        version = "20180610.1952";
+        version = "20180818.1129";
         src = fetchFromGitHub {
           owner = "darkstego";
           repo = "wakib-keys";
-          rev = "682e3241ebc9147f4e316627cbff456dd316e372";
-          sha256 = "191j9pk989jwhczwimr8smx1qiiwy5d85j195z8aqg252m656fnw";
+          rev = "a858979620bd22801e5ce214dd46d69b19ccd357";
+          sha256 = "1zvjwm4qr82zhp4nb9mjzklqxa2iasw3i623fwp9a2fzn3c2cyx5";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/b8ef5ae0dcb92e1cf019be3d53ab9b47d89f45bd/recipes/wakib-keys";
@@ -98413,12 +99897,12 @@
       melpaBuild {
         pname = "wanderlust";
         ename = "wanderlust";
-        version = "20180605.631";
+        version = "20180826.649";
         src = fetchFromGitHub {
           owner = "wanderlust";
           repo = "wanderlust";
-          rev = "395826e99b84051396d503392f52462b6cb683a5";
-          sha256 = "1i182aq8fmp232flwdvf3v6367pmzxvjjn4snvsy16wk5710vg3b";
+          rev = "ebde9a49a80bba4e21ef4a95e77c634779f00aaa";
+          sha256 = "1c149bdwz0jrmdy9dpdilwma8jpmm7myhh6q86k3ss539yhnqf43";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/426172b72026d1adeb1bf3fcc6b0407875047333/recipes/wanderlust";
@@ -98582,6 +100066,31 @@
           license = lib.licenses.free;
         };
       }) {};
+    wdl-mode = callPackage ({ fetchFromGitHub
+                            , fetchurl
+                            , lib
+                            , melpaBuild }:
+      melpaBuild {
+        pname = "wdl-mode";
+        ename = "wdl-mode";
+        version = "20180831.1246";
+        src = fetchFromGitHub {
+          owner = "zhanxw";
+          repo = "wdl-mode";
+          rev = "cef86e5afc136ae5ad9324cd6e6d6f860b889bcf";
+          sha256 = "0j7sv3dcpq2fvcip9834v6k8q1d8bpnbxnvz1g691lmc58z1a86a";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/8cf1f20913d765ae36ecc2c9a69470ff51124e56/recipes/wdl-mode";
+          sha256 = "1zhrs0cdsr8mxh9zn8cy6inzxcygk0lgsyw1d190253v1kk6072i";
+          name = "recipe";
+        };
+        packageRequires = [];
+        meta = {
+          homepage = "https://melpa.org/#/wdl-mode";
+          license = lib.licenses.free;
+        };
+      }) {};
     weather-metno = callPackage ({ cl-lib ? null
                                  , emacs
                                  , fetchFromGitHub
@@ -98694,12 +100203,12 @@
       melpaBuild {
         pname = "web-mode";
         ename = "web-mode";
-        version = "20180628.422";
+        version = "20180813.650";
         src = fetchFromGitHub {
           owner = "fxbois";
           repo = "web-mode";
-          rev = "471e1235d976e209de5262e75ecf7cc3e1fec39f";
-          sha256 = "00m3yyx83sfdsn70iqr80vpj060nfddb2j6gzzsdmsnm0nl0hg8j";
+          rev = "e31d1dd4ee436db8aaca3f35223af5a05fb47dec";
+          sha256 = "00yhrd628dgylsvixy7gy1jw8xmszs4rvv2yc1v7jd3hli9bxf7s";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/6f0565555eaa356141422c5175d6cca4e9eb5c00/recipes/web-mode";
@@ -98880,12 +100389,12 @@
       melpaBuild {
         pname = "webpaste";
         ename = "webpaste";
-        version = "20180127.1434";
+        version = "20180815.1155";
         src = fetchFromGitHub {
           owner = "etu";
           repo = "webpaste.el";
-          rev = "14fd97bc3c8554d9394b698610dca1186ff68b03";
-          sha256 = "1q7pqkww6ggh9sdnqa4vbq6nzivw0w011w3mvwx1mi4zp0dv50zs";
+          rev = "e7fed98c30e960911426be054bad183fd1ab6a37";
+          sha256 = "1k82apiylq9bqgwq2lg1ih16ghhh9r2h6izd4ljw1nm1p9gqqzh4";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/13847d91c1780783e516943adee8a3530c757e17/recipes/webpaste";
@@ -99702,8 +101211,7 @@
           license = lib.licenses.free;
         };
       }) {};
-    window-purpose = callPackage ({ cl-lib ? null
-                                  , emacs
+    window-purpose = callPackage ({ emacs
                                   , fetchFromGitHub
                                   , fetchurl
                                   , imenu-list
@@ -99713,19 +101221,19 @@
       melpaBuild {
         pname = "window-purpose";
         ename = "window-purpose";
-        version = "20180531.1336";
+        version = "20180809.456";
         src = fetchFromGitHub {
           owner = "bmag";
           repo = "emacs-purpose";
-          rev = "8737c5d8cb4a0d749771a04a136a784e5d519d5e";
-          sha256 = "0w186mgs7ww52mvqrp02bnwazznhyy6j2g8r21x2d4ri3vavmwrl";
+          rev = "a302340e183d20baa4445858d321f43449298829";
+          sha256 = "1dpy8hkjn87wbdkzyabhay4jx4dgc0ab2flyf0rjq1qaazk393sc";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/5813120ab674f6db7d0a486433d8faa6cfec1727/recipes/window-purpose";
           sha256 = "1y70jrba3gf9fyf2qdihfshbsblzb88yv9fkcswdzrpq5kmgwp84";
           name = "recipe";
         };
-        packageRequires = [ cl-lib emacs imenu-list let-alist ];
+        packageRequires = [ emacs imenu-list let-alist ];
         meta = {
           homepage = "https://melpa.org/#/window-purpose";
           license = lib.licenses.free;
@@ -99897,8 +101405,8 @@
         version = "20180520.58";
         src = fetchhg {
           url = "https://bitbucket.com/ArneBab/wisp";
-          rev = "db4210a0af51";
-          sha256 = "0f3yn8dxg21q711533d1zgxwr2y3df1msmchvd5x4rikm8nayp8a";
+          rev = "c5e4b6448dfd";
+          sha256 = "10ix9y29v0idcmvflyrmdzm5amxi9x0223kzazhgpf7j3xs8c0nn";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/5b7972602399f9df9139cff177e38653bb0f43ed/recipes/wisp-mode";
@@ -99946,12 +101454,12 @@
       melpaBuild {
         pname = "with-editor";
         ename = "with-editor";
-        version = "20180618.1602";
+        version = "20180726.1344";
         src = fetchFromGitHub {
           owner = "magit";
           repo = "with-editor";
-          rev = "fb9fdde14eddd5bd180d4baabfedc45e5492e115";
-          sha256 = "07jfqnh4mvpky3mm7wyrdwpwnk2a7r1v2k7q5rxmg8i59k99q7bn";
+          rev = "3e6424764ee06fb50c580283baea3851c6f9ea66";
+          sha256 = "0xawvwvkqdy5hhbz9mbclha18w8nd36d9nyf7b6s2f5dw7xnlyb0";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/8c52c840dc35f3fd17ec660e113ddbb53aa99076/recipes/with-editor";
@@ -100448,12 +101956,12 @@
       melpaBuild {
         pname = "wsd-mode";
         ename = "wsd-mode";
-        version = "20170731.837";
+        version = "20180807.430";
         src = fetchFromGitHub {
           owner = "josteink";
           repo = "wsd-mode";
-          rev = "566ae4b45b4a34b985f1b363d6cdbd463ab6aba6";
-          sha256 = "0k30i1gq6ljxwf97f6nlz8b6blh6hg0b4syfx64lzf0zc22di2l4";
+          rev = "0583df8efb742c90dc56df00f9714e13512cf6d9";
+          sha256 = "0f90qm5zx7lkyvaz519fln4hijfyammc675105f19492h1bc1bva";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/04867a574773e8794335a2664d4f5e8b243f3ec9/recipes/wsd-mode";
@@ -100493,6 +102001,32 @@
           license = lib.licenses.free;
         };
       }) {};
+    wucuo = callPackage ({ emacs
+                         , fetchFromGitHub
+                         , fetchurl
+                         , lib
+                         , melpaBuild }:
+      melpaBuild {
+        pname = "wucuo";
+        ename = "wucuo";
+        version = "20180907.549";
+        src = fetchFromGitHub {
+          owner = "redguardtoo";
+          repo = "wucuo";
+          rev = "2657e78246001848fe1140c9d90cb96d796d5887";
+          sha256 = "0s3ipmrw3gqyq6y4pxjm8cpnsar5hh27lclhjq7277zlbl3da32c";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/819cacef2c31d750829980f3f6c3bfb72f36bbdd/recipes/wucuo";
+          sha256 = "084fcv4dkflpka9vmxmxqdl0cgmjjh9wc6axr65j1ffmqd933y4a";
+          name = "recipe";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/wucuo";
+          license = lib.licenses.free;
+        };
+      }) {};
     wwtime = callPackage ({ fetchFromGitHub
                           , fetchurl
                           , lib
@@ -100659,12 +102193,12 @@
       melpaBuild {
         pname = "xah-elisp-mode";
         ename = "xah-elisp-mode";
-        version = "20180710.124";
+        version = "20180914.1659";
         src = fetchFromGitHub {
           owner = "xahlee";
           repo = "xah-elisp-mode";
-          rev = "b2fe52007d90934053a6ba885b77d228d6c2bff6";
-          sha256 = "1ma095ivzxblm0daxmgf3lcs59nkxgh4bfaw8vqxysfy0svqrff7";
+          rev = "3b2d960b031952c768d705d566ead8d7119b7a91";
+          sha256 = "071vzyd0rdg3n8wmfcsawgfr02y497p0s7r0nryh1i2v5rhmg2vk";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/05eed39bae37cc8359d2cc678052cbbcc946e379/recipes/xah-elisp-mode";
@@ -100685,12 +102219,12 @@
       melpaBuild {
         pname = "xah-find";
         ename = "xah-find";
-        version = "20180310.450";
+        version = "20180830.1658";
         src = fetchFromGitHub {
           owner = "xahlee";
           repo = "xah-find";
-          rev = "0cd985675c286bfa5f07ab9d00231f8a23505537";
-          sha256 = "01h5wdbzf7swrmddai2vsakr8rsqg447w9bnp7akxla426fsr8wg";
+          rev = "4019389a66abbb71d1a7c946c37efe184116bcc9";
+          sha256 = "0j392z31z3b1sppx6p9hhy9s5qzl4a7la6rwxs9dp5q25n23avcz";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/05eed39bae37cc8359d2cc678052cbbcc946e379/recipes/xah-find";
@@ -100711,12 +102245,12 @@
       melpaBuild {
         pname = "xah-fly-keys";
         ename = "xah-fly-keys";
-        version = "20180702.1521";
+        version = "20180910.2232";
         src = fetchFromGitHub {
           owner = "xahlee";
           repo = "xah-fly-keys";
-          rev = "11db1184a7f68ee6be0cafe5bd9a304cb0036488";
-          sha256 = "0j4mx27fnx95ri8sm3zsp0xwk4n8civbnn2ld1932kazbhwfwgqv";
+          rev = "694b19d5a03ec450e7c8f6e340caf47ab4eed4a1";
+          sha256 = "02y46b0nhly92rpymy1szgq2s83kfbjz7rc9sj5nc9vb0jrbkf4p";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/05eed39bae37cc8359d2cc678052cbbcc946e379/recipes/xah-fly-keys";
@@ -100763,12 +102297,12 @@
       melpaBuild {
         pname = "xah-lookup";
         ename = "xah-lookup";
-        version = "20171108.241";
+        version = "20180815.550";
         src = fetchFromGitHub {
           owner = "xahlee";
           repo = "lookup-word-on-internet";
-          rev = "3029d8ec04e841c57b7482c244a1733eb4c77cb5";
-          sha256 = "0ygkl663cqs25kicfnpy06j3sm6jjpagvv90wx3llspjy9adcxvx";
+          rev = "e3132ff21c3d0160e5bd5b7222c50dc9840727d4";
+          sha256 = "0p7y6dj4a9ifcpsvg50jb3hqr0i6spscc5iw02fpyih6j65p3zbn";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/05eed39bae37cc8359d2cc678052cbbcc946e379/recipes/xah-lookup";
@@ -100789,12 +102323,12 @@
       melpaBuild {
         pname = "xah-math-input";
         ename = "xah-math-input";
-        version = "20180709.2228";
+        version = "20180906.1012";
         src = fetchFromGitHub {
           owner = "xahlee";
           repo = "xah-math-input";
-          rev = "87e46fcaaada3e87dc828e75a52bec05c8c4c262";
-          sha256 = "1vb53wr93n2m419y81c6naixxc6791bjynbfydm234da7ixsc7mk";
+          rev = "d0120a451daea474abeab7f87cc64d8ddc903ab4";
+          sha256 = "0rsdvlfqdm69rj1gq4pkn9gw1n2sw5dr9xrk1aqin5rpgcgappaj";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/05eed39bae37cc8359d2cc678052cbbcc946e379/recipes/xah-math-input";
@@ -101639,12 +103173,12 @@
       melpaBuild {
         pname = "yankpad";
         ename = "yankpad";
-        version = "20180624.1615";
+        version = "20180825.239";
         src = fetchFromGitHub {
           owner = "Kungsgeten";
           repo = "yankpad";
-          rev = "ad8ce33fec5d9eb2a7e1111b1097e4015f78c0ed";
-          sha256 = "03645wr6ksx6f7q3wpjcx3c7n1bm4v03j8kjkxx2790y77yns3ri";
+          rev = "6a22116057e4110f4d4b446780fe996abfeed2af";
+          sha256 = "0r2drq158x55c0psjfyqg41gn2bjqvgxm53n4sk9nkxp4pvlxd1d";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/e64746d10f9e0158621a7c4dc41dc2eca6ad573c/recipes/yankpad";
@@ -101664,12 +103198,12 @@
       melpaBuild {
         pname = "yapfify";
         ename = "yapfify";
-        version = "20180105.1447";
+        version = "20180830.33";
         src = fetchFromGitHub {
           owner = "JorisE";
           repo = "yapfify";
-          rev = "9e63a9135bd8dbfbee55819837a3aa0d119c5e6f";
-          sha256 = "1bf09hah2g8x0jbrdh4fm1v01qjymiv38yvv8a5qmfpv5k93lcrc";
+          rev = "b858225e1debe6734ee718e5c3c209152652a8b3";
+          sha256 = "16bpshqk47slcifx9v70ka202lnbspkcjdl5npxpf12abc1syh06";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/060c32d8e9fdc56fe702d265a935d74d76082f86/recipes/yapfify";
@@ -101844,12 +103378,12 @@
       melpaBuild {
         pname = "yasnippet-snippets";
         ename = "yasnippet-snippets";
-        version = "20180714.622";
+        version = "20180909.315";
         src = fetchFromGitHub {
           owner = "AndreaCrotti";
           repo = "yasnippet-snippets";
-          rev = "d153af6d1d8ab8dfbc57f4065cee72f86d5cd2c4";
-          sha256 = "0dkhac40kiyqnq42c2fcdb1jzshgakabq4rq796qfhjpc5j8x5wk";
+          rev = "ef6eae61f1c9b50efee1316e8d7925632bc9fa45";
+          sha256 = "1lrv3mwx9zrz5yy43a2c6d20hxgg3ax0pf0wv1vh59jk3lfxvpni";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/42490bbdac871bce302fbc9a0488ff7de354627e/recipes/yasnippet-snippets";
@@ -101896,11 +103430,11 @@
       melpaBuild {
         pname = "yatex";
         ename = "yatex";
-        version = "20180601.2357";
+        version = "20180820.1849";
         src = fetchhg {
           url = "https://www.yatex.org/hgrepos/yatex";
-          rev = "ea6956f10ce7";
-          sha256 = "192x3qi781hf4xpx2b33clc2xsq1d7vi3fzjv82d5pq1687kjl93";
+          rev = "d97881f33e28";
+          sha256 = "1zr8li79shk1sxi43g93hrgs5vjilhfa8nndlyva2myjn05bcxg5";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/9854c39fc1889891fe460d0d5ac9224de3f6c635/recipes/yatex";
@@ -101979,12 +103513,12 @@
       melpaBuild {
         pname = "ycmd";
         ename = "ycmd";
-        version = "20180520.353";
+        version = "20180724.556";
         src = fetchFromGitHub {
           owner = "abingham";
           repo = "emacs-ycmd";
-          rev = "966594701c1eef1f6d4dad0c71c6d43a029977d7";
-          sha256 = "05b8l82l3p15r072zhmmwpcnxyyyrhzka5gc3vkzz2sa7wa7sp7j";
+          rev = "fe35b7f2e3d9370941b9e537c9bc578d814acce2";
+          sha256 = "10h3whhz4bli4r6d945qdwv0627842l84vp6binqzw7lddd72y6g";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/4b25378540c64d0214797348579671bf2b8cc696/recipes/ycmd";
@@ -102067,12 +103601,12 @@
       melpaBuild {
         pname = "yoficator";
         ename = "yoficator";
-        version = "20180129.1252";
+        version = "20180814.1704";
         src = fetchFromGitLab {
           owner = "link2xt";
           repo = "yoficator";
-          rev = "e0dc076cb0d1999cb41585b5f36322681109fe86";
-          sha256 = "1vq07ndxrdry26dx3ci4yz1a1qdcr20yznj62y2f0wkyccrai9y9";
+          rev = "a0c5bdf9db6e495549176755cd047fcf05c71255";
+          sha256 = "1fqyd2srya78w1d3fbhzkl1ym5j8zm9ygg93yjaddzf0afc0aprm";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/5156f01564978718dd99ab3a54f19b6512de5c3c/recipes/yoficator";
@@ -102251,12 +103785,12 @@
       melpaBuild {
         pname = "zenburn-theme";
         ename = "zenburn-theme";
-        version = "20180531.902";
+        version = "20180911.544";
         src = fetchFromGitHub {
           owner = "bbatsov";
           repo = "zenburn-emacs";
-          rev = "eea429cb2cbde8674b2a17ccc2bda94b54575c01";
-          sha256 = "12nyjxvlvr1m7wrkfv7l4w16h8n66ssw2mvwcl4b7xbx4d45x1da";
+          rev = "7f467891dc8299d598208031f2e31eba286c2096";
+          sha256 = "1i7frwb52wi4rg8b97426s5cfdpj65691g6y768dbbr4x6sh4z8r";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/091dcc3775ec2137cb61d66df4e72aca4900897a/recipes/zenburn-theme";
@@ -102319,6 +103853,32 @@
           license = lib.licenses.free;
         };
       }) {};
+    zeno-theme = callPackage ({ emacs
+                              , fetchFromGitHub
+                              , fetchurl
+                              , lib
+                              , melpaBuild }:
+      melpaBuild {
+        pname = "zeno-theme";
+        ename = "zeno-theme";
+        version = "20180831.1922";
+        src = fetchFromGitHub {
+          owner = "jbharat";
+          repo = "zeno-theme";
+          rev = "6d70168fcae333a9918c5315e6576f1e876874da";
+          sha256 = "13nxgb74f5jzn88c6dbfg12plhk3i4z5d2zq3f0ffk3dypq9qkpa";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/9703a222f51dc283e9462cceb5afeb009f7401dc/recipes/zeno-theme";
+          sha256 = "0bqv1gdqlh7i48ckpgss6h9mmc9hpkqlb94aam0kkq2ga125gmwc";
+          name = "recipe";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/zeno-theme";
+          license = lib.licenses.free;
+        };
+      }) {};
     zephir-mode = callPackage ({ cl-lib ? null
                                , emacs
                                , fetchFromGitHub
@@ -102350,26 +103910,24 @@
     zerodark-theme = callPackage ({ all-the-icons
                                   , fetchFromGitHub
                                   , fetchurl
-                                  , flycheck
                                   , lib
-                                  , magit
                                   , melpaBuild }:
       melpaBuild {
         pname = "zerodark-theme";
         ename = "zerodark-theme";
-        version = "20180528.26";
+        version = "20180911.751";
         src = fetchFromGitHub {
           owner = "NicolasPetton";
           repo = "zerodark-theme";
-          rev = "876cafc58a54c567456c4823f8c16edce94ba3ac";
-          sha256 = "1g03d1sd1v91f2i66v4m02jy487r9dczif4rnrrwpi5j2iq0ycqx";
+          rev = "09a6bc6d8bcc7c2bb89e497dc8f6d3a29f6fe4c2";
+          sha256 = "1i690ilvhskxqljjsnlpp124i8jl2njxmynppricxwvxrhh69pgz";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/d00b78ead693e844e35c760fe2c39b8ed6cb0d81/recipes/zerodark-theme";
           sha256 = "1nqzswmnq6h0av4rivqm237h7ghp7asa2nvls7nz4ma467p9qhp9";
           name = "recipe";
         };
-        packageRequires = [ all-the-icons flycheck magit ];
+        packageRequires = [ all-the-icons ];
         meta = {
           homepage = "https://melpa.org/#/zerodark-theme";
           license = lib.licenses.free;
@@ -102383,16 +103941,16 @@
       melpaBuild {
         pname = "zig-mode";
         ename = "zig-mode";
-        version = "20180309.1458";
+        version = "20180818.848";
         src = fetchFromGitHub {
-          owner = "zig-lang";
+          owner = "ziglang";
           repo = "zig-mode";
-          rev = "4f281e4748a4eae64efaa98d9dfd9b7c163fbed8";
-          sha256 = "0pip0kgbxh4cf60j2kzgb9lvrm5vksg83mllk1pcs9mkbxdgjyww";
+          rev = "3778fb55ca675f1eaa5cc85f941ef952a2daa5f4";
+          sha256 = "0b3qwww71j6nm287yj55kj9wbq0a7l73r7gyc94c320c8wb3ivd8";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/5cba49d25ebbaa9240d5d87d0c7ca48d928b2e4b/recipes/zig-mode";
-          sha256 = "005lsgnsaj8rjkzbhi23g99xy9zln4ggkad11xqmn4xa6g199wly";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/zig-mode";
+          sha256 = "1kg1x0l65nqqpzn5np41ya9khr1yqcg5ki7z3jw0g4wxdbz7lrbx";
           name = "recipe";
         };
         packageRequires = [ emacs ];
@@ -102855,13 +104413,13 @@
         version = "20170112.2205";
         src = fetchFromGitHub {
           owner = "philiparvidsson";
-          repo = "emacs-zweilight-theme";
+          repo = "Zweilight-Theme-for-Emacs";
           rev = "890f27c939d8a358c9ef0f402fc3314f475ec874";
           sha256 = "0pl254c61405n6sgr01qj4z42vqdvbmf59nz55cl23l2q7kdbfdv";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/37422e259ada59122e1b4a31a4ae4dc00be797b9/recipes/zweilight-theme";
-          sha256 = "1ykhnyiv5jvn34178mzg2cy6ynvc7jild6zwdqwr3qay87zffmjf";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/zweilight-theme";
+          sha256 = "1j8skn9hz1zkpdg7q0njv5b50cbvrixjjmkp43p58gx98q02p0kq";
           name = "recipe";
         };
         packageRequires = [];
@@ -102923,4 +104481,4 @@
           license = lib.licenses.free;
         };
       }) {};
-  }
+  }
\ No newline at end of file
diff --git a/pkgs/applications/editors/emacs-modes/melpa-packages.nix b/pkgs/applications/editors/emacs-modes/melpa-packages.nix
index bec845b815ce..addae2674684 100644
--- a/pkgs/applications/editors/emacs-modes/melpa-packages.nix
+++ b/pkgs/applications/editors/emacs-modes/melpa-packages.nix
@@ -146,6 +146,12 @@ self:
           (attrs.nativeBuildInputs or []) ++ [ external.git ];
       });
 
+      magit-todos = super.magit-todos.overrideAttrs (attrs: {
+        # searches for Git at build time
+        nativeBuildInputs =
+          (attrs.nativeBuildInputs or []) ++ [ external.git ];
+      });
+
       # missing OCaml
       merlin = markBroken super.merlin;
 
diff --git a/pkgs/applications/editors/emacs-modes/melpa-stable-generated.nix b/pkgs/applications/editors/emacs-modes/melpa-stable-generated.nix
index df0ec7fcb12e..f614db8d190d 100644
--- a/pkgs/applications/editors/emacs-modes/melpa-stable-generated.nix
+++ b/pkgs/applications/editors/emacs-modes/melpa-stable-generated.nix
@@ -33,12 +33,12 @@
       melpaBuild {
         pname = "a";
         ename = "a";
-        version = "0.1.0.-3.4";
+        version = "0.1.1";
         src = fetchFromGitHub {
           owner = "plexus";
           repo = "a.el";
-          rev = "3af0122abac723f0d3dc21ee50eeb81afa26d361";
-          sha256 = "0grwpy4ssmn2m8aihfkxb7ifl7ql2hgicw16wzl0crpy5fndh1mp";
+          rev = "8583685c32069a73ccae0100e990e7b39c901737";
+          sha256 = "00v9w6qg3bkwdhypq0ssf0phdh0f4bcq59c20lngd6vhk0204dqi";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/a226f1d81cd1ae81b91c1102fbe40aac2eddcaa8/recipes/a";
@@ -442,14 +442,14 @@
         ename = "ac-html";
         version = "0.31";
         src = fetchFromGitHub {
-          owner = "cheunghy";
+          owner = "zhangkaiyulw";
           repo = "ac-html";
           rev = "415a78c3b84855b0c0411832d21a0fb63239b184";
           sha256 = "19v9515ixg22m7h7riix8w3vyhzax1m2pbwdirp59v532xn9b0cz";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/ce370d60b2f4dd0570b631f6ca92a221e1fe2de6/recipes/ac-html";
-          sha256 = "0qf8f75b6dvy844dq8vh8d9c6k599rh1ynjcif9bwvdpf6pxwvqa";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/ac-html";
+          sha256 = "1vidmvylwwvraf8k63dvxv47ism49n6pp0f38l5rl4iaznhkdr84";
           name = "recipe";
         };
         packageRequires = [ auto-complete web-completion-data ];
@@ -1302,8 +1302,8 @@
           sha256 = "02nkcin0piv7s93c9plhy361dbqr78m0gd19myc7qb7gnm36kzpn";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/d8674b54ad5e17d1da1e499c7d8113f8acd8fd5d/recipes/ahk-mode";
-          sha256 = "066l4hsb49wbyv381qgn9k4hn8gxlzi20h3qaim9grngjj5ljbni";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/e608f40d00a3b2a80a6997da00e7d04f76d8ef0d/recipes/ahk-mode";
+          sha256 = "0jx5vhlfw5r6l4125bjjbf7dl1589ac6j419swx26k3p8p58d93r";
           name = "recipe";
         };
         packageRequires = [ emacs ];
@@ -1713,14 +1713,14 @@
         ename = "angular-mode";
         version = "1.0";
         src = fetchFromGitHub {
-          owner = "omouse";
+          owner = "rudolfolah";
           repo = "angularjs-mode";
           rev = "026558260eb2890c72df6a59ae8762669772282b";
           sha256 = "0ljwaccb0jrp7zrnkp0383185vg3r9pf324al72d445syff5pa6y";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/7b120c7f97e8d313387d2e9d9210e7fcdd10523b/recipes/angular-mode";
-          sha256 = "1bwfmjldnxki0lqi3ys6r2a3nlhbwm1dibsg2dvzirq8qql02w1i";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/angular-mode";
+          sha256 = "0pq4lyhppzi806n1k07n0gdhr8z8z71ri12my0pl81rl5j2z69l2";
           name = "recipe";
         };
         packageRequires = [];
@@ -2141,6 +2141,32 @@
           license = lib.licenses.free;
         };
       }) {};
+    archive-rpm = callPackage ({ emacs
+                               , fetchFromGitHub
+                               , fetchurl
+                               , lib
+                               , melpaBuild }:
+      melpaBuild {
+        pname = "archive-rpm";
+        ename = "archive-rpm";
+        version = "0.1";
+        src = fetchFromGitHub {
+          owner = "legoscia";
+          repo = "archive-rpm";
+          rev = "59f83caebbd2f92fd634f6968e6d17b50ffa3dc7";
+          sha256 = "11ssqaax4jl7r3z5agzmc74sjsfvl0m3xvp015ncqzpzysla47g3";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/e5f5653e62afdc022eac30bda3d21bd2d2625d2e/recipes/archive-rpm";
+          sha256 = "0s53zbn71lb008gw3f0b5w4q0pw0vgiqbffgnyib24sh03ijl7z7";
+          name = "recipe";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/archive-rpm";
+          license = lib.licenses.free;
+        };
+      }) {};
     artbollocks-mode = callPackage ({ fetchFromGitHub
                                     , fetchurl
                                     , lib
@@ -2323,6 +2349,36 @@
           license = lib.licenses.free;
         };
       }) {};
+    attrap = callPackage ({ dash
+                          , emacs
+                          , f
+                          , fetchFromGitHub
+                          , fetchurl
+                          , flycheck
+                          , lib
+                          , melpaBuild
+                          , s }:
+      melpaBuild {
+        pname = "attrap";
+        ename = "attrap";
+        version = "1.0";
+        src = fetchFromGitHub {
+          owner = "jyp";
+          repo = "attrap";
+          rev = "a971acb251e343d4c6b0253f69dcce0c2cee0fac";
+          sha256 = "0p93y151730ga7v9xa5gkp306s32qw53086i829fcbxf83c2wslv";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/b7420eca80a8c1776d68b1f121511cc265cc70dc/recipes/attrap";
+          sha256 = "1gxnrlsn9xcnnx0nhjxnhrz9bdpk2kpzjhj8jhjmwws9y361fimh";
+          name = "recipe";
+        };
+        packageRequires = [ dash emacs f flycheck s ];
+        meta = {
+          homepage = "https://melpa.org/#/attrap";
+          license = lib.licenses.free;
+        };
+      }) {};
     auctex-latexmk = callPackage ({ auctex
                                   , fetchFromGitHub
                                   , fetchurl
@@ -2830,14 +2886,14 @@
         ename = "autopair";
         version = "0.6.1";
         src = fetchFromGitHub {
-          owner = "capitaomorte";
+          owner = "joaotavora";
           repo = "autopair";
           rev = "2d1eb81d12f71248ad305e70cceddf08d4fe2b39";
           sha256 = "0g6kd1r0wizamw26bhp5jkvpsd98rcybkfchc622b9v5b89a07nq";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/091dcc3775ec2137cb61d66df4e72aca4900897a/recipes/autopair";
-          sha256 = "161qhk8rc1ldj9hpg0k9phka0gflz9vny7gc8rnylk90p6asmr28";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/4150455d424326667390f72f6edd22b274d9fa01/recipes/autopair";
+          sha256 = "0l2ypsj3dkasm0lj9jmnaqjs3rv97ldfw8cmayv77mzfd6lhjmh3";
           name = "recipe";
         };
         packageRequires = [ cl-lib ];
@@ -3196,6 +3252,30 @@
           license = lib.licenses.free;
         };
       }) {};
+    bbdb = callPackage ({ fetchgit
+                        , fetchurl
+                        , lib
+                        , melpaBuild }:
+      melpaBuild {
+        pname = "bbdb";
+        ename = "bbdb";
+        version = "3.2";
+        src = fetchgit {
+          url = "https://git.savannah.nongnu.org/git/bbdb.git";
+          rev = "307bad59bc3debf250a8617ab699b50a9402c0ae";
+          sha256 = "1i01yyr6cya2dmdpydam72mnvxj4p3mj7pbnw19lrjlfzahmajir";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/caaa21f235c4864f6008fb454d0a970a2fd22a86/recipes/bbdb";
+          sha256 = "0mm8n3dbi8lap3pjr97n2f675iy7sg476sm1vxygbc3j67rq1zb2";
+          name = "recipe";
+        };
+        packageRequires = [];
+        meta = {
+          homepage = "https://melpa.org/#/bbdb";
+          license = lib.licenses.free;
+        };
+      }) {};
     bbdb- = callPackage ({ bbdb
                          , fetchFromGitHub
                          , fetchurl
@@ -3696,12 +3776,12 @@
       melpaBuild {
         pname = "bm";
         ename = "bm";
-        version = "201807";
+        version = "201808";
         src = fetchFromGitHub {
           owner = "joodland";
           repo = "bm";
-          rev = "b1bc10b1e9f01c48a7eedb9b08a22d05e7baed3c";
-          sha256 = "16kfzi6chf28jyrsmz0jba3qq3mvxqambsdh09vr76ivmwbv48gh";
+          rev = "d224b6cd8341db4c2e11263c346dd44fb37fcd88";
+          sha256 = "18xwm1xj436bwa2l3dkfx6hlj19y6f0xqd3jbd06j4g3idpryqma";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/cae2ac3513e371a256be0f1a7468e38e686c2487/recipes/bm";
@@ -4191,12 +4271,12 @@
       melpaBuild {
         pname = "bui";
         ename = "bui";
-        version = "1.1.0";
+        version = "1.2.0";
         src = fetchFromGitHub {
           owner = "alezost";
           repo = "bui.el";
-          rev = "3bf8af2f339d2483203eda2c97a61b8771c3269d";
-          sha256 = "1qx7cdm7jd15rf1silwj1yh0mg5fhldfi001k1msi50nyni90c82";
+          rev = "bd3c5ee32d28d80c6eb54b0340626103c32e3093";
+          sha256 = "0ixia5s41f2nbal3wsixacbhbc0mk9yb75ir1amqakip30sq4apv";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/38b7c9345de75a707b4a73e8bb8e2f213e4fd739/recipes/bui";
@@ -4209,6 +4289,34 @@
           license = lib.licenses.free;
         };
       }) {};
+    build-farm = callPackage ({ bui
+                              , emacs
+                              , fetchFromGitHub
+                              , fetchurl
+                              , lib
+                              , magit-popup
+                              , melpaBuild }:
+      melpaBuild {
+        pname = "build-farm";
+        ename = "build-farm";
+        version = "0.2.1";
+        src = fetchFromGitHub {
+          owner = "alezost";
+          repo = "build-farm.el";
+          rev = "e244dea35566a10253d61be430d3caf81b779af8";
+          sha256 = "1a4ky0hca26p7f3i2c2s5517ygkyaaz52vs0vxy6f5q95rhlgdhd";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/bc97bf56ea50788ecbbbb1f46e188e8487370936/recipes/build-farm";
+          sha256 = "0dbq3sc1x0cj06hv3mlk0zw0cijdwjszicylv14m1wahal33xjrw";
+          name = "recipe";
+        };
+        packageRequires = [ bui emacs magit-popup ];
+        meta = {
+          homepage = "https://melpa.org/#/build-farm";
+          license = lib.licenses.free;
+        };
+      }) {};
     build-status = callPackage ({ cl-lib ? null
                                 , fetchFromGitHub
                                 , fetchurl
@@ -4245,14 +4353,14 @@
         ename = "bundler";
         version = "1.1.0";
         src = fetchFromGitHub {
-          owner = "tobiassvn";
+          owner = "endofunky";
           repo = "bundler.el";
           rev = "4cb4fafe092d587cc9e58ff61cf900fb7f409adf";
           sha256 = "18d74nwcpk1i8adxzfwz1lgqqcxsc4wkrb490v64pph79dxsi80h";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/ade7d0f0f0e553b48634e60ecaf7b91d0776d5f0/recipes/bundler";
-          sha256 = "0i5ybc6i8ackxpaa75kwrg44zdq3jkvy48c42vaaafpddjwjnsy4";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/bundler";
+          sha256 = "1jvcrxwsf9yd5vhirfdmjl52n6hffr1vikd386qbn32vgqcsba7a";
           name = "recipe";
         };
         packageRequires = [ inf-ruby ];
@@ -4321,12 +4429,12 @@
       melpaBuild {
         pname = "buttercup";
         ename = "buttercup";
-        version = "1.12";
+        version = "1.13";
         src = fetchFromGitHub {
           owner = "jorgenschaefer";
           repo = "emacs-buttercup";
-          rev = "39d625ce53bb1e1b9b03d9c9c70aa81e94fcc66a";
-          sha256 = "1y97af0kl0yiirnajn44jcz865acndjwkr3zhpf65lm0bbaxfp2a";
+          rev = "079ef3e4620075932fecdda01e55eb4d78ba13a4";
+          sha256 = "0n87526mhsyswpnk5lmvlh00bnzm1sqfsl04kwab75kig8shs3bm";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/d4b187cb5b3cc5b546bfa6b94b6792e6363242d1/recipes/buttercup";
@@ -4423,12 +4531,12 @@
       melpaBuild {
         pname = "calendar-norway";
         ename = "calendar-norway";
-        version = "0.9.3";
+        version = "0.9.4";
         src = fetchFromGitHub {
           owner = "unhammer";
           repo = "calendar-norway.el";
-          rev = "8501b2ee515e995f345365391b03f44c812cabdf";
-          sha256 = "0lch835rq2rqyh0vyi75dhyl7hm6bv27f2z753wggh0jyg6qxi7a";
+          rev = "8d1fda8268caa74ba5e712c7675ed3c34e46e2d4";
+          sha256 = "011c8pz1g805a7c3djai39yasd2idfp4c2dcrvf7kbls27ayrl6d";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/c5d01230027d5cec9da2545a9ce9270a611f6567/recipes/calendar-norway";
@@ -5309,23 +5417,32 @@
                          , pkg-info
                          , queue
                          , seq
+                         , sesman
                          , spinner }:
       melpaBuild {
         pname = "cider";
         ename = "cider";
-        version = "0.17.0";
+        version = "0.18.0";
         src = fetchFromGitHub {
           owner = "clojure-emacs";
           repo = "cider";
-          rev = "5b1c148078b3c6083f7777f2c3349d5c6403fdba";
-          sha256 = "0yl1s84kq3438rbndzaxsxghjps82pgjpv76n5dwbkzcwpb84wn9";
+          rev = "97b95f5b5bb4f9c8f439375b4238d41fd5be9926";
+          sha256 = "1m9kc88vga3q5d731qnpngnsa0n57pf21k3hll20rw8rggrx4vdn";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/55a937aed818dbe41530037da315f705205f189b/recipes/cider";
           sha256 = "1a6hb728a3ir18c2dn9zfd3jn79fi5xjn5gqr7ljy6qb063xd4qx";
           name = "recipe";
         };
-        packageRequires = [ clojure-mode emacs pkg-info queue seq spinner ];
+        packageRequires = [
+          clojure-mode
+          emacs
+          pkg-info
+          queue
+          seq
+          sesman
+          spinner
+        ];
         meta = {
           homepage = "https://melpa.org/#/cider";
           license = lib.licenses.free;
@@ -5608,14 +5725,14 @@
         ename = "clips-mode";
         version = "0.7";
         src = fetchFromGitHub {
-          owner = "grettke";
+          owner = "clips-mode";
           repo = "clips-mode";
           rev = "f7869b67c2a8f061ce05f1e48abbcb41a6c455ce";
           sha256 = "07r01g5xcr3w0kq09m4rb8ws0ss77szczycybvas4379sf3g8dv9";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/d28484bf5e9ad72778ad63f73deeea1eb1263236/recipes/clips-mode";
-          sha256 = "083wrhjn04rg8vr6j0ziffdbdhbfn63wzl4q7yzpkf8qckh6mxhf";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/clips-mode";
+          sha256 = "1ckk8ajr1x8y2h8jx2q233xs69nip3kjn0wp3xgfbwx7hjcbk7kr";
           name = "recipe";
         };
         packageRequires = [];
@@ -5642,16 +5759,16 @@
       melpaBuild {
         pname = "clj-refactor";
         ename = "clj-refactor";
-        version = "2.3.1";
+        version = "2.4.0";
         src = fetchFromGitHub {
           owner = "clojure-emacs";
           repo = "clj-refactor.el";
-          rev = "9005de31ed05122d3db9f503fbc69722abf3634b";
-          sha256 = "1pvxwvx36fl971j9dfhfk33sqg70nsw57brsi6kgphq7dgzmv7dk";
+          rev = "3d5d1fbf28bfcc00f917cd96d6784968dcbbc962";
+          sha256 = "1z9278syijnzxfwlghz7bps3jp4cdl0fxg6igwpjfl8ln56hxazk";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/3a2db268e55d10f7d1d5a5f02d35b2c27b12b78e/recipes/clj-refactor";
-          sha256 = "1qvds6dylazvrzz1ji2z2ldw72pa2nxqacb9d04gasmkqc32ipvz";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/e608f40d00a3b2a80a6997da00e7d04f76d8ef0d/recipes/clj-refactor";
+          sha256 = "05x0820x34pidcz03z96qs685y2700g7ha0dx4vy1xr7fg356c3z";
           name = "recipe";
         };
         packageRequires = [
@@ -5762,12 +5879,12 @@
       melpaBuild {
         pname = "clojure-mode";
         ename = "clojure-mode";
-        version = "5.8.1";
+        version = "5.9.1";
         src = fetchFromGitHub {
           owner = "clojure-emacs";
           repo = "clojure-mode";
-          rev = "09831e36efaaa3aa284c241cca1f53ac55cbe410";
-          sha256 = "1fw5lbyyhjcfl23i1day8shs3diihvlqx59372c7k7gw8wb8phnq";
+          rev = "e8d6414043dc063d16598dc951c1ba8168738265";
+          sha256 = "0mz7zbm9z99k01jgni990x7jpghfnngxnrw1cz65y5lxwyxibnaz";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/5e3cd2e6ee52692dc7b2a04245137130a9f521c7/recipes/clojure-mode";
@@ -5788,7 +5905,7 @@
       melpaBuild {
         pname = "clojure-mode-extra-font-locking";
         ename = "clojure-mode-extra-font-locking";
-        version = "5.8.1";
+        version = "5.9.1";
         src = fetchFromGitHub {
           owner = "clojure-emacs";
           repo = "clojure-mode";
@@ -5974,7 +6091,7 @@
       melpaBuild {
         pname = "cmake-mode";
         ename = "cmake-mode";
-        version = "3.12.0";
+        version = "3.12.2";
         src = fetchFromGitHub {
           owner = "Kitware";
           repo = "CMake";
@@ -6226,6 +6343,32 @@
           license = lib.licenses.free;
         };
       }) {};
+    comb = callPackage ({ emacs
+                        , fetchFromGitHub
+                        , fetchurl
+                        , lib
+                        , melpaBuild }:
+      melpaBuild {
+        pname = "comb";
+        ename = "comb";
+        version = "0.2.0";
+        src = fetchFromGitHub {
+          owner = "cyrus-and";
+          repo = "comb";
+          rev = "8a68d313bf429763eb8aa78ece00230a668f2a1f";
+          sha256 = "1hh1lkan1ch5xyzrpfgzibf8dxmvaa1jfwlxyyhpnfs5h69h3245";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/1b236a1f3953475cbd7eb5c4289b092818ae08cf/recipes/comb";
+          sha256 = "0n4pkigr07hwj5nb0ngs6ay80psqv7nppp82rg5w38qf0mjs3pkp";
+          name = "recipe";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/comb";
+          license = lib.licenses.free;
+        };
+      }) {};
     commander = callPackage ({ cl-lib ? null
                              , dash
                              , f
@@ -6307,6 +6450,32 @@
           license = lib.licenses.free;
         };
       }) {};
+    commentary-theme = callPackage ({ emacs
+                                    , fetchFromGitHub
+                                    , fetchurl
+                                    , lib
+                                    , melpaBuild }:
+      melpaBuild {
+        pname = "commentary-theme";
+        ename = "commentary-theme";
+        version = "0.3.2";
+        src = fetchFromGitHub {
+          owner = "pzel";
+          repo = "commentary-theme";
+          rev = "1e2a64719b9d52992c6cdb91911ab313bcd69a77";
+          sha256 = "1bs7dz10f25pi5wfszxgf6afrsbfw6fwp8sm55fa6c46l3pi9jpm";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/852b5f83c9870209080d2ed39fede3215ae43e64/recipes/commentary-theme";
+          sha256 = "1s3g40f0r0v8m1qqldvw64vs43i5xza7rwkvhxqcqmj6p1a7mqqw";
+          name = "recipe";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/commentary-theme";
+          license = lib.licenses.free;
+        };
+      }) {};
     commenter = callPackage ({ emacs
                              , fetchFromGitHub
                              , fetchurl
@@ -6595,12 +6764,12 @@
       melpaBuild {
         pname = "company-emoji";
         ename = "company-emoji";
-        version = "2.5.0";
+        version = "2.5.1";
         src = fetchFromGitHub {
           owner = "dunn";
           repo = "company-emoji";
-          rev = "8dc88ffe0773ef44321f245d39430c14a1bc2b82";
-          sha256 = "1y8l9wnc13g79znyw2qsbm33da2bhkj270ppikkg9h4x2qpmxilq";
+          rev = "271909be44f86bcc294739ca45992cdc3caee39f";
+          sha256 = "1rihgld1wxwfdpqv7d9gcgd8xpnms5kpw61z30y18fmkxhhmid3c";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/5733dccdffe97911a30352fbcda2900c33d79810/recipes/company-emoji";
@@ -6795,12 +6964,12 @@
       melpaBuild {
         pname = "company-lsp";
         ename = "company-lsp";
-        version = "2.0.1";
+        version = "2.0.2";
         src = fetchFromGitHub {
           owner = "tigersoldier";
           repo = "company-lsp";
-          rev = "4512d062c38922d8b8cf402ca6043c246e915694";
-          sha256 = "0q95lgw02qy5dn3vpdhspmvjhnfzmmn2asajaf15q5lkjbsvxfrk";
+          rev = "b93abde5bbc870170d2a2f5aa309be8a9618daf9";
+          sha256 = "1jb75km5w2y7iawknyb5nhi1k4mlll4srd6vaf4zm7frmx50jwyc";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/5125f53307c1af3d9ccf2bae3c25e7d23dfe1932/recipes/company-lsp";
@@ -6933,12 +7102,12 @@
       melpaBuild {
         pname = "company-prescient";
         ename = "company-prescient";
-        version = "2.0";
+        version = "2.2";
         src = fetchFromGitHub {
           owner = "raxod502";
           repo = "prescient.el";
-          rev = "515959a2523b43608c9d06dcf8adde8911ce42b9";
-          sha256 = "1k8xk154sql3b2b7hpyxslcgl88aaxq5ak2sr760jsq2qk7878bw";
+          rev = "1e0db9451e75f0db29668bebe98dfa747c6b4bcf";
+          sha256 = "0zm9phc4cv7ldgyngcj84fxc1j0nh12c05lxiwv0n1xb8wc6awvf";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/b92c34e493bbefab1d7747b0855d1ab2f984cb7c/recipes/company-prescient";
@@ -7397,12 +7566,12 @@
       melpaBuild {
         pname = "conllu-mode";
         ename = "conllu-mode";
-        version = "0.1.0";
+        version = "0.1.1.1";
         src = fetchFromGitHub {
           owner = "odanoburu";
           repo = "conllu-mode";
-          rev = "993fd6bc2b5c7b70815a3ecede1642f607513615";
-          sha256 = "0x6ga4h084qcf9h6nak7c66qq1slq907n64sqx41gnd3zbscmwxa";
+          rev = "a752e9f7a04237e70e58beba23871f8fee4fd4e3";
+          sha256 = "0nany4lqhn56xan9hjr4cwv77ydgi51aqsm150j0093qsr1a91xp";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/444f943baddfeafe29708d6d68aeeeedbb7aa7bd/recipes/conllu-mode";
@@ -7452,14 +7621,14 @@
         ename = "contextual";
         version = "1.0.1";
         src = fetchFromGitHub {
-          owner = "lshift-de";
+          owner = "e-user";
           repo = "contextual";
           rev = "8134a2d8034c624f4fdbbb0b3893de12f4257909";
           sha256 = "0s4b7dkndhnh8q3plvg2whjx8zd7ffz4hnbn3xh86xd3k7sch7av";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/44e5b799e411b8e2d89c8e9aeb4720126ac908b7/recipes/contextual";
-          sha256 = "0vribs0fa1xf5kwkmvzjwhiawni0p3v56c5l4dkz8d7wn2g6wfdx";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/de20db067590624bbd2ca5a7a537b7f11ada84f2/recipes/contextual";
+          sha256 = "1xwjjchmn3xqxbgvqishh8i75scc4kjgdzlp5j64d443pfgyr56a";
           name = "recipe";
         };
         packageRequires = [ cl-lib dash emacs ];
@@ -7721,12 +7890,12 @@
       melpaBuild {
         pname = "counsel-etags";
         ename = "counsel-etags";
-        version = "1.6.2";
+        version = "1.6.3";
         src = fetchFromGitHub {
           owner = "redguardtoo";
           repo = "counsel-etags";
-          rev = "9437ce4e4adb7140df6af0a4528069b9e54de44b";
-          sha256 = "14q7w6pz3pslwr4s1f2b8wiq6k1jvp09mwml9x2j5ljw7j3145pi";
+          rev = "0ff874cd5ad5b29ca557685d04087e3eec859fe7";
+          sha256 = "1pzi0yz320xy72z65nahrxm2dspnnzz55zxjf01ha5nr1nh01q2h";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/87528349a3ab305bfe98f30c5404913272817a38/recipes/counsel-etags";
@@ -8402,7 +8571,7 @@
       melpaBuild {
         pname = "cython-mode";
         ename = "cython-mode";
-        version = "0.28.4";
+        version = "0.28.5";
         src = fetchFromGitHub {
           owner = "cython";
           repo = "cython";
@@ -8528,6 +8697,50 @@
           license = lib.licenses.free;
         };
       }) {};
+    dap-mode = callPackage ({ bui
+                            , dash
+                            , dash-functional
+                            , emacs
+                            , f
+                            , fetchFromGitHub
+                            , fetchurl
+                            , lib
+                            , lsp-java
+                            , lsp-mode
+                            , melpaBuild
+                            , s
+                            , tree-mode }:
+      melpaBuild {
+        pname = "dap-mode";
+        ename = "dap-mode";
+        version = "0.1";
+        src = fetchFromGitHub {
+          owner = "yyoncho";
+          repo = "dap-mode";
+          rev = "d1a27fd8e27f03d1a2bf2113f2f9f26ce648178c";
+          sha256 = "0bp4giv3gjm3r9ws8qw260j29q7y5c5yj94afdhiqdj093yjv994";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/9b5296ada8eb52689acb1f236e0e74fecbbfd5fb/recipes/dap-mode";
+          sha256 = "1hbsmgfgn742fs086m80rjlidglmran0b072f7s8js4c00jy2xdv";
+          name = "recipe";
+        };
+        packageRequires = [
+          bui
+          dash
+          dash-functional
+          emacs
+          f
+          lsp-java
+          lsp-mode
+          s
+          tree-mode
+        ];
+        meta = {
+          homepage = "https://melpa.org/#/dap-mode";
+          license = lib.licenses.free;
+        };
+      }) {};
     darcula-theme = callPackage ({ fetchFromGitLab
                                  , fetchurl
                                  , lib
@@ -8561,12 +8774,12 @@
       melpaBuild {
         pname = "darktooth-theme";
         ename = "darktooth-theme";
-        version = "0.3.7";
+        version = "0.3.10";
         src = fetchFromGitHub {
           owner = "emacsfodder";
           repo = "emacs-theme-darktooth";
-          rev = "fb66992286c009e594eb7bb9ee2f1cdc3bebb555";
-          sha256 = "0n7qgnyl4rdvgwjb7gz6m1c22mxwg8bp08r7lz27z0b1bcyw94sc";
+          rev = "ae14a9be19b6fbd287e0f5ad156e7942cd6a5bc6";
+          sha256 = "1jisiz0blksjl6d8q7bnvnlfrwalqfpd93fs66i8pgllhf5z7j19";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/b7f62ac1566ced7332e83253f79078dc30cb7889/recipes/darktooth-theme";
@@ -8593,14 +8806,14 @@
         ename = "dart-mode";
         version = "1.0.3";
         src = fetchFromGitHub {
-          owner = "nex3";
+          owner = "bradyt";
           repo = "dart-mode";
           rev = "f3a7c7b71fb12d02fa02700bc10426cb10010d01";
           sha256 = "1g0c37qfqki7v1a5rxf6sy7k07i529rw3f1wmjl7g1zhd9bwsml2";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/dart-mode";
-          sha256 = "00zvgxfxgk5jair796l6appyq5hc7hs2s2wglv1j4l7g50b05cla";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/dart-mode";
+          sha256 = "0zpvp86067a6l63wrpqxsm9fhv3n4ggbq8pg21vgiz54hk4x1xpp";
           name = "recipe";
         };
         packageRequires = [ cl-lib dash emacs flycheck s ];
@@ -8750,12 +8963,12 @@
       melpaBuild {
         pname = "datetime";
         ename = "datetime";
-        version = "0.4.1";
+        version = "0.5";
         src = fetchFromGitHub {
           owner = "doublep";
           repo = "datetime";
-          rev = "d8674ac11f9ebb702e5bbac10a4a6e5542958ef5";
-          sha256 = "19d4wximzwdcs0i2r48k6m60wwxcx5f89jw75k4hr0wvx0352a82";
+          rev = "a4191272d5ef950712d3d9668209d09db7bfef65";
+          sha256 = "0klgjlp3dpj530iq1l4i96adkpas8id27m9iwpng39mhfqhc050a";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/91ef4352603cc69930ab3d63f0a90eee63f5f328/recipes/datetime";
@@ -8780,12 +8993,12 @@
       melpaBuild {
         pname = "deadgrep";
         ename = "deadgrep";
-        version = "0.4";
+        version = "0.5";
         src = fetchFromGitHub {
           owner = "Wilfred";
           repo = "deadgrep";
-          rev = "160fa79bc76fa79ab727e369c5053bd61ca62a49";
-          sha256 = "0csval9g9w606dvj24rv2x5f6rbaj1lczavvcldq0wgj8fivkyh1";
+          rev = "4904896b4d8ed5bdae29e1bc5e2c0c4af050cf67";
+          sha256 = "0kyqc5s109yhj73by429nsg19xwv2is803b04qigdfwrzm5cvk4y";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/93389fae7233b83ea904e17bdaf83f8247cda3d8/recipes/deadgrep";
@@ -10027,12 +10240,12 @@
       melpaBuild {
         pname = "docker";
         ename = "docker";
-        version = "0.7.0";
+        version = "1.0.0";
         src = fetchFromGitHub {
           owner = "Silex";
           repo = "docker.el";
-          rev = "0bcc50fa0c94c1647511d37efcb46fa8b5d23db3";
-          sha256 = "12qggbxjmj939zzv774cqydfa3ykw7v77qphkjvlx2j2vq7r1d90";
+          rev = "03ab45c44a7db072dea4ea379930684c18c7d873";
+          sha256 = "0q2mhh0al82hgr8kbb8pvhw2hf5ryf0gmch4fhpb4q5nq9gb6gnw";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/6c74bf8a41c17bc733636f9e7c05f3858d17936b/recipes/docker";
@@ -10197,12 +10410,12 @@
       melpaBuild {
         pname = "doom-modeline";
         ename = "doom-modeline";
-        version = "0.2.0";
+        version = "0.4.0";
         src = fetchFromGitHub {
           owner = "seagle0128";
           repo = "doom-modeline";
-          rev = "845e0319d3cce53424e2c804290c16014df53709";
-          sha256 = "135152m1a96549blh658lvk4q76dy3bhnl2f0vf78q1pxnrv9mx1";
+          rev = "ad7c7ae7e4639a9b93d66d85bdd47b66d8f65365";
+          sha256 = "1zadmslgcw1r8wga06jpb6a3d5ylsbn0x3yad8hrzgn9rcyrpfgl";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/f4f610757f85fb01bd9b1dd212ddbea8f34f3ecd/recipes/doom-modeline";
@@ -10232,12 +10445,12 @@
       melpaBuild {
         pname = "doom-themes";
         ename = "doom-themes";
-        version = "2.1.1";
+        version = "2.1.6";
         src = fetchFromGitHub {
           owner = "hlissner";
           repo = "emacs-doom-themes";
-          rev = "98120f9b362b53983e932f126cf92848297b745a";
-          sha256 = "03pnnbqa09iqyypgbgwlkxr6w1j46rla6pivbq7fy366yk2x03x0";
+          rev = "39e6971e81181b86a57f65cd0ea31376203a9756";
+          sha256 = "042pzcdhxi2z07jcscgjbaki9nrrm0cbgbbrnymd1r4q8ckkn8l9";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/c5084bc2c3fe378af6ff39d65e40649c6359b7b5/recipes/doom-themes";
@@ -10809,12 +11022,12 @@
       melpaBuild {
         pname = "easy-hugo";
         ename = "easy-hugo";
-        version = "3.3.30";
+        version = "3.3.32";
         src = fetchFromGitHub {
           owner = "masasam";
           repo = "emacs-easy-hugo";
-          rev = "8bf48b973905c4ab488633226b3dfb3317d8c745";
-          sha256 = "0yjxg1mql7ha6wa5wdkngs6y3lqz5y5y0hbsmpvqdw61paqm2ggs";
+          rev = "31cd8060d4ebb117599b90bee0f470ed148bcfba";
+          sha256 = "1sd38chf5zlhyiz2p56bwl35j22h7bfqqrwxxsccyypk217nrvnh";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/easy-hugo";
@@ -10835,12 +11048,12 @@
       melpaBuild {
         pname = "easy-jekyll";
         ename = "easy-jekyll";
-        version = "1.6.15";
+        version = "1.6.17";
         src = fetchFromGitHub {
           owner = "masasam";
           repo = "emacs-easy-jekyll";
-          rev = "84c19d0380617ce2e40a2b42ce9bedf65e52779d";
-          sha256 = "1vbb60vb98nqbwrxl6p3gcvjpnjlscp0hp4k53rcgjd75w9vbnsj";
+          rev = "dc8a97d3d512dccf908f63f54a2679e3450fec85";
+          sha256 = "0y6d9gmrk9cka1kl09qfjfrm8p70bxy7bisfl0c7ays9ky7pniix";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/c3f281145bad12c27bdbef32ccc07b6a5f13b577/recipes/easy-jekyll";
@@ -10888,12 +11101,12 @@
       melpaBuild {
         pname = "easy-kill-extras";
         ename = "easy-kill-extras";
-        version = "0.9.4.1";
+        version = "0.9.5";
         src = fetchFromGitHub {
           owner = "knu";
           repo = "easy-kill-extras.el";
-          rev = "e60a74d7121eff7c263098aea2901cc05a5f6acd";
-          sha256 = "1rabkb2pkafnfx68df1zjwbj8bl7361n35lvzrvldc3v85bfam48";
+          rev = "1dafa46271dfe08de77d0273451b1e91ed332692";
+          sha256 = "12xm63kvqzxrw3c5ni2l93mjs5mfbh3k69j4157b54629rfkad9v";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/7b55d93f78fefde47a2bd4ebbfd93c028fab1f40/recipes/easy-kill-extras";
@@ -10998,12 +11211,12 @@
       melpaBuild {
         pname = "ebib";
         ename = "ebib";
-        version = "2.11.11";
+        version = "2.12.1";
         src = fetchFromGitHub {
           owner = "joostkremers";
           repo = "ebib";
-          rev = "212dea4a52f04eaa1d13a895fffea04f5884f12b";
-          sha256 = "150dggfk79pk11qlzfl2sk1xaibdy0sbh6n94r7i2w235p2yg8p5";
+          rev = "1b675d32ebeb8b52cd20934b6e4a4914361329fa";
+          sha256 = "0g12bg4wnzki6v780zhn8gxr80lrszldq8wpcni20l78kn799rdv";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/4e39cd8e8b4f61c04fa967def6a653bb22f45f5b/recipes/ebib";
@@ -11297,12 +11510,12 @@
       melpaBuild {
         pname = "editorconfig";
         ename = "editorconfig";
-        version = "0.7.12";
+        version = "0.7.13";
         src = fetchFromGitHub {
           owner = "editorconfig";
           repo = "editorconfig-emacs";
-          rev = "ae856b02a6513521bdf6a77a7ef51805fb0abf57";
-          sha256 = "0y13276ajz12rw1xcfqnr7q6kkk6zi0f55p10nblfkhxclhr0f7z";
+          rev = "e2a5cfe9709e75f4abf0b4856831a1699d2d7479";
+          sha256 = "1jx1zxk2nib3vfzvwbkd22503h7n9faa409gl55gw5kysw9lk3pn";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/50d4f2ed288ef38153a7eab44c036e4f075b51d0/recipes/editorconfig";
@@ -11457,14 +11670,14 @@
         ename = "egison-mode";
         version = "3.7.10";
         src = fetchFromGitHub {
-          owner = "egisatoshi";
-          repo = "egison3";
+          owner = "egison";
+          repo = "egison";
           rev = "0f8289294b1a8de029f89643438e8384e7ee789f";
           sha256 = "1rkxz4gj11z1jpd3g71m6sbzb5j4ggm6sixk3r18wb8wv91v4fgs";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/f543dd136e2af6c36b12073ea75b3c4d4bc79769/recipes/egison-mode";
-          sha256 = "0x11fhv8kkx34h831k2q70y5qfz7wnfia4ka5mbmps7mpr68zcwi";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/egison-mode";
+          sha256 = "0bch4863l9wxrss63fj46gy3nx3hp635709xr4c2arw0j7n82lzd";
           name = "recipe";
         };
         packageRequires = [];
@@ -11735,12 +11948,12 @@
       melpaBuild {
         pname = "el-patch";
         ename = "el-patch";
-        version = "2.1";
+        version = "2.2.1";
         src = fetchFromGitHub {
           owner = "raxod502";
           repo = "el-patch";
-          rev = "c10108162bc72b8d09ccf9c914e892e1209f9c20";
-          sha256 = "0fibq04fncv8pia8xjaxc6gc4x046cg26ag6dw6gg0wj79gpyrv9";
+          rev = "15b3e84ab7001d42acd621cd6572ffdca839ea33";
+          sha256 = "0fg4zzvk7vddiqgk9hcq8h09j8xr6c3hxhh7fa9rah4ni6clxmaw";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/2f4f57e0edbae35597aa4a7744d22d2f971d5de5/recipes/el-patch";
@@ -11919,12 +12132,12 @@
       melpaBuild {
         pname = "electric-operator";
         ename = "electric-operator";
-        version = "1.0.0";
+        version = "1.1.0";
         src = fetchFromGitHub {
           owner = "davidshepherd7";
           repo = "electric-operator";
-          rev = "16df9e16da8efe25d410ba17165d7f5c1ad4e043";
-          sha256 = "010zr6dgix6bf8xshs8kascpzcrg83vqd1w71qin9anw6rf3z4d4";
+          rev = "21e6b84754118912768263a393442a7aefb4742b";
+          sha256 = "1bgz5vn4piax8jm0ixqlds0qj5my26zczaxs21fah11pwbdc0xyk";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/906cdf8647524bb76f644373cf8b65397d9053a5/recipes/electric-operator";
@@ -11971,12 +12184,12 @@
       melpaBuild {
         pname = "elfeed";
         ename = "elfeed";
-        version = "3.0.0";
+        version = "3.1.0";
         src = fetchFromGitHub {
           owner = "skeeto";
           repo = "elfeed";
-          rev = "7e0abfee1470ae6323b559a7a9f843dd0076d622";
-          sha256 = "01x4ww63lvn04c7f3ab5vx2s20xqisvv8213qwswz7vr9nxja5yi";
+          rev = "3d1c6ecbe585f9fe6ca5a97a3fc352d68f303f9e";
+          sha256 = "1bzpl6lc7kq9bph4bfz1fn19207blrnhjr2g7yinhn0nnnjmxi8i";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/407ae027fcec444622c2a822074b95996df9e6af/recipes/elfeed";
@@ -11999,12 +12212,12 @@
       melpaBuild {
         pname = "elfeed-protocol";
         ename = "elfeed-protocol";
-        version = "0.5.3";
+        version = "0.5.4";
         src = fetchFromGitHub {
           owner = "fasheng";
           repo = "elfeed-protocol";
-          rev = "611a1f57373e3692abf5122652ea7f6f96d3f6ec";
-          sha256 = "0z9xij39p6m2855ksk40qaf830d04smhl3ag9gjb4fhzvw671k76";
+          rev = "81ae532fba657ff230568a14277d1f71940688a3";
+          sha256 = "09s5jnb5sbraszwcmwaa7fzvv8qd6l7cnyl18rzfszhkqkc17xhj";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/3f1eef8add7cd2cfefe6fad6d8e69d65696e9677/recipes/elfeed-protocol";
@@ -12027,12 +12240,12 @@
       melpaBuild {
         pname = "elfeed-web";
         ename = "elfeed-web";
-        version = "3.0.0";
+        version = "3.1.0";
         src = fetchFromGitHub {
           owner = "skeeto";
           repo = "elfeed";
-          rev = "7e0abfee1470ae6323b559a7a9f843dd0076d622";
-          sha256 = "01x4ww63lvn04c7f3ab5vx2s20xqisvv8213qwswz7vr9nxja5yi";
+          rev = "3d1c6ecbe585f9fe6ca5a97a3fc352d68f303f9e";
+          sha256 = "1bzpl6lc7kq9bph4bfz1fn19207blrnhjr2g7yinhn0nnnjmxi8i";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/62459d16ee44d5fcf170c0ebc981ca2c7d4672f2/recipes/elfeed-web";
@@ -12113,13 +12326,13 @@
         version = "1.3";
         src = fetchFromGitHub {
           owner = "Wilfred";
-          repo = "refs.el";
+          repo = "elisp-refs";
           rev = "788f6f65d5171b1887b3ff9e4cad900e8046b2b1";
           sha256 = "0c7hcbjqynw6k5idpmfxn6xbr192ahhk8a2g72npap97flpw6cdq";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/60891099e241ebd32d39bdcfe4953529a5a3263e/recipes/elisp-refs";
-          sha256 = "16h7dccmzvmap3knnwhjq79wm82xm3whria70vq5msl2y252f6cx";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/elisp-refs";
+          sha256 = "1pj3dm2z6m24179ibl7zhr8lhan2v2rjnm3abfciwp228piz1sfz";
           name = "recipe";
         };
         packageRequires = [ dash loop s ];
@@ -12165,14 +12378,14 @@
         ename = "elixir-mode";
         version = "2.3.1";
         src = fetchFromGitHub {
-          owner = "elixir-lang";
+          owner = "elixir-editors";
           repo = "emacs-elixir";
           rev = "a1f4d60ec555574c945201359d2e32b183c69f4b";
           sha256 = "06bi68x49v6f7flpz279mm4jpg31ll3s274givm3pvr8slcxs6xg";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/6374ced0de38d83bf99147f702f30706615480ed/recipes/elixir-mode";
-          sha256 = "1dba3jfg210i2rw8qy866396xn2xjgmbcyl006d6fibpr3j4lxaf";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/elixir-mode";
+          sha256 = "0d25p6sal1qg1xsq5yk343afnrxa0lzpx5gsh72khnx2i8pi40vz";
           name = "recipe";
         };
         packageRequires = [ emacs pkg-info ];
@@ -12380,12 +12593,12 @@
       melpaBuild {
         pname = "elpy";
         ename = "elpy";
-        version = "1.22.0";
+        version = "1.24.0";
         src = fetchFromGitHub {
           owner = "jorgenschaefer";
           repo = "elpy";
-          rev = "47eac168f38e40fc07f56ea37fb1bee7f645e42a";
-          sha256 = "09inijph1r0l94balf0z01g2dgx22y53c346cxf4fkm2hcjd2fd7";
+          rev = "5249e086b76ac7b22e9d5d094d92294d00067ba8";
+          sha256 = "0rsg8a9nwqfkv0xcs11jzfp10ij7jm0v2ikx19zv2v7awqy0q5wf";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1d8fcd8745bb15402c9f3b6f4573ea151415237a/recipes/elpy";
@@ -13083,21 +13296,20 @@
                        , paredit
                        , popup
                        , projectile
-                       , redshank
                        , s }:
       melpaBuild {
         pname = "emr";
         ename = "emr";
-        version = "0.3.7";
+        version = "0.3.8";
         src = fetchFromGitHub {
-          owner = "chrisbarrett";
+          owner = "Wilfred";
           repo = "emacs-refactor";
-          rev = "ff330b50526fa6da34bd410b506cb89408ef8c1e";
-          sha256 = "1jbyg3b1y8rs2s7xq79gzllfnxcr1whg6zja2kl7zk23kkn65s7r";
+          rev = "f25e3354e5e97deef359aef5386c69dea20b07b0";
+          sha256 = "107br10jwza4pwsx8gskh9kp2g28yzxclmwd2l9z137nmf24gm3a";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/2cd2ebec5bd6465bffed284130e1d534f52169a9/recipes/emr";
-          sha256 = "05vpfxg6lviclnms2zyrza8dc87m60mimlwd11ihvsbngi9gcw8x";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/emr";
+          sha256 = "02a7yzv6vxdazi26wk1ijadrjffd4iaf1abhpv642xib86pgpfd6";
           name = "recipe";
         };
         packageRequires = [
@@ -13110,7 +13322,6 @@
           paredit
           popup
           projectile
-          redshank
           s
         ];
         meta = {
@@ -13640,7 +13851,7 @@
       melpaBuild {
         pname = "erlang";
         ename = "erlang";
-        version = "21.0.3";
+        version = "21.0.9";
         src = fetchFromGitHub {
           owner = "erlang";
           repo = "otp";
@@ -13658,6 +13869,31 @@
           license = lib.licenses.free;
         };
       }) {};
+    erlstack-mode = callPackage ({ fetchFromGitHub
+                                 , fetchurl
+                                 , lib
+                                 , melpaBuild }:
+      melpaBuild {
+        pname = "erlstack-mode";
+        ename = "erlstack-mode";
+        version = "0.1.0";
+        src = fetchFromGitHub {
+          owner = "k32";
+          repo = "erlstack-mode";
+          rev = "07398e929978b0eaf2bf119e97cba7b9f9e90d2a";
+          sha256 = "1gf9k3z9v1s7d01s551ys87j05xh3lpnvv86dq86rz8xinc09kac";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6ee61c1c5f116082b37fb13d15052ed9bbbc1dac/recipes/erlstack-mode";
+          sha256 = "0b7mj0rs8k3hdv4v3v5vmdqs0y26mss7dzc0sjjxj4d095yddqqf";
+          name = "recipe";
+        };
+        packageRequires = [];
+        meta = {
+          homepage = "https://melpa.org/#/erlstack-mode";
+          license = lib.licenses.free;
+        };
+      }) {};
     ert-async = callPackage ({ fetchFromGitHub
                              , fetchurl
                              , lib
@@ -14014,14 +14250,14 @@
         ename = "eshell-prompt-extras";
         version = "0.96";
         src = fetchFromGitHub {
-          owner = "hiddenlotus";
+          owner = "kaihaosw";
           repo = "eshell-prompt-extras";
           rev = "7581c109673c40aceff278cd524273f50ffe170d";
           sha256 = "1m1jisjz974cfz89i6l2zq666yzhsqipc6dmqlrm8mw81fxsfm1h";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/7fabdb05de9b8ec18a3a566f99688b50443b6b44/recipes/eshell-prompt-extras";
-          sha256 = "0kh4lvjkayjdz5lqvdqmdcblxizxk9kwmigjwa68kx8z6ngmfwa5";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/eshell-prompt-extras";
+          sha256 = "0zkdb9a8dibk832b5hzb6wjich3l0lah5p64805rgd4qskzj10gx";
           name = "recipe";
         };
         packageRequires = [];
@@ -14164,25 +14400,24 @@
       }) {};
     ess = callPackage ({ fetchFromGitHub
                        , fetchurl
-                       , julia-mode
                        , lib
                        , melpaBuild }:
       melpaBuild {
         pname = "ess";
         ename = "ess";
-        version = "17.11";
+        version = "17.11.999";
         src = fetchFromGitHub {
           owner = "emacs-ess";
           repo = "ESS";
-          rev = "f59a95e72ba2803229cc9aeb7559186c528dbcea";
-          sha256 = "0lwajgf39r75g239plbhlbppgj7vyc5via72qq906jqy89b5iic7";
+          rev = "43a0cc8fba8f544362b79a8934ed4ec30c5fcd2c";
+          sha256 = "0ssck7png966xs31hwgd6drrhrkcgxay6r7i59npviyl16jp6j3z";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/156a6fa9e6ee16174d215c1dcd524aff847b3bf0/recipes/ess";
           sha256 = "1psqrw9k7d2ha8zid2mkc6bgcyalrm3n53c00g3cgckkbahl7r6n";
           name = "recipe";
         };
-        packageRequires = [ julia-mode ];
+        packageRequires = [];
         meta = {
           homepage = "https://melpa.org/#/ess";
           license = lib.licenses.free;
@@ -14537,6 +14772,34 @@
           license = lib.licenses.free;
         };
       }) {};
+    evil-collection = callPackage ({ cl-lib ? null
+                                   , emacs
+                                   , evil
+                                   , fetchFromGitHub
+                                   , fetchurl
+                                   , lib
+                                   , melpaBuild }:
+      melpaBuild {
+        pname = "evil-collection";
+        ename = "evil-collection";
+        version = "0.0.1";
+        src = fetchFromGitHub {
+          owner = "emacs-evil";
+          repo = "evil-collection";
+          rev = "733f8d0d289fcbb58705acd1049b618826a3c011";
+          sha256 = "01hr5wf693s2djs6l83nfpq6wyyws99c5nwil6hpqhvrwp4f5h95";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/fbc35279115f6fdf1ce7d1ecef3b413c7ca9c4f1/recipes/evil-collection";
+          sha256 = "1l6x782ix873n90k9g00i9065h31dnhv07bgzrp28l7y7bivqwl7";
+          name = "recipe";
+        };
+        packageRequires = [ cl-lib emacs evil ];
+        meta = {
+          homepage = "https://melpa.org/#/evil-collection";
+          license = lib.licenses.free;
+        };
+      }) {};
     evil-commentary = callPackage ({ evil
                                    , fetchFromGitHub
                                    , fetchurl
@@ -14743,8 +15006,8 @@
           sha256 = "01hccc49xxb6lnzr0lwkkwndbk4sv0jyyz3khbcxsgkpzjiydihv";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/089accfa2646fc4f265cb8e9b9a05dcf5aa4c4f6/recipes/evil-mark-replace";
-          sha256 = "03cq43vlv1b53w4kw7mjvk026i8rzhhryfb27ddn6ipgc6xh68a0";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/e608f40d00a3b2a80a6997da00e7d04f76d8ef0d/recipes/evil-mark-replace";
+          sha256 = "14j2d46288shlixb57nh5vlqdi3aiv20djvcbhiw1cm9ar2c3y4v";
           name = "recipe";
         };
         packageRequires = [ evil ];
@@ -16051,6 +16314,31 @@
           license = lib.licenses.free;
         };
       }) {};
+    fd-dired = callPackage ({ fetchFromGitHub
+                            , fetchurl
+                            , lib
+                            , melpaBuild }:
+      melpaBuild {
+        pname = "fd-dired";
+        ename = "fd-dired";
+        version = "0.1.0";
+        src = fetchFromGitHub {
+          owner = "yqrashawn";
+          repo = "fd-dired";
+          rev = "b30ebe827a244b4f27f5387be4b50d074ca67e1b";
+          sha256 = "09856pzkybs85msz0awqjw2r3b1hc9wybwq1j30qx14zzbcr3gvf";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/1217e0d4f42df68cc22de9b4f27a36c0377509e3/recipes/fd-dired";
+          sha256 = "0g8zvg6b9hcxkmqn254y9khjm7jz2lz4mh7dhsxfcy64inaj0481";
+          name = "recipe";
+        };
+        packageRequires = [];
+        meta = {
+          homepage = "https://melpa.org/#/fd-dired";
+          license = lib.licenses.free;
+        };
+      }) {};
     feature-mode = callPackage ({ fetchFromGitHub
                                 , fetchurl
                                 , lib
@@ -16218,14 +16506,14 @@
         ename = "find-file-in-repository";
         version = "1.2";
         src = fetchFromGitHub {
-          owner = "hoffstaetter";
+          owner = "h";
           repo = "find-file-in-repository";
           rev = "8b888f85029a2ff9159a724b42aeacdb051c3420";
           sha256 = "0wbmmrd7brf4498pdyilz17rzv7221cj8sd4h11gac2r72f1q2md";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/58705ac6201b73851ce4ce9ebeb0e65463765961/recipes/find-file-in-repository";
-          sha256 = "0q1ym06w2yn3nzpj018dj6h68f7rmkxczyl061mirjp8z9c6a9q6";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/find-file-in-repository";
+          sha256 = "02rihpfpckppnf5a2zgd5s3dspdhq4mr6qchlrzg2fd4byjxra9s";
           name = "recipe";
         };
         packageRequires = [];
@@ -16543,12 +16831,12 @@
       melpaBuild {
         pname = "floobits";
         ename = "floobits";
-        version = "1.9.2";
+        version = "1.9.3";
         src = fetchFromGitHub {
           owner = "Floobits";
           repo = "floobits-emacs";
-          rev = "ed5586d1bf94f36354091648e824ccb6fcaf807f";
-          sha256 = "08m9snmkhdjmvw1pqww9l39xqas9f6yxksjxvfjjfnad8ak80x9b";
+          rev = "489b294a7f30ecd2af2edc0823dead8102f27af6";
+          sha256 = "1pw88qn6s8ln626c8mgxgpfax39h7ww4m930dp7gg4aklxjbspkn";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/95c859e8440049579630b4c2bcc31e7eaa13b1f1/recipes/floobits";
@@ -16596,12 +16884,12 @@
       melpaBuild {
         pname = "flower";
         ename = "flower";
-        version = "0.4.2";
+        version = "0.4.3";
         src = fetchFromGitHub {
           owner = "PositiveTechnologies";
           repo = "flower";
-          rev = "4d05448dc0118078ec320f564d87acaa740ae47c";
-          sha256 = "02p74f5hfhrhv5l7b9cwfbczsgkpqajlmr66qmkdljgc8ksr86n2";
+          rev = "a0e6912e6e709e5cf083d48cebffdb60b809c59a";
+          sha256 = "04m6x5hiac9f4ffjw82g9gcy5r84vfrm4vj67f1vqr7llqbflkzm";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/c8a731715d360aea9af2b898242fd4eee5419d14/recipes/flower";
@@ -16942,6 +17230,32 @@
           license = lib.licenses.free;
         };
       }) {};
+    flycheck-grammalecte = callPackage ({ emacs
+                                        , fetchgit
+                                        , fetchurl
+                                        , flycheck
+                                        , lib
+                                        , melpaBuild }:
+      melpaBuild {
+        pname = "flycheck-grammalecte";
+        ename = "flycheck-grammalecte";
+        version = "0.5";
+        src = fetchgit {
+          url = "https://git.deparis.io/flycheck-grammalecte/";
+          rev = "4f5937c58f895a62ccb3466af20b26a61ef9071c";
+          sha256 = "15jpck7h2bn6idfzizjw79nfza3lm9dj03v0r44pnm1ryx7l89w7";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/fdd82aa0568d998a3d176b5ee47b8a227438ea09/recipes/flycheck-grammalecte";
+          sha256 = "0xqg995a42cl6mvmpi68ay56fgs636cbzg65q5si5yc1yzgl74nv";
+          name = "recipe";
+        };
+        packageRequires = [ emacs flycheck ];
+        meta = {
+          homepage = "https://melpa.org/#/flycheck-grammalecte";
+          license = lib.licenses.free;
+        };
+      }) {};
     flycheck-haskell = callPackage ({ dash
                                     , emacs
                                     , fetchFromGitHub
@@ -17035,12 +17349,12 @@
       melpaBuild {
         pname = "flycheck-joker";
         ename = "flycheck-joker";
-        version = "1.2.0";
+        version = "1.3.0";
         src = fetchFromGitHub {
           owner = "candid82";
           repo = "flycheck-joker";
-          rev = "0d8d5683a273093ca12841bf93d10dae97ccbc5d";
-          sha256 = "0r9w0ky1522yz1jdi8fd36lpdjm30vxq41x77vswikqxvscri3dq";
+          rev = "51e99e697761ee8dab863930910abdba7607c1bd";
+          sha256 = "07pxfvnrgp7f3rb27j1zrq04pncvga4291krqqy3dzwazsjplz48";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/599bf33a5d4a4a590b355001e532cab4e1ee9ef6/recipes/flycheck-joker";
@@ -17415,12 +17729,12 @@
       melpaBuild {
         pname = "flycheck-pycheckers";
         ename = "flycheck-pycheckers";
-        version = "0.9";
+        version = "0.11";
         src = fetchFromGitHub {
           owner = "msherry";
           repo = "flycheck-pycheckers";
-          rev = "526488b4d8a2067ca666ed8f4de631db79651fb3";
-          sha256 = "17arb41j884gg8xdbc7nf0raahzinkslkpr161497dvs2xfpb9zi";
+          rev = "4f65e93931c5be4b183d2a3cf5a52a394f9a09b7";
+          sha256 = "034sfjd01w4djrhmcdywv5g771wi7ny5b3pad3pici4129jkk62s";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/af36dca316b318d25d65c9e842f15f736e19ea63/recipes/flycheck-pycheckers";
@@ -17625,6 +17939,34 @@
           license = lib.licenses.free;
         };
       }) {};
+    flycheck-vdm = callPackage ({ emacs
+                                , fetchFromGitHub
+                                , fetchurl
+                                , flycheck
+                                , lib
+                                , melpaBuild
+                                , vdm-mode }:
+      melpaBuild {
+        pname = "flycheck-vdm";
+        ename = "flycheck-vdm";
+        version = "0.0.3";
+        src = fetchFromGitHub {
+          owner = "peterwvj";
+          repo = "vdm-mode";
+          rev = "0c083ee4848ea5d78de7894a4a0722d6630839c9";
+          sha256 = "175zlxxjxl7zp80hm2hz5xw7gy3qh0hz3fdvqy8v3n0vz4zvqx1k";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/f246b9dcf7915a845b9e2cd44cc1a0833b412c8f/recipes/flycheck-vdm";
+          sha256 = "15ng1l8gfp8iz50yb5d39dy57763gd2x8j6z6rz0byiykgxhl9zg";
+          name = "recipe";
+        };
+        packageRequires = [ emacs flycheck vdm-mode ];
+        meta = {
+          homepage = "https://melpa.org/#/flycheck-vdm";
+          license = lib.licenses.free;
+        };
+      }) {};
     flycheck-yamllint = callPackage ({ fetchFromGitHub
                                      , fetchurl
                                      , flycheck
@@ -17974,14 +18316,14 @@
         ename = "flymake-perlcritic";
         version = "1.0.3";
         src = fetchFromGitHub {
-          owner = "illusori";
+          owner = "flymake";
           repo = "emacs-flymake-perlcritic";
           rev = "0692d6ad5495f6e5438bde0a10345829b8e1def8";
           sha256 = "11r982h5fhjkmm9ld8wfdip0ghinw523nm1w4fmy830g0bbkgkrq";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/ca7bf43ef8893bf04e9658390e306ef69e80a156/recipes/flymake-perlcritic";
-          sha256 = "0hibnh463wzhvpix7gygpgs04gi6salwjrsjc6d43lxlsn3y1im8";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/flymake-perlcritic";
+          sha256 = "1i0bc81cby2nsala2mhghzv7clhbf1gpp54vdxiq2wdanqy25vmk";
           name = "recipe";
         };
         packageRequires = [ flymake ];
@@ -18463,26 +18805,27 @@
           license = lib.licenses.free;
         };
       }) {};
-    fontify-face = callPackage ({ fetchFromGitHub
+    fontify-face = callPackage ({ emacs
+                                , fetchFromGitHub
                                 , fetchurl
                                 , lib
                                 , melpaBuild }:
       melpaBuild {
         pname = "fontify-face";
         ename = "fontify-face";
-        version = "1.0.0";
+        version = "1.1.0";
         src = fetchFromGitHub {
           owner = "Fuco1";
           repo = "fontify-face";
-          rev = "5bbd4bbbb69f3fe156af53d32000a4b769ed4cbd";
-          sha256 = "0s2vwzjd08xj4vpmx7knyrld44k6dd9mhync50r580wpgrgfxm04";
+          rev = "fc3325c98427523d86f0b411e0515cec51ac3d8a";
+          sha256 = "1zfld9a17xhisfwhmfxvx1x63ksl6jg5g99kbivj4nq70sf26dpw";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/72bd6750dd5a7d9ed6e408e690f76c260ffd7d9e/recipes/fontify-face";
           sha256 = "1w7xlkladqkbh7gpnkbi53a7k9p5wzma4y9jgwbc58hng9ggm1k0";
           name = "recipe";
         };
-        packageRequires = [];
+        packageRequires = [ emacs ];
         meta = {
           homepage = "https://melpa.org/#/fontify-face";
           license = lib.licenses.free;
@@ -18601,12 +18944,12 @@
       melpaBuild {
         pname = "fountain-mode";
         ename = "fountain-mode";
-        version = "2.5.3";
+        version = "2.6.1";
         src = fetchFromGitHub {
           owner = "rnkn";
           repo = "fountain-mode";
-          rev = "8269066a9035fcf50eb835de3745a62c1cb96660";
-          sha256 = "1s1wyhjdyp12iz3zk333z5wlbxl5x3hki9q16164fk9ifhkrppxd";
+          rev = "7d84ed48df76ee05f629781741ad7c5783c3cc66";
+          sha256 = "0f6vav08583gahr863sa5v7mabwjlm1dgfybv3843cscqmxb70zw";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/913386ac8d5049d37154da3ab32bde408a226511/recipes/fountain-mode";
@@ -18654,12 +18997,12 @@
       melpaBuild {
         pname = "frameshot";
         ename = "frameshot";
-        version = "0.1.1";
+        version = "0.2.0";
         src = fetchFromGitHub {
           owner = "tarsius";
           repo = "frameshot";
-          rev = "65994602fdf3d8881f0cabffebbce6c0e493e3c8";
-          sha256 = "0crvvacpajlhdida54gvv4y11xx78qscr6nznx0bhdb12sj3n45q";
+          rev = "917efdd678e397aa01efa657e3488d34445eca90";
+          sha256 = "1c19magazz78jd65r7c58nhp0bcyfysrlvf4jbfgrdd9bf7xlkx6";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/e5cfaa4b5fda97054d45691fad9d79b559f2df14/recipes/frameshot";
@@ -18815,6 +19158,33 @@
           license = lib.licenses.free;
         };
       }) {};
+    fuel = callPackage ({ cl-lib ? null
+                        , emacs
+                        , fetchFromGitHub
+                        , fetchurl
+                        , lib
+                        , melpaBuild }:
+      melpaBuild {
+        pname = "fuel";
+        ename = "fuel";
+        version = "0.98";
+        src = fetchFromGitHub {
+          owner = "factor";
+          repo = "factor";
+          rev = "780bbd49cf82c9746ca5a3f42f4a4a27266ccee9";
+          sha256 = "1fs6200rsbnk2lagz8qj17iynaf4c1fvb6sm03i53shsbarak2c3";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/1e2a0e4698d4e71ec28656594f6a83504a823490/recipes/fuel";
+          sha256 = "08hzzg5dhqkl5c5lfhwcwmx8m8z3k1nxshn2wlpqf5gch8f2nj6z";
+          name = "recipe";
+        };
+        packageRequires = [ cl-lib emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/fuel";
+          license = lib.licenses.free;
+        };
+      }) {};
     full-ack = callPackage ({ fetchFromGitHub
                             , fetchurl
                             , lib
@@ -19238,12 +19608,12 @@
       melpaBuild {
         pname = "gf";
         ename = "gf";
-        version = "1.0.1";
+        version = "1.1.1";
         src = fetchFromGitHub {
           owner = "grammaticalframework";
           repo = "gf-emacs-mode";
-          rev = "4ab35bb727bd0717e0691d3c490f72551e13d683";
-          sha256 = "0al1ad92ga84wm0kx66wplnn1p05mxf7ik4r5gknr8jp6aa1lcqd";
+          rev = "e8e55584b0a473922c58cbb4860306a84c3336e5";
+          sha256 = "09fqax9dr40rj8f6b4z7lkjrs305gnkm2f4q314f4k7yxnz3c055";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1c2cc74eb19c54219cd5c5c11d886074859f0948/recipes/gf";
@@ -19290,12 +19660,12 @@
       melpaBuild {
         pname = "ggtags";
         ename = "ggtags";
-        version = "0.8.12";
+        version = "0.8.13";
         src = fetchFromGitHub {
           owner = "leoliu";
           repo = "ggtags";
-          rev = "7a7ee76a8055531482927e6abf7e0ef676165dd2";
-          sha256 = "1kyg26wdimy5k5icglgqg9gdfvzkgk4xis12nx1xkh01j2imzl97";
+          rev = "17a121af1b375a6a5c5acec52f2ffd2b9715d244";
+          sha256 = "10hryphjjyi13gvk8sy8r5y7nvs0hbw8ycjqj9snai0c1f9xrdsa";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/b158bb1bc2fbe3de61a6b21174eac7b1457edda2/recipes/ggtags";
@@ -19426,12 +19796,12 @@
         src = fetchFromGitHub {
           owner = "magit";
           repo = "ghub";
-          rev = "9496d29d645823b52db347d5571cfd3c4ddcff06";
-          sha256 = "1xa5pdzp18ykm59kc10bx3rqh0c1vq203yrikvqdj1gx088ksmj7";
+          rev = "4831933da059ee084a16016558b9ccd8c581a8ff";
+          sha256 = "1b5jrpj3z989r3mf4jfch8rnaaa5hyb2395xz3v37f0vsphd7s0y";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/70a4dbd62fd6ebb4e056d0e97fa1a958437ddc91/recipes/ghub";
-          sha256 = "031bzp61aal2id5sazwjz30svydjvxvphw5wbv5cyy4dqyh7w2ps";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/f403587f77380d1db214aa34933a9b5cce1ef2bd/recipes/ghub";
+          sha256 = "15kjyi8ialpr1zjqvw68w9pa5sigcwy2szq21yvcy295z7ylzy4i";
           name = "recipe";
         };
         packageRequires = [ emacs let-alist ];
@@ -19958,7 +20328,7 @@
       melpaBuild {
         pname = "gitattributes-mode";
         ename = "gitattributes-mode";
-        version = "1.2.7";
+        version = "1.2.8";
         src = fetchFromGitHub {
           owner = "magit";
           repo = "git-modes";
@@ -20008,7 +20378,7 @@
       melpaBuild {
         pname = "gitconfig-mode";
         ename = "gitconfig-mode";
-        version = "1.2.7";
+        version = "1.2.8";
         src = fetchFromGitHub {
           owner = "magit";
           repo = "git-modes";
@@ -20168,7 +20538,7 @@
       melpaBuild {
         pname = "gitignore-mode";
         ename = "gitignore-mode";
-        version = "1.2.7";
+        version = "1.2.8";
         src = fetchFromGitHub {
           owner = "magit";
           repo = "git-modes";
@@ -20365,8 +20735,8 @@
           sha256 = "1b5jrpj3z989r3mf4jfch8rnaaa5hyb2395xz3v37f0vsphd7s0y";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/70a4dbd62fd6ebb4e056d0e97fa1a958437ddc91/recipes/glab";
-          sha256 = "0ym8bgym11mdv5bw22lgkcxyqy7qgxxm0yjmrq8qx7i55gqayyb8";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/f403587f77380d1db214aa34933a9b5cce1ef2bd/recipes/glab";
+          sha256 = "0kyr1znf82qi15r6iha6dbyhmfzghx969hd364rsvkly8ry8pk5m";
           name = "recipe";
         };
         packageRequires = [ emacs ghub ];
@@ -21518,6 +21888,32 @@
           license = lib.licenses.free;
         };
       }) {};
+    graphql = callPackage ({ emacs
+                           , fetchFromGitHub
+                           , fetchurl
+                           , lib
+                           , melpaBuild }:
+      melpaBuild {
+        pname = "graphql";
+        ename = "graphql";
+        version = "0.1.1";
+        src = fetchFromGitHub {
+          owner = "vermiculus";
+          repo = "graphql.el";
+          rev = "672dd9ebd7e67d8089388b0c484cd650e76565f3";
+          sha256 = "0sp0skc1rnhi39szfbq1i99pdgd3bhn4c15cff05iqhjy2d4hniw";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3e801ae56f11b64a5a3e52cf1a6c152940ab8c97/recipes/graphql";
+          sha256 = "139fng2psn535ymqa7c6hm1r7ja1gs5mdvb487jj6fh0bl9wq8la";
+          name = "recipe";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/graphql";
+          license = lib.licenses.free;
+        };
+      }) {};
     graphviz-dot-mode = callPackage ({ fetchFromGitHub
                                      , fetchurl
                                      , lib
@@ -21625,12 +22021,12 @@
       melpaBuild {
         pname = "green-screen-theme";
         ename = "green-screen-theme";
-        version = "1.0.24";
+        version = "1.0.26";
         src = fetchFromGitHub {
           owner = "rbanffy";
           repo = "green-screen-emacs";
-          rev = "c348ea0adf0e6ae99294a05be183a7b425a4bab0";
-          sha256 = "1rqhac5j06gpc9gp44g4r3zdkw1baskwrz3bw1n1haw4a1k0657q";
+          rev = "774e8f6c033786406267f71ec07319d906a30b75";
+          sha256 = "0f12lqgfi1vlhq8p5ia04vlmvmyb4f40q7dm2nbh5y8r6k89hisg";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/821744ca106f1b74941524782e4581fc93800fed/recipes/green-screen-theme";
@@ -21943,12 +22339,12 @@
       melpaBuild {
         pname = "guix";
         ename = "guix";
-        version = "0.4.1.1";
+        version = "0.5";
         src = fetchFromGitHub {
           owner = "alezost";
           repo = "guix.el";
-          rev = "60a922a0d48747f1c1d945a725f40a9d1f1fa3a9";
-          sha256 = "0jp0bjy9l2m3kii0p1fnqmvsbz9hafv5s5840czsda3mc9x9c7b0";
+          rev = "6ac7b47fa1ce4dbb8b897de7c73ff6802b15e52e";
+          sha256 = "1wha6dnl17m683sjgwgh9apxvxzgg1f4k80sv6fl78w8q441f4bn";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/b3d8c73e8a946b8265487a0825d615d80aa3337d/recipes/guix";
@@ -22022,14 +22418,14 @@
         ename = "hacker-typer";
         version = "1.0.6";
         src = fetchFromGitHub {
-          owner = "therockmandolinist";
+          owner = "dieggsy";
           repo = "emacs-hacker-typer";
           rev = "d5a23714a4ccc5071580622f278597d5973f40bd";
           sha256 = "13wp7cg9d9ij44inxxyk1knczglxrbfaq50wyhc4x5zfhz5yw7wx";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/8e04a3a1606ea23865c04d93e3dc77cb55b9931f/recipes/hacker-typer";
-          sha256 = "128y562cxi8rblnqjdzhqc6b58bxi67f6hz569gqw4jywz0xcd0g";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/hacker-typer";
+          sha256 = "0vf18hylhszvplam6c4yynr53zc3n816p9k36gywm6awwblfpyfb";
           name = "recipe";
         };
         packageRequires = [ emacs ];
@@ -22519,12 +22915,12 @@
       melpaBuild {
         pname = "helm";
         ename = "helm";
-        version = "2.9.8";
+        version = "3.0";
         src = fetchFromGitHub {
           owner = "emacs-helm";
           repo = "helm";
-          rev = "8de42d08f45a7052ed858132de43a76f933f58f7";
-          sha256 = "1g36knyppz8lfbcn84hx6ivf8b34s26wx5dh4xw85sq6pwi5yn7s";
+          rev = "757263f9332d2d338ac3619f50547ef2f9d2bd9e";
+          sha256 = "0qahykw30vwhkd579s3gs2hya0zw1jpmcw3n39vjg7za573xpgzb";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/7e8bccffdf69479892d76b9336a4bec3f35e919d/recipes/helm";
@@ -22627,12 +23023,12 @@
       melpaBuild {
         pname = "helm-backup";
         ename = "helm-backup";
-        version = "1.0.0";
+        version = "1.1.1";
         src = fetchFromGitHub {
           owner = "antham";
           repo = "helm-backup";
-          rev = "3f39d296ddc77df758b812c50e3c267dd03db8bb";
-          sha256 = "05528ajhmvkc50i65wcb3bi1w4i3y1vvr56dvq6yp7cbyw9r7b8w";
+          rev = "45a86a41ac44f90d4db2c0e9339233ee7f0be0b8";
+          sha256 = "0pr4qd6mi9g91lndqnk4w26lq3w8pxcgxragxj3209dgwqsxps95";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/5e6eba7b201e91211e43c39e501f6066f0afeb8b/recipes/helm-backup";
@@ -22937,12 +23333,12 @@
       melpaBuild {
         pname = "helm-company";
         ename = "helm-company";
-        version = "0.2.2";
+        version = "0.2.3";
         src = fetchFromGitHub {
           owner = "Sodel-the-Vociferous";
           repo = "helm-company";
-          rev = "acc9c7901e094c1591327a0db1ec7a439f67a84d";
-          sha256 = "1d4q9clp0q56br80c21a4wz1gc4jw3mdy97z9mq07x9i8rhlppzs";
+          rev = "5b5c15745d92aff7280698c7619994e2481098b4";
+          sha256 = "1r5b24hamq8d5n418xpf80jn37s357hbc9rd5siw6gwkjn2jykx7";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/8acf7420f2ac8a36474594bc34316f187b43d771/recipes/helm-company";
@@ -23457,12 +23853,12 @@
       melpaBuild {
         pname = "helm-hatena-bookmark";
         ename = "helm-hatena-bookmark";
-        version = "2.2.3";
+        version = "2.3.0";
         src = fetchFromGitHub {
           owner = "masutaka";
           repo = "emacs-helm-hatena-bookmark";
-          rev = "d64833a5bbb4ae112ed176f6473232e526138572";
-          sha256 = "01b6nlbidk93arnnd2irm088qlws4i4p1sagsh9v153x6sk0r38k";
+          rev = "274e18182fe20c11e96009387a8e38e8cd2a1d7e";
+          sha256 = "13s36gyb37asgrc9qca9d196i5bnxqy4acmda5cas08b48wp4lxk";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/3e9335ad16d4151dd4970c4a3ad1fee9a84404fa/recipes/helm-hatena-bookmark";
@@ -24034,8 +24430,8 @@
           sha256 = "0jm6nnnjyd4kmm1knh0mq3xhnw2hvs3linwlynj8yaliqvlv6brv";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/550eb9f42c90fd9e80714579c12ee6bfcacb5bb7/recipes/helm-pt";
-          sha256 = "1imhy0bsm9aldv0pvf88280qdya01lznxpx5gi5wffhrz17yh4pi";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/e608f40d00a3b2a80a6997da00e7d04f76d8ef0d/recipes/helm-pt";
+          sha256 = "1pvipzjw9h668jkbwwkmphvp806fs9q4mb2v2bjxpb0f3kn2qk3n";
           name = "recipe";
         };
         packageRequires = [ helm ];
@@ -24408,12 +24804,12 @@
       melpaBuild {
         pname = "helm-system-packages";
         ename = "helm-system-packages";
-        version = "1.10.0";
+        version = "1.10.1";
         src = fetchFromGitHub {
           owner = "emacs-helm";
           repo = "helm-system-packages";
-          rev = "a82a25a94a670b36e34c5ae192f41b4a104955e5";
-          sha256 = "0y5wzvfycb1bvgdk782xyl744fih43vz14wmq6gcqjarw6xfniz5";
+          rev = "2b4636dc861ffe2c4a2025b67ab40460f85b9563";
+          sha256 = "01by0c4lqi2cw8xmbxkjw7m9x78zssm31sx4hdpw5j35s2951j0f";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/0c46cfb0fcda0500e15d04106150a072a1a75ccc/recipes/helm-system-packages";
@@ -24461,12 +24857,12 @@
       melpaBuild {
         pname = "helm-tramp";
         ename = "helm-tramp";
-        version = "1.0.5";
+        version = "1.1.6";
         src = fetchFromGitHub {
           owner = "masasam";
           repo = "emacs-helm-tramp";
-          rev = "07d2f02166038c14052009f6fb9c2a163118e2cc";
-          sha256 = "1yi4wq484nrjb1yphp6dbaqjgfq7hr78gh9v9cys7dqg910ngy4f";
+          rev = "2148e21fd1a6c8a0b61678bd187ab5a7e387ae64";
+          sha256 = "1dinm85z5dz7ql75bh9hy4kmasfb05amnch32y6xscjdg6736w8j";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/helm-tramp";
@@ -24605,12 +25001,12 @@
       melpaBuild {
         pname = "helpful";
         ename = "helpful";
-        version = "0.12";
+        version = "0.13";
         src = fetchFromGitHub {
           owner = "Wilfred";
           repo = "helpful";
-          rev = "5f3fb4752de3868e688ff2046790bda569bb6e23";
-          sha256 = "0z56icc8pmm537n34gy8a50a0i42glr58i860xmzlpxdn9f66dxp";
+          rev = "5568c780e1b609a18728c592c0f85d798b6a1a47";
+          sha256 = "168zgmn1rwskj7v8m1vmryglf6kaky2f34nbgjibhhy6s3xbq63p";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/889d34b654de13bd413d46071a5ff191cbf3d157/recipes/helpful";
@@ -26989,12 +27385,12 @@
       melpaBuild {
         pname = "ipython-shell-send";
         ename = "ipython-shell-send";
-        version = "1.0.2";
+        version = "1.0.3";
         src = fetchFromGitHub {
           owner = "jackkamm";
           repo = "ipython-shell-send-el";
-          rev = "36523a387c15ee1652a5b0e291d4d4838da5e912";
-          sha256 = "1iba7jpagc0n436pbylpcbwbdxk6bw7y0i7pjgxxwfm8akaj9i68";
+          rev = "ff944b436db381e6772a26c09b0b20a097eb323e";
+          sha256 = "14s6hxnkv7r3idzj7s6vnvifpc8prykzpm6nhb6149yymal4hjkc";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/9d3513d38f94de4d86124b5d5a33be8d5f0bfa43/recipes/ipython-shell-send";
@@ -27374,12 +27770,12 @@
       melpaBuild {
         pname = "ivy-prescient";
         ename = "ivy-prescient";
-        version = "2.0";
+        version = "2.2";
         src = fetchFromGitHub {
           owner = "raxod502";
           repo = "prescient.el";
-          rev = "515959a2523b43608c9d06dcf8adde8911ce42b9";
-          sha256 = "1k8xk154sql3b2b7hpyxslcgl88aaxq5ak2sr760jsq2qk7878bw";
+          rev = "1e0db9451e75f0db29668bebe98dfa747c6b4bcf";
+          sha256 = "0zm9phc4cv7ldgyngcj84fxc1j0nh12c05lxiwv0n1xb8wc6awvf";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/a92495d09689932ab9f0b716078ceeeb9cc154e0/recipes/ivy-prescient";
@@ -27420,6 +27816,33 @@
           license = lib.licenses.free;
         };
       }) {};
+    ivy-rich = callPackage ({ emacs
+                            , fetchFromGitHub
+                            , fetchurl
+                            , ivy
+                            , lib
+                            , melpaBuild }:
+      melpaBuild {
+        pname = "ivy-rich";
+        ename = "ivy-rich";
+        version = "0.1.0";
+        src = fetchFromGitHub {
+          owner = "yevgnen";
+          repo = "ivy-rich";
+          rev = "b40a76d5c2c29fcc035daa04a7125ffadbedc471";
+          sha256 = "0ayf3dwfhafcbqnckm65zy8nc1rv9ji939qfn53wbhxkrgqdicgz";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/0fc297f4949e8040d1b0b3271c9a70c64887b960/recipes/ivy-rich";
+          sha256 = "0knkqc403gch4dp1q114h64cwwisxwnsxjqbl3cnidlwkn7lzk7m";
+          name = "recipe";
+        };
+        packageRequires = [ emacs ivy ];
+        meta = {
+          homepage = "https://melpa.org/#/ivy-rich";
+          license = lib.licenses.free;
+        };
+      }) {};
     ivy-rtags = callPackage ({ fetchFromGitHub
                              , fetchurl
                              , ivy
@@ -27900,12 +28323,12 @@
       melpaBuild {
         pname = "js-auto-format-mode";
         ename = "js-auto-format-mode";
-        version = "1.1.0";
+        version = "1.1.1";
         src = fetchFromGitHub {
           owner = "ybiquitous";
           repo = "js-auto-format-mode";
-          rev = "1558fb539e0beb7f98901280d695968a2351384d";
-          sha256 = "16l2mjklazmfpdin3vz3ddf083phhyrhi18n0rfhv5rwh9m23wr9";
+          rev = "59caa137c4beec4dec4a7d7ebf8bcb6af44d72f0";
+          sha256 = "10xxg8lc4g9wdl4lz7kx6la23agpbq4ls1mn5d4y364j8nfcxf9g";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/2d3be16771b5b5fde639da3ee97890620354ee7a/recipes/js-auto-format-mode";
@@ -28259,6 +28682,32 @@
           license = lib.licenses.free;
         };
       }) {};
+    julia-repl = callPackage ({ emacs
+                              , fetchFromGitHub
+                              , fetchurl
+                              , lib
+                              , melpaBuild }:
+      melpaBuild {
+        pname = "julia-repl";
+        ename = "julia-repl";
+        version = "1.0.1";
+        src = fetchFromGitHub {
+          owner = "tpapp";
+          repo = "julia-repl";
+          rev = "06678ed0cb07807f6cb153c6b0997edc6a18f22c";
+          sha256 = "1z03pgmfs8r9rwd8yhbb71fkl2lhr8i5ajs7n5gg1syrhnlj89ml";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/9a2a494969a9caf2f4513b12504379c9685047dc/recipes/julia-repl";
+          sha256 = "1k8a54s7g64zasmmnywygr0ra3s3din5mkqb7b5van2l0d4hcmzn";
+          name = "recipe";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/julia-repl";
+          license = lib.licenses.free;
+        };
+      }) {};
     jump = callPackage ({ cl-lib ? null
                         , fetchFromGitHub
                         , fetchurl
@@ -28454,12 +28903,12 @@
       melpaBuild {
         pname = "kaolin-themes";
         ename = "kaolin-themes";
-        version = "1.3.5";
+        version = "1.4.1";
         src = fetchFromGitHub {
           owner = "ogdenwebb";
           repo = "emacs-kaolin-themes";
-          rev = "e183b7adb06338046f1a17a94e18ec67e62d4e42";
-          sha256 = "1mvspqll53p8rz66588lvdflwfx4av6cnzigid6n10d1cy35p5vg";
+          rev = "b0d8d0eb3e7d762a53587736894be0d0901c067a";
+          sha256 = "0bh7cgr10in3vcc1l41qsxakajb0kp7gia959hryqjcf2aqipzvp";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/043a4e3bd5301ef8f4df2cbda0b3f4111eb399e4/recipes/kaolin-themes";
@@ -29179,12 +29628,12 @@
       melpaBuild {
         pname = "lcr";
         ename = "lcr";
-        version = "0.9";
+        version = "1.1";
         src = fetchFromGitHub {
           owner = "jyp";
           repo = "lcr";
-          rev = "3bc341205bba437c8fec4fefefaf39793c0405ae";
-          sha256 = "0jvdnb3fn33wq7ixb7ayrallq1j5gc9nh3i3nmy03yg11h60h1am";
+          rev = "c14f40692292d59156c7632dbdd2867c086aa75f";
+          sha256 = "0mc55icihxqpf8b05990q1lc2nj2792wcgyr73xsiqx0963sjaj8";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/29374d3da932675b7b3e28ab8906690dad9c9cbe/recipes/lcr";
@@ -29487,6 +29936,31 @@
           license = lib.licenses.free;
         };
       }) {};
+    linguistic = callPackage ({ fetchFromGitHub
+                              , fetchurl
+                              , lib
+                              , melpaBuild }:
+      melpaBuild {
+        pname = "linguistic";
+        ename = "linguistic";
+        version = "0.2";
+        src = fetchFromGitHub {
+          owner = "andcarnivorous";
+          repo = "linguistic";
+          rev = "18e28a7e54efb140c17e16836bc5dac766c9522e";
+          sha256 = "12b9i3rdh16pq9q88bsg771y11rrbj9w74v2qr2bfymbp358qk17";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/aedc03a846b873edf2426c422abb8c75732158f8/recipes/linguistic";
+          sha256 = "0yhyrr7yknvky6fb6js0lfxbl13i6a218kya7cpj2dpzdckcbhca";
+          name = "recipe";
+        };
+        packageRequires = [];
+        meta = {
+          homepage = "https://melpa.org/#/linguistic";
+          license = lib.licenses.free;
+        };
+      }) {};
     link = callPackage ({ fetchFromGitHub
                         , fetchurl
                         , lib
@@ -29817,12 +30291,12 @@
       melpaBuild {
         pname = "live-py-mode";
         ename = "live-py-mode";
-        version = "2.22.0";
+        version = "2.23.1";
         src = fetchFromGitHub {
           owner = "donkirkby";
           repo = "live-py-plugin";
-          rev = "ab2f9bea32dbad11a6464a4880e5487645a0f65a";
-          sha256 = "0w3kpszsrh0gj0a62iqhnhm3flmmgq0pl0d6w5r61mvlq9wck5dv";
+          rev = "efd9bba8a40448cccfcb745a84d479cb5275122b";
+          sha256 = "0va4cirxwv0k9q74ac313pvxvnkvqpp6zqxwscpx4v6hp1gw7wvw";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/c7615237e80b46b5c50cb51a3ed5b07d92566fb7/recipes/live-py-mode";
@@ -30012,6 +30486,7 @@
       }) {};
     logview = callPackage ({ datetime
                            , emacs
+                           , extmap
                            , fetchFromGitHub
                            , fetchurl
                            , lib
@@ -30019,19 +30494,19 @@
       melpaBuild {
         pname = "logview";
         ename = "logview";
-        version = "0.11.1";
+        version = "0.11.2";
         src = fetchFromGitHub {
           owner = "doublep";
           repo = "logview";
-          rev = "902c881f5e1ca802761b856b3945bd418847dd79";
-          sha256 = "1df41wabldg1ahcbqi5szwml5hqdjm6p3hj5b8ajkkagykrnh8xg";
+          rev = "6a45a358635dccc5eb970722f14444415e40e832";
+          sha256 = "0fd79ig5fha207959qr9hib0b4l7wlg7sis03zbhx944xqr8mrv9";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1df3c11ed7738f32e6ae457647e62847701c8b19/recipes/logview";
           sha256 = "0gks3j5avx8k3427a36lv7gr95id3cylaamgn5qwbg14s54y0vsh";
           name = "recipe";
         };
-        packageRequires = [ datetime emacs ];
+        packageRequires = [ datetime emacs extmap ];
         meta = {
           homepage = "https://melpa.org/#/logview";
           license = lib.licenses.free;
@@ -30088,6 +30563,33 @@
           license = lib.licenses.free;
         };
       }) {};
+    lsp-clangd = callPackage ({ emacs
+                              , fetchFromGitHub
+                              , fetchurl
+                              , lib
+                              , lsp-mode
+                              , melpaBuild }:
+      melpaBuild {
+        pname = "lsp-clangd";
+        ename = "lsp-clangd";
+        version = "3.1.3";
+        src = fetchFromGitHub {
+          owner = "emacs-lsp";
+          repo = "lsp-clangd";
+          rev = "bf7641f6c512a133a038556c17e8b454b0602ea0";
+          sha256 = "00zxhzgily9rxnrrwywid4v5kqpls5490hkb4sqixl8xzms0j339";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/71646b47e5f5702e80bf6c56f882d041074ef3c0/recipes/lsp-clangd";
+          sha256 = "05dmzyb9xw2m4kck7y3cj8dm2542p3vi48lqs21gcrvm5vbrkx3g";
+          name = "recipe";
+        };
+        packageRequires = [ emacs lsp-mode ];
+        meta = {
+          homepage = "https://melpa.org/#/lsp-clangd";
+          license = lib.licenses.free;
+        };
+      }) {};
     lsp-mode = callPackage ({ emacs
                             , fetchFromGitHub
                             , fetchurl
@@ -30141,6 +30643,32 @@
           license = lib.licenses.free;
         };
       }) {};
+    lsp-p4 = callPackage ({ fetchFromGitHub
+                          , fetchurl
+                          , lib
+                          , lsp-mode
+                          , melpaBuild }:
+      melpaBuild {
+        pname = "lsp-p4";
+        ename = "lsp-p4";
+        version = "0.1";
+        src = fetchFromGitHub {
+          owner = "dmakarov";
+          repo = "p4ls";
+          rev = "49eb7c25b95b02da34eb02e5858eb06d34e628e1";
+          sha256 = "07z4k60b32k2mzxnl5lxnz5zd4y1p9jc6gqn57d3hwpz3mn8mjzx";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/53f0da8b3d2903adeffdbc3d8df7d630bfd9ff71/recipes/lsp-p4";
+          sha256 = "0cd3n17lqwz08zfkm9g5cr1cj2asznlbhxrym2a7b7shdmn3yx5f";
+          name = "recipe";
+        };
+        packageRequires = [ lsp-mode ];
+        meta = {
+          homepage = "https://melpa.org/#/lsp-p4";
+          license = lib.licenses.free;
+        };
+      }) {};
     lua-mode = callPackage ({ fetchFromGitHub
                             , fetchurl
                             , lib
@@ -30643,12 +31171,12 @@
       melpaBuild {
         pname = "magit-popup";
         ename = "magit-popup";
-        version = "2.12.3";
+        version = "2.12.4";
         src = fetchFromGitHub {
           owner = "magit";
           repo = "magit-popup";
-          rev = "32e6da899abd6657c098534c5775fc7177047f49";
-          sha256 = "0nrvs7gwd9kn4n808akrydn7zggvy9zyk38yrcmm561kw0h0h903";
+          rev = "6e07f745a18af514c2885eeabe9b2b2a5216e53c";
+          sha256 = "08952nzn0cb6gxscqyiljk4fq2zxjvr3ism0lvgw0gs9hl5phiwx";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/0263ca6aea7bf6eae26a637454affbda6bd106df/recipes/magit-popup";
@@ -30742,9 +31270,7 @@
           license = lib.licenses.free;
         };
       }) {};
-    magit-todos = callPackage ({ a
-                               , anaphora
-                               , async
+    magit-todos = callPackage ({ async
                                , dash
                                , emacs
                                , f
@@ -30759,30 +31285,19 @@
       melpaBuild {
         pname = "magit-todos";
         ename = "magit-todos";
-        version = "1.0.3";
+        version = "1.1.2";
         src = fetchFromGitHub {
           owner = "alphapapa";
           repo = "magit-todos";
-          rev = "d12e2e3ccad4b87d5df5285ade0c56ec5f46ad63";
-          sha256 = "006yy13hjzalwz7pz0br32zifxlxrrf8cvnz0j3km55sxpdvqmil";
+          rev = "30622d12c6a085cfa727d0f5f889408e31653957";
+          sha256 = "0sfsb4916wxpjfv7f4dqna4bmlyqmsc1ba0vsf16nzi9i2bk7wg3";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/b4544ab55d2c8b8c3b7eb739b9fb90ebb246d68b/recipes/magit-todos";
           sha256 = "0vqmbw0qj8a5wf4ig9hgc0v3l1agdkvgprzjv178hs00297br2s8";
           name = "recipe";
         };
-        packageRequires = [
-          a
-          anaphora
-          async
-          dash
-          emacs
-          f
-          hl-todo
-          magit
-          pcre2el
-          s
-        ];
+        packageRequires = [ async dash emacs f hl-todo magit pcre2el s ];
         meta = {
           homepage = "https://melpa.org/#/magit-todos";
           license = lib.licenses.free;
@@ -30799,14 +31314,14 @@
         ename = "magit-topgit";
         version = "2.1.2";
         src = fetchFromGitHub {
-          owner = "magit";
+          owner = "greenrd";
           repo = "magit-topgit";
           rev = "243fdfa7ce62dce4efd01b6b818a2791868db2f0";
           sha256 = "06fbjv3zd92lvg4xjsp9l4jkxx2glhng3ys3s9jmvy5y49pymwb2";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/cec5af50ae7634cc566adfbfdf0f95c3e2951c0c/recipes/magit-topgit";
-          sha256 = "1ngrgf40n1g6ncd5nqgr0zgxwlkmv9k4fik96dgzysgwincx683i";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/magit-topgit";
+          sha256 = "1194hdcphir4cmvzg9cxrjiyg70hr9zmml2rljih94vl7zrw7335";
           name = "recipe";
         };
         packageRequires = [ emacs magit ];
@@ -30836,7 +31351,7 @@
           sha256 = "1iq8c939c0a6v8gq31vcjw6nxwnz4fpavcd6xf4h2rb6rkmxmhvl";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/magithub";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/e555b46f5de7591aa8e10a7cf67421e26a676db8/recipes/magithub";
           sha256 = "11par5rncsa866gazdw98d4902rvyjnnwbiwpndlyh06ak0lryab";
           name = "recipe";
         };
@@ -31264,12 +31779,12 @@
       melpaBuild {
         pname = "mastodon";
         ename = "mastodon";
-        version = "0.7.2";
+        version = "0.8.0";
         src = fetchFromGitHub {
           owner = "jdenen";
           repo = "mastodon.el";
-          rev = "ae8dabda04e377a6ac22cb854e4844f68073f533";
-          sha256 = "1avf2wkzd14dj27i9skm3mn3ipkr1zp93yrwxrk2q5kphj1qji2j";
+          rev = "e4482232a5bb2a3036664eba598bf12506fe0b6e";
+          sha256 = "07fq3k62j9cz1567i2x11q1j9pwybb7qxwcilnnrphf4aibgq6kn";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/809d963b69b154325faaf61e54ca87b94c1c9a90/recipes/mastodon";
@@ -31393,12 +31908,12 @@
       melpaBuild {
         pname = "mb-url";
         ename = "mb-url";
-        version = "0.1.0";
+        version = "0.2.1";
         src = fetchFromGitHub {
           owner = "dochang";
           repo = "mb-url";
-          rev = "129a0bb6a684be76fb9f09010e710065d0e5baaa";
-          sha256 = "1apy7abjhdbgh8001rzv41q40bfl444rcz62lvgdwj3lg45zb8xc";
+          rev = "aa13abfc6231076a53b8a9903c9804443960d589";
+          sha256 = "17qlx1n2vxc5dhvjiw6nl9n74ansbra6hzazcxx0xrz5vx0ssh1i";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/dd9a8ff6e094b061a7b9d790df1fd4086c5d0a9d/recipes/mb-url";
@@ -31500,12 +32015,12 @@
       melpaBuild {
         pname = "meghanada";
         ename = "meghanada";
-        version = "1.0.8";
+        version = "1.0.9";
         src = fetchFromGitHub {
           owner = "mopemope";
           repo = "meghanada-emacs";
-          rev = "1fe888ad929f0ebed9a8cde7bb0a605881e1386c";
-          sha256 = "1b7cri71fikvyxcc6q9rci1zc4q45a1bvz00ks7gvx6w2sd7h5gd";
+          rev = "59568a4b32373d2ae7917673896369a922375a3e";
+          sha256 = "12sswa3fyf0pgawfz6ak9xc97da3bnv1qng2apw42gwg5yc0qlq4";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/4c75c69b2f00be9a93144f632738272c1e375785/recipes/meghanada";
@@ -31606,14 +32121,14 @@
         ename = "merlin";
         version = "3.1.0";
         src = fetchFromGitHub {
-          owner = "the-lambda-church";
+          owner = "ocaml";
           repo = "merlin";
           rev = "a9149b6ec88b455e0e040da6a6c0ca325d052904";
           sha256 = "1f9aqlic7i9ib5lfsix731bkzh857djcgfsqggxy95xvxswm8xpr";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/b1b9bfd3164e62758dc0a3362d85c6627ed7cbf8/recipes/merlin";
-          sha256 = "177cy9xcrjckxv8gvi1zhg2ndfr8cmsr37inyvpi5dxqy6d6alhp";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/merlin";
+          sha256 = "1b6zdm68ds94mqiygifqi45k3czrmwvaki58jwxbbddn3ya7iinz";
           name = "recipe";
         };
         packageRequires = [];
@@ -31626,23 +32141,24 @@
                                 , fetchFromGitHub
                                 , fetchurl
                                 , lib
-                                , melpaBuild }:
+                                , melpaBuild
+                                , merlin }:
       melpaBuild {
         pname = "merlin-eldoc";
         ename = "merlin-eldoc";
-        version = "1.2";
+        version = "1.3";
         src = fetchFromGitHub {
           owner = "khady";
           repo = "merlin-eldoc";
-          rev = "33544dcc389003ed6e3eabdade90c81db62ab0af";
-          sha256 = "0p24l4jnsiaq3a36dq99pb74djnzjx7qjddns3w5l9s1hkrh79g5";
+          rev = "bbb1a10f2131c09a7f7f844d4da98efd77f927ae";
+          sha256 = "11gggay8srycpckclqvcmad6ym3lx2sxgj670z89br91jdwmkr2f";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/a7130ec893175323775e887babbcec7a1e324c01/recipes/merlin-eldoc";
           sha256 = "0r4997813yz81zvmdgvr0xcp9c321h55z39lajpj1plmrs3c7bry";
           name = "recipe";
         };
-        packageRequires = [ emacs ];
+        packageRequires = [ emacs merlin ];
         meta = {
           homepage = "https://melpa.org/#/merlin-eldoc";
           license = lib.licenses.free;
@@ -31709,14 +32225,14 @@
         ename = "metaweblog";
         version = "1.0.1";
         src = fetchFromGitHub {
-          owner = "punchagan";
+          owner = "org2blog";
           repo = "metaweblog";
           rev = "aa14380eb7e7b879a0c16c96866b20a987cd3f2a";
           sha256 = "146w9laysdqbikpzr2gc9vnjrdsa87d8i13f2swlh1kvq2dn3rz5";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/7fabdb05de9b8ec18a3a566f99688b50443b6b44/recipes/metaweblog";
-          sha256 = "10kwqnfafby4ap0572mfkkdssr13y9p2gl9z3nmxqjjy04fkfi8b";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/metaweblog";
+          sha256 = "0qgmcvq1fhgljia9ncjgvgrv0mzih0l9mglwbwcszn613wmx8bkg";
           name = "recipe";
         };
         packageRequires = [ xml-rpc ];
@@ -31961,12 +32477,12 @@
       melpaBuild {
         pname = "minions";
         ename = "minions";
-        version = "0.2.0";
+        version = "0.3.0";
         src = fetchFromGitHub {
           owner = "tarsius";
           repo = "minions";
-          rev = "536653d2dcae8362f2d02fee3ca8b65d4c875db7";
-          sha256 = "1wa35cbffvzg0ciif93nv6jv7b0m72ixic0w8iwc5wbbvk9k5wip";
+          rev = "2f5e73e15d0021e7ba26cf09f1cd2734b018fb69";
+          sha256 = "12acfjmk6n40k5mb2hy1izbk483y83bc3d54r76l750sbm3kpdar";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/769a2167d7f6dfdbbfda058ddea036f80b97d230/recipes/minions";
@@ -33690,14 +34206,14 @@
         ename = "ninja-mode";
         version = "1.8.2";
         src = fetchFromGitHub {
-          owner = "martine";
+          owner = "ninja-build";
           repo = "ninja";
           rev = "484c16336f19bd8970bb6e75322d61b92a229899";
           sha256 = "1wc0cvmfhpvfzdy127d1n812q93dd9sp3mmqnc8jzy8i3frqqqq6";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/aed2f32a02cb38c49163d90b1b503362e2e4a480/recipes/ninja-mode";
-          sha256 = "1m7f25sbkz8k343giczrnw2ah5i3mk4c7csi8kk9x5y16030asik";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/ninja-mode";
+          sha256 = "1v6wy9qllbxl37fp9h47000lwp557qss6fdjb3a1f20msg8f70av";
           name = "recipe";
         };
         packageRequires = [ emacs ];
@@ -33844,12 +34360,12 @@
       melpaBuild {
         pname = "nodejs-repl";
         ename = "nodejs-repl";
-        version = "0.1.6";
+        version = "0.1.7";
         src = fetchFromGitHub {
           owner = "abicky";
           repo = "nodejs-repl.el";
-          rev = "16770656a4072f8fbbd29d0cace4893a3d5541b1";
-          sha256 = "1hcvi4nhgfrjalq8nw20kjjpcf4xmjid70qpqdv8dsgfann5i3wl";
+          rev = "d0b4e56488d16a695286a563a4ac27df7ea13100";
+          sha256 = "1mc39wc7q7n5vs02cwj5r264bnwkllvi7i67r6zxc33abx2zmlwa";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/14f22f97416111fcb02e299ff2b20c44fb75f049/recipes/nodejs-repl";
@@ -34484,6 +35000,34 @@
           license = lib.licenses.free;
         };
       }) {};
+    ob-tmux = callPackage ({ emacs
+                           , fetchFromGitHub
+                           , fetchurl
+                           , lib
+                           , melpaBuild
+                           , s
+                           , seq }:
+      melpaBuild {
+        pname = "ob-tmux";
+        ename = "ob-tmux";
+        version = "0.1.5";
+        src = fetchFromGitHub {
+          owner = "ahendriksen";
+          repo = "ob-tmux";
+          rev = "8886f31291e979b41215f3eb97670732efffea34";
+          sha256 = "0j77n1lawkx94hyv89xsvmrbqhd8x19ycrvxrwhc0mzlxh7rxjcy";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/a3f47fbfe745972e690e8028f893bb38ba30978d/recipes/ob-tmux";
+          sha256 = "12c0m2xxd75lbc98h7cwprmdn823mh2ii59pxr6fgnq7araqkz20";
+          name = "recipe";
+        };
+        packageRequires = [ emacs s seq ];
+        meta = {
+          homepage = "https://melpa.org/#/ob-tmux";
+          license = lib.licenses.free;
+        };
+      }) {};
     ob-translate = callPackage ({ fetchFromGitHub
                                 , fetchurl
                                 , google-translate
@@ -35071,14 +35615,14 @@
         ename = "org-alert";
         version = "0.1.0";
         src = fetchFromGitHub {
-          owner = "groksteve";
+          owner = "spegoraro";
           repo = "org-alert";
           rev = "685c18aa5ce994360c7f9e8bbf49590c412187ac";
           sha256 = "0gkv2sfl9nb64qqh5xhgq68r9kfmsny3vpcmnzk2mqjcb9nh657s";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/2976b7f9271bc46679a5774ff5f388b81a9f0cf8/recipes/org-alert";
-          sha256 = "0n5a24iv8cj395xr0gfgi0hs237dd98zm2fws05k47vy3ygni152";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/org-alert";
+          sha256 = "01bb0s22wa14lyr9wi58cvk4b03xqq268y3dvxbrhymw1ld97zk2";
           name = "recipe";
         };
         packageRequires = [ alert dash s ];
@@ -35333,14 +35877,14 @@
         ename = "org-doing";
         version = "0.1";
         src = fetchFromGitHub {
-          owner = "omouse";
+          owner = "rudolfolah";
           repo = "org-doing";
           rev = "e099514cfc162f8fe3d383456a7964743b0455d5";
           sha256 = "1hvnrw0y3chlfv6zxsczmm8zybrnakn3x13ykv2zblw96am9kd2s";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/4c497b87e14ab614c963f4b2f041bc0111b6e936/recipes/org-doing";
-          sha256 = "17w49z78fvbz182sxv9mnryj124gm9jbdmbybppjqz4rk6wvnm2j";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/org-doing";
+          sha256 = "10vg0wl8dsy12r51178qi4rzi94img692z5x3zv8dxa29lmn26xs";
           name = "recipe";
         };
         packageRequires = [];
@@ -35498,14 +36042,14 @@
         ename = "org-gcal";
         version = "0.2";
         src = fetchFromGitHub {
-          owner = "myuhe";
+          owner = "kidd";
           repo = "org-gcal.el";
           rev = "badd3629e6243563c30ff1dd0452b7601f6cc036";
           sha256 = "1pxfcyf447h18220izi8qlnwdr8rlwn5kds8gr5i1v90s6hpa498";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/1c2d5bd8d8f2616dae19b9232d9442fe423d6e5e/recipes/org-gcal";
-          sha256 = "1mp6cm0rhd4r9pfvsjjp86sdqxjbbg7gk41zx0zf0s772smddy3q";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/d97c701819ea8deaa8a9664db1f391200ee52c4f/recipes/org-gcal";
+          sha256 = "014h67ba0cwi4i1llngypscyvyrm74ljh067i3iapx5a18q7xw5v";
           name = "recipe";
         };
         packageRequires = [ alert cl-lib emacs org request-deferred ];
@@ -35575,12 +36119,12 @@
       melpaBuild {
         pname = "org-index";
         ename = "org-index";
-        version = "5.8.9";
+        version = "5.9.3";
         src = fetchFromGitHub {
           owner = "marcihm";
           repo = "org-index";
-          rev = "c26f48ec26f5d345e354845c7686fed4751d2136";
-          sha256 = "0n571b2r0c6l9jklqgr0nxz5ca2jw7yfqpngl21lq06zz95lw9lw";
+          rev = "d073e071ab5e96af6691ccf9b20c975e7a0c8e16";
+          sha256 = "15r9qxbkz2s82qj7fbdzcln4w3qipq6lgdfyrgmzi9f73v5l0c8f";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/54946e733901986304f7a7a5139b2818ebf97eb3/recipes/org-index";
@@ -35594,6 +36138,7 @@
         };
       }) {};
     org-jira = callPackage ({ cl-lib ? null
+                            , dash
                             , emacs
                             , fetchFromGitHub
                             , fetchurl
@@ -35604,19 +36149,19 @@
       melpaBuild {
         pname = "org-jira";
         ename = "org-jira";
-        version = "3.1.1";
+        version = "4.0.2";
         src = fetchFromGitHub {
           owner = "ahungry";
           repo = "org-jira";
-          rev = "03d6ebcf177db7b208c6a99386695e839f314314";
-          sha256 = "07hy37by9ics7rc1sgkpg8qk2xzp67ny4i4rkd7q7j4abqdr131v";
+          rev = "152ba45cded217e9f9f24a195cf9e078630cea89";
+          sha256 = "0ivksfm6bwf9dxm0k56bfnz4v82cz0gd13f9cljvrpkxjxqvn95z";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/730a585e5c9216a2428a134c09abcc20bc7c631d/recipes/org-jira";
-          sha256 = "0dvh9k0i75jxyy3v01c4cfyws8ij6718hsivi2xyrgig7pwp16ib";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/e0a2fae6eecb6b4b36fe97ad99691e2c5456586f/recipes/org-jira";
+          sha256 = "1sbypbz00ki222zpm47yplyprx7h2q076b3l07qfilk0sr8kf4ql";
           name = "recipe";
         };
-        packageRequires = [ cl-lib emacs request s ];
+        packageRequires = [ cl-lib dash emacs request s ];
         meta = {
           homepage = "https://melpa.org/#/org-jira";
           license = lib.licenses.free;
@@ -35630,12 +36175,12 @@
       melpaBuild {
         pname = "org-journal";
         ename = "org-journal";
-        version = "1.14.2";
+        version = "1.14.3";
         src = fetchFromGitHub {
           owner = "bastibe";
           repo = "org-journal";
-          rev = "2395db4deb255c05d0d3a75c95f53263b74939c9";
-          sha256 = "018wjn7v8a1z4z1sycz7b01rdck73ap13cr3lvfqvp9mms94qq71";
+          rev = "9fc8eaf9279563f79d9ba7ff1d381534cfa57ec3";
+          sha256 = "0xprwdzxf2y61nxfz3wf5zl4zfk3p0vbm646kkx3fmch9klkxlzl";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/7fabdb05de9b8ec18a3a566f99688b50443b6b44/recipes/org-journal";
@@ -35658,12 +36203,12 @@
       melpaBuild {
         pname = "org-kanban";
         ename = "org-kanban";
-        version = "0.4.6";
+        version = "0.4.8";
         src = fetchFromGitHub {
           owner = "gizmomogwai";
           repo = "org-kanban";
-          rev = "84c9e429ec9fcbe8d6091f15545ee7ebfc1cb589";
-          sha256 = "1jpl56mpw0l2camknzcpng6ji4yb6gz2g29i019iprz9cik5g0xm";
+          rev = "2fc1ed815f7155df1169f68b19c1ad847e620fee";
+          sha256 = "141j9z5a31hpxj073vf0yyhmdw3j89ywqac1a97c2k4967ps0nw1";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/a9f3a10c126fa43a6fa60ee7f8e50c7a9661dbc1/recipes/org-kanban";
@@ -35849,12 +36394,12 @@
       melpaBuild {
         pname = "org-noter";
         ename = "org-noter";
-        version = "1.1.0";
+        version = "1.2.0";
         src = fetchFromGitHub {
           owner = "weirdNox";
           repo = "org-noter";
-          rev = "8f86583bd573cb0f146aae5d2394e615efb0cafe";
-          sha256 = "0fgmn7gqh146zrmvc1p7dik93sjajay0n8i8qdd4sbdzw64shzl1";
+          rev = "eec8f3a845fc08e7d3eda2d894db3f7d41b6649c";
+          sha256 = "10kx3jlzvzig201zvklw0ndwxzhdcbshlkz4nrfl8fgz32ka0x8b";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/4a2bc0d95dc2744277d6acbba1f7483b4c14d75c/recipes/org-noter";
@@ -36263,6 +36808,36 @@
           license = lib.licenses.free;
         };
       }) {};
+    org-super-agenda = callPackage ({ dash
+                                    , emacs
+                                    , fetchFromGitHub
+                                    , fetchurl
+                                    , ht
+                                    , lib
+                                    , melpaBuild
+                                    , org
+                                    , s }:
+      melpaBuild {
+        pname = "org-super-agenda";
+        ename = "org-super-agenda";
+        version = "1.0.1";
+        src = fetchFromGitHub {
+          owner = "alphapapa";
+          repo = "org-super-agenda";
+          rev = "9dca3d88daf4ad58c5913846c968bbb9a37f95aa";
+          sha256 = "0infnwhssnaksmha4731cn30vm83im0lyq71r5ns5sdgwx32sxhh";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/fd27b2df7594a867529de4b84c8107f82dabe2e9/recipes/org-super-agenda";
+          sha256 = "1h3kqvpjq2w0n8qiqwb8wcpdy2g4ac7j6kin0943g7p5gm5yf0ra";
+          name = "recipe";
+        };
+        packageRequires = [ dash emacs ht org s ];
+        meta = {
+          homepage = "https://melpa.org/#/org-super-agenda";
+          license = lib.licenses.free;
+        };
+      }) {};
     org-sync = callPackage ({ cl-lib ? null
                             , emacs
                             , fetchFromGitHub
@@ -36423,6 +36998,32 @@
           license = lib.licenses.free;
         };
       }) {};
+    org-timeline = callPackage ({ dash
+                                , fetchFromGitHub
+                                , fetchurl
+                                , lib
+                                , melpaBuild }:
+      melpaBuild {
+        pname = "org-timeline";
+        ename = "org-timeline";
+        version = "0.1.3";
+        src = fetchFromGitHub {
+          owner = "Fuco1";
+          repo = "org-timeline";
+          rev = "5063120b688c60320aa19fa67787613929ca7b1d";
+          sha256 = "0ih55nq2vhzk6n07ds1fgil72jq5fc9rjkqh2n32ch8cafzv2ma2";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/298bd714f6cefd83d594b0eea731a01fb2faf1ad/recipes/org-timeline";
+          sha256 = "0zlhjzjc7jwqh6wcys17hraz76n2hnjwffis02x71maclrf2cfdd";
+          name = "recipe";
+        };
+        packageRequires = [ dash ];
+        meta = {
+          homepage = "https://melpa.org/#/org-timeline";
+          license = lib.licenses.free;
+        };
+      }) {};
     org-toodledo = callPackage ({ fetchFromGitHub
                                 , fetchurl
                                 , lib
@@ -36582,6 +37183,36 @@
           license = lib.licenses.free;
         };
       }) {};
+    org-web-tools = callPackage ({ dash
+                                 , emacs
+                                 , esxml
+                                 , fetchFromGitHub
+                                 , fetchurl
+                                 , lib
+                                 , melpaBuild
+                                 , org
+                                 , s }:
+      melpaBuild {
+        pname = "org-web-tools";
+        ename = "org-web-tools";
+        version = "1.0";
+        src = fetchFromGitHub {
+          owner = "alphapapa";
+          repo = "org-web-tools";
+          rev = "7ad832950cb17890a4da751ae6d6817a7428f342";
+          sha256 = "0kak9h5ny00d39gnwspv53nadnag01brw2fq9zk5wpfc91h9bjng";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/f082bfb480649d21f586b7eb331c19d57e7a84cf/recipes/org-web-tools";
+          sha256 = "19zpspap85fjqg5a20ps34rcigb0ws986pj6dzd7xik8s6ia29s7";
+          name = "recipe";
+        };
+        packageRequires = [ dash emacs esxml org s ];
+        meta = {
+          homepage = "https://melpa.org/#/org-web-tools";
+          license = lib.licenses.free;
+        };
+      }) {};
     org-wild-notifier = callPackage ({ alert
                                      , dash
                                      , emacs
@@ -36623,14 +37254,14 @@
         ename = "org2blog";
         version = "1.0.2";
         src = fetchFromGitHub {
-          owner = "punchagan";
+          owner = "org2blog";
           repo = "org2blog";
           rev = "bd2028b6a79daa63fc5481deaed63c4efc681be0";
           sha256 = "1qpw5bs5qjlpw3hphbf2jg0h8bdrcgrb8xavdsx8viwjl013d4ps";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/org2blog";
-          sha256 = "1xa03k9z8fq74w0w3vfkigz24i6c8s4vib077l16vqik7wg4yh40";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/org2blog";
+          sha256 = "15nr6f45z0i265llf8xs87958l5hvafh518k0s7jan7x1l6w5q33";
           name = "recipe";
         };
         packageRequires = [ htmlize metaweblog org xml-rpc ];
@@ -37351,12 +37982,12 @@
       melpaBuild {
         pname = "package-build";
         ename = "package-build";
-        version = "2.2";
+        version = "2.3";
         src = fetchFromGitHub {
           owner = "melpa";
           repo = "package-build";
-          rev = "9aac3517bde14346eadbe2c7d354672a456b9db3";
-          sha256 = "0wa7d5vzxql499knlpbs07l5mw7kmxgwzv63i42arm1sqfplq5df";
+          rev = "385cd427ce15ca1715f3dd758b6aa408bf0186b1";
+          sha256 = "1412pjghyvzkdlsrrs0ql30vw591bhyk1wlbf49f15dzjbspx3w0";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/948fb86b710aafe6bc71f95554655dfdfcab0cca/recipes/package-build";
@@ -37987,7 +38618,7 @@
       melpaBuild {
         pname = "password-store";
         ename = "password-store";
-        version = "1.7.2";
+        version = "1.7.3";
         src = fetchFromGitHub {
           owner = "zx2c4";
           repo = "password-store";
@@ -38423,7 +39054,8 @@
           license = lib.licenses.free;
         };
       }) {};
-    persp-fr = callPackage ({ emacs
+    persp-fr = callPackage ({ dash
+                            , emacs
                             , fetchFromGitHub
                             , fetchurl
                             , lib
@@ -38432,19 +39064,19 @@
       melpaBuild {
         pname = "persp-fr";
         ename = "persp-fr";
-        version = "0.0.3";
+        version = "0.0.4";
         src = fetchFromGitHub {
           owner = "rocher";
           repo = "persp-fr";
-          rev = "4d2d1a75019f520742da79f1aeed9c4a960677e0";
-          sha256 = "1waakbmxwm0xdnl0iznyk61ccwdjvwv5g1naml31r7q0cnk0jfz8";
+          rev = "3f536440b120499464106fd25f182d7580192870";
+          sha256 = "0bnplxv6igry7ak3wvn2b88zm4aarv35z4z5q38x52k4zac94rl8";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/8e09213dddf003a1275eafb767431a507ecf7639/recipes/persp-fr";
           sha256 = "0p4379yr1b32l8ghq1axyb8qhp28gnq5qxxvbk3mdzgbwwj8y4b2";
           name = "recipe";
         };
-        packageRequires = [ emacs persp-mode ];
+        packageRequires = [ dash emacs persp-mode ];
         meta = {
           homepage = "https://melpa.org/#/persp-fr";
           license = lib.licenses.free;
@@ -38750,14 +39382,14 @@
         ename = "php-mode";
         version = "1.19.1";
         src = fetchFromGitHub {
-          owner = "ejmr";
+          owner = "emacs-php";
           repo = "php-mode";
           rev = "aacb133b3d89ed0da8d936a162f49afc2aa5dfd4";
           sha256 = "1al6l37377psiykk6syyyc3sfifr7x3mqyb2rms5kqqkff53x1yx";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/7cdbc35fee67b87b87ec72aa00e6dca77aef17c4/recipes/php-mode";
-          sha256 = "1lc4d3fgxhanqr3b8zr99z0la6cpzs2rksj806lnsfw38klvi89y";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/2e41dc09413eaa93704e7d9f55bd2bd01f658806/recipes/php-mode";
+          sha256 = "1gqmcynz2wx09xjnk70db1a2pbnrh1vfm5vd6mks1s10y59bh0zq";
           name = "recipe";
         };
         packageRequires = [ cl-lib emacs ];
@@ -38795,6 +39427,7 @@
       }) {};
     phpactor = callPackage ({ cl-lib ? null
                             , emacs
+                            , f
                             , fetchFromGitHub
                             , fetchurl
                             , lib
@@ -38802,19 +39435,19 @@
       melpaBuild {
         pname = "phpactor";
         ename = "phpactor";
-        version = "0.0.2";
+        version = "0.1.0";
         src = fetchFromGitHub {
           owner = "emacs-php";
           repo = "phpactor.el";
-          rev = "fc301e6388332bb23162adaff2c59bb9214d66a4";
-          sha256 = "1iy7pqs2p2h98kr4blnif577qbbyp7ldyrl20g6515k9g888fxab";
+          rev = "61e4eab638168b7034eef0f11e35a89223fa7687";
+          sha256 = "0dsa1mygb96nlz5gppf0sny3lxaacvmvnkg84c0cs6x223s6zfx8";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/d67b98ecd541c227c011615f67d7a0890f5e1af3/recipes/phpactor";
           sha256 = "0w2iszi74y3s6rcn6p2ic545cg319y4jpy83npbh5m98y8jma84m";
           name = "recipe";
         };
-        packageRequires = [ cl-lib emacs ];
+        packageRequires = [ cl-lib emacs f ];
         meta = {
           homepage = "https://melpa.org/#/phpactor";
           license = lib.licenses.free;
@@ -38884,12 +39517,12 @@
       melpaBuild {
         pname = "phpunit";
         ename = "phpunit";
-        version = "0.16.0";
+        version = "0.17.1";
         src = fetchFromGitHub {
           owner = "nlamirault";
           repo = "phpunit.el";
-          rev = "a13706733f98be3639c47311fc820b3b50f4bc33";
-          sha256 = "0vfvybjinj0knim4ax0xspz7zr3n2y9ap1lvwqx1gwydr06w4jrl";
+          rev = "4212307bbcfd8accd2abfa7e4ab55a6751a0b11b";
+          sha256 = "1silbfmv85r73pbc7f5cm4znc6644ngihfnhibk1fgp9j0rf7ahc";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/0670b42c0c998daa7bf01080757976ac3589ec06/recipes/phpunit";
@@ -39132,26 +39765,27 @@
           license = lib.licenses.free;
         };
       }) {};
-    plantuml-mode = callPackage ({ fetchFromGitHub
+    plantuml-mode = callPackage ({ emacs
+                                 , fetchFromGitHub
                                  , fetchurl
                                  , lib
                                  , melpaBuild }:
       melpaBuild {
         pname = "plantuml-mode";
         ename = "plantuml-mode";
-        version = "1.2.5";
+        version = "1.2.7";
         src = fetchFromGitHub {
           owner = "skuro";
           repo = "plantuml-mode";
-          rev = "5a2e8d0dd2ba9286fc3c82d8689d25050290f68d";
-          sha256 = "1gcv5gmps371wd2sjbq4g5p2yj2ip8lpn81lypwb5xavqa7gjhlv";
+          rev = "82ab084c8631e70b089448ace72525f647af4f10";
+          sha256 = "0jcsbswpg41r27i5xb5lvw17n1kndwl8df9iwyhpm26jh2i2hpyv";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/38e74bb9923044323f34473a5b13867fe39bed25/recipes/plantuml-mode";
           sha256 = "03srbg34512vxcqn95q4r7h2aqbqq0sd5c9ffnbx2a75vsblqc6h";
           name = "recipe";
         };
-        packageRequires = [];
+        packageRequires = [ emacs ];
         meta = {
           homepage = "https://melpa.org/#/plantuml-mode";
           license = lib.licenses.free;
@@ -39465,6 +40099,59 @@
           license = lib.licenses.free;
         };
       }) {};
+    poly-ruby = callPackage ({ emacs
+                             , fetchFromGitHub
+                             , fetchurl
+                             , lib
+                             , melpaBuild
+                             , polymode }:
+      melpaBuild {
+        pname = "poly-ruby";
+        ename = "poly-ruby";
+        version = "0.3.1";
+        src = fetchFromGitHub {
+          owner = "knu";
+          repo = "poly-ruby.el";
+          rev = "794ebb926ace23e9c1398da934701951432dcea2";
+          sha256 = "1ffm81hg1gah7hb9x556hda5g4j3gk4c986q9gaacvfizqak3gyy";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/68213703359324d09553a2164f1f6ecca7c16854/recipes/poly-ruby";
+          sha256 = "0d8s6bl5ynx0r5cwvfkd52rksiq5kdyrgbxds56r8ls6cfkwqngg";
+          name = "recipe";
+        };
+        packageRequires = [ emacs polymode ];
+        meta = {
+          homepage = "https://melpa.org/#/poly-ruby";
+          license = lib.licenses.free;
+        };
+      }) {};
+    polymode = callPackage ({ emacs
+                            , fetchFromGitHub
+                            , fetchurl
+                            , lib
+                            , melpaBuild }:
+      melpaBuild {
+        pname = "polymode";
+        ename = "polymode";
+        version = "0.1.2";
+        src = fetchFromGitHub {
+          owner = "polymode";
+          repo = "polymode";
+          rev = "a99a0e494c52ccdf83a58c394c701a114ba44bf3";
+          sha256 = "075vap5i6g9zim4jpls1c34mzjwx6f8g410hnz4llmghf972xj68";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3058351c4500fdcbe7f40b4c96ac8d6de9bbeb1d/recipes/polymode";
+          sha256 = "15i9masklpy4iwskc7dzqjhb430ggn0496z4wb1zjj0b9xx4wj66";
+          name = "recipe";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/polymode";
+          license = lib.licenses.free;
+        };
+      }) {};
     pomidor = callPackage ({ alert
                            , emacs
                            , fetchFromGitHub
@@ -39813,12 +40500,12 @@
       melpaBuild {
         pname = "prescient";
         ename = "prescient";
-        version = "2.0";
+        version = "2.2";
         src = fetchFromGitHub {
           owner = "raxod502";
           repo = "prescient.el";
-          rev = "515959a2523b43608c9d06dcf8adde8911ce42b9";
-          sha256 = "1k8xk154sql3b2b7hpyxslcgl88aaxq5ak2sr760jsq2qk7878bw";
+          rev = "1e0db9451e75f0db29668bebe98dfa747c6b4bcf";
+          sha256 = "0zm9phc4cv7ldgyngcj84fxc1j0nh12c05lxiwv0n1xb8wc6awvf";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/ec02349e31531c347e4a43fbde56ae4386898cc6/recipes/prescient";
@@ -39867,14 +40554,14 @@
         ename = "pretty-mode";
         version = "2.0.3";
         src = fetchFromGitHub {
-          owner = "akatov";
+          owner = "pretty-mode";
           repo = "pretty-mode";
           rev = "4ba8fceb7dd733361ed975d80ac2caa3612fa78b";
           sha256 = "013fig9i4fyx16krp2vfv953p3rwdzr38zs6i50af4pqz4vrcfvh";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/4a2fe9feae4c1f007e51272a97917a63dcf6bbe5/recipes/pretty-mode";
-          sha256 = "1zxi4nj7vnchiiz1ndx17b719a1wipiqniykzn4pa1w7dsnqg21f";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/pretty-mode";
+          sha256 = "0zm6azbl70qmq2ybi576wfs3mx0ny54mf97b94ac501miv4fv0mq";
           name = "recipe";
         };
         packageRequires = [];
@@ -40025,12 +40712,12 @@
       melpaBuild {
         pname = "project-persist";
         ename = "project-persist";
-        version = "0.3.2";
+        version = "1.0.1";
         src = fetchFromGitHub {
           owner = "rdallasgray";
           repo = "project-persist";
-          rev = "a4e5de1833edb60656d8a04357c527d34e81d27c";
-          sha256 = "1x7hwda1w59b8hvzxyk996wdz6phs6rchh3f1ydf0ab6x7m7xvjr";
+          rev = "26d9435bef44da2a1b0892eba822f9f487b98eec";
+          sha256 = "0ja2pnbw11a2gwywfyfbdpk8rkm8imy04wkshpnlh0nwn7lf0clm";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/bd81d1f8a30ed951ed94b9a4db13a2f7735ea878/recipes/project-persist";
@@ -40340,6 +41027,31 @@
           license = lib.licenses.free;
         };
       }) {};
+    proof-general = callPackage ({ fetchFromGitHub
+                                 , fetchurl
+                                 , lib
+                                 , melpaBuild }:
+      melpaBuild {
+        pname = "proof-general";
+        ename = "proof-general";
+        version = "4.4";
+        src = fetchFromGitHub {
+          owner = "ProofGeneral";
+          repo = "PG";
+          rev = "771cab48b2f9ea2ae3fa8f944d0e36a805bf9f3b";
+          sha256 = "0bdfk91wf71z80mdfnl8hpinripndcjgdkz854zil6521r84nqk8";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/135c8f2a04739145b500b8742a697907e398d270/recipes/proof-general";
+          sha256 = "10zif9ax4d3m8sa9y2xqz7g24xa2r3m2x5l0zqa06wm4afq29p87";
+          name = "recipe";
+        };
+        packageRequires = [];
+        meta = {
+          homepage = "https://melpa.org/#/proof-general";
+          license = lib.licenses.free;
+        };
+      }) {};
     prop-menu = callPackage ({ cl-lib ? null
                              , emacs
                              , fetchFromGitHub
@@ -40374,7 +41086,7 @@
       melpaBuild {
         pname = "protobuf-mode";
         ename = "protobuf-mode";
-        version = "3.6.0.1";
+        version = "3.6.1";
         src = fetchFromGitHub {
           owner = "google";
           repo = "protobuf";
@@ -41132,12 +41844,12 @@
       melpaBuild {
         pname = "pyvenv";
         ename = "pyvenv";
-        version = "1.16";
+        version = "1.18";
         src = fetchFromGitHub {
           owner = "jorgenschaefer";
           repo = "pyvenv";
-          rev = "c1123def7e0d9da57d034d3a6bd3044a738aa8db";
-          sha256 = "0mi86m5z3hig65yd0k224wx6x9i0nz9fcv91njy0ypifxh5hcd8v";
+          rev = "921ae2356b6a111ac0b7e44fd04cba8e95cbe936";
+          sha256 = "04kxx8fjqzzdl2rn56vn9jac2v3irpmr9dfckwfa3r4gslvipybm";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/e37236b89b9705ba7a9d134b1fb2c3c003953a9b/recipes/pyvenv";
@@ -41759,14 +42471,14 @@
         ename = "realgud";
         version = "1.4.5";
         src = fetchFromGitHub {
-          owner = "rocky";
-          repo = "emacs-dbgr";
+          owner = "realgud";
+          repo = "realgud";
           rev = "09431a4561921bece36a6083b6e27ac4dc82432d";
           sha256 = "00dgdiiwnwynlyyh6pfhljrl363s8zd5ynbx9mhd2y8c3gmvfab0";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/7ca56f05df6c8430a5cbdc55caac58ba79ed6ce5/recipes/realgud";
-          sha256 = "0qmvd35ng1aqclwj3pskn58c0fi98kvx9666wp3smgj3n88vgy15";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/realgud";
+          sha256 = "0wbcclgd23d91c7lx8yx7qigcbc0ywr4hjh7h49pi2avy1cm2q0v";
           name = "recipe";
         };
         packageRequires = [
@@ -41807,6 +42519,32 @@
           license = lib.licenses.free;
         };
       }) {};
+    reazon = callPackage ({ emacs
+                          , fetchFromGitHub
+                          , fetchurl
+                          , lib
+                          , melpaBuild }:
+      melpaBuild {
+        pname = "reazon";
+        ename = "reazon";
+        version = "0.2";
+        src = fetchFromGitHub {
+          owner = "nickdrozd";
+          repo = "reazon";
+          rev = "7e27f37c22f2fbad5315d71c9603309717680b6e";
+          sha256 = "0nk7a73knc9ir1vkpyimjag1nqhrx9x4v2f975n790bgs24v4hhs";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/77020b6ea36a4115bdddbc9599fe4f4193ecc29d/recipes/reazon";
+          sha256 = "1lymdc1lnwr7s8s15mnjcavxdyqncy2rkfdj571lf1a37y52jcj1";
+          name = "recipe";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/reazon";
+          license = lib.licenses.free;
+        };
+      }) {};
     rebecca-theme = callPackage ({ emacs
                                  , fetchFromGitHub
                                  , fetchurl
@@ -42148,7 +42886,8 @@
           license = lib.licenses.free;
         };
       }) {};
-    replace-with-inflections = callPackage ({ fetchFromGitHub
+    replace-with-inflections = callPackage ({ cl-lib ? null
+                                            , fetchFromGitHub
                                             , fetchurl
                                             , inflections
                                             , lib
@@ -42157,19 +42896,19 @@
       melpaBuild {
         pname = "replace-with-inflections";
         ename = "replace-with-inflections";
-        version = "0.3.0";
+        version = "0.3.1";
         src = fetchFromGitHub {
           owner = "knu";
           repo = "replace-with-inflections.el";
-          rev = "e0486653abf7c248024800132df23993cd617892";
-          sha256 = "1fygsr3vjpy0crxlyawwk6k21h1w3svgk79rm7fqg5xzilg6kf25";
+          rev = "d9201e047856492f282da65459b28aba25998dbb";
+          sha256 = "09yvn489z33hww7mi1flh344faxrpbkzqhm0i6xb2rridcj7acqh";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/7892eb506b8f4260bde4be2805bf3b2d594ab640/recipes/replace-with-inflections";
           sha256 = "1pqpin5ipm3g74zjh1kh6s1gh0aan6202p0y2q00d4ywbz9kn5s0";
           name = "recipe";
         };
-        packageRequires = [ inflections string-inflection ];
+        packageRequires = [ cl-lib inflections string-inflection ];
         meta = {
           homepage = "https://melpa.org/#/replace-with-inflections";
           license = lib.licenses.free;
@@ -42202,7 +42941,7 @@
         };
       }) {};
     req-package = callPackage ({ dash
-                               , fetchFromGitHub
+                               , fetchFromGitLab
                                , fetchurl
                                , ht
                                , lib
@@ -42213,15 +42952,15 @@
         pname = "req-package";
         ename = "req-package";
         version = "1.2";
-        src = fetchFromGitHub {
+        src = fetchFromGitLab {
           owner = "edvorg";
           repo = "req-package";
           rev = "0c0ac7451149dac6bfda2adfe959d1df1c273de6";
           sha256 = "0sx3kw1gpliifbc0gh2z1lvig68v3gwqjbj0izgn77js8kqxad84";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/f58a801f0791566d0c39493a5f82ff0d15d7ab41/recipes/req-package";
-          sha256 = "1438f60dnmc3a2dh6hd0wslrh25nd3af797aif70kv6qc71h87vf";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/aa5bc1909f807ec03ad441d78013ba8626cd410a/recipes/req-package";
+          sha256 = "1zjhc6f9qcb3j72k1llp6vym25lxnvq1jgqgmnrjxxwc4fhxx595";
           name = "recipe";
         };
         packageRequires = [ dash ht log4e use-package ];
@@ -42451,12 +43190,12 @@
       melpaBuild {
         pname = "rg";
         ename = "rg";
-        version = "1.5.0";
+        version = "1.6.0";
         src = fetchFromGitHub {
           owner = "dajva";
           repo = "rg.el";
-          rev = "943226043dc9055b282d0c035fd1e1cbdd562b22";
-          sha256 = "0hm25x1zym4xdc4w1ayn1an4nrg1qwyh12vb9sxas3fplapm500k";
+          rev = "28b2f7d0025a803250806c7d274c6df43b4ccc4b";
+          sha256 = "0i9022j7pd8ywrkkljhnhwdg28bv34lgvigg8anqfav9ahcqswf7";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/9ce1f721867383a841957370946f283f996fa76f/recipes/rg";
@@ -42846,14 +43585,14 @@
         ename = "rubocop";
         version = "0.5.0";
         src = fetchFromGitHub {
-          owner = "bbatsov";
+          owner = "rubocop-hq";
           repo = "rubocop-emacs";
           rev = "980bedb455e3551d35a212fae515c054888907c1";
           sha256 = "152ara2p59imry2ymfnk5mycbc07rblcmfmqjgm5fijb2x94xv8p";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/00f2cf3e8e28bce5c26c86aba54390ffff48d7da/recipes/rubocop";
-          sha256 = "114azl0fasmnq0fxxyiif3363mpg8qz3ynx91in5acqzh902fa3q";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/rubocop";
+          sha256 = "07ma4fv015wzpj5j4rdb0ckwwmhkxs3k5vy33qxgwghqmn6xby6x";
           name = "recipe";
         };
         packageRequires = [ emacs ];
@@ -43145,24 +43884,23 @@
                                    , fetchFromGitHub
                                    , fetchurl
                                    , lib
-                                   , melpaBuild
-                                   , rust-mode }:
+                                   , melpaBuild }:
       melpaBuild {
         pname = "rust-playground";
         ename = "rust-playground";
-        version = "0.2.1";
+        version = "0.3";
         src = fetchFromGitHub {
           owner = "grafov";
           repo = "rust-playground";
-          rev = "2f22ec74e4158984e0e70cf0bf728bbd42eb661b";
-          sha256 = "1p80zghdk3hsfj36z30sfkllqr3b4yi279zkg0la9kfg6785x2cg";
+          rev = "092c8b11d62dea23953a004744833092bac85fe1";
+          sha256 = "0n2c1pjbvy46ic0k84jd3ffwwb5hibjqc1wv7knzkldi5agigfsh";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/rust-playground";
           sha256 = "0ml0zr9vz2vjd9wr0v706w4v4qqfzpa56rdzfak2kb5llx53j89v";
           name = "recipe";
         };
-        packageRequires = [ emacs rust-mode ];
+        packageRequires = [ emacs ];
         meta = {
           homepage = "https://melpa.org/#/rust-playground";
           license = lib.licenses.free;
@@ -43384,12 +44122,12 @@
       melpaBuild {
         pname = "sayid";
         ename = "sayid";
-        version = "0.0.16";
+        version = "0.0.17";
         src = fetchFromGitHub {
           owner = "bpiel";
           repo = "sayid";
-          rev = "8ea70573e6eb1a0d1a450fd501f38c2cf26ce27f";
-          sha256 = "02yp3h16yzys27lxcxn7qzb23z95vjdaxhinz0swdixgr5qwwc77";
+          rev = "a2625e3975c2bc8449259f0ecd51b28068cbdfac";
+          sha256 = "1vw0dc8cx8npy79r53cw129h5s8n12629ah0ypkq15v2rh2hs1gk";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/2bd2e05f9c9328d8f9ae434c86697a4a04af8b0d/recipes/sayid";
@@ -43757,12 +44495,12 @@
       melpaBuild {
         pname = "sesman";
         ename = "sesman";
-        version = "0.1.1";
+        version = "0.3";
         src = fetchFromGitHub {
           owner = "vspinu";
           repo = "sesman";
-          rev = "0d8d1bef455b58439df333f2a0a0693543b8f098";
-          sha256 = "1hgl1djfxiajcc5rnwq7rlli6fhim57mbmabxdsc78p18c1azxhz";
+          rev = "c81565a88b038f752de90998e651b94fa78a687f";
+          sha256 = "029agil0ic8v4wxv39a5x2vw2p5a2hx8r1lbf8kwlddpgh8lb030";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/31110e9bd82ad9c817e6cb597fa9c26c4cdc93ed/recipes/sesman";
@@ -44321,12 +45059,12 @@
       melpaBuild {
         pname = "shx";
         ename = "shx";
-        version = "0.0.16";
+        version = "0.0.17";
         src = fetchFromGitHub {
           owner = "riscy";
           repo = "shx-for-emacs";
-          rev = "207e6cd292a26fb1162072e2e20df9aa5efd61ef";
-          sha256 = "1hnjmnnmg6axgw4z57rmc8h8wpnbi2rwyr4bv2sdrkk12d3i2kp5";
+          rev = "758ad3ab21daa055982ee5d165522a0de7948e93";
+          sha256 = "0p923v4iqmyr4fhr2h5ydfaqplkhqllig6dcgp0bjvj7n9v8zpng";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/7a2ff78ae3c4289ebf9e06cdfd8f8082c395a16f/recipes/shx";
@@ -44475,12 +45213,12 @@
       melpaBuild {
         pname = "simpleclip";
         ename = "simpleclip";
-        version = "1.0.4";
+        version = "1.0.6";
         src = fetchFromGitHub {
           owner = "rolandwalker";
           repo = "simpleclip";
-          rev = "d461c462c237cd896553adb468cd77499d0d26ad";
-          sha256 = "1dfa1sa7rbadj36nbzyxbpbvkdlh1s5n0mx6hxn52psqin1ra6yn";
+          rev = "7fff9a1e574466878b5f91e9b56b16e490045aaa";
+          sha256 = "02bj8b4xg930wzrjam0569k5cj1y0gkv28sjy567skdiw5zl14nn";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/7c921e27d6aafc1b82d37f6beb8407840034377a/recipes/simpleclip";
@@ -44849,14 +45587,14 @@
         ename = "sly";
         version = "2.14";
         src = fetchFromGitHub {
-          owner = "capitaomorte";
+          owner = "joaotavora";
           repo = "sly";
           rev = "9dfa53bbaa33c4e91fc58f816d0a766ae94f47c9";
           sha256 = "0bw6rvpkfpv5shih0ywjw6pa5h2a8v1xpvkxbijqd4dpdj3dlyj9";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/79e7213183df892c5058a766b5805a1854bfbaec/recipes/sly";
-          sha256 = "1pmyqjk8fdlzwvrlx8h6fq0savksfny78fhmr8r7b07pi20y6n9l";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/4150455d424326667390f72f6edd22b274d9fa01/recipes/sly";
+          sha256 = "18as0g1fi1x6lgjzd9rn2s6iw3n00q3nxi99lchjnn004pwsv8kq";
           name = "recipe";
         };
         packageRequires = [];
@@ -45209,12 +45947,12 @@
       melpaBuild {
         pname = "snakemake-mode";
         ename = "snakemake-mode";
-        version = "1.3.0";
+        version = "1.4.0";
         src = fetchFromGitHub {
           owner = "kyleam";
           repo = "snakemake-mode";
-          rev = "6cf6d20db2e5253ce3f86e302651faa28f220aa7";
-          sha256 = "0dmvd5f5rb5kkzjkhzz17b40hlld23sy5wyzr8vq763f6pzs37kk";
+          rev = "3c2e5556c603d3f35135d531e4ff5e618b984de9";
+          sha256 = "0j6aam0w3mwxl76zpxzvw92pk6w7h47pw6gpnd7hchjs8cav1q41";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/c3a5b51fee1c9e6ce7e21555faa355d118d34b8d/recipes/snakemake-mode";
@@ -45425,14 +46163,14 @@
         ename = "sos";
         version = "0.1";
         src = fetchFromGitHub {
-          owner = "omouse";
+          owner = "rudolfolah";
           repo = "emacs-sos";
           rev = "c3906ca6872f460c0bdd276410519308626313f1";
           sha256 = "0b5w3vdr8llg3hqd22gnc6b6y089lq6vfk0ajkws6gfldz2gg2v1";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/36e02223b4ff9c0be4662991d734ca4a4e756f4b/recipes/sos";
-          sha256 = "1gkd0plx7152s3dj8a9lwlwh8bgs1m006s80l10agclx6aay8rvb";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/sos";
+          sha256 = "0d0n2h7lbif32qgz0z2c36536mrx36d22gq86xm7kmxday6iy19k";
           name = "recipe";
         };
         packageRequires = [ org ];
@@ -45973,26 +46711,27 @@
           license = lib.licenses.free;
         };
       }) {};
-    srcery-theme = callPackage ({ fetchFromGitHub
+    srcery-theme = callPackage ({ emacs
+                                , fetchFromGitHub
                                 , fetchurl
                                 , lib
                                 , melpaBuild }:
       melpaBuild {
         pname = "srcery-theme";
         ename = "srcery-theme";
-        version = "0.1.0";
+        version = "0.2.0";
         src = fetchFromGitHub {
           owner = "srcery-colors";
           repo = "srcery-emacs";
-          rev = "8e4627430abcedc0ed320f620c4411985c9913e1";
-          sha256 = "0lh9hp4aypfwhc6bgywlqxcwyms27yjw71yfcq48iwnqzafpdnkr";
+          rev = "0114420262f5e76cdc63f333d00522229aa77732";
+          sha256 = "1am3nxa9n0irzw0mrb93lmppmw9d5c2yjfgpipvcvwsij3g6k2aj";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/2654fc05f55c7fab7d550b7db1d187edc9ff0f42/recipes/srcery-theme";
           sha256 = "1bnvf9v7g2mpx8519lh73fphhr4cqd33qlw22qyxnqiz5cz93lsp";
           name = "recipe";
         };
-        packageRequires = [];
+        packageRequires = [ emacs ];
         meta = {
           homepage = "https://melpa.org/#/srcery-theme";
           license = lib.licenses.free;
@@ -46067,8 +46806,8 @@
           sha256 = "0895n7bss4wdydic1gflr03f2cwdyqywl16gvb599lpn288jhwvz";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/b9a9e4bd0205908bfb99762c7daaf3be276bb03a/recipes/ssh-agency";
-          sha256 = "0lci3fhl2p9mwilvq1njzy13dkq5cp5ighymf3zs4gzm3w0ih3h8";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/e608f40d00a3b2a80a6997da00e7d04f76d8ef0d/recipes/ssh-agency";
+          sha256 = "1b25fl1kk4mwsd25pg9s0lazlpmaa6s9wnfgvlqk8k65d7p7idzz";
           name = "recipe";
         };
         packageRequires = [ dash emacs ];
@@ -46263,12 +47002,12 @@
       melpaBuild {
         pname = "string-inflection";
         ename = "string-inflection";
-        version = "1.0.7";
+        version = "1.0.10";
         src = fetchFromGitHub {
           owner = "akicho8";
           repo = "string-inflection";
-          rev = "a9de404b2ece932da9b1c9aa1c29dbf7cf506e76";
-          sha256 = "1km8xxb0zc3yll1yzlsrrz14ch3inblpq2nhglwp1wskqwdhwly5";
+          rev = "9b08372301e3c5f91cb278ee0e00a48845a42cb6";
+          sha256 = "0j3ms2cxbv24kr27r2jhzxpdih6w43gjdkm3sqd28c28ycab8d4b";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/5c2e2b6dba8686236c2595475cfddac5fd700e60/recipes/string-inflection";
@@ -46686,14 +47425,14 @@
         ename = "swift-mode";
         version = "6.0.0";
         src = fetchFromGitHub {
-          owner = "chrisbarrett";
+          owner = "swift-emacs";
           repo = "swift-mode";
           rev = "d2f2f1da6085c6fad2709b951d6891dd139a6080";
           sha256 = "1ldf593qzbscwlngbabxb52kcpriwhglk95l82qs8y3q1x6aj0cw";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/19cb133191cd6f9623e99e958d360113595e756a/recipes/swift-mode";
-          sha256 = "1imr53f8agfza9zxs1h1mwyhg7yaywqqffd1lsvm1m84nvxvri2d";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/swift-mode";
+          sha256 = "103nix9k2agxgfpwyhsracixl4xvzqlgidd25r1fpj679hr42bg8";
           name = "recipe";
         };
         packageRequires = [ emacs seq ];
@@ -47047,12 +47786,12 @@
       melpaBuild {
         pname = "system-packages";
         ename = "system-packages";
-        version = "1.0.5";
+        version = "1.0.7";
         src = fetchFromGitLab {
           owner = "jabranham";
           repo = "system-packages";
-          rev = "7b87f7dbd53d7bd365157d831893f7a70ae67910";
-          sha256 = "02h3qf455y3dpmf4f312x9dvxrndp9dkyyvs1vw6g9aqahrr4vys";
+          rev = "604d16b8746c290327200e568d37914ad24daf1a";
+          sha256 = "1idn6agxwdliyzpvqiqc48yhrggj2p858wms0gvalj39jdfjzir9";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/7d3c7af03e0bca3f834c32827cbcca29e29ef4db/recipes/system-packages";
@@ -47143,6 +47882,31 @@
           license = lib.licenses.free;
         };
       }) {};
+    tabbar = callPackage ({ fetchFromGitHub
+                          , fetchurl
+                          , lib
+                          , melpaBuild }:
+      melpaBuild {
+        pname = "tabbar";
+        ename = "tabbar";
+        version = "2.2";
+        src = fetchFromGitHub {
+          owner = "dholm";
+          repo = "tabbar";
+          rev = "82bbda31cbe8ef367dd6501c3aa14b7f2c835910";
+          sha256 = "01sw76wp8bvh21h30pkc3kjr98c8m6qid6misk1y7hkyld0bzxay";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/806420d75561cbeffbc1b387345a56c21cc20179/recipes/tabbar";
+          sha256 = "1y376nz1xmchwns4fz8dixbb7hbqh4mln78zvsh7y32il98wzvx9";
+          name = "recipe";
+        };
+        packageRequires = [];
+        meta = {
+          homepage = "https://melpa.org/#/tabbar";
+          license = lib.licenses.free;
+        };
+      }) {};
     tabbar-ruler = callPackage ({ fetchFromGitHub
                                 , fetchurl
                                 , lib
@@ -47553,12 +48317,12 @@
       melpaBuild {
         pname = "tern";
         ename = "tern";
-        version = "0.21.0";
+        version = "0.22.2";
         src = fetchFromGitHub {
           owner = "ternjs";
           repo = "tern";
-          rev = "f9bde5792b7a19ac63c344219e0b0c6bd5a41d35";
-          sha256 = "0pdpchnpsy7iwafr2gawy4sm8kfhh101k8yijkckpnk8ir1lw1jw";
+          rev = "5c395b5d696aad5a185724f56c74a7f83349f3bd";
+          sha256 = "11sp1jz0fn8gnc28qvyrmc7qxr1gn5r3vxv6gp46p7cmgg9mflri";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/eaecd67af24050c72c5df73c3a12e717f95d5059/recipes/tern";
@@ -47582,12 +48346,12 @@
       melpaBuild {
         pname = "tern-auto-complete";
         ename = "tern-auto-complete";
-        version = "0.21.0";
+        version = "0.22.2";
         src = fetchFromGitHub {
           owner = "ternjs";
           repo = "tern";
-          rev = "dcd808f985e7b0f562467e2145dcd1e901347999";
-          sha256 = "1wwf9h6inv3gvp8g7n98dqvjmn01i8sx3n3h3ilqq3cbsy58yjvg";
+          rev = "d545bbdd8482c231211f9521c688fc06632e745e";
+          sha256 = "0ribzvl5gs281chp2kqaqmjj9xji7k9l71hsblfw1vj2w9l7nw2m";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/eaecd67af24050c72c5df73c3a12e717f95d5059/recipes/tern-auto-complete";
@@ -47972,7 +48736,7 @@
       melpaBuild {
         pname = "tidal";
         ename = "tidal";
-        version = "0.9.8";
+        version = "0.9.10";
         src = fetchFromGitHub {
           owner = "tidalcycles";
           repo = "Tidal";
@@ -48055,12 +48819,12 @@
       melpaBuild {
         pname = "timesheet";
         ename = "timesheet";
-        version = "0.4.0";
+        version = "0.4.1";
         src = fetchFromGitHub {
           owner = "tmarble";
           repo = "timesheet.el";
-          rev = "2ed6fea9b508eb7eaff659d9a34a09ba064d4df8";
-          sha256 = "028d1sn29idznzsc95w2c1sdz3rpmf3vgk2365li0vvs99s51hi2";
+          rev = "67ca6a9f6733052066b438301fb2dd81b8b3f6eb";
+          sha256 = "0rmh8lik27pmq95858jbjzgvf6rsfdnpynwcagj1fgkval5kzdbs";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/40009ef2f6845c83242ca5d0a8c9c2c1e4ef8a9d/recipes/timesheet";
@@ -48339,12 +49103,12 @@
       melpaBuild {
         pname = "treemacs";
         ename = "treemacs";
-        version = "2.2";
+        version = "2.2.2";
         src = fetchFromGitHub {
           owner = "Alexander-Miller";
           repo = "treemacs";
-          rev = "9b1129ee3152994b033a877fc49777bfe02e315a";
-          sha256 = "08ias1nixz7ma8g6v3v4dqdnd87sqdhplsp5v5wvr3w58szlia5b";
+          rev = "4976d15c5f29bb8200b5502b742a9ba4a743706f";
+          sha256 = "04sv030az079hgj4mvyigwckl6vnw2gc9zy71zksl5vn7ii25m4m";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/91038c1ab2f463102263dcc3701c0fdaad55de4c/recipes/treemacs";
@@ -48366,12 +49130,12 @@
       melpaBuild {
         pname = "treemacs-evil";
         ename = "treemacs-evil";
-        version = "2.2";
+        version = "2.2.2";
         src = fetchFromGitHub {
           owner = "Alexander-Miller";
           repo = "treemacs";
-          rev = "d0f874c90990400c02a8029d4efe815d3548ba5c";
-          sha256 = "0hclgsv96gr50z9cqj97rp45c5r50q2zb6hq5jcx3xmlw12k9pk7";
+          rev = "82061efe99e34ac69367726d65fa0f517947b40b";
+          sha256 = "0f2ybaf149ji54rgf7q9xbdx55jr2jgz9qbahsh2q7gl800nkg17";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/91038c1ab2f463102263dcc3701c0fdaad55de4c/recipes/treemacs-evil";
@@ -48393,7 +49157,7 @@
       melpaBuild {
         pname = "treemacs-projectile";
         ename = "treemacs-projectile";
-        version = "2.2";
+        version = "2.2.2";
         src = fetchFromGitHub {
           owner = "Alexander-Miller";
           repo = "treemacs";
@@ -48437,6 +49201,32 @@
           license = lib.licenses.free;
         };
       }) {};
+    trinary = callPackage ({ emacs
+                           , fetchFromGitHub
+                           , fetchurl
+                           , lib
+                           , melpaBuild }:
+      melpaBuild {
+        pname = "trinary";
+        ename = "trinary";
+        version = "1.0.0";
+        src = fetchFromGitHub {
+          owner = "emacs-elsa";
+          repo = "trinary-logic";
+          rev = "c043034e1e476ae103cc52b6922e15f6dd2fc8a3";
+          sha256 = "0hi6ybsz6v6ls8ajkyqpy9cq87pk684l9a7js863f7ycgwb37nzn";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/48fff02dde8a678e151f2765ea7c3a383912c68b/recipes/trinary";
+          sha256 = "1k2jpay1wx2m54fpja9mrhqyk15ikml8xf15irh8yrxb3hah8f8k";
+          name = "recipe";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/trinary";
+          license = lib.licenses.free;
+        };
+      }) {};
     trr = callPackage ({ fetchFromGitHub
                        , fetchurl
                        , lib
@@ -48551,12 +49341,12 @@
       melpaBuild {
         pname = "tuareg";
         ename = "tuareg";
-        version = "2.1.0";
+        version = "2.2.0";
         src = fetchFromGitHub {
           owner = "ocaml";
           repo = "tuareg";
-          rev = "927a309b1ad8559be33e6a1d7951214a66f7c130";
-          sha256 = "05rsid1g3vrg10qiws7dd1rpd6wva9mqldwfyrrhg088k4v2a0q5";
+          rev = "40f974d3b0777f9666928d0b4a5126a4c7491b17";
+          sha256 = "049nw6pkkxnq3k4vv4ksl93csiybm7q29xigdkc7cr9cls6h8jf0";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/01fb6435a1dfeebdf4e7fa3f4f5928bc75526809/recipes/tuareg";
@@ -48629,14 +49419,14 @@
         ename = "turing-machine";
         version = "0.2.0";
         src = fetchFromGitHub {
-          owner = "therockmandolinist";
+          owner = "dieggsy";
           repo = "turing-machine";
           rev = "ad1dccc9c445f9e4465e1c67cbbfea9583153047";
           sha256 = "0qaz4r5ahg2fxsfyxilb8c9956i5ra9vg80l82slm8vrnsinzll6";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/a003b40a52a92b3ab4d1ffc003f570d4fa6bfbde/recipes/turing-machine";
-          sha256 = "1ndy953q9hr1psqqkkqsffyvj800cnqdxcrixqiw0ls77f2kczcn";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/turing-machine";
+          sha256 = "0q9a31m5wnz9j9l4i8czdl7z12nrcdjw72w8sqvf94ri2g5dbpkq";
           name = "recipe";
         };
         packageRequires = [ emacs ];
@@ -49212,7 +50002,7 @@
           license = lib.licenses.free;
         };
       }) {};
-    use-package-el-get = callPackage ({ fetchFromGitHub
+    use-package-el-get = callPackage ({ fetchFromGitLab
                                       , fetchurl
                                       , lib
                                       , melpaBuild
@@ -49221,15 +50011,15 @@
         pname = "use-package-el-get";
         ename = "use-package-el-get";
         version = "0.1";
-        src = fetchFromGitHub {
+        src = fetchFromGitLab {
           owner = "edvorg";
           repo = "use-package-el-get";
           rev = "f33c448ed43ecb003b60ff601ee7ef9b08cff947";
           sha256 = "1wzn3h8k7aydj3hxxws64b0v4cr3b77cf7z128xh3v6xz2w62m4z";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/ee4a96cf467bcab171a0adfd4ef754abec1a9971/recipes/use-package-el-get";
-          sha256 = "0sg9ijkjax6w25p0q7rw5rjn8r2i83z5jfzjkvy8pxil5cg8zyh0";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/aca60522257353fbfd9d032f8c3cae7914d6bd36/recipes/use-package-el-get";
+          sha256 = "143vydssjxmkcgs661hz6nhg310r8qypn2a4vyxy5sb31wqcclzg";
           name = "recipe";
         };
         packageRequires = [ use-package ];
@@ -49507,6 +50297,59 @@
           license = lib.licenses.free;
         };
       }) {};
+    vdm-mode = callPackage ({ emacs
+                            , fetchFromGitHub
+                            , fetchurl
+                            , lib
+                            , melpaBuild }:
+      melpaBuild {
+        pname = "vdm-mode";
+        ename = "vdm-mode";
+        version = "0.0.3";
+        src = fetchFromGitHub {
+          owner = "peterwvj";
+          repo = "vdm-mode";
+          rev = "0c083ee4848ea5d78de7894a4a0722d6630839c9";
+          sha256 = "175zlxxjxl7zp80hm2hz5xw7gy3qh0hz3fdvqy8v3n0vz4zvqx1k";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/f246b9dcf7915a845b9e2cd44cc1a0833b412c8f/recipes/vdm-mode";
+          sha256 = "0paafpyzncl2325ly89591jnxhl9zc8jwsphav38nw0fsm9r9ah9";
+          name = "recipe";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/vdm-mode";
+          license = lib.licenses.free;
+        };
+      }) {};
+    vdm-snippets = callPackage ({ emacs
+                                , fetchFromGitHub
+                                , fetchurl
+                                , lib
+                                , melpaBuild
+                                , yasnippet }:
+      melpaBuild {
+        pname = "vdm-snippets";
+        ename = "vdm-snippets";
+        version = "0.0.3";
+        src = fetchFromGitHub {
+          owner = "peterwvj";
+          repo = "vdm-mode";
+          rev = "0c083ee4848ea5d78de7894a4a0722d6630839c9";
+          sha256 = "175zlxxjxl7zp80hm2hz5xw7gy3qh0hz3fdvqy8v3n0vz4zvqx1k";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/f246b9dcf7915a845b9e2cd44cc1a0833b412c8f/recipes/vdm-snippets";
+          sha256 = "1js1hjs2r9bbqm50bl389y87xn68f30xrh2z6nd5kz2hdgkm6lhj";
+          name = "recipe";
+        };
+        packageRequires = [ emacs yasnippet ];
+        meta = {
+          homepage = "https://melpa.org/#/vdm-snippets";
+          license = lib.licenses.free;
+        };
+      }) {};
     vector-utils = callPackage ({ fetchFromGitHub
                                 , fetchurl
                                 , lib
@@ -49884,14 +50727,14 @@
         ename = "vue-mode";
         version = "0.4";
         src = fetchFromGitHub {
-          owner = "CodeFalling";
+          owner = "AdamNiederer";
           repo = "vue-mode";
           rev = "48ff04657613f39848d0e66e9dd367aa2dc19e89";
           sha256 = "014vx8jkscj1c614v78dqlqlg7n0zc3c2db3dqvxvaz417i5mxq0";
         };
         recipe = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/2e5e0a9fff332aeec09f6d3d758e2b67dfdf8397/recipes/vue-mode";
-          sha256 = "0gy7a5sliaijq0666l55vbkg15anrw7k1828szdn1ppkraw14bn0";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/vue-mode";
+          sha256 = "0npzn7pycqfdakv4plkigq8aw1bqhz3y03y3ypx21q5a186ds0g5";
           name = "recipe";
         };
         packageRequires = [ edit-indirect mmm-mode ssass-mode vue-html-mode ];
@@ -50276,12 +51119,12 @@
       melpaBuild {
         pname = "weechat";
         ename = "weechat";
-        version = "0.4.0";
+        version = "0.5.0";
         src = fetchFromGitHub {
           owner = "the-kenny";
           repo = "weechat.el";
-          rev = "a0d81074088d313dd596af6602e51d4253a55ca5";
-          sha256 = "08ibyabvdlmp74xa950al3axmzsqpcal30313ab5wgb746sh3dvm";
+          rev = "bcf714e32b012c6a89d5c0a82ab3a74d454908ff";
+          sha256 = "1gm2yhz3qy55qqwf0ccrqw4nifxaig4jpdqmcl0ydx1n3myxx64l";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/e38255a31a4ca31541c97a506a55f82e2670abe6/recipes/weechat";
@@ -50728,8 +51571,7 @@
           license = lib.licenses.free;
         };
       }) {};
-    window-purpose = callPackage ({ cl-lib ? null
-                                  , emacs
+    window-purpose = callPackage ({ emacs
                                   , fetchFromGitHub
                                   , fetchurl
                                   , imenu-list
@@ -50739,19 +51581,19 @@
       melpaBuild {
         pname = "window-purpose";
         ename = "window-purpose";
-        version = "1.6";
+        version = "1.7";
         src = fetchFromGitHub {
           owner = "bmag";
           repo = "emacs-purpose";
-          rev = "00c253778d8e845bdc17a350c22ea157c5871b41";
-          sha256 = "11hv2rrcirswzgx0l52kwav5dilr3yksky9a3vg1pghgqhmm59hv";
+          rev = "a302340e183d20baa4445858d321f43449298829";
+          sha256 = "1dpy8hkjn87wbdkzyabhay4jx4dgc0ab2flyf0rjq1qaazk393sc";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/5813120ab674f6db7d0a486433d8faa6cfec1727/recipes/window-purpose";
           sha256 = "1y70jrba3gf9fyf2qdihfshbsblzb88yv9fkcswdzrpq5kmgwp84";
           name = "recipe";
         };
-        packageRequires = [ cl-lib emacs imenu-list let-alist ];
+        packageRequires = [ emacs imenu-list let-alist ];
         meta = {
           homepage = "https://melpa.org/#/window-purpose";
           license = lib.licenses.free;
@@ -50892,12 +51734,12 @@
       melpaBuild {
         pname = "with-editor";
         ename = "with-editor";
-        version = "2.7.3";
+        version = "2.7.4";
         src = fetchFromGitHub {
           owner = "magit";
           repo = "with-editor";
-          rev = "ad5bb005ed3afec2d8b9b2bc1df19fb9b5e2dd84";
-          sha256 = "0hq2dy8djxf45ajk9di1grhgzly0qrijcjfdah8xj5zkwvn9cvlh";
+          rev = "3e6424764ee06fb50c580283baea3851c6f9ea66";
+          sha256 = "0xawvwvkqdy5hhbz9mbclha18w8nd36d9nyf7b6s2f5dw7xnlyb0";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/8c52c840dc35f3fd17ec660e113ddbb53aa99076/recipes/with-editor";
@@ -51253,6 +52095,32 @@
           license = lib.licenses.free;
         };
       }) {};
+    wucuo = callPackage ({ emacs
+                         , fetchFromGitHub
+                         , fetchurl
+                         , lib
+                         , melpaBuild }:
+      melpaBuild {
+        pname = "wucuo";
+        ename = "wucuo";
+        version = "0.0.3";
+        src = fetchFromGitHub {
+          owner = "redguardtoo";
+          repo = "wucuo";
+          rev = "2657e78246001848fe1140c9d90cb96d796d5887";
+          sha256 = "0s3ipmrw3gqyq6y4pxjm8cpnsar5hh27lclhjq7277zlbl3da32c";
+        };
+        recipe = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/819cacef2c31d750829980f3f6c3bfb72f36bbdd/recipes/wucuo";
+          sha256 = "084fcv4dkflpka9vmxmxqdl0cgmjjh9wc6axr65j1ffmqd933y4a";
+          name = "recipe";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/wucuo";
+          license = lib.licenses.free;
+        };
+      }) {};
     x86-lookup = callPackage ({ cl-lib ? null
                               , emacs
                               , fetchFromGitHub
@@ -51338,12 +52206,12 @@
       melpaBuild {
         pname = "xcscope";
         ename = "xcscope";
-        version = "1.3";
+        version = "1.4";
         src = fetchFromGitHub {
           owner = "dkogan";
           repo = "xcscope.el";
-          rev = "1e4c8e60eb841a3ecb56ff4115b6a8ae5c0bf779";
-          sha256 = "1cc3bmi4fxlgqha7sxswn9lcc126xnr2j8xz6wszjnqh5w274fpp";
+          rev = "57bff67460c587acf60f513de622b4c7ab312081";
+          sha256 = "1l1k85wlmjb2mgzx1la9f0p7j3q0mzj4hlrs98pf4bbfkdbqg7a7";
         };
         recipe = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/068c7846e70b91ce7e88330937fc64a60281802a/recipes/xcscope";
@@ -52384,4 +53252,4 @@
           license = lib.licenses.free;
         };
       }) {};
-  }
+  }
\ No newline at end of file
diff --git a/pkgs/applications/editors/emacs-modes/melpa-stable-packages.nix b/pkgs/applications/editors/emacs-modes/melpa-stable-packages.nix
index 61086b96230e..98927cbd9873 100644
--- a/pkgs/applications/editors/emacs-modes/melpa-stable-packages.nix
+++ b/pkgs/applications/editors/emacs-modes/melpa-stable-packages.nix
@@ -151,6 +151,12 @@ self:
             (attrs.nativeBuildInputs or []) ++ [ external.git ];
         });
 
+      magit-todos = super.magit-todos.overrideAttrs (attrs: {
+        # searches for Git at build time
+        nativeBuildInputs =
+          (attrs.nativeBuildInputs or []) ++ [ external.git ];
+      });
+
       # missing OCaml
       merlin = markBroken super.merlin;
 
diff --git a/pkgs/applications/editors/emacs-modes/org-generated.nix b/pkgs/applications/editors/emacs-modes/org-generated.nix
index 32b6b703729f..1cca56ce8f8f 100644
--- a/pkgs/applications/editors/emacs-modes/org-generated.nix
+++ b/pkgs/applications/editors/emacs-modes/org-generated.nix
@@ -4,10 +4,10 @@
       elpaBuild {
         pname = "org";
         ename = "org";
-        version = "20180723";
+        version = "20180910";
         src = fetchurl {
-          url = "http://orgmode.org/elpa/org-20180723.tar";
-          sha256 = "1mcgnba16lpyh55zjx4rcbmpygcmdnjjzvgv1rx0c3kz1h5fgzf8";
+          url = "http://orgmode.org/elpa/org-20180910.tar";
+          sha256 = "1j4n0a07bxjbdzx3dipxgi0h5r0yimwylp9cnzfm6m7nc7kas2sq";
         };
         packageRequires = [];
         meta = {
@@ -19,10 +19,10 @@
       elpaBuild {
         pname = "org-plus-contrib";
         ename = "org-plus-contrib";
-        version = "20180723";
+        version = "20180910";
         src = fetchurl {
-          url = "http://orgmode.org/elpa/org-plus-contrib-20180723.tar";
-          sha256 = "1l34bagkm8mcyv5diprpbd4yjijkdvx1l54qpvi8bmvxjnzsm7mk";
+          url = "http://orgmode.org/elpa/org-plus-contrib-20180910.tar";
+          sha256 = "17inl07kjdjamlqbyxbp42kx1nkbhbhz7lzqfvkhk6s7z16qvksq";
         };
         packageRequires = [];
         meta = {
diff --git a/pkgs/applications/editors/emacs/default.nix b/pkgs/applications/editors/emacs/default.nix
index 0a304fabe600..c1bfdf8157da 100644
--- a/pkgs/applications/editors/emacs/default.nix
+++ b/pkgs/applications/editors/emacs/default.nix
@@ -4,8 +4,9 @@
 , alsaLib, cairo, acl, gpm, AppKit, GSS, ImageIO, m17n_lib, libotf
 , systemd ? null
 , withX ? !stdenv.isDarwin
-, withGTK2 ? false, gtk2 ? null
-, withGTK3 ? true, gtk3 ? null, gsettings-desktop-schemas ? null
+, withNS ? stdenv.isDarwin
+, withGTK2 ? false, gtk2-x11 ? null
+, withGTK3 ? true, gtk3-x11 ? null, gsettings-desktop-schemas ? null
 , withXwidgets ? false, webkitgtk ? null, wrapGAppsHook ? null, glib-networking ? null
 , withCsrc ? true
 , srcRepo ? false, autoconf ? null, automake ? null, texinfo ? null
@@ -13,10 +14,12 @@
 
 assert (libXft != null) -> libpng != null;      # probably a bug
 assert stdenv.isDarwin -> libXaw != null;       # fails to link otherwise
-assert withGTK2 -> withX || stdenv.isDarwin;
-assert withGTK3 -> withX || stdenv.isDarwin;
-assert withGTK2 -> !withGTK3 && gtk2 != null;
-assert withGTK3 -> !withGTK2 && gtk3 != null;
+assert withNS -> !withX;
+assert withNS -> stdenv.isDarwin;
+assert (withGTK2 && !withNS) -> withX;
+assert (withGTK3 && !withNS) -> withX;
+assert withGTK2 -> !withGTK3 && gtk2-x11 != null;
+assert withGTK3 -> !withGTK2 && gtk3-x11 != null;
 assert withXwidgets -> withGTK3 && webkitgtk != null;
 
 let
@@ -56,19 +59,22 @@ stdenv.mkDerivation rec {
     ++ lib.optionals stdenv.isLinux [ dbus libselinux systemd ]
     ++ lib.optionals withX
       [ xlibsWrapper libXaw Xaw3d libXpm libpng libjpeg libungif libtiff librsvg libXft
-        imagemagick gconf m17n_lib libotf ]
-    ++ lib.optional (withX && withGTK2) gtk2
-    ++ lib.optionals (withX && withGTK3) [ gtk3 gsettings-desktop-schemas ]
+        imagemagick gconf ]
+    ++ lib.optionals (stdenv.isLinux && withX) [ m17n_lib libotf ]
+    ++ lib.optional (withX && withGTK2) gtk2-x11
+    ++ lib.optionals (withX && withGTK3) [ gtk3-x11 gsettings-desktop-schemas ]
     ++ lib.optional (stdenv.isDarwin && withX) cairo
     ++ lib.optionals (withX && withXwidgets) [ webkitgtk ];
 
-  propagatedBuildInputs = lib.optionals stdenv.isDarwin [ AppKit GSS ImageIO ];
+  propagatedBuildInputs = lib.optionals withNS [ AppKit GSS ImageIO ];
 
   hardeningDisable = [ "format" ];
 
   configureFlags = [ "--with-modules" ] ++
-   (if stdenv.isDarwin
-      then [ "--with-ns" "--disable-ns-self-contained" ]
+    (lib.optional stdenv.isDarwin
+      (lib.withFeature withNS "ns")) ++
+    (if withNS
+      then [ "--disable-ns-self-contained" ]
     else if withX
       then [ "--with-x-toolkit=${toolkit}" "--with-xft" ]
       else [ "--with-x=no" "--with-xpm=no" "--with-jpeg=no" "--with-png=no"
@@ -103,7 +109,7 @@ stdenv.mkDerivation rec {
       cp $srcdir/TAGS $dstdir
       echo '((nil . ((tags-file-name . "TAGS"))))' > $dstdir/.dir-locals.el
     done
-  '' + lib.optionalString stdenv.isDarwin ''
+  '' + lib.optionalString withNS ''
     mkdir -p $out/Applications
     mv nextstep/Emacs.app $out/Applications
   '';
diff --git a/pkgs/applications/editors/focuswriter/default.nix b/pkgs/applications/editors/focuswriter/default.nix
index 706f2f015b12..000797c9b705 100644
--- a/pkgs/applications/editors/focuswriter/default.nix
+++ b/pkgs/applications/editors/focuswriter/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "focuswriter-${version}";
-  version = "1.6.15";
+  version = "1.6.16";
 
   src = fetchurl {
     url = "https://gottcode.org/focuswriter/focuswriter-${version}-src.tar.bz2";
-    sha256 = "0afs9cm5q7zxag28m427ycwwxkbn47zw7v111x7963ydqyn9gr9q";
+    sha256 = "1warfv9d485a7ysmjazxw4zvi9l0ih1021s6c5adkc86m88k296m";
   };
 
   nativeBuildInputs = [ pkgconfig qmake qttools ];
diff --git a/pkgs/applications/editors/gnome-builder/default.nix b/pkgs/applications/editors/gnome-builder/default.nix
index db2d07db31e7..fcf279095051 100644
--- a/pkgs/applications/editors/gnome-builder/default.nix
+++ b/pkgs/applications/editors/gnome-builder/default.nix
@@ -1,4 +1,5 @@
 { stdenv
+, ctags
 , desktop-file-utils
 , docbook_xsl
 , docbook_xml_dtd_43
@@ -52,11 +53,13 @@ in stdenv.mkDerivation {
     meson
     ninja
     pkgconfig
+    python3
     python3.pkgs.wrapPython
     wrapGAppsHook
   ];
 
   buildInputs = [
+    ctags
     flatpak
     gnome3.devhelp
     gnome3.libgit2-glib
diff --git a/pkgs/applications/editors/kakoune/default.nix b/pkgs/applications/editors/kakoune/default.nix
index ad408081e1fd..e50625fa0e89 100644
--- a/pkgs/applications/editors/kakoune/default.nix
+++ b/pkgs/applications/editors/kakoune/default.nix
@@ -4,12 +4,12 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   name = "kakoune-unstable-${version}";
-  version = "2018-08-05";
+  version = "2018.09.04";
   src = fetchFromGitHub {
     repo = "kakoune";
     owner = "mawww";
-    rev = "ae75032936ed9ffa2bf14589fef115d3d684a7c6";
-    sha256 = "1qm6i8vzr4wjxxdvhr54pan0ysxq1sn880bz8p2w9y6qa91yd3m3";
+    rev = "v${version}";
+    sha256 = "08v55hh7whm6hx6a047gszh0h5g35k3r8r52aggv7r2ybzrrw6w1";
   };
   nativeBuildInputs = [ pkgconfig ];
   buildInputs = [ ncurses asciidoc docbook_xsl libxslt ];
diff --git a/pkgs/applications/editors/leo-editor/default.nix b/pkgs/applications/editors/leo-editor/default.nix
index 2084a047a086..a2274be463ed 100644
--- a/pkgs/applications/editors/leo-editor/default.nix
+++ b/pkgs/applications/editors/leo-editor/default.nix
@@ -1,29 +1,20 @@
-{ stdenv, python3, libsForQt56, fetchFromGitHub, makeWrapper, makeDesktopItem }:
+{ stdenv, python3, fetchFromGitHub, makeWrapper, makeDesktopItem }:
 
-let
-  packageOverrides = self: super: {
-    pyqt56 = libsForQt56.callPackage ../../../development/python-modules/pyqt/5.x.nix {
-      pythonPackages = self;
-    };
-  };
-
-  pythonPackages = (python3.override { inherit packageOverrides; }).pkgs;
-in
 stdenv.mkDerivation rec {
   name = "leo-editor-${version}";
-  version = "5.6";
+  version = "5.7.3";
 
   src = fetchFromGitHub {
     owner = "leo-editor";
     repo = "leo-editor";
     rev = version;
-    sha256 = "1k6q3gvaf05bi0mzkmmb1p6wrgxwri7ivn38p6f0m0wfd3f70x2j";
+    sha256 = "0ri6l6cxwva450l05af5vs1lsgrz6ciwd02njdgphs9pm1vwxbl9";
   };
 
   dontBuild = true;
 
   nativeBuildInputs = [ makeWrapper python3 ];
-  propagatedBuildInputs = with pythonPackages; [ pyqt56 docutils ];
+  propagatedBuildInputs = with python3.pkgs; [ pyqt5 docutils ];
 
   desktopItem = makeDesktopItem rec {
     name = "leo-editor";
diff --git a/pkgs/applications/editors/nano/default.nix b/pkgs/applications/editors/nano/default.nix
index 64b8e48b2881..9c50d8e8b78e 100644
--- a/pkgs/applications/editors/nano/default.nix
+++ b/pkgs/applications/editors/nano/default.nix
@@ -14,17 +14,17 @@ let
   nixSyntaxHighlight = fetchFromGitHub {
     owner = "seitz";
     repo = "nanonix";
-    rev = "7483fd8b79f1f3f2179dbbd46aa400df4320ba10";
-    sha256 = "10pv75kfrgnziz8sr83hdbb0c3klm2fmsdw3i5cpqqf5va1fzb8h";
+    rev = "bf8d898efaa10dce3f7972ff765b58c353b4b4ab";
+    sha256 = "0773s5iz8aw9npgyasb0r2ybp6gvy2s9sq51az8w7h52bzn5blnn";
   };
 
 in stdenv.mkDerivation rec {
   name = "nano-${version}";
-  version = "2.9.8";
+  version = "3.0";
 
   src = fetchurl {
     url = "mirror://gnu/nano/${name}.tar.xz";
-    sha256 = "122lm0z97wk3mgnbn8m4d769d4j9rxyc9z7s89xd4gsdp8qsrpn2";
+    sha256 = "1868hg9s584fwjrh0fzdrixmxc2qhw520z4q5iv68kjiajivr9g0";
   };
 
   nativeBuildInputs = [ texinfo ] ++ optional enableNls gettext;
diff --git a/pkgs/applications/editors/nano/nanorc/default.nix b/pkgs/applications/editors/nano/nanorc/default.nix
new file mode 100644
index 000000000000..fb30036e146f
--- /dev/null
+++ b/pkgs/applications/editors/nano/nanorc/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchFromGitHub }:
+
+stdenv.mkDerivation rec {
+  name = "nanorc-${version}";
+  version = "2018-09-05";
+
+  src = fetchFromGitHub {
+    owner = "scopatz";
+    repo = "nanorc";
+    rev = "1e589cb729d24fba470228d429e6dde07973d597";
+    sha256 = "136yxr38lzrfv8bar0c6c56rh54q9s94zpwa19f425crh44drppl";
+  };
+
+  dontBuild = true;
+
+  installPhase = ''
+    mkdir -p $out/share
+
+    install *.nanorc $out/share/
+  '';
+
+  meta = {
+    description = "Improved Nano Syntax Highlighting Files";
+    homepage = https://github.com/scopatz/nanorc;
+    license = stdenv.lib.licenses.gpl3;
+    maintainers = with stdenv.lib.maintainers; [ nequissimus ];
+    platforms = stdenv.lib.platforms.all;
+  };
+}
diff --git a/pkgs/applications/editors/neovim/qt.nix b/pkgs/applications/editors/neovim/qt.nix
index baeb38797352..cfdcd7fe939f 100644
--- a/pkgs/applications/editors/neovim/qt.nix
+++ b/pkgs/applications/editors/neovim/qt.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   name = "neovim-qt-${version}";
-  version = "0.2.9";
+  version = "0.2.10";
 
   src = fetchFromGitHub {
     owner  = "equalsraf";
     repo   = "neovim-qt";
     rev    = "v${version}";
-    sha256 = "014zqfbbv7q85z64h1iw88l37vhrvhjv7xxd0a76j7d1m2769kqs";
+    sha256 = "0hq3w9d6qbzf0j7zm3ls0wpvnab64kypb4i0bhmsnk605mvx63r4";
   };
 
   cmakeFlags = [
diff --git a/pkgs/applications/editors/okteta/default.nix b/pkgs/applications/editors/okteta/default.nix
index efe728f68494..a2337483bf1f 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.2";
+  version = "0.25.3";
 
   src = fetchurl {
     url = "mirror://kde/stable/okteta/${version}/src/${name}.tar.xz";
-    sha256 = "00mw8gdqvn6vn6ir6kqnp7xi3lpn6iyp4f5aknxwq6mdcxgjmh1p";
+    sha256 = "0mm6pmk7k9c581b12a3wl0ayhadvyymfzmscy9x32b391qy9inai";
   };
 
   nativeBuildInputs = [ qtscript extra-cmake-modules kdoctools ];
diff --git a/pkgs/applications/editors/quilter/default.nix b/pkgs/applications/editors/quilter/default.nix
new file mode 100644
index 000000000000..4d4cb0239bf3
--- /dev/null
+++ b/pkgs/applications/editors/quilter/default.nix
@@ -0,0 +1,73 @@
+{ stdenv, fetchFromGitHub, fetchpatch, vala, pkgconfig, meson, ninja, python3
+, granite, gtk3, desktop-file-utils, gnome3, gtksourceview, webkitgtk, gtkspell3
+, discount, gobjectIntrospection, wrapGAppsHook }:
+
+stdenv.mkDerivation rec {
+  pname = "quilter";
+  version = "1.6.3";
+
+  name = "${pname}-${version}";
+
+  src = fetchFromGitHub {
+    owner = "lainsce";
+    repo = pname;
+    rev = version;
+    sha256 = "1wa0i6dgg6fgb7q9z33v9qmn1a1dn3ik58v1f3a49dvd5xyf8q6q";
+  };
+
+  nativeBuildInputs = [
+    desktop-file-utils
+    gobjectIntrospection
+    meson
+    ninja
+    pkgconfig
+    python3
+    vala
+    wrapGAppsHook
+  ];
+
+  buildInputs = [
+    discount
+    granite
+    gtk3
+    gtksourceview
+    gtkspell3
+    webkitgtk
+    gnome3.libgee
+  ];
+
+  patches = [
+    # Fix build with vala 0.42 - Drop these in next release
+    (fetchpatch {
+      url = "https://github.com/lainsce/quilter/commit/a58838213cd7f2d33048c7b34b96dc8875612624.patch";
+      sha256 = "1a4w1zql4zfk8scgrrssrm9n3sh5fsc1af5zvrqk8skbv7f2c80n";
+    })
+    (fetchpatch {
+      url = "https://github.com/lainsce/quilter/commit/d1800ce830343a1715bc83da3339816554896be5.patch";
+      sha256 = "0xl5iz8bgx5661vbbq8qa1wkfvw9d3da67x564ckjfi05zq1vddz";
+    })
+    # Correct libMarkdown dependency discovery: See https://github.com/lainsce/quilter/pull/170
+    (fetchpatch {
+      url = "https://github.com/lainsce/quilter/commit/8b1f3a60bd14cb86c1c62f9917c5f0c12bc4e459.patch";
+      sha256 = "1kjc6ygf9yjvqfa4xhzxiava3338swp9wbjhpfaa3pyz3ayh188n";
+    })
+    # post_install script cleanups: See https://github.com/lainsce/quilter/pull/171
+    (fetchpatch {
+      url = "https://github.com/lainsce/quilter/commit/55bf3b10cd94fcc40b0867bbdb1931a09f577922.patch";
+      sha256 = "1330amichaif2qfrh4qkxwqbcpr87ipik7vzjbjdm2bv3jz9353r";
+    })
+  ];
+
+  postPatch = ''
+    chmod +x meson/post_install.py
+    patchShebangs meson/post_install.py
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Focus on your writing - designed for elementary OS";
+    homepage    = https://github.com/lainsce/quilter;
+    license     = licenses.gpl2Plus;
+    maintainers = with maintainers; [ worldofpeace ];
+    platforms   = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/editors/rednotebook/default.nix b/pkgs/applications/editors/rednotebook/default.nix
index 9456ea3150a4..8b37f0b74d5b 100644
--- a/pkgs/applications/editors/rednotebook/default.nix
+++ b/pkgs/applications/editors/rednotebook/default.nix
@@ -5,13 +5,13 @@
 
 buildPythonApplication rec {
   pname = "rednotebook";
-  version = "2.3";
+  version = "2.6.1";
 
   src = fetchFromGitHub {
     owner = "jendrikseipp";
     repo = "rednotebook";
     rev = "v${version}";
-    sha256 = "0zkfid104hcsf20r6829v11wxdghqkd3j1zbgyvd1s7q4nxjn5lj";
+    sha256 = "1x6acx0hagsawx84cv55qz17p8qjpq1v1zaf8rmm6ifsslsxw91h";
   };
 
   # We have not packaged tests.
diff --git a/pkgs/applications/editors/thonny/default.nix b/pkgs/applications/editors/thonny/default.nix
new file mode 100644
index 000000000000..a4ea354ebf69
--- /dev/null
+++ b/pkgs/applications/editors/thonny/default.nix
@@ -0,0 +1,43 @@
+{ stdenv, fetchFromBitbucket, python3 }:
+
+with python3.pkgs;
+
+buildPythonApplication rec {
+  pname = "thonny";
+  version = "3.0.0b3";
+
+  src = fetchFromBitbucket {
+    owner = "plas";
+    repo = pname;
+    rev = "a511d4539c532b6dddf6d7f1586d30e1ac35bd86";
+    sha256 = "1s3pp97r6p3j81idglnml4faxryk7saszxmv3gys1agdfj75qczr";
+  };
+
+  propagatedBuildInputs = with python3.pkgs; [ jedi pyserial tkinter docutils pylint ];
+
+  preInstall = ''
+    export HOME=$(mktemp -d)
+  '';
+
+  preFixup = ''
+    wrapProgram "$out/bin/thonny" \
+       --prefix PYTHONPATH : $PYTHONPATH:$(toPythonPath ${python3.pkgs.jedi})
+  '';
+
+  # Tests need a DISPLAY
+  doCheck = false;
+
+  meta = with stdenv.lib; {
+    description = "Python IDE for beginners";
+    longDescription = ''
+      Thonny is a Python IDE for beginners. It supports different ways
+      of stepping through the code, step-by-step expression
+      evaluation, detailed visualization of the call stack and a mode
+      for explaining the concepts of references and heap.
+    '';
+    homepage = https://www.thonny.org/;
+    license = licenses.mit;
+    maintainers = with maintainers; [ leenaars ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/editors/vim/common.nix b/pkgs/applications/editors/vim/common.nix
index 2ce6563be0bd..87a525b33021 100644
--- a/pkgs/applications/editors/vim/common.nix
+++ b/pkgs/applications/editors/vim/common.nix
@@ -1,12 +1,12 @@
 { lib, fetchFromGitHub }:
 rec {
-  version = "8.1.0146";
+  version = "8.1.0348";
 
   src = fetchFromGitHub {
     owner = "vim";
     repo = "vim";
     rev = "v${version}";
-    sha256 = "1v33h08j15zii0ipw5py18ghsaxlbar0nyx365z1acjhk4vhn9nb";
+    sha256 = "0f18kpywnph708mvj1fpi06qb53nbhc26ngjh2kvfxwawn63k8ab";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/applications/graphics/PythonMagick/default.nix b/pkgs/applications/graphics/PythonMagick/default.nix
index f0b4a991f74a..938df76e2572 100644
--- a/pkgs/applications/graphics/PythonMagick/default.nix
+++ b/pkgs/applications/graphics/PythonMagick/default.nix
@@ -1,6 +1,6 @@
 # This expression provides Python bindings to ImageMagick. Python libraries are supposed to be called via `python-packages.nix`.
 
-{stdenv, fetchurl, python, boost, pkgconfig, imagemagick}:
+{ stdenv, fetchurl, python, pkgconfig, imagemagick, autoreconfHook }:
 
 stdenv.mkDerivation rec {
   name = "pythonmagick-${version}";
@@ -11,10 +11,18 @@ stdenv.mkDerivation rec {
     sha256 = "137278mfb5079lns2mmw73x8dhpzgwha53dyl00mmhj2z25varpn";
   };
 
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [python boost imagemagick];
+  postPatch = ''
+    rm configure
+  '';
 
-  meta = {
+  configureFlags = [ "--with-boost=${python.pkgs.boost}" ];
+
+  nativeBuildInputs = [ pkgconfig autoreconfHook ];
+  buildInputs = [ python python.pkgs.boost imagemagick ];
+
+  meta = with stdenv.lib; {
     homepage = http://www.imagemagick.org/script/api.php;
+    license = licenses.imagemagick;
+    description = "PythonMagick provides object oriented bindings for the ImageMagick Library.";
   };
 }
diff --git a/pkgs/applications/graphics/antimony/default.nix b/pkgs/applications/graphics/antimony/default.nix
index 334a5a33dadf..aa6305ce8311 100644
--- a/pkgs/applications/graphics/antimony/default.nix
+++ b/pkgs/applications/graphics/antimony/default.nix
@@ -1,29 +1,34 @@
-{ stdenv, fetchFromGitHub, libpng, python3, boost, libGLU_combined, qtbase, ncurses, cmake, flex, lemon }:
+{ stdenv, fetchFromGitHub, libpng, python3
+, libGLU_combined, qtbase, ncurses
+, cmake, flex, lemon
+}:
 
 let
-  gitRev    = "020910c25614a3752383511ede5a1f5551a8bd39";
-  gitBranch = "master";
+  gitRev    = "60a58688e552f12501980c4bdab034ab0f2ba059";
+  gitBranch = "develop";
   gitTag    = "0.9.3";
 in
   stdenv.mkDerivation rec {
     name    = "antimony-${version}";
-    version = gitTag;
+    version = "2018-07-17";
 
     src = fetchFromGitHub {
-      owner = "mkeeter";
-      repo = "antimony";
-      rev = gitTag;
-      sha256 = "1vm5h5py8l3b8h4pbmm8s3wlxvlw492xfwnlwx0nvl0cjs8ba6r4";
+      owner  = "mkeeter";
+      repo   = "antimony";
+      rev    = gitRev;
+      sha256 = "0pgf6kr23xw012xsil56j5gq78mlirmrlqdm09m5wlgcf4vr6xnl";
     };
 
     patches = [ ./paths-fix.patch ];
 
     postPatch = ''
-       sed -i "s,/usr/local,$out,g" app/CMakeLists.txt app/app/app.cpp app/app/main.cpp
+       sed -i "s,/usr/local,$out,g" \
+       app/CMakeLists.txt app/app/app.cpp app/app/main.cpp
+       sed -i "s,python-py35,python36," CMakeLists.txt
     '';
 
     buildInputs = [
-      libpng python3 (boost.override { python = python3; })
+      libpng python3 python3.pkgs.boost
       libGLU_combined qtbase ncurses
     ];
 
@@ -41,6 +46,7 @@ in
       description = "A computer-aided design (CAD) tool from a parallel universe";
       homepage    = "https://github.com/mkeeter/antimony";
       license     = licenses.mit;
+      maintainers = with maintainers; [ rnhmjoj ];
       platforms   = platforms.linux;
     };
   }
diff --git a/pkgs/applications/graphics/gcolor3/default.nix b/pkgs/applications/graphics/gcolor3/default.nix
index cd43cd2fe723..ed350b2b0eee 100644
--- a/pkgs/applications/graphics/gcolor3/default.nix
+++ b/pkgs/applications/graphics/gcolor3/default.nix
@@ -1,29 +1,18 @@
-{ stdenv, fetchFromGitHub, fetchpatch, gnome3, meson, ninja, gettext, pkgconfig, libxml2, gtk3, hicolor-icon-theme, wrapGAppsHook }:
+{ stdenv, fetchFromGitLab, gnome3, meson, ninja, gettext, pkgconfig, libxml2, gtk3, hicolor-icon-theme, wrapGAppsHook }:
 
 let
-  version = "2.3";
+  version = "2.3.1";
 in stdenv.mkDerivation {
   name = "gcolor3-${version}";
 
-  src = fetchFromGitHub {
-    owner = "hjdskes";
+  src = fetchFromGitLab {
+    domain = "gitlab.gnome.org";
+    owner = "World";
     repo = "gcolor3";
     rev = "v${version}";
-    sha256 = "186j72kwsqdcakvdik9jl18gz3csdj53j3ylwagr9gfwmy0nmyjb";
+    sha256 = "10cfzlkflwkb7f51rnrxmgxpfryh1qzvqaydj6lffjq9zvnhigg7";
   };
 
-  patches = [
-    # Fix darwin build
-    (fetchpatch {
-      url = https://github.com/Hjdskes/gcolor3/commit/9130ffeff091fbafff6a0c8f06b09f54657d5dfd.patch;
-      sha256 = "1kn5hx536wivafb4awg7lsa8h32njy0lynmn7ci9y78dlp54057r";
-    })
-    (fetchpatch {
-      url = https://github.com/Hjdskes/gcolor3/commit/8d89081a8e13749f5a9051821114bc5fe814eaf3.patch;
-      sha256 = "1ldyr84dl2g6anqkp2mpxsrcr41fcqwi6ck14rfhai7rgrm8yar3";
-    })
-  ];
-
   nativeBuildInputs = [ meson ninja gettext pkgconfig libxml2 wrapGAppsHook ];
 
   buildInputs = [ gtk3 hicolor-icon-theme ];
@@ -35,8 +24,8 @@ in stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "A simple color chooser written in GTK3";
-    homepage = https://hjdskes.github.io/projects/gcolor3/;
-    license = licenses.gpl2;
+    homepage = https://www.hjdskes.nl/projects/gcolor3/;
+    license = licenses.gpl2Plus;
     maintainers = with maintainers; [ jtojnar ];
     platforms = platforms.unix;
   };
diff --git a/pkgs/applications/graphics/imgcat/default.nix b/pkgs/applications/graphics/imgcat/default.nix
index ad2cb4198d2d..a98029dd5807 100644
--- a/pkgs/applications/graphics/imgcat/default.nix
+++ b/pkgs/applications/graphics/imgcat/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation rec {
   name = "imgcat-${version}";
   version = "2.3.0";
 
-  buildTools = [ autoconf automake libtool ncurses ];
+  buildInputs = [ autoconf automake libtool ncurses ];
 
   preConfigure = ''
     ${autoconf}/bin/autoconf
diff --git a/pkgs/applications/graphics/imv/default.nix b/pkgs/applications/graphics/imv/default.nix
index e9a0dccd30a9..cdbf5f446875 100644
--- a/pkgs/applications/graphics/imv/default.nix
+++ b/pkgs/applications/graphics/imv/default.nix
@@ -1,25 +1,32 @@
-{ stdenv, fetchgit, SDL2, SDL2_ttf, freeimage, fontconfig }:
+{ stdenv, fetchFromGitHub, SDL2, SDL2_ttf
+, freeimage, fontconfig, pkgconfig
+, asciidoc, docbook_xsl, libxslt, cmocka
+}:
 
 stdenv.mkDerivation rec {
   name = "imv-${version}";
-  version = "2.1.3";
+  version = "3.0.0";
 
-  src = fetchgit {
-    url = "https://github.com/eXeC64/imv.git";
-    rev = "e59d0e9e120f1dbde9ab068748a190e93978e5b7";
-    sha256 = "0j48dk1bcbh5541522qkn487637wcx104zckrnxa5g3nirfqa7r7";
+  src = fetchFromGitHub {
+    owner  = "eXeC64";
+    repo   = "imv";
+    rev    = "v${version}";
+    sha256 = "0j5aykdkm1g518ism5y5flhwxvjvl92ksq989fhl2wpnv0la82jp";
   };
 
-  buildInputs = [ SDL2 SDL2_ttf freeimage fontconfig ];
+  buildInputs = [
+    SDL2 SDL2_ttf freeimage fontconfig pkgconfig
+    asciidoc docbook_xsl libxslt cmocka
+  ];
 
-  configurePhase = "substituteInPlace Makefile --replace /usr $out";
+  installFlags = [ "PREFIX=$(out)" "CONFIGPREFIX=$(out)/etc" ];
 
   meta = with stdenv.lib; {
     description = "A command line image viewer for tiling window managers";
     homepage    = https://github.com/eXeC64/imv; 
     license     = licenses.gpl2;
     maintainers = with maintainers; [ rnhmjoj ];
-    platforms   = platforms.unix;
+    platforms   = [ "i686-linux" "x86_64-linux" ];
   };
 }
 
diff --git a/pkgs/applications/graphics/kipi-plugins/default.nix b/pkgs/applications/graphics/kipi-plugins/default.nix
index 48a94a5253d0..f7faba7c41a5 100644
--- a/pkgs/applications/graphics/kipi-plugins/default.nix
+++ b/pkgs/applications/graphics/kipi-plugins/default.nix
@@ -7,11 +7,11 @@
 
 stdenv.mkDerivation rec {
   name    = "kipi-plugins-${version}";
-  version = "5.2.0";
+  version = "5.9.0";
 
   src = fetchurl {
     url = "http://download.kde.org/stable/digikam/digikam-${version}.tar.xz";
-    sha256 = "0q4j7iv20cxgfsr14qwzx05wbp2zkgc7cg2pi7ibcnwba70ky96g";
+    sha256 = "06qdalf2mwx2f43p3bljy3vn5bk8n3x539kha6ky2vzxvkp343b6";
   };
 
   prePatch = ''
diff --git a/pkgs/applications/graphics/krita/default.nix b/pkgs/applications/graphics/krita/default.nix
index d4ac9720e15f..0abe90e0ba73 100644
--- a/pkgs/applications/graphics/krita/default.nix
+++ b/pkgs/applications/graphics/krita/default.nix
@@ -3,7 +3,7 @@
 , kguiaddons, ki18n, kitemmodels, kitemviews, kwindowsystem
 , kio, kcrash
 , boost, libraw, fftw, eigen, exiv2, libheif, lcms2, gsl, openexr, giflib
-, openjpeg, opencolorio, vc, poppler_qt5, curl, ilmbase
+, openjpeg, opencolorio, vc, poppler, curl, ilmbase
 , qtmultimedia, qtx11extras
 , python3
 }:
@@ -23,7 +23,7 @@ mkDerivation rec {
     karchive kconfig kwidgetsaddons kcompletion kcoreaddons kguiaddons
     ki18n kitemmodels kitemviews kwindowsystem kio kcrash
     boost libraw fftw eigen exiv2 lcms2 gsl openexr libheif giflib
-    openjpeg opencolorio poppler_qt5 curl ilmbase
+    openjpeg opencolorio poppler curl ilmbase
     qtmultimedia qtx11extras
     python3
   ] ++ lib.optional (stdenv.hostPlatform.isi686 || stdenv.hostPlatform.isx86_64) vc;
diff --git a/pkgs/applications/graphics/photoflow/default.nix b/pkgs/applications/graphics/photoflow/default.nix
index ffef558e84dd..6f3bf69889c5 100644
--- a/pkgs/applications/graphics/photoflow/default.nix
+++ b/pkgs/applications/graphics/photoflow/default.nix
@@ -1,13 +1,13 @@
 { stdenv, fetchFromGitHub, gettext, glib, libxml2, pkgconfig, swig, automake, gobjectIntrospection, cmake, ninja, libtiff, libjpeg, fftw, exiv2, lensfun, gtkmm2, libraw, lcms2, libexif, vips, expat, pcre, pugixml }:
 
 stdenv.mkDerivation {
-  name = "photoflow-unstable-2018-03-06";
+  name = "photoflow-unstable-2018-08-28";
 
   src = fetchFromGitHub {
     owner = "aferrero2707";
     repo = "PhotoFlow";
-    rev = "f9bbea183fa02412d1d17075955d2284eeaf8174";
-    sha256 = "1fsk7kdmlkd64wcswbxrl87aqwmzqak6p3s38ggxzx2h51fa7lmf";
+    rev = "df03f2538ddd232e693c307db4ab63eb5bdfea38";
+    sha256 = "08ybhv08h24y4li8wb4m89xgrz1szlwpksf6vjharp8cznn4y4x9";
   };
 
   nativeBuildInputs = [
@@ -50,6 +50,7 @@ stdenv.mkDerivation {
     homepage = https://aferrero2707.github.io/PhotoFlow/;
     license = licenses.gpl3Plus;
     maintainers = [ maintainers.MtP ];
-    platforms = platforms.all;
+    platforms = platforms.linux;
+    broken = stdenv.isAarch64;
   };
 }
diff --git a/pkgs/applications/graphics/qcomicbook/default.nix b/pkgs/applications/graphics/qcomicbook/default.nix
index d67c8ef9b025..c37e21ec898a 100644
--- a/pkgs/applications/graphics/qcomicbook/default.nix
+++ b/pkgs/applications/graphics/qcomicbook/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, pkgconfig, cmake, qtbase, qttools, qtx11extras, poppler_qt5 }:
+{ stdenv, fetchFromGitHub, pkgconfig, cmake, qtbase, qttools, qtx11extras, poppler }:
 
 stdenv.mkDerivation rec {
   name = "qcomicbook-${version}";
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   ];
 
   buildInputs = [
-    qtbase qttools qtx11extras poppler_qt5
+    qtbase qttools qtx11extras poppler
   ];
 
   postInstall = ''
diff --git a/pkgs/applications/kde/fetch.sh b/pkgs/applications/kde/fetch.sh
index c7cc617f163c..d4830a9e2390 100644
--- a/pkgs/applications/kde/fetch.sh
+++ b/pkgs/applications/kde/fetch.sh
@@ -1 +1 @@
-WGET_ARGS=( https://download.kde.org/stable/applications/18.08.0/ -A '*.tar.xz' )
+WGET_ARGS=( https://download.kde.org/stable/applications/18.08.1/ -A '*.tar.xz' )
diff --git a/pkgs/applications/kde/srcs.nix b/pkgs/applications/kde/srcs.nix
index decf0f4a314f..bc7b7407d6ab 100644
--- a/pkgs/applications/kde/srcs.nix
+++ b/pkgs/applications/kde/srcs.nix
@@ -3,1715 +3,1715 @@
 
 {
   akonadi = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/akonadi-18.08.0.tar.xz";
-      sha256 = "06a1n84w4bfljyariyajzpn1sajkn4dwpsrr47pz38vf1m6dp7mz";
-      name = "akonadi-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/akonadi-18.08.1.tar.xz";
+      sha256 = "0fipz3xnbgqk7f9pxfm3p38fniddb76scpb80fvb2v6gn0snlabi";
+      name = "akonadi-18.08.1.tar.xz";
     };
   };
   akonadi-calendar = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/akonadi-calendar-18.08.0.tar.xz";
-      sha256 = "1qlqvsv4gs50v9dd3nbw8wyq0vgvxvslhnk1hnqpyvh0skcwslh5";
-      name = "akonadi-calendar-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/akonadi-calendar-18.08.1.tar.xz";
+      sha256 = "1knwr8s1qn13fan1pq31pr3dk219cmv96mwvd36ir0bd2l7vkmcs";
+      name = "akonadi-calendar-18.08.1.tar.xz";
     };
   };
   akonadi-calendar-tools = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/akonadi-calendar-tools-18.08.0.tar.xz";
-      sha256 = "1d5kr7nxfy7y9ybi4qnfbfci5kc44ya916j9wgb18r6rfdhdwsxr";
-      name = "akonadi-calendar-tools-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/akonadi-calendar-tools-18.08.1.tar.xz";
+      sha256 = "1l4idxwi9h0bff1cwwsm7s4m9bcw4vp4ip5r87vc7687hhphc27l";
+      name = "akonadi-calendar-tools-18.08.1.tar.xz";
     };
   };
   akonadiconsole = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/akonadiconsole-18.08.0.tar.xz";
-      sha256 = "0qrwgjdmqa5jj8vcbs6n733v462sxnf4jcmh2khjddf2h5na6q86";
-      name = "akonadiconsole-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/akonadiconsole-18.08.1.tar.xz";
+      sha256 = "031garrv2q3rv6qjjkzm3rmmd25f6j17sz2yv4hn3zgzydkjjskn";
+      name = "akonadiconsole-18.08.1.tar.xz";
     };
   };
   akonadi-contacts = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/akonadi-contacts-18.08.0.tar.xz";
-      sha256 = "0jqs0llpxq34j4glgzsfifk5yd24x6smky550s66bjzkyg3j2s2m";
-      name = "akonadi-contacts-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/akonadi-contacts-18.08.1.tar.xz";
+      sha256 = "1p7192f7n6g7ihj05f7zzqpzl33sbvzsg479lkl120rmvzbjhfxn";
+      name = "akonadi-contacts-18.08.1.tar.xz";
     };
   };
   akonadi-import-wizard = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/akonadi-import-wizard-18.08.0.tar.xz";
-      sha256 = "00my9ja8clz758s3x2jjlsxlpc8zfs8vlq4vh9i2vmsacqwrfy24";
-      name = "akonadi-import-wizard-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/akonadi-import-wizard-18.08.1.tar.xz";
+      sha256 = "0x80nfa04ffwdvv861ahpgrbnx48ad28ii5glcg5pp5a840jx72s";
+      name = "akonadi-import-wizard-18.08.1.tar.xz";
     };
   };
   akonadi-mime = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/akonadi-mime-18.08.0.tar.xz";
-      sha256 = "0jj9l1zjh72crj8gfifpn73c5xiyycjgv0cm1qalf370cd1sdx80";
-      name = "akonadi-mime-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/akonadi-mime-18.08.1.tar.xz";
+      sha256 = "04xf5kbf30y5g4amx1x3nvkfypid232l4jamx3lnhia5x4kn2q5g";
+      name = "akonadi-mime-18.08.1.tar.xz";
     };
   };
   akonadi-notes = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/akonadi-notes-18.08.0.tar.xz";
-      sha256 = "0x2v8ylnli29ld6y9vqj18a4bph4zm34zymdmrp3swll1j6xib7q";
-      name = "akonadi-notes-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/akonadi-notes-18.08.1.tar.xz";
+      sha256 = "1ib7a7y37mq0dj0arxg2f41a30d8i637359ixhcf9sgpcs3xysns";
+      name = "akonadi-notes-18.08.1.tar.xz";
     };
   };
   akonadi-search = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/akonadi-search-18.08.0.tar.xz";
-      sha256 = "0fsn7mm1h9m9h3zm2z2fdghbw7m6wdbgfhg7b4iish2br375qh1s";
-      name = "akonadi-search-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/akonadi-search-18.08.1.tar.xz";
+      sha256 = "0r7bwfjq9z6ky3riap5gnffzb9k7hwslfprk0jad63dl0djj4qzw";
+      name = "akonadi-search-18.08.1.tar.xz";
     };
   };
   akregator = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/akregator-18.08.0.tar.xz";
-      sha256 = "1s044m9l8z6safqcarjplmlksappjkx7iry3k8s2p6ld4w377w3c";
-      name = "akregator-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/akregator-18.08.1.tar.xz";
+      sha256 = "1js6fbz7hhj0pyjgaz5zhi5bbyw2l9v2gkpj8f8jw4ria2hiz4w8";
+      name = "akregator-18.08.1.tar.xz";
     };
   };
   analitza = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/analitza-18.08.0.tar.xz";
-      sha256 = "1sqr94mbblqry9a1nkmg6py2w0p1wlnbim99kadmp56ypf483rw7";
-      name = "analitza-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/analitza-18.08.1.tar.xz";
+      sha256 = "11zzrgjl2fjbpjagzpzff0aq83ss5037pj4g83wi3qqvlkhphzf2";
+      name = "analitza-18.08.1.tar.xz";
     };
   };
   ark = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/ark-18.08.0.tar.xz";
-      sha256 = "0dp7lrc0nqwwshcsi1408lqyycqhxgx18bmnf1sq7ysh6d1w6i75";
-      name = "ark-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/ark-18.08.1.tar.xz";
+      sha256 = "1k95qnjn4xgi0dnypfiwa86n0zwckkh5qnc54mv9g1xvvzah04cq";
+      name = "ark-18.08.1.tar.xz";
     };
   };
   artikulate = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/artikulate-18.08.0.tar.xz";
-      sha256 = "12bkfxpaz352823c639q3bal9j6fcaamypv2ql08rn44h9zdjvk8";
-      name = "artikulate-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/artikulate-18.08.1.tar.xz";
+      sha256 = "1cvd6sm45j2gg0ga7j3vyz89lrl1ghlwq6516rsxrvsy3vg7vdmy";
+      name = "artikulate-18.08.1.tar.xz";
     };
   };
   audiocd-kio = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/audiocd-kio-18.08.0.tar.xz";
-      sha256 = "0mh1cfz0dn28i9hqyjmz2cm50qkxzj0qkrvar59p03i2r8vqybf8";
-      name = "audiocd-kio-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/audiocd-kio-18.08.1.tar.xz";
+      sha256 = "11wz5glih8jf9l85ncfhg91nyvh7s6q25gfy0vnqk8k0a98h0ghi";
+      name = "audiocd-kio-18.08.1.tar.xz";
     };
   };
   baloo-widgets = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/baloo-widgets-18.08.0.tar.xz";
-      sha256 = "026lm8m7bp8q1akwgfvzsyyam7jknndif3vmij4x5ra7yy5xa0s9";
-      name = "baloo-widgets-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/baloo-widgets-18.08.1.tar.xz";
+      sha256 = "1ab86j0akmz8vqkg3xhx1qlp27ndsg183irhfap313maw88bzwxp";
+      name = "baloo-widgets-18.08.1.tar.xz";
     };
   };
   blinken = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/blinken-18.08.0.tar.xz";
-      sha256 = "0ivpv27vgzchm0r8zlb02w6l0a8xsi7q173660bjv1ynwalgn3bm";
-      name = "blinken-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/blinken-18.08.1.tar.xz";
+      sha256 = "0xzk8ddgr55sil00dl6b00m0x5az81yhd1cklr6mahjgg7w822br";
+      name = "blinken-18.08.1.tar.xz";
     };
   };
   bomber = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/bomber-18.08.0.tar.xz";
-      sha256 = "0z83hkvs7h0pg91sczmvkkn7yc8xfch5hl7l25b7kac4c9qznzix";
-      name = "bomber-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/bomber-18.08.1.tar.xz";
+      sha256 = "0x4z8fa2klhabr99al3iyyf9aq3pm8rk1gi6cjghjgwrrcav7an7";
+      name = "bomber-18.08.1.tar.xz";
     };
   };
   bovo = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/bovo-18.08.0.tar.xz";
-      sha256 = "0bbkm0c801rcvk8z0idbasn1m7cdd2mpbpb1ap9ghgv2vjbln7va";
-      name = "bovo-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/bovo-18.08.1.tar.xz";
+      sha256 = "1jwq9wjkdhy8bvkxg4lvb1m4qqw0zr84ws096nk6pccqk7xlkpr2";
+      name = "bovo-18.08.1.tar.xz";
     };
   };
   calendarsupport = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/calendarsupport-18.08.0.tar.xz";
-      sha256 = "0ps4963c2wbmlwp7aks16jw2pz74fqlxarhsnjj3r339575inzw2";
-      name = "calendarsupport-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/calendarsupport-18.08.1.tar.xz";
+      sha256 = "0hh8jr81hcqyhm9fp0s27g52077d9li8x8rrg3bd18lw3flib0fq";
+      name = "calendarsupport-18.08.1.tar.xz";
     };
   };
   cantor = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/cantor-18.08.0.tar.xz";
-      sha256 = "08sqr1nxn9a24z4jicmjn9zn64xv3yyy054rzblr2h2hi3n6fqdy";
-      name = "cantor-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/cantor-18.08.1.tar.xz";
+      sha256 = "05cvyrf17lvh85qrcg1yf8x2c9d3l9wgbvnlhw4idx06crhvwvbb";
+      name = "cantor-18.08.1.tar.xz";
     };
   };
   cervisia = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/cervisia-18.08.0.tar.xz";
-      sha256 = "1avc18vv2lb27w5ybiajsr65c65zpvbv43ihz4gcjv7awqf754w7";
-      name = "cervisia-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/cervisia-18.08.1.tar.xz";
+      sha256 = "1hir8ssr2yjjkly8kh8qdxqlgaa29q94kpsrk1crcdl67vrc8pph";
+      name = "cervisia-18.08.1.tar.xz";
     };
   };
   dolphin = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/dolphin-18.08.0.tar.xz";
-      sha256 = "1r3g3qssawhav3dx9a9qdd7dqcjj1ynm6ravj5wx39h4qdflrysy";
-      name = "dolphin-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/dolphin-18.08.1.tar.xz";
+      sha256 = "1f8w1315kg5mnz0jfdbynw5kapg529kwr3qc98nh83q4vfrjr7yj";
+      name = "dolphin-18.08.1.tar.xz";
     };
   };
   dolphin-plugins = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/dolphin-plugins-18.08.0.tar.xz";
-      sha256 = "1j96bkc3xah4ca3a9asplpf152dp234r2bzs5wg25b3aw7zp5siv";
-      name = "dolphin-plugins-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/dolphin-plugins-18.08.1.tar.xz";
+      sha256 = "0wa09n3x255d3rn5sndvyybawj2aq0sm0fdvqz7sbnm1c67g6akd";
+      name = "dolphin-plugins-18.08.1.tar.xz";
     };
   };
   dragon = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/dragon-18.08.0.tar.xz";
-      sha256 = "020vnnzd7crvrv8dbcf41h04hpr2ayrfk6ayxhxpazrzic1sxxx6";
-      name = "dragon-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/dragon-18.08.1.tar.xz";
+      sha256 = "1r9zdia4r1g77c456zi1yv3vjrccww6lqrhplwg90bw8091isc7s";
+      name = "dragon-18.08.1.tar.xz";
     };
   };
   eventviews = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/eventviews-18.08.0.tar.xz";
-      sha256 = "1ca499dzqsy2n6c0s0vrwvjykc4vd5s4m2bkn0vdg2dbyyx9fncj";
-      name = "eventviews-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/eventviews-18.08.1.tar.xz";
+      sha256 = "0h5aqjncsmhgjqsj65j12bx4rb5rf4604fs6h04lda8jrk2qla3y";
+      name = "eventviews-18.08.1.tar.xz";
     };
   };
   ffmpegthumbs = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/ffmpegthumbs-18.08.0.tar.xz";
-      sha256 = "1rbfbwnyync4j15qzdhn47gksr6jm97pgkld2x3p564gi98w0vrn";
-      name = "ffmpegthumbs-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/ffmpegthumbs-18.08.1.tar.xz";
+      sha256 = "11gwrw3fm6di4z5a04jqxfvm176mh20h8pfpv0c0zq9qipr1khkc";
+      name = "ffmpegthumbs-18.08.1.tar.xz";
     };
   };
   filelight = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/filelight-18.08.0.tar.xz";
-      sha256 = "1wx6q0gq4zlg95a93sg7zqkbaka1pcn99jsjkdncq1z4lfphppk9";
-      name = "filelight-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/filelight-18.08.1.tar.xz";
+      sha256 = "03sz1bnz7w3b4227hvfidi225ci5i83z022fgkb632b0dp2l9m8p";
+      name = "filelight-18.08.1.tar.xz";
     };
   };
   granatier = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/granatier-18.08.0.tar.xz";
-      sha256 = "06nzgpwvgvbh6hf5yxmcxigh3n72qa0mbiv7k56157yyvxigk62q";
-      name = "granatier-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/granatier-18.08.1.tar.xz";
+      sha256 = "062qh639n1k919n67k2xn5h829gr0ncczif9mffw8ggvqqrzh560";
+      name = "granatier-18.08.1.tar.xz";
     };
   };
   grantlee-editor = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/grantlee-editor-18.08.0.tar.xz";
-      sha256 = "06m2n5rcgp63xgnr5jdzly7fda8zx5r3ki07ldxz1xivd985zmfp";
-      name = "grantlee-editor-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/grantlee-editor-18.08.1.tar.xz";
+      sha256 = "0wl8ii23wh1xakf6vcsv7n259kw0b3lpz7qnfmhz8nwj3k890g9q";
+      name = "grantlee-editor-18.08.1.tar.xz";
     };
   };
   grantleetheme = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/grantleetheme-18.08.0.tar.xz";
-      sha256 = "1mk80hfra4nmrcb0ff3n7l33pbw6j5lypb3ip7g4c1p8qik6imfv";
-      name = "grantleetheme-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/grantleetheme-18.08.1.tar.xz";
+      sha256 = "1ydi89smsim4lvgwclm9xsnldimsy45b69qsipz9vhhck4pccd7n";
+      name = "grantleetheme-18.08.1.tar.xz";
     };
   };
   gwenview = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/gwenview-18.08.0.tar.xz";
-      sha256 = "1nv9a7pj0h2m3wxzy03jw3pi5ps3xqvq9sx7mblq8p4klga2pcnl";
-      name = "gwenview-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/gwenview-18.08.1.tar.xz";
+      sha256 = "0p32v9y2gz5q4j1vz0yqw90qg8l7nbyzxqn7pqwrzbhlycsx7mp9";
+      name = "gwenview-18.08.1.tar.xz";
     };
   };
   incidenceeditor = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/incidenceeditor-18.08.0.tar.xz";
-      sha256 = "1s88i1l30b30an8lwc8sdlzfm1cvmb9n5786bs9y0jfgw01wdl7j";
-      name = "incidenceeditor-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/incidenceeditor-18.08.1.tar.xz";
+      sha256 = "0da1jba66pvjar5wxcx2q9dhfwj2mlwk17h0j9xc9kgxj2y0bzx9";
+      name = "incidenceeditor-18.08.1.tar.xz";
     };
   };
   juk = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/juk-18.08.0.tar.xz";
-      sha256 = "1lzw9ih4771vdxqngc0ja57v9y6wlgf8dbmnjax74ryi232py1d9";
-      name = "juk-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/juk-18.08.1.tar.xz";
+      sha256 = "17mylgsw11nc64y0if3imrs2hsxwfdflnn1a4f5p64awrzid04mc";
+      name = "juk-18.08.1.tar.xz";
     };
   };
   k3b = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/k3b-18.08.0.tar.xz";
-      sha256 = "1lm9140xc5mq1szyc4vkms6b3qhl4b3yn74kqp942b8k9djn17md";
-      name = "k3b-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/k3b-18.08.1.tar.xz";
+      sha256 = "1vv7pr1i3vj778m763mv1bzrq29kaqm02hnllhgq4dcci3hafn6a";
+      name = "k3b-18.08.1.tar.xz";
     };
   };
   kaccounts-integration = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kaccounts-integration-18.08.0.tar.xz";
-      sha256 = "0wvqhf9br8nqqacyn6j4k2323w6nixkfzlajkmx872d31d7aqf11";
-      name = "kaccounts-integration-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kaccounts-integration-18.08.1.tar.xz";
+      sha256 = "18nbj4vyakhxvzy35j4b7iap06lp7zwhfpylfpnshjbcrb724qzs";
+      name = "kaccounts-integration-18.08.1.tar.xz";
     };
   };
   kaccounts-providers = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kaccounts-providers-18.08.0.tar.xz";
-      sha256 = "1zxyqwdrf9pp5b1vnd8p4wz21ciavffjxd68vcjjyj8bba30c51l";
-      name = "kaccounts-providers-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kaccounts-providers-18.08.1.tar.xz";
+      sha256 = "0ygiyv5fxf6b62sfibm621cz5cxin6qa1mnjpdxfj72xj8p7dbd7";
+      name = "kaccounts-providers-18.08.1.tar.xz";
     };
   };
   kaddressbook = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kaddressbook-18.08.0.tar.xz";
-      sha256 = "1wgqqnikv9qyrb4nvkm7h91r1iqfkmbpdp67lcw4jkglqghnn2qc";
-      name = "kaddressbook-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kaddressbook-18.08.1.tar.xz";
+      sha256 = "0917d7m2nvgadkns8im7fzzqp2m5i21m4nrw75hv6bil7v0cshnn";
+      name = "kaddressbook-18.08.1.tar.xz";
     };
   };
   kajongg = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kajongg-18.08.0.tar.xz";
-      sha256 = "0dfrwzq1p9ikff52qi50ckb769pfij7gzn61r6pdkkfjgy86364y";
-      name = "kajongg-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kajongg-18.08.1.tar.xz";
+      sha256 = "0apjydg0q9yvvnlirhhvri2bqwzrkrq85fzphi49pr5ki3ah03dz";
+      name = "kajongg-18.08.1.tar.xz";
     };
   };
   kalarm = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kalarm-18.08.0.tar.xz";
-      sha256 = "0415yq61q700slmm6vskd92pc2sp1027flghgans80i29617zgaq";
-      name = "kalarm-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kalarm-18.08.1.tar.xz";
+      sha256 = "1558nls14a22pwjnk59fpgmb4ddrdvzf3rdhl0nf6kkgr0ma0p1w";
+      name = "kalarm-18.08.1.tar.xz";
     };
   };
   kalarmcal = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kalarmcal-18.08.0.tar.xz";
-      sha256 = "0ss56dy451lbbq872sarqcyapf4g6kgw78s88hgs7z5mlyj8xnll";
-      name = "kalarmcal-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kalarmcal-18.08.1.tar.xz";
+      sha256 = "02shp4m85frjs4kp5n2kv3nz5frjfrckm7zkjlnwn6lrg6jz7q0f";
+      name = "kalarmcal-18.08.1.tar.xz";
     };
   };
   kalgebra = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kalgebra-18.08.0.tar.xz";
-      sha256 = "0fv4v7xnspqjbc7x6n2gcyjssm15apszbvj4gs1w2lwlbbr3i224";
-      name = "kalgebra-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kalgebra-18.08.1.tar.xz";
+      sha256 = "1996vbcvbpkvmya291w2kxfjwkm3baqflx04drrglildsrn6q07w";
+      name = "kalgebra-18.08.1.tar.xz";
     };
   };
   kalzium = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kalzium-18.08.0.tar.xz";
-      sha256 = "0bjpiir1xxwvhs4xgnvbhphw24iif9g4kj9zg61bqcvq5zxf821x";
-      name = "kalzium-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kalzium-18.08.1.tar.xz";
+      sha256 = "0sp89xi94xpix1gpz1s7qya1ki7lbbx93yr17bmhlp4dhyfqbzw5";
+      name = "kalzium-18.08.1.tar.xz";
     };
   };
   kamera = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kamera-18.08.0.tar.xz";
-      sha256 = "169vsxnpcgxws27hcap2l5wjbfyxxi30321c8r3p8fm2klvbc8nw";
-      name = "kamera-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kamera-18.08.1.tar.xz";
+      sha256 = "03p94azchdgr19mbgpgkvb3rlddik3bjl6iy3j0yd99frlns15ck";
+      name = "kamera-18.08.1.tar.xz";
     };
   };
   kamoso = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kamoso-18.08.0.tar.xz";
-      sha256 = "1a8azx7rdbzznh9qwzg0x6w50vb5bc6cmd442j2hhdwkl15dqpwd";
-      name = "kamoso-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kamoso-18.08.1.tar.xz";
+      sha256 = "11hm8q2v3x1rhm2smiqm9gmscbpdkyfb6x4sl0xrnm36m7ps54qb";
+      name = "kamoso-18.08.1.tar.xz";
     };
   };
   kanagram = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kanagram-18.08.0.tar.xz";
-      sha256 = "02v3xlkfphkk86y8yrw10lq7f4wc7gmh02ms2w00aqrllkpja4vn";
-      name = "kanagram-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kanagram-18.08.1.tar.xz";
+      sha256 = "0mq8qrvvn30axhizzlzhzp5vl9q1ys7s7p5v525flyyz9fs011dz";
+      name = "kanagram-18.08.1.tar.xz";
     };
   };
   kapman = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kapman-18.08.0.tar.xz";
-      sha256 = "03fhxn8zckidkab56fzgwai0d1ac5k3il32w881gq5z012ms013h";
-      name = "kapman-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kapman-18.08.1.tar.xz";
+      sha256 = "0grq9yllpaa267lx654n39mj7ll0g2pj6s42fq7b7236naqyna3d";
+      name = "kapman-18.08.1.tar.xz";
     };
   };
   kapptemplate = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kapptemplate-18.08.0.tar.xz";
-      sha256 = "10fyvwxf6xmn8jdc4p3m3jpb8ykaga1jmwx2hzhf8c6a3rrcxvvb";
-      name = "kapptemplate-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kapptemplate-18.08.1.tar.xz";
+      sha256 = "1dp9831hzmh9gd3qwvfyb2ihindl5c42jvmmrhnmfbz1j199z98w";
+      name = "kapptemplate-18.08.1.tar.xz";
     };
   };
   kate = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kate-18.08.0.tar.xz";
-      sha256 = "1licprflzcsrfap7klr1ia2kl2z2cp16zgznphrqkkn9n6x7xz67";
-      name = "kate-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kate-18.08.1.tar.xz";
+      sha256 = "1jsdk6jfff36fcb1x0vxl0iqa1xrl0400bm7fhp1gv9m553pkysa";
+      name = "kate-18.08.1.tar.xz";
     };
   };
   katomic = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/katomic-18.08.0.tar.xz";
-      sha256 = "07d9irgqrawll18fi3b2mrjj416gpkn43bsriifkraqf8yrn3m4s";
-      name = "katomic-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/katomic-18.08.1.tar.xz";
+      sha256 = "0cd8l7hn89xr5spq107nqxz7dx12drvv70siqx896d8lfpkmh96d";
+      name = "katomic-18.08.1.tar.xz";
     };
   };
   kbackup = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kbackup-18.08.0.tar.xz";
-      sha256 = "14nmk7dwrmkfv7kz4r64vzy46n48g3l1iqj0937qnpbqk12yvak9";
-      name = "kbackup-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kbackup-18.08.1.tar.xz";
+      sha256 = "15x75biiwixiw0j329pcxhh5sfyqm82x2rdfb0nqp0zz01cwicv6";
+      name = "kbackup-18.08.1.tar.xz";
     };
   };
   kblackbox = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kblackbox-18.08.0.tar.xz";
-      sha256 = "0nd4nsx7yyiy1g1g4v0gaw0m6r3kb07gnn8236bch6xxy9xcdzhb";
-      name = "kblackbox-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kblackbox-18.08.1.tar.xz";
+      sha256 = "00xd6k9ndm1jbr1j2mhi8xfcxqdiwzwnb1cvr35a22r414lbc3cw";
+      name = "kblackbox-18.08.1.tar.xz";
     };
   };
   kblocks = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kblocks-18.08.0.tar.xz";
-      sha256 = "1pnxzfp3bd089bjbdsi0iwjpw60p36lb110yb61cv0vb54g1sia1";
-      name = "kblocks-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kblocks-18.08.1.tar.xz";
+      sha256 = "0y9hfxb9rpijpkm1r697v1w5q3gny8pa3ax5y0qq6695j2h7c52p";
+      name = "kblocks-18.08.1.tar.xz";
     };
   };
   kblog = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kblog-18.08.0.tar.xz";
-      sha256 = "00q7266lx29bfgzhfmb192l8h3qwgpj3yyfc0lykkbhjf6d9w783";
-      name = "kblog-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kblog-18.08.1.tar.xz";
+      sha256 = "0ickxhz7y098zx88308774kkz8wf6v51ydlnbmnayb8lyaw8ms8i";
+      name = "kblog-18.08.1.tar.xz";
     };
   };
   kbounce = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kbounce-18.08.0.tar.xz";
-      sha256 = "0x07lxqip9l2k9mdpan03yh17ammkd1f242l2p3qq3j1s71bpznm";
-      name = "kbounce-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kbounce-18.08.1.tar.xz";
+      sha256 = "1k2qmdhm3sllxhsz6hhs94fndm1lrifhh7md2lmws2l2977ymkpi";
+      name = "kbounce-18.08.1.tar.xz";
     };
   };
   kbreakout = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kbreakout-18.08.0.tar.xz";
-      sha256 = "1jrix92p48zcpgwvfxn484bw1k8ynfacm4iww14splx2d9skj489";
-      name = "kbreakout-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kbreakout-18.08.1.tar.xz";
+      sha256 = "06mxh67pyg7fv8x152kd79xzrfnlw22x4x3iklhbngsk1cqsg62r";
+      name = "kbreakout-18.08.1.tar.xz";
     };
   };
   kbruch = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kbruch-18.08.0.tar.xz";
-      sha256 = "1gkij27hl847bc2jdnjqvigncdmb11spj2rsy825rsnpiqxbqv8f";
-      name = "kbruch-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kbruch-18.08.1.tar.xz";
+      sha256 = "0m4m1xqp2aqkqs7cgj8z5c6b3s64d330bfgsq7mnm2wakmc69x9g";
+      name = "kbruch-18.08.1.tar.xz";
     };
   };
   kcachegrind = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kcachegrind-18.08.0.tar.xz";
-      sha256 = "13nqcxh21apxpzg51alsgn34hps21nr7aqyh60kd4fbmmsxrqll0";
-      name = "kcachegrind-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kcachegrind-18.08.1.tar.xz";
+      sha256 = "0llqmziq0h6wx3inxc2rmph1qs68fb34q09fvhfasg43l8y8a6cm";
+      name = "kcachegrind-18.08.1.tar.xz";
     };
   };
   kcalc = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kcalc-18.08.0.tar.xz";
-      sha256 = "04bdbdyc9lky6i0dkm6w9f2k3gvr9zq5b9yc6qhl4smdiivlqjb6";
-      name = "kcalc-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kcalc-18.08.1.tar.xz";
+      sha256 = "139pjh31k9cy608h7yl9kxq48x6dsm5c0gcbndqc6nsjwd88ck04";
+      name = "kcalc-18.08.1.tar.xz";
     };
   };
   kcalcore = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kcalcore-18.08.0.tar.xz";
-      sha256 = "0sdzx0ygq89np2cj22v06m9j00nwbqn97rm43nffgixwvrlf1wy5";
-      name = "kcalcore-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kcalcore-18.08.1.tar.xz";
+      sha256 = "0kf92imqm9lqisfy3i25qn0g588p35w23xl0vmx75i67pzr3jcjn";
+      name = "kcalcore-18.08.1.tar.xz";
     };
   };
   kcalutils = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kcalutils-18.08.0.tar.xz";
-      sha256 = "12s2anmwi3q95kjl197jis90vi5gzpxs0b4xj4m6n4lzmnyjvfxl";
-      name = "kcalutils-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kcalutils-18.08.1.tar.xz";
+      sha256 = "1z346k9aniv3bq9c1dak3x5hzymi71ygns773r4agzm4kdn8ghwh";
+      name = "kcalutils-18.08.1.tar.xz";
     };
   };
   kcharselect = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kcharselect-18.08.0.tar.xz";
-      sha256 = "1gfzzzk5admdclw75qhnsf3271p2lr0fgqzxvclcxppwmv5j56aq";
-      name = "kcharselect-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kcharselect-18.08.1.tar.xz";
+      sha256 = "06r9q03rs00zqs0dpb0wxa9663pc2i51hsf83c0z9jnkpq6sjijb";
+      name = "kcharselect-18.08.1.tar.xz";
     };
   };
   kcolorchooser = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kcolorchooser-18.08.0.tar.xz";
-      sha256 = "1sxlx6cnpm0yfbrbk1pqaf0lsf1mgzdnkszr30hwz6z5lvvzj73l";
-      name = "kcolorchooser-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kcolorchooser-18.08.1.tar.xz";
+      sha256 = "027afkj0mllvnwdrrfjnpp4769dp5ixrdmd17r59q2hja0wz6cpf";
+      name = "kcolorchooser-18.08.1.tar.xz";
     };
   };
   kcontacts = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kcontacts-18.08.0.tar.xz";
-      sha256 = "0cil96cd383gvqa2dw1lhaw3vi3m04y4rpjqmiapzwnn4ck0v1ii";
-      name = "kcontacts-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kcontacts-18.08.1.tar.xz";
+      sha256 = "1y0drw7n9mhyq84brqxz4rr666pqj5ww94f2i8k34chdzkcqsr52";
+      name = "kcontacts-18.08.1.tar.xz";
     };
   };
   kcron = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kcron-18.08.0.tar.xz";
-      sha256 = "14lkaz1b6hnpwvxnnx3mgv3fg86vm1g45fggfx25x6x72kiihhzq";
-      name = "kcron-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kcron-18.08.1.tar.xz";
+      sha256 = "1blalii8b6i8b1cknwcarbj84m6rrffsjamgnzyz6l81l43b0j9m";
+      name = "kcron-18.08.1.tar.xz";
     };
   };
   kdav = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kdav-18.08.0.tar.xz";
-      sha256 = "13jwc4623f9mx64i7fb3ha5gwbqgfd54dirbvcyyglrzipxmgja1";
-      name = "kdav-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kdav-18.08.1.tar.xz";
+      sha256 = "046h72gvcc9wxq0rn5ribf3lr03q6zq6acz2c3kxsbdw6kbypb2x";
+      name = "kdav-18.08.1.tar.xz";
     };
   };
   kdebugsettings = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kdebugsettings-18.08.0.tar.xz";
-      sha256 = "1ddqcfq2icsk2xmfr02jawdgxyydhx4yyhrfd7pk8cfw66rm23br";
-      name = "kdebugsettings-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kdebugsettings-18.08.1.tar.xz";
+      sha256 = "0n6lvccm803g9ilwwdka0srvak14i8lk5g149c6qmd73wywqdk84";
+      name = "kdebugsettings-18.08.1.tar.xz";
     };
   };
   kde-dev-scripts = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kde-dev-scripts-18.08.0.tar.xz";
-      sha256 = "1glnm91wn3xdd6zqqy2p178f05z5wn3gr1i6jyqb0zkl8ansy3yi";
-      name = "kde-dev-scripts-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kde-dev-scripts-18.08.1.tar.xz";
+      sha256 = "1y162wn5mpi0c3wa8vjb2al2mizz292jzj22wvdzp19vliy32j95";
+      name = "kde-dev-scripts-18.08.1.tar.xz";
     };
   };
   kde-dev-utils = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kde-dev-utils-18.08.0.tar.xz";
-      sha256 = "1dk510kgjgvycdyzr5mwq9z1b3xr8hlpm4ahfwlfn299gl563fwf";
-      name = "kde-dev-utils-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kde-dev-utils-18.08.1.tar.xz";
+      sha256 = "1w5r7w7s5iaaxaxicd42nh2dhmc7anfqpv9n92rrk1hwpmjbphg5";
+      name = "kde-dev-utils-18.08.1.tar.xz";
     };
   };
   kdeedu-data = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kdeedu-data-18.08.0.tar.xz";
-      sha256 = "1ph3bw4xgmgh28j9vnj9v1amgisy3f44whpwwhzin9zgzz0cw3gw";
-      name = "kdeedu-data-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kdeedu-data-18.08.1.tar.xz";
+      sha256 = "0gpg1haawwi1d1p1pwzx2127kkdpg4i833312cl637v5qgvg7xhc";
+      name = "kdeedu-data-18.08.1.tar.xz";
     };
   };
   kdegraphics-mobipocket = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kdegraphics-mobipocket-18.08.0.tar.xz";
-      sha256 = "0p3bci612qbqnbps4g4yb2kd1rs6kx2ppcls6vpfb035c28ygf7a";
-      name = "kdegraphics-mobipocket-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kdegraphics-mobipocket-18.08.1.tar.xz";
+      sha256 = "13jw2gn3wc946zdgr2hi1nsd6m518idn4q5wq0ym715mfbfs17zn";
+      name = "kdegraphics-mobipocket-18.08.1.tar.xz";
     };
   };
   kdegraphics-thumbnailers = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kdegraphics-thumbnailers-18.08.0.tar.xz";
-      sha256 = "0dwfphz70y0g43a9nxfda78qwsv7y4llx1f51x6n8jl64kpxnijw";
-      name = "kdegraphics-thumbnailers-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kdegraphics-thumbnailers-18.08.1.tar.xz";
+      sha256 = "0h9h5d81bjmjcgbxh3sy776rddpxxcwyj0jjix67q37kndbap4k0";
+      name = "kdegraphics-thumbnailers-18.08.1.tar.xz";
     };
   };
   kdenetwork-filesharing = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kdenetwork-filesharing-18.08.0.tar.xz";
-      sha256 = "0l5f9ffwsk0s9r87kid9k1a7j2v4lcdzbn2w4qb2pg22k92k8p67";
-      name = "kdenetwork-filesharing-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kdenetwork-filesharing-18.08.1.tar.xz";
+      sha256 = "1bfqk57d1xfqbig1r8cymlp0pgsfmrix5nr4m1a015rmpqnvb92d";
+      name = "kdenetwork-filesharing-18.08.1.tar.xz";
     };
   };
   kdenlive = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kdenlive-18.08.0.tar.xz";
-      sha256 = "06d0viqma7kivzv3hbsiirkfhbj28mdr2nr3f5ic56381q3ps923";
-      name = "kdenlive-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kdenlive-18.08.1.tar.xz";
+      sha256 = "1ampvjlxn3q8l3mi4nap4lq3hgxzmp6ic88hzmkdj41vpm01flpf";
+      name = "kdenlive-18.08.1.tar.xz";
     };
   };
   kdepim-addons = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kdepim-addons-18.08.0.tar.xz";
-      sha256 = "05141013jdaascsb7ihbmd4f1lh1r6ah5w39wp5vky6ma35zv2l1";
-      name = "kdepim-addons-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kdepim-addons-18.08.1.tar.xz";
+      sha256 = "0fgggq0dl4qy0wha4jjarxgjly54s9fpqkm2macfq2bgvdbsjrgj";
+      name = "kdepim-addons-18.08.1.tar.xz";
     };
   };
   kdepim-apps-libs = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kdepim-apps-libs-18.08.0.tar.xz";
-      sha256 = "0zpx3nilrsvgmgx5visppyx3kn2g5k8fnhfy649k6wa35p846495";
-      name = "kdepim-apps-libs-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kdepim-apps-libs-18.08.1.tar.xz";
+      sha256 = "0v4vvrjh1amlrvmf61cjfb2yr1j4j0qypf5349spnnlwjjrxn2hw";
+      name = "kdepim-apps-libs-18.08.1.tar.xz";
     };
   };
   kdepim-runtime = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kdepim-runtime-18.08.0.tar.xz";
-      sha256 = "0b1jbksxks32s8gjzrjhh4nja089j5dq75yaiil99w11f7nfpkar";
-      name = "kdepim-runtime-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kdepim-runtime-18.08.1.tar.xz";
+      sha256 = "0133d86z1fggzg15jk2p8pg42zcv3khikpgdlyvz4si3canmvkwj";
+      name = "kdepim-runtime-18.08.1.tar.xz";
     };
   };
   kdesdk-kioslaves = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kdesdk-kioslaves-18.08.0.tar.xz";
-      sha256 = "1fpg4sdbgzvlc9z7wwxxbp466fhybphvmcdpplbr7ws3588792cb";
-      name = "kdesdk-kioslaves-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kdesdk-kioslaves-18.08.1.tar.xz";
+      sha256 = "1nn4bzywd42ijbzlcnkdlr84n1p6argrd1gz91yyyrhqark7ma76";
+      name = "kdesdk-kioslaves-18.08.1.tar.xz";
     };
   };
   kdesdk-thumbnailers = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kdesdk-thumbnailers-18.08.0.tar.xz";
-      sha256 = "047rnzn2lsbhfll0fp4vdf4jsyixg7vmpl2xyvi1y85df5nvv2pc";
-      name = "kdesdk-thumbnailers-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kdesdk-thumbnailers-18.08.1.tar.xz";
+      sha256 = "1c133n4qf9jkgzhccipspwk3r8mbja0k8556ng0wxnhayzmv2sx9";
+      name = "kdesdk-thumbnailers-18.08.1.tar.xz";
     };
   };
   kdf = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kdf-18.08.0.tar.xz";
-      sha256 = "1flv6qjb936fcj5crshy26qy9y2p7j9i3hlidr9lsk81wsyjkqqg";
-      name = "kdf-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kdf-18.08.1.tar.xz";
+      sha256 = "1m5hwfhzvikh7isakbvzyc3y98zdky4iz8vdsi7nnyb6d8n2hbrr";
+      name = "kdf-18.08.1.tar.xz";
     };
   };
   kdialog = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kdialog-18.08.0.tar.xz";
-      sha256 = "04xhp4pdn7gv69gwydz9afml27qj9mrqz2hnrhcsf29pw3vq0hli";
-      name = "kdialog-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kdialog-18.08.1.tar.xz";
+      sha256 = "0s8a3y8sjhyq8lf3i8r6ligg1s9nbhxsd34vncw3lkbq60xkyhrr";
+      name = "kdialog-18.08.1.tar.xz";
     };
   };
   kdiamond = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kdiamond-18.08.0.tar.xz";
-      sha256 = "14c5i2fj9scvkqffz95lrqj49vfg7yh7gfc4s3zzg2sl91j7hwzq";
-      name = "kdiamond-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kdiamond-18.08.1.tar.xz";
+      sha256 = "0vcqdadb9kbmxnycaba6g9hiiyxqybqiw1i4zldlw5x4gnj7dcv2";
+      name = "kdiamond-18.08.1.tar.xz";
     };
   };
   keditbookmarks = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/keditbookmarks-18.08.0.tar.xz";
-      sha256 = "1zsfmcyb9s782k6knlv56mrssazdid6i70g74is46s59sgfdd9fl";
-      name = "keditbookmarks-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/keditbookmarks-18.08.1.tar.xz";
+      sha256 = "10nzhsyia1q0m26icqb20qh8s8n6r5vlb5q498gw8dv3rzsmh6sf";
+      name = "keditbookmarks-18.08.1.tar.xz";
     };
   };
   kfind = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kfind-18.08.0.tar.xz";
-      sha256 = "1bvln7iq2ikcrzaa53wskpqwzmndjvc84a2jdjqzirmh6pqzlf3h";
-      name = "kfind-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kfind-18.08.1.tar.xz";
+      sha256 = "15w4cdvz35yyfyfaxb4mnxynlbryixydkwmx7lkmhlwnk3zjmskr";
+      name = "kfind-18.08.1.tar.xz";
     };
   };
   kfloppy = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kfloppy-18.08.0.tar.xz";
-      sha256 = "1clz5651d11pm77mi57nzr274zwshx2qhglfn6jxiif9yz6s9dfp";
-      name = "kfloppy-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kfloppy-18.08.1.tar.xz";
+      sha256 = "07v3q4jiw728s9akwhy27hczp4hxhp7f8c6g59gdqm0ply0vgxk6";
+      name = "kfloppy-18.08.1.tar.xz";
     };
   };
   kfourinline = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kfourinline-18.08.0.tar.xz";
-      sha256 = "1agmzlwy4izrmi58cf08cg34h155inmws3ghp524jz1li6rqvzfr";
-      name = "kfourinline-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kfourinline-18.08.1.tar.xz";
+      sha256 = "03g8g0s2214fqkqp4lyh9m8f382s8xwzi0yqz0yigyq1w5igcl9p";
+      name = "kfourinline-18.08.1.tar.xz";
     };
   };
   kgeography = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kgeography-18.08.0.tar.xz";
-      sha256 = "0nj3lg8q84wvh1pypix619bdr9xm6s9s5vywciq8ggskqa2qrdc5";
-      name = "kgeography-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kgeography-18.08.1.tar.xz";
+      sha256 = "1pqs2sk88idzc8xr85qy689palkf5y5l4pfqkd9xfkb87041rl93";
+      name = "kgeography-18.08.1.tar.xz";
     };
   };
   kget = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kget-18.08.0.tar.xz";
-      sha256 = "0vpphsfgqa4h1bsj0k6lz591ymd5zy3ng86fl4l1qv36kh5b3sr4";
-      name = "kget-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kget-18.08.1.tar.xz";
+      sha256 = "1ax6sdkpvzg37sp05fx083h0nn78a2zpfpr2l74j3qwq2yssy298";
+      name = "kget-18.08.1.tar.xz";
     };
   };
   kgoldrunner = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kgoldrunner-18.08.0.tar.xz";
-      sha256 = "13i3b8z2pbvh90ykv365s30az9r33is8wp8ys33kz88z26260rsv";
-      name = "kgoldrunner-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kgoldrunner-18.08.1.tar.xz";
+      sha256 = "1wbdranw0fq8qynn13d0wkb7fckfzqbz2g920gyx2igw0bblcj0y";
+      name = "kgoldrunner-18.08.1.tar.xz";
     };
   };
   kgpg = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kgpg-18.08.0.tar.xz";
-      sha256 = "12d6vqfcrgmqajk383p9gx9l49digm51km00slwkb15yjzgsjckx";
-      name = "kgpg-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kgpg-18.08.1.tar.xz";
+      sha256 = "1i3g7x18khnyvwnvgpnv6xdfbv29w65x8d8ml60zb8siipbnlwb5";
+      name = "kgpg-18.08.1.tar.xz";
     };
   };
   khangman = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/khangman-18.08.0.tar.xz";
-      sha256 = "0vcyak1pqq894d10jn4s8948fz8py6kjhgrbvjk2ksp28fzsb1q2";
-      name = "khangman-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/khangman-18.08.1.tar.xz";
+      sha256 = "1nc9lbjxlwr4aqsl6idjyhqxd5wampcz7a6zgq6py03n8mr811qy";
+      name = "khangman-18.08.1.tar.xz";
     };
   };
   khelpcenter = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/khelpcenter-18.08.0.tar.xz";
-      sha256 = "1ykw91s1w5953646ylxm49bq0bjgxd8yp29r09644q12qmi1w9ay";
-      name = "khelpcenter-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/khelpcenter-18.08.1.tar.xz";
+      sha256 = "1k60yqnpkplj0k0b8h27zyhviqs6ddwhygmv7cpmnwa1d7kvhdwi";
+      name = "khelpcenter-18.08.1.tar.xz";
     };
   };
   kidentitymanagement = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kidentitymanagement-18.08.0.tar.xz";
-      sha256 = "1rrdxbil0z0vmv0h0d6jdlwa3sfs3nncq39wmydhwx09phk7db85";
-      name = "kidentitymanagement-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kidentitymanagement-18.08.1.tar.xz";
+      sha256 = "0w1lmfcjq2fb65l3vd9qzq037j7r3dd49aqh8bnrwkjslshy7iwz";
+      name = "kidentitymanagement-18.08.1.tar.xz";
     };
   };
   kig = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kig-18.08.0.tar.xz";
-      sha256 = "0kgsar7sp3a7x72gnagi2hwajbl1yaaj493qjnwzlwidjjrlzmhb";
-      name = "kig-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kig-18.08.1.tar.xz";
+      sha256 = "1haf21widyfi0afixyfczk944l048w8dvlmgkwvfqhmgiiz52g72";
+      name = "kig-18.08.1.tar.xz";
     };
   };
   kigo = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kigo-18.08.0.tar.xz";
-      sha256 = "1ws0diq3kb8f15v30cj0hc0ii4d14dca7fb3p8vvm8r4ly7gqbdr";
-      name = "kigo-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kigo-18.08.1.tar.xz";
+      sha256 = "1dmb3cmbi473wpkbnv895nyxxhqmp09ihghvxir77khjpmask04a";
+      name = "kigo-18.08.1.tar.xz";
     };
   };
   killbots = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/killbots-18.08.0.tar.xz";
-      sha256 = "165g1zll7wq6gyz1lzaf1x17j2nagd66lj015qxifjpn9fd475mm";
-      name = "killbots-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/killbots-18.08.1.tar.xz";
+      sha256 = "184glirpf8jzy91769d13rck3vnh96s171h6sfqab755857wj960";
+      name = "killbots-18.08.1.tar.xz";
     };
   };
   kimagemapeditor = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kimagemapeditor-18.08.0.tar.xz";
-      sha256 = "1r3hngzvidv1yz7kd7l8l78gqdhjvw9smciv1vkzf7dk9qarlyfq";
-      name = "kimagemapeditor-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kimagemapeditor-18.08.1.tar.xz";
+      sha256 = "1w0yinp58f7x4ss2m069736faagwil7ay8gd5w79a5frqizsj36d";
+      name = "kimagemapeditor-18.08.1.tar.xz";
     };
   };
   kimap = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kimap-18.08.0.tar.xz";
-      sha256 = "12lslmprwmibijlpwng4acmmhdfhm1dgvqsazbyvsr8jagkryxmq";
-      name = "kimap-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kimap-18.08.1.tar.xz";
+      sha256 = "0na135np2li231kzxfjy4wb5bbgkkyll66x8jd4y0lxvc4cwipfd";
+      name = "kimap-18.08.1.tar.xz";
     };
   };
   kio-extras = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kio-extras-18.08.0.tar.xz";
-      sha256 = "1k5azz26zwsflnsgv4r0i8z8jph060wpksyqfpkz0vfsf3lv0k3n";
-      name = "kio-extras-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kio-extras-18.08.1.tar.xz";
+      sha256 = "03q68bc53q656pw733g2j2wkbag6hbqpwszkap2h4pn011cihgyw";
+      name = "kio-extras-18.08.1.tar.xz";
     };
   };
   kiriki = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kiriki-18.08.0.tar.xz";
-      sha256 = "1fciiq490iwcz86g9pqp8g0s40zf7a3zan132iqmscpl71hsv01b";
-      name = "kiriki-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kiriki-18.08.1.tar.xz";
+      sha256 = "1kc2flpfqvfijrazvnk7mk03myy7f7lqia1r9lxg1g3xx095jqhz";
+      name = "kiriki-18.08.1.tar.xz";
     };
   };
   kiten = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kiten-18.08.0.tar.xz";
-      sha256 = "1gzgfj0p0s5yjhwx6hldc8s0cs6p2bn5gd8sy29sicg13wjvhkmj";
-      name = "kiten-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kiten-18.08.1.tar.xz";
+      sha256 = "1i1pgfxvcqh5jbbk39b6rlc0s67z2naw5glxhkg3nrvxy9yxw9n2";
+      name = "kiten-18.08.1.tar.xz";
     };
   };
   kitinerary = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kitinerary-18.08.0.tar.xz";
-      sha256 = "14jwlkfy9z6q2pnjmlcy5gihc75n6qnsck05zycs4qsxa4srpn0l";
-      name = "kitinerary-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kitinerary-18.08.1.tar.xz";
+      sha256 = "0bv1nwwi2mc0l3vfvx29d46l7b876qf4bch9g84zmdcas37w786l";
+      name = "kitinerary-18.08.1.tar.xz";
     };
   };
   kjumpingcube = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kjumpingcube-18.08.0.tar.xz";
-      sha256 = "001a2ayl74hi89j8i3553qx0cs8w7f4myskq3qa01rg3w4pb3wl2";
-      name = "kjumpingcube-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kjumpingcube-18.08.1.tar.xz";
+      sha256 = "1qfzydbpd86zsb0yfy5xdaqlbh1awm70lg1nzbqn99rl47vsm85b";
+      name = "kjumpingcube-18.08.1.tar.xz";
     };
   };
   kldap = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kldap-18.08.0.tar.xz";
-      sha256 = "1825146vi1lq1383qmn8ix70d2rc2cfwp95vpn4divf9aqwmc4x0";
-      name = "kldap-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kldap-18.08.1.tar.xz";
+      sha256 = "1knf61whi1raj66z55a8535rj911na15zkq0vcb8djz6cg3xw29r";
+      name = "kldap-18.08.1.tar.xz";
     };
   };
   kleopatra = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kleopatra-18.08.0.tar.xz";
-      sha256 = "1wwjn2p2vblr6fdfcy1s5gf3h5cnclc4lj5vsi5cxyp7d86ij49c";
-      name = "kleopatra-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kleopatra-18.08.1.tar.xz";
+      sha256 = "0g65qxz6v1glh86fvgpb89ay1221qbnz97mnzw8fb26aar838s8y";
+      name = "kleopatra-18.08.1.tar.xz";
     };
   };
   klettres = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/klettres-18.08.0.tar.xz";
-      sha256 = "1g84swzlynyl7r2ln52n7w9q0yf6540dd9hj3j0zsp1y2hb9fns8";
-      name = "klettres-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/klettres-18.08.1.tar.xz";
+      sha256 = "0k5c9j9w0d95fzs7103nx13cxz9q5ivn34wq8px0ma9jaig1w1j9";
+      name = "klettres-18.08.1.tar.xz";
     };
   };
   klickety = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/klickety-18.08.0.tar.xz";
-      sha256 = "1jrxabmnv0s38i255x7xycn12fgpkmr4p1y0ydk5x98zrv4vn8y0";
-      name = "klickety-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/klickety-18.08.1.tar.xz";
+      sha256 = "1zx7f4hpcgfrfbgmmhfj9p9l604bzhg06zznfgq40774m4d5m992";
+      name = "klickety-18.08.1.tar.xz";
     };
   };
   klines = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/klines-18.08.0.tar.xz";
-      sha256 = "14ks53xh6hhlrmiqa7a1f7z42i035qw3v72dpbc8bw20vg53bzpy";
-      name = "klines-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/klines-18.08.1.tar.xz";
+      sha256 = "1wwvzvwshxj03s3ywpg65lfj32xcd3yj4y7fhdms8xjn0b341grc";
+      name = "klines-18.08.1.tar.xz";
     };
   };
   kmag = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kmag-18.08.0.tar.xz";
-      sha256 = "00ni6clpgwcr6b2yanmgplsb5jqmqxjiymd3572fkj7q8m17ak7f";
-      name = "kmag-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kmag-18.08.1.tar.xz";
+      sha256 = "1a1xml73yhfrqzw37apgmf1f88x58ws09vfdrp8zchawskcm3yi2";
+      name = "kmag-18.08.1.tar.xz";
     };
   };
   kmahjongg = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kmahjongg-18.08.0.tar.xz";
-      sha256 = "0lflx8jxk2yv7bsywwmbk5l54gyhbyv65996fg82z6lw9hrr5wrb";
-      name = "kmahjongg-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kmahjongg-18.08.1.tar.xz";
+      sha256 = "1rdimx9kdm9n3g4856672z0spwsj5ihd40yx17vbzc3lhyqnk0w1";
+      name = "kmahjongg-18.08.1.tar.xz";
     };
   };
   kmail = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kmail-18.08.0.tar.xz";
-      sha256 = "1xj2z4ix9zba6k3cdnakr7f0nfij1z925j3vp0gimkgyvbcb28vr";
-      name = "kmail-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kmail-18.08.1.tar.xz";
+      sha256 = "12097jncdx5zdsr99lmsvhiymarymgbd004vmxm6rni0hq1aqzkl";
+      name = "kmail-18.08.1.tar.xz";
     };
   };
   kmail-account-wizard = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kmail-account-wizard-18.08.0.tar.xz";
-      sha256 = "1hc6zqys2qncljvsl9j48ns77kkq5zabj5a2kzg953dgcdv5x25r";
-      name = "kmail-account-wizard-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kmail-account-wizard-18.08.1.tar.xz";
+      sha256 = "0jzqqn07q0jsggss2r5pjgp0fhfgngvv0rjzyh12lzsn4l8iyd6z";
+      name = "kmail-account-wizard-18.08.1.tar.xz";
     };
   };
   kmailtransport = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kmailtransport-18.08.0.tar.xz";
-      sha256 = "0dfws0pzq3jf1h6j5qzjm96fz1ci4v57j4s9fbry10vyn4racpq8";
-      name = "kmailtransport-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kmailtransport-18.08.1.tar.xz";
+      sha256 = "196cjbnzqcp1ayqpn4vy8ah55nskhv07xrfrm8h0baxj90jd01xn";
+      name = "kmailtransport-18.08.1.tar.xz";
     };
   };
   kmbox = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kmbox-18.08.0.tar.xz";
-      sha256 = "11dh1lgjhiy4bvpvrk1rw23fgjil45ch3lazqc4jp21d1skrr1v4";
-      name = "kmbox-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kmbox-18.08.1.tar.xz";
+      sha256 = "0sjl64cjr2dxvjklpdl2p25vjbvzi0w42m5s3fzlqam9avmckfia";
+      name = "kmbox-18.08.1.tar.xz";
     };
   };
   kmime = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kmime-18.08.0.tar.xz";
-      sha256 = "0kci9b2c67hzbl4hjwkkzk9j7g1l5wy1d8qrm1jwk8s7ccndindw";
-      name = "kmime-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kmime-18.08.1.tar.xz";
+      sha256 = "00jxsnwkx4c9x1cm7w6r5z39d4962d0w6b8irdczix4r660xf56x";
+      name = "kmime-18.08.1.tar.xz";
     };
   };
   kmines = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kmines-18.08.0.tar.xz";
-      sha256 = "0z0fidlcp0kf9vmdgfyzrwi9yk5mfwhkzlqlbfy1631xisz158yn";
-      name = "kmines-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kmines-18.08.1.tar.xz";
+      sha256 = "0csjr16s6jjj6z0963kc5jqwywjf9mvsa8c7x751h76kci1x53b0";
+      name = "kmines-18.08.1.tar.xz";
     };
   };
   kmix = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kmix-18.08.0.tar.xz";
-      sha256 = "084l5dpms26jwd894xnqr054hxjzlxcp2wm2rq37y3cbriia2xgh";
-      name = "kmix-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kmix-18.08.1.tar.xz";
+      sha256 = "1i5wgdmr8sml9cqjlgmi2i4v8lgksa7pnp91cgj75bmcy68sv0gj";
+      name = "kmix-18.08.1.tar.xz";
     };
   };
   kmousetool = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kmousetool-18.08.0.tar.xz";
-      sha256 = "0lcr8hpflaw5lrfydwi5sf069hfb19qifb7wh7qxh7j1b2z8w4gf";
-      name = "kmousetool-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kmousetool-18.08.1.tar.xz";
+      sha256 = "0drpzdsry3xj4wm50850wf9rg3banbfaspbrmj1vwinbyz6f7pwz";
+      name = "kmousetool-18.08.1.tar.xz";
     };
   };
   kmouth = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kmouth-18.08.0.tar.xz";
-      sha256 = "0naqn9pl7jldfna9l3i3kdv8rkw0nky4ppsvqghlrb9jf4dy8lfm";
-      name = "kmouth-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kmouth-18.08.1.tar.xz";
+      sha256 = "0ywadz614w308vsss7b25xx4ddqyabr15miz9x7izffh67dhvm97";
+      name = "kmouth-18.08.1.tar.xz";
     };
   };
   kmplot = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kmplot-18.08.0.tar.xz";
-      sha256 = "0lvw351iz2gdzkphrf8hxgqbjqi4pqvxqk2zjbly4fzwbgk261bd";
-      name = "kmplot-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kmplot-18.08.1.tar.xz";
+      sha256 = "1287pk524lfqvadq2rc8226v9qiwqh80fj1gjhsw6y3vhj88dpvg";
+      name = "kmplot-18.08.1.tar.xz";
     };
   };
   knavalbattle = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/knavalbattle-18.08.0.tar.xz";
-      sha256 = "0b21z3qqhsyafsa6rx9mc560hrw0046npqjmi5jpmczl6y9mr78q";
-      name = "knavalbattle-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/knavalbattle-18.08.1.tar.xz";
+      sha256 = "0jxzgv06mysjalm0gfig3h6a9b84nkrq1qchi47h9x8cfaspba9r";
+      name = "knavalbattle-18.08.1.tar.xz";
     };
   };
   knetwalk = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/knetwalk-18.08.0.tar.xz";
-      sha256 = "04yfxxihfdqhrs126796k498v8valhd73q2bagcx59lj7iymxszj";
-      name = "knetwalk-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/knetwalk-18.08.1.tar.xz";
+      sha256 = "1bg4jaijvhb312cpwrfr4chmxj3fcj3k9caw5xwzrgdgw7prrbax";
+      name = "knetwalk-18.08.1.tar.xz";
     };
   };
   knotes = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/knotes-18.08.0.tar.xz";
-      sha256 = "0dvjafmf57z10lx8fb4y4na73qq3dfmqfa2w01b3sdzns0nzaqig";
-      name = "knotes-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/knotes-18.08.1.tar.xz";
+      sha256 = "1cihancavh5z5781gy6h8cikwbsw2p5hb2wbwakzjs3ld31nsjcv";
+      name = "knotes-18.08.1.tar.xz";
     };
   };
   kolf = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kolf-18.08.0.tar.xz";
-      sha256 = "0bcd4k7v5sid98h95xbqm5l0dcjkv367mdgzhr6yizlqpyg6c132";
-      name = "kolf-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kolf-18.08.1.tar.xz";
+      sha256 = "1ngzjmlhx471rfy486fpglpihydskrvwiqnl6xrp6fw1wg9pbd6b";
+      name = "kolf-18.08.1.tar.xz";
     };
   };
   kollision = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kollision-18.08.0.tar.xz";
-      sha256 = "029pwgwmsm9m284m1sbi2zzhhwbz6rlq68jd783ir6cq2z3llvjp";
-      name = "kollision-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kollision-18.08.1.tar.xz";
+      sha256 = "0is63m9zw8s53pf73c2a7f2wkvrsg70wk49x6rpzb28jmsgm1xi2";
+      name = "kollision-18.08.1.tar.xz";
     };
   };
   kolourpaint = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kolourpaint-18.08.0.tar.xz";
-      sha256 = "0p08xc8ai1cllbdwmv46xzcpv70mn6zwd4f62xsh71hhpg8fbqpi";
-      name = "kolourpaint-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kolourpaint-18.08.1.tar.xz";
+      sha256 = "101vz981kl006q8kirs9d9bsp1bpjzcl22bbswgjny6niqlzd5lm";
+      name = "kolourpaint-18.08.1.tar.xz";
     };
   };
   kompare = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kompare-18.08.0.tar.xz";
-      sha256 = "0md4qw29q5mnsz0k4a3dl6fdgff33w4kg59qy02kp3pvqav9r1zx";
-      name = "kompare-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kompare-18.08.1.tar.xz";
+      sha256 = "0ksdf5c6a3rhq0r8g8hiai53pzk37jiicislfik6y8f71rq0crqv";
+      name = "kompare-18.08.1.tar.xz";
     };
   };
   konqueror = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/konqueror-18.08.0.tar.xz";
-      sha256 = "12zw4bgmmc35vghi8phm93x9lmhfgpxxfvz0grxa4gxcxqjyzzcq";
-      name = "konqueror-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/konqueror-18.08.1.tar.xz";
+      sha256 = "0bz9vyagcrm7yihrx464hkf30y5rx6p9cvx8hq0sblvb7m4308y7";
+      name = "konqueror-18.08.1.tar.xz";
     };
   };
   konquest = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/konquest-18.08.0.tar.xz";
-      sha256 = "0pvx4ss8dpxd6q4jnxim3pwyxjvhcy1xihn7s3513hy0h4wabv6s";
-      name = "konquest-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/konquest-18.08.1.tar.xz";
+      sha256 = "1y3afkna2xg47qk9iwh3gsxbp1plf5y7k87svk8nzbh6aa8pillx";
+      name = "konquest-18.08.1.tar.xz";
     };
   };
   konsole = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/konsole-18.08.0.tar.xz";
-      sha256 = "1p119ky78zxi8l08xnfklrg21c6124q1fbjvbybf6l0qq3mzwy77";
-      name = "konsole-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/konsole-18.08.1.tar.xz";
+      sha256 = "05i9mkw4ygpy6ilqkkm5s7m9kva9ds0gr5gszci7z52m7y67s27d";
+      name = "konsole-18.08.1.tar.xz";
     };
   };
   kontact = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kontact-18.08.0.tar.xz";
-      sha256 = "0027zinl9s92vxhlzv9mak9fgzygqw5ml6i6x659pl3mc889fr7j";
-      name = "kontact-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kontact-18.08.1.tar.xz";
+      sha256 = "136sfr6gwf2cdlc54hc5p1wzcrjpnan0rzmzs21cwpp9gsvmsjvq";
+      name = "kontact-18.08.1.tar.xz";
     };
   };
   kontactinterface = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kontactinterface-18.08.0.tar.xz";
-      sha256 = "0mcvpmvczqpsqj83vqfv9zwz7jj3az65nq45xg1l476j8sva278n";
-      name = "kontactinterface-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kontactinterface-18.08.1.tar.xz";
+      sha256 = "1w96wyr5kinaghnaima1pcq5hz8qyzvvyjpsk3dg8h3is86npvkb";
+      name = "kontactinterface-18.08.1.tar.xz";
     };
   };
   kopete = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kopete-18.08.0.tar.xz";
-      sha256 = "0g79zv187pj7c2p33qsnkpmvrxpcx1iiy9lcrdz3acgzgvpfh5dk";
-      name = "kopete-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kopete-18.08.1.tar.xz";
+      sha256 = "0i38hvnp1qiwva6gd3p7zs962bhi5fviysr8wzm7296f1hv1rz4k";
+      name = "kopete-18.08.1.tar.xz";
     };
   };
   korganizer = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/korganizer-18.08.0.tar.xz";
-      sha256 = "0qifd6l93jjj7sxf3kllm3dq13p738zlvbpxg24wzc3gllyq4ip1";
-      name = "korganizer-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/korganizer-18.08.1.tar.xz";
+      sha256 = "0wdpcjar64f8bii3xbbj08dfnd0290xwdvlr09p1pfmlllp09l0v";
+      name = "korganizer-18.08.1.tar.xz";
     };
   };
   kpat = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kpat-18.08.0.tar.xz";
-      sha256 = "0dm9alimp2ibf5fpgbafiaz3lh9irvq2539jp6l61jqcv7801fml";
-      name = "kpat-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kpat-18.08.1.tar.xz";
+      sha256 = "0cmdfmd8pcwwwq4hjcfjscdl36p9gmw9shmqimjnqm60i5ivlz65";
+      name = "kpat-18.08.1.tar.xz";
     };
   };
   kpimtextedit = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kpimtextedit-18.08.0.tar.xz";
-      sha256 = "0ciivvpfcsjzpc620zalx7k5ybh6bf53y19lvr1dgad29j6j871q";
-      name = "kpimtextedit-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kpimtextedit-18.08.1.tar.xz";
+      sha256 = "0v47hb9nvx3bq3ybsqng6546qxk5yi66kd0mm2g7bdx9iq060x0j";
+      name = "kpimtextedit-18.08.1.tar.xz";
     };
   };
   kpkpass = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kpkpass-18.08.0.tar.xz";
-      sha256 = "1wgycyx8nn9kaqbxvlps44g1nzr2qpr6mb7m22q5qcykly0i5wzl";
-      name = "kpkpass-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kpkpass-18.08.1.tar.xz";
+      sha256 = "11d125rd35p44phksxrbzaixasgrsa4z9ym98h69ylyk2mm8h9lk";
+      name = "kpkpass-18.08.1.tar.xz";
     };
   };
   kqtquickcharts = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kqtquickcharts-18.08.0.tar.xz";
-      sha256 = "0ykf5xfzjsanj5rmn5qrhhqfb93i19mrwzsqq8pngaimcqb70cdk";
-      name = "kqtquickcharts-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kqtquickcharts-18.08.1.tar.xz";
+      sha256 = "1qki34i42hzr0zg0hydg4axsakfl7fydl23sn2xlvxyixw8yvcwi";
+      name = "kqtquickcharts-18.08.1.tar.xz";
     };
   };
   krdc = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/krdc-18.08.0.tar.xz";
-      sha256 = "03j3cn088mr8cd6vjkv19k5ayrhgh9mbyr0lkj9rr16z6861avmr";
-      name = "krdc-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/krdc-18.08.1.tar.xz";
+      sha256 = "05fkpwcl1ivprvqy8x1h8akc2fxqnfh80vbis1k1gy8wanizigg9";
+      name = "krdc-18.08.1.tar.xz";
     };
   };
   kreversi = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kreversi-18.08.0.tar.xz";
-      sha256 = "18qqfaxb34b0z6cdz9h2z0hkmr1vv85j7ra8gzhy35k40dgvhgqm";
-      name = "kreversi-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kreversi-18.08.1.tar.xz";
+      sha256 = "1srn6czbhmlglnmnkg9pl9qs1b98ckfralydivk14y40m24s4j0b";
+      name = "kreversi-18.08.1.tar.xz";
     };
   };
   krfb = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/krfb-18.08.0.tar.xz";
-      sha256 = "1zaran8lbhrnlr2nz12xis4b7q0krynzqyix14diiiysrfsmnwqm";
-      name = "krfb-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/krfb-18.08.1.tar.xz";
+      sha256 = "0p4jyl8dya1xvhisv30h86hnjyjc9sqaqj0d2zx447nqm479k9kw";
+      name = "krfb-18.08.1.tar.xz";
     };
   };
   kross-interpreters = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kross-interpreters-18.08.0.tar.xz";
-      sha256 = "1g3fgva8h0s1ld38m38iawjr04bsh572lazizr9a460nwk60nmsi";
-      name = "kross-interpreters-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kross-interpreters-18.08.1.tar.xz";
+      sha256 = "1vkai4v553anbbdb38rccfg65zww93gw2v05kmr0hk62n13lqbh2";
+      name = "kross-interpreters-18.08.1.tar.xz";
     };
   };
   kruler = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kruler-18.08.0.tar.xz";
-      sha256 = "0fv3186xhyvfi9zz48r4facy9x8m8y53qfl7x1rs0y1hq2d2k3nh";
-      name = "kruler-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kruler-18.08.1.tar.xz";
+      sha256 = "13gksm8mpnlvsi5v4a4fpbqb4mxq3l6giycwryi0qrh6bw33xak9";
+      name = "kruler-18.08.1.tar.xz";
     };
   };
   kshisen = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kshisen-18.08.0.tar.xz";
-      sha256 = "11q717m7m37902bchbgpdgsward4w2c9bwjns3xs4c3pyx1w7mg4";
-      name = "kshisen-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kshisen-18.08.1.tar.xz";
+      sha256 = "07w7rps4wh8ibhjnk1s80x9p1mvnl5yw37fnjz3byknk2a10lcm4";
+      name = "kshisen-18.08.1.tar.xz";
     };
   };
   ksirk = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/ksirk-18.08.0.tar.xz";
-      sha256 = "1wxf1g5vfcnvz9n28ja17iawc1997vhz6p75bq84jmls51pxjkzn";
-      name = "ksirk-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/ksirk-18.08.1.tar.xz";
+      sha256 = "0rqjxfrnbbmcx07l0rlyfv8mlka5hm4a59q8zsk6x2vii18yhi49";
+      name = "ksirk-18.08.1.tar.xz";
     };
   };
   ksmtp = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/ksmtp-18.08.0.tar.xz";
-      sha256 = "13jkxrlycgk9qqw5v16i1rax8lwany7fd1n6m2875saxmjm9qi0s";
-      name = "ksmtp-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/ksmtp-18.08.1.tar.xz";
+      sha256 = "0kznmx1qbv3kf0cqxwqgfwy1k79awrf6v46ni97h2fwrw90af9w9";
+      name = "ksmtp-18.08.1.tar.xz";
     };
   };
   ksnakeduel = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/ksnakeduel-18.08.0.tar.xz";
-      sha256 = "0ixbv4b9ngb82f4s58hzjvmmifkjy5v59g76kpb5dv9nqb9x8833";
-      name = "ksnakeduel-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/ksnakeduel-18.08.1.tar.xz";
+      sha256 = "0l0b94mx948zas3q27qn2dpvwfiqyd08zv2izl947prwg4mvmb0q";
+      name = "ksnakeduel-18.08.1.tar.xz";
     };
   };
   kspaceduel = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kspaceduel-18.08.0.tar.xz";
-      sha256 = "0qw3lkiwwrzicyqqr6fs78ljhn5z4vsvcvcn9l5j18qkmi2fd2dk";
-      name = "kspaceduel-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kspaceduel-18.08.1.tar.xz";
+      sha256 = "1fjk0i2f72kzzg321w96989nqw0zfvv9iyv28ywg2pjb62nj9z2x";
+      name = "kspaceduel-18.08.1.tar.xz";
     };
   };
   ksquares = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/ksquares-18.08.0.tar.xz";
-      sha256 = "01g9jkd5cq1ga9k9brr8yiny3idmj88c4n1cm2qi10d9n1vd4fja";
-      name = "ksquares-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/ksquares-18.08.1.tar.xz";
+      sha256 = "0m30yw3hwh9jmwfwabnmjg2l19q4c4b8qcxp2ywp2xzxggvs3ssd";
+      name = "ksquares-18.08.1.tar.xz";
     };
   };
   ksudoku = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/ksudoku-18.08.0.tar.xz";
-      sha256 = "0fc7d6bs0ba51nypx4bn5hylfx9h6xlam7wjw1i7fr2yr8fdv9id";
-      name = "ksudoku-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/ksudoku-18.08.1.tar.xz";
+      sha256 = "1ma0009prjmi59jym0qbfqan7iyp3h4pa7q5sdqykk77mlqm1z81";
+      name = "ksudoku-18.08.1.tar.xz";
     };
   };
   ksystemlog = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/ksystemlog-18.08.0.tar.xz";
-      sha256 = "1m5y8rawhi03vnpdw75npdd7hc830a5b2kkrz1112g959psv00ah";
-      name = "ksystemlog-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/ksystemlog-18.08.1.tar.xz";
+      sha256 = "0c05gzqn51mg7ag6nyir1z3jdy5wd4bfka8lx2gigf6kjqyq4yny";
+      name = "ksystemlog-18.08.1.tar.xz";
     };
   };
   kteatime = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kteatime-18.08.0.tar.xz";
-      sha256 = "18pm15s7q4xwzi61m2l8k6qplf948lq36iv9nh5sf4p6vp6syay2";
-      name = "kteatime-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kteatime-18.08.1.tar.xz";
+      sha256 = "0przpgn2kwvnmfsqxncb1wx4xxr696j6zpgwwx3bhqfd89dc0bgm";
+      name = "kteatime-18.08.1.tar.xz";
     };
   };
   ktimer = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/ktimer-18.08.0.tar.xz";
-      sha256 = "0g81daqdmfsmbnzjq74zxrbnjxjbi6nd6kl0acmjg7832l30m4js";
-      name = "ktimer-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/ktimer-18.08.1.tar.xz";
+      sha256 = "0bwkxl619d4gar2piyk63lds85sz43gghg02cifsjvdvjfqfqbhp";
+      name = "ktimer-18.08.1.tar.xz";
     };
   };
   ktnef = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/ktnef-18.08.0.tar.xz";
-      sha256 = "007gjmjyi5r8110w4fv7n5gl67ddn1dg0pb119qr3r82iba8qiqi";
-      name = "ktnef-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/ktnef-18.08.1.tar.xz";
+      sha256 = "184isgr9c5amwrlzlkji9q0dhl06936r2axdn5kjy2shbn7j7hz2";
+      name = "ktnef-18.08.1.tar.xz";
     };
   };
   ktouch = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/ktouch-18.08.0.tar.xz";
-      sha256 = "0pgckza5cn52aapa39d12dighx698jzb877iiml2n9870whifkms";
-      name = "ktouch-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/ktouch-18.08.1.tar.xz";
+      sha256 = "1z23i7h6s31b3az6fk22whp1zs7np20wji5bcwvck1cv5a0nlpvc";
+      name = "ktouch-18.08.1.tar.xz";
     };
   };
   ktp-accounts-kcm = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/ktp-accounts-kcm-18.08.0.tar.xz";
-      sha256 = "16k7dprj75g2lgsmnnmn9n6zgwnp64zsjci5y2vk0cp8ndlr1j54";
-      name = "ktp-accounts-kcm-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/ktp-accounts-kcm-18.08.1.tar.xz";
+      sha256 = "1pnq61vjvzs3lnxf52ski36arxyy5930gdh3858d7nq66dqcvw19";
+      name = "ktp-accounts-kcm-18.08.1.tar.xz";
     };
   };
   ktp-approver = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/ktp-approver-18.08.0.tar.xz";
-      sha256 = "1nh75yzprhbn0af33qsrs81vxk1brlxjf1jal7p8fpr47qdwhzvd";
-      name = "ktp-approver-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/ktp-approver-18.08.1.tar.xz";
+      sha256 = "0sxp79rscfph5iscbpcqyp08szfipnsb0a3k4idlxfxp8bxv1kr2";
+      name = "ktp-approver-18.08.1.tar.xz";
     };
   };
   ktp-auth-handler = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/ktp-auth-handler-18.08.0.tar.xz";
-      sha256 = "0akmbrn9z0ind3jmz2azixyvr9glai66j6dynszn59svvjxp0fiz";
-      name = "ktp-auth-handler-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/ktp-auth-handler-18.08.1.tar.xz";
+      sha256 = "18lnffiq0wh02j140ya3474sbq6nbb5yj6yavhm1dl0y0pap4mxl";
+      name = "ktp-auth-handler-18.08.1.tar.xz";
     };
   };
   ktp-call-ui = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/ktp-call-ui-18.08.0.tar.xz";
-      sha256 = "0z23vcvz6nyc6klqqys4ivh33j21kww4fgcm5dvvlf940cc9gr3h";
-      name = "ktp-call-ui-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/ktp-call-ui-18.08.1.tar.xz";
+      sha256 = "1mqgwblz86qbdfhlzncc5wzvqwhki4kx5afbihgynjr13d4jjldp";
+      name = "ktp-call-ui-18.08.1.tar.xz";
     };
   };
   ktp-common-internals = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/ktp-common-internals-18.08.0.tar.xz";
-      sha256 = "1sj1k8x8d2lk8xsqckjzg6zz01gqh3yj52yar56lngn1cjnnf6ak";
-      name = "ktp-common-internals-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/ktp-common-internals-18.08.1.tar.xz";
+      sha256 = "1r4ac7q8hpsldwagz4hsslsx962vxq8hmlhjs5r5h5c89r2qhpil";
+      name = "ktp-common-internals-18.08.1.tar.xz";
     };
   };
   ktp-contact-list = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/ktp-contact-list-18.08.0.tar.xz";
-      sha256 = "0yx64rz6k5dv6s4wsadjqc0fcx6j7blhy15cbnh8r2pbwf0ilk2w";
-      name = "ktp-contact-list-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/ktp-contact-list-18.08.1.tar.xz";
+      sha256 = "09zfmqhpm907x1fcd3v7cvbgxx8sy1krjyidand77adl8ayiq59c";
+      name = "ktp-contact-list-18.08.1.tar.xz";
     };
   };
   ktp-contact-runner = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/ktp-contact-runner-18.08.0.tar.xz";
-      sha256 = "0i4zc6bksnb4iajz91wbw140dh7p0rg3hzhi563pn3siy9id442s";
-      name = "ktp-contact-runner-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/ktp-contact-runner-18.08.1.tar.xz";
+      sha256 = "0cv65v2kkfqg6kny3zl3k0kg5af3wbi42jjni0r37rsgaknmg45x";
+      name = "ktp-contact-runner-18.08.1.tar.xz";
     };
   };
   ktp-desktop-applets = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/ktp-desktop-applets-18.08.0.tar.xz";
-      sha256 = "0i5sniidcgkvq2scf76pkshrj89gvkzjjslgqaxvqrgvyagsaski";
-      name = "ktp-desktop-applets-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/ktp-desktop-applets-18.08.1.tar.xz";
+      sha256 = "04pkknx46zkn5v7946s23n4m1gr28w1cwpsyz8mkww8xfxk52x2y";
+      name = "ktp-desktop-applets-18.08.1.tar.xz";
     };
   };
   ktp-filetransfer-handler = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/ktp-filetransfer-handler-18.08.0.tar.xz";
-      sha256 = "15mifrbxxr8lvq7nflxwsz46ywnqmjv1d3irzq1xfcpl47907qhg";
-      name = "ktp-filetransfer-handler-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/ktp-filetransfer-handler-18.08.1.tar.xz";
+      sha256 = "07m25ydhpa92d6pqgrhj6mvhirsf6c1i1xnxjmybrmf8v4cy1z8v";
+      name = "ktp-filetransfer-handler-18.08.1.tar.xz";
     };
   };
   ktp-kded-module = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/ktp-kded-module-18.08.0.tar.xz";
-      sha256 = "12rnnf2nm2kn2904b475qh9ql50yx583jga31389l012whm4gqqf";
-      name = "ktp-kded-module-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/ktp-kded-module-18.08.1.tar.xz";
+      sha256 = "0f8m3avph7w8yrlgpwsf6ykgbzzj7mrh973v2w6gw2iwz2ps0bbm";
+      name = "ktp-kded-module-18.08.1.tar.xz";
     };
   };
   ktp-send-file = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/ktp-send-file-18.08.0.tar.xz";
-      sha256 = "0m8p8w4hqanccf7g0za5yh30z2nxv8dxi09mg1fniypqaw4cp2n7";
-      name = "ktp-send-file-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/ktp-send-file-18.08.1.tar.xz";
+      sha256 = "1d9k2xmyrxk4s6dr1a0dgi4j4j5y5f73r57aldr5k821w425ssmg";
+      name = "ktp-send-file-18.08.1.tar.xz";
     };
   };
   ktp-text-ui = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/ktp-text-ui-18.08.0.tar.xz";
-      sha256 = "04ygny9m823h30hi5qgjz1nk7dj44hdqa9ga0ai9cazxnavvsx57";
-      name = "ktp-text-ui-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/ktp-text-ui-18.08.1.tar.xz";
+      sha256 = "07ydrwsg2xv6vxsp6n2li6d5dfc92bdikdjqq266dqb35mb6wbx4";
+      name = "ktp-text-ui-18.08.1.tar.xz";
     };
   };
   ktuberling = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/ktuberling-18.08.0.tar.xz";
-      sha256 = "1m9mdv7hdsrnzjcdnmqrl82mafa9psbr5k7b6m3llh95f61b4jpn";
-      name = "ktuberling-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/ktuberling-18.08.1.tar.xz";
+      sha256 = "176fdw99ni02nz3kv62dbiw7887a5kvmxsm8bg3viwyymcs8aay8";
+      name = "ktuberling-18.08.1.tar.xz";
     };
   };
   kturtle = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kturtle-18.08.0.tar.xz";
-      sha256 = "0mwhnsbwj92zrgyjdfi18pxsfyaxa8pzdmh5k20m0jrh76gkhjr0";
-      name = "kturtle-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kturtle-18.08.1.tar.xz";
+      sha256 = "1r3w5hbzw2f4794j690wgm7x3dfxfyqnaylhjcrxqmqydkc54w2c";
+      name = "kturtle-18.08.1.tar.xz";
     };
   };
   kubrick = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kubrick-18.08.0.tar.xz";
-      sha256 = "1affzpwq45r1cqb9ra8w24rrszvvzxiik4ng6jf54dik8sk7wrnn";
-      name = "kubrick-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kubrick-18.08.1.tar.xz";
+      sha256 = "0nwd0n8rx7dzbwjvkhnmvb2g4g7lasng7745klcdwk40ww223b60";
+      name = "kubrick-18.08.1.tar.xz";
     };
   };
   kwalletmanager = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kwalletmanager-18.08.0.tar.xz";
-      sha256 = "10yri44d68n6hc4dn78wgqzw394krwjqr6azwd6qgxjp6asc8n69";
-      name = "kwalletmanager-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kwalletmanager-18.08.1.tar.xz";
+      sha256 = "08hr7ii6dybbmipppay2gxiwak8rqbrxrwbjz0206cyav16bbp7q";
+      name = "kwalletmanager-18.08.1.tar.xz";
     };
   };
   kwave = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kwave-18.08.0.tar.xz";
-      sha256 = "0aimhn8hgjnwhv0j2hiyiqgh5bslm7rs13yc8sk0kh1vix6909mp";
-      name = "kwave-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kwave-18.08.1.tar.xz";
+      sha256 = "1gsxzpf8ij7bw6s4dbdl8kvyz21wy76dxi4wqwdggi29gvxzpi76";
+      name = "kwave-18.08.1.tar.xz";
     };
   };
   kwordquiz = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/kwordquiz-18.08.0.tar.xz";
-      sha256 = "1aghybg72anwj6vz3s3zr5i5wflackvfwl9n39mvxddm4ajnw1km";
-      name = "kwordquiz-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/kwordquiz-18.08.1.tar.xz";
+      sha256 = "0bkxvw2g64r2k87m05mdxwh25lbixcga406x9i64z5dmgpsb7d9m";
+      name = "kwordquiz-18.08.1.tar.xz";
     };
   };
   libgravatar = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/libgravatar-18.08.0.tar.xz";
-      sha256 = "0yqd99lax1w5r1fy4rmbv9lk988zvq2yydkrdgh8vymxjljg5xa4";
-      name = "libgravatar-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/libgravatar-18.08.1.tar.xz";
+      sha256 = "0axmf5ph5ahs4124fi016hjj559472k2apgfsbnf9q80d6y25lgf";
+      name = "libgravatar-18.08.1.tar.xz";
     };
   };
   libkcddb = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/libkcddb-18.08.0.tar.xz";
-      sha256 = "1ns90vcbp21mwsbvndmk97fpd8n7152iw783q7bqfy1n3ggzkz5x";
-      name = "libkcddb-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/libkcddb-18.08.1.tar.xz";
+      sha256 = "1qy3zid9n7irkiz6vizmhwljrg3wcxxgcch58nmacg7fdxwcnnn1";
+      name = "libkcddb-18.08.1.tar.xz";
     };
   };
   libkcompactdisc = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/libkcompactdisc-18.08.0.tar.xz";
-      sha256 = "0pgn65knay7fgk2zdgqd29wfhqk9x4zlpp4ywjwb2zsvzz51j9f8";
-      name = "libkcompactdisc-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/libkcompactdisc-18.08.1.tar.xz";
+      sha256 = "075i81gpb4c1wgzbv6nnvhgkz2sww0y5zqh8sxw67r46rz4rjwak";
+      name = "libkcompactdisc-18.08.1.tar.xz";
     };
   };
   libkdcraw = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/libkdcraw-18.08.0.tar.xz";
-      sha256 = "0xpkkgxsmvrldnprzqrxaz67jb5cv6vndg8flbkagvp0s7mnw56x";
-      name = "libkdcraw-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/libkdcraw-18.08.1.tar.xz";
+      sha256 = "0fp01s9fw3m9li5v8cd2zmvy6xrysdqddzcal1xm5df2qj6xnk1d";
+      name = "libkdcraw-18.08.1.tar.xz";
     };
   };
   libkdegames = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/libkdegames-18.08.0.tar.xz";
-      sha256 = "1jl3snqyg3p3l4hddg7ag2mkgi49qvzml8p82zdn3sf5fhka1g70";
-      name = "libkdegames-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/libkdegames-18.08.1.tar.xz";
+      sha256 = "05xqmg0g08gd45d1q1wblyj5002fvcs72iazif6j7lj9zy60x3qw";
+      name = "libkdegames-18.08.1.tar.xz";
     };
   };
   libkdepim = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/libkdepim-18.08.0.tar.xz";
-      sha256 = "1gfwfmr5iqkwb490d3mm32892q47pc73b6c8zygm7mn5cjb5376l";
-      name = "libkdepim-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/libkdepim-18.08.1.tar.xz";
+      sha256 = "0rq7y5r15d1r8s9v1mip780xyh11011j1w2id0cbll9a3fhjfgy9";
+      name = "libkdepim-18.08.1.tar.xz";
     };
   };
   libkeduvocdocument = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/libkeduvocdocument-18.08.0.tar.xz";
-      sha256 = "1i5vmjfczd71654cpxd11djwk852aqg5lkn98pa8qvjy7v85jynn";
-      name = "libkeduvocdocument-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/libkeduvocdocument-18.08.1.tar.xz";
+      sha256 = "1nchaip5rcgvazbn3bsiycsa5wcvqj3c0xz48isaz1rmirw4dkan";
+      name = "libkeduvocdocument-18.08.1.tar.xz";
     };
   };
   libkexiv2 = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/libkexiv2-18.08.0.tar.xz";
-      sha256 = "0cdh5wd2lvm9m4nyz2yv5ksszk1pc8ajzwq9c467m74lvb1p2had";
-      name = "libkexiv2-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/libkexiv2-18.08.1.tar.xz";
+      sha256 = "0v0g626hjpksb8kxgp0kzx84a6hf3qq66if2hxh82kis5xdzbj4l";
+      name = "libkexiv2-18.08.1.tar.xz";
     };
   };
   libkgapi = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/libkgapi-18.08.0.tar.xz";
-      sha256 = "1aax7djyp1104b8sbrpfhf5c8j30g3hac973lpblfqg0yhkd9lw0";
-      name = "libkgapi-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/libkgapi-18.08.1.tar.xz";
+      sha256 = "0rsfk8n4z67m371vnglin16l33ankv0i60l07c8znr7jllkyzf7r";
+      name = "libkgapi-18.08.1.tar.xz";
     };
   };
   libkgeomap = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/libkgeomap-18.08.0.tar.xz";
-      sha256 = "00hjz7amg2rf5s74465s44ac6kd33q4mvsa9ynpljisll5avlhan";
-      name = "libkgeomap-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/libkgeomap-18.08.1.tar.xz";
+      sha256 = "1mnf43bpklyxh1schphndc7izknnzn3ymwppq4anysb9k603s7n4";
+      name = "libkgeomap-18.08.1.tar.xz";
     };
   };
   libkipi = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/libkipi-18.08.0.tar.xz";
-      sha256 = "1g34ryzr4vx5657c4j4w3b57n5ir6miwp1k60qk7av73qsik7a7d";
-      name = "libkipi-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/libkipi-18.08.1.tar.xz";
+      sha256 = "166njf2w6qy30xiccagnpsb7ggcvqmdkp1djahfwmvjwqqxqq9ic";
+      name = "libkipi-18.08.1.tar.xz";
     };
   };
   libkleo = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/libkleo-18.08.0.tar.xz";
-      sha256 = "0vscfz794yp9hnrn4r4phbip2mqi3jvi41m5mpjd5pw11644d66c";
-      name = "libkleo-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/libkleo-18.08.1.tar.xz";
+      sha256 = "1q1s335rmh2k2hmx4k67ik9wy2wa4n271fv21k6sg0l3h58z3fc6";
+      name = "libkleo-18.08.1.tar.xz";
     };
   };
   libkmahjongg = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/libkmahjongg-18.08.0.tar.xz";
-      sha256 = "0xzv7vawwq0gm10h9mfrsy5m5zpk1n3s338al0h9vskvhznphy83";
-      name = "libkmahjongg-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/libkmahjongg-18.08.1.tar.xz";
+      sha256 = "0vvmm0mp2s5bl28vn7nq49b3izfy1myxx7c55qq6h3pmml70alp9";
+      name = "libkmahjongg-18.08.1.tar.xz";
     };
   };
   libkomparediff2 = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/libkomparediff2-18.08.0.tar.xz";
-      sha256 = "0nx66198vn6zrv012i4p2ghc2slxqccfb3fhd9zszzpnyd08zs27";
-      name = "libkomparediff2-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/libkomparediff2-18.08.1.tar.xz";
+      sha256 = "114w3xcd31i0y5fk4cr9d075mmvx746hsnm6grc8mkhi6diplxs1";
+      name = "libkomparediff2-18.08.1.tar.xz";
     };
   };
   libksane = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/libksane-18.08.0.tar.xz";
-      sha256 = "09wx6haaw0rjcjdh2c05b2zrpz57zlhx9x9jy9hw28byrf71i0k0";
-      name = "libksane-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/libksane-18.08.1.tar.xz";
+      sha256 = "0vi0kph8klnm3br9f9ifs5zgnncw83wrvk3kmxc412i28216qgf1";
+      name = "libksane-18.08.1.tar.xz";
     };
   };
   libksieve = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/libksieve-18.08.0.tar.xz";
-      sha256 = "0xnjw2q1hlmrlzdi776459v5w3l88bxpzzpqc93xmq39xh7xqq7b";
-      name = "libksieve-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/libksieve-18.08.1.tar.xz";
+      sha256 = "06agi9wkj455sx0inn6hiahmqlfjaa3ffr8i7zfs2rfzw78qvg20";
+      name = "libksieve-18.08.1.tar.xz";
     };
   };
   lokalize = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/lokalize-18.08.0.tar.xz";
-      sha256 = "17h634abxzg3kx182qxdx6gyz0knl61yn32nlf76l0cv0bqc2xz5";
-      name = "lokalize-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/lokalize-18.08.1.tar.xz";
+      sha256 = "1k5vn3jnvqvdc4bn1hdfjjp3snfcpc5i3925kns760vpvdm4a9in";
+      name = "lokalize-18.08.1.tar.xz";
     };
   };
   lskat = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/lskat-18.08.0.tar.xz";
-      sha256 = "05ckhh8270hjj94ks9zg6pypa2dm1d2r4l219gq456rrhyj9zv13";
-      name = "lskat-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/lskat-18.08.1.tar.xz";
+      sha256 = "11snjlsmcsh4nkcfdzjdl0jia8g350xj2hgilqk5b9jir0j8rsyp";
+      name = "lskat-18.08.1.tar.xz";
     };
   };
   mailcommon = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/mailcommon-18.08.0.tar.xz";
-      sha256 = "06j66326wbvgnmacmbhvszbhdcw6h3pzxwcnbbz66n0zz2y4m5gd";
-      name = "mailcommon-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/mailcommon-18.08.1.tar.xz";
+      sha256 = "1791ph0r5b9a0k2qgjrbxsz8drg23v5bdn832d695yy9q9rgxvwx";
+      name = "mailcommon-18.08.1.tar.xz";
     };
   };
   mailimporter = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/mailimporter-18.08.0.tar.xz";
-      sha256 = "0gywzd882mkjf9q07wg2hi4js4gqvyjxf3y0lgq22k5bd5gpfxbs";
-      name = "mailimporter-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/mailimporter-18.08.1.tar.xz";
+      sha256 = "1rnmhfi54a9vlmvqjv2hsj967q886dkbv6nqn5imz11s8a97anb9";
+      name = "mailimporter-18.08.1.tar.xz";
     };
   };
   marble = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/marble-18.08.0.tar.xz";
-      sha256 = "1ylcdnf0rw0a51jcy183p9xcir4j7jlm6dmhk4k13zvzv16pcwvf";
-      name = "marble-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/marble-18.08.1.tar.xz";
+      sha256 = "1vc6l68fvqdncvpmd8995v4hawi4w4zn3yjfpnghgvmvs30bak4p";
+      name = "marble-18.08.1.tar.xz";
     };
   };
   mbox-importer = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/mbox-importer-18.08.0.tar.xz";
-      sha256 = "08n46q2xxvjbbcr4754x7qw4p3yffmrpvzxi7k2i48ifxhs2awqj";
-      name = "mbox-importer-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/mbox-importer-18.08.1.tar.xz";
+      sha256 = "1sqn11404xc9k76kz9zmm526dkzlk1ywnf15128plvyj6576wwaq";
+      name = "mbox-importer-18.08.1.tar.xz";
     };
   };
   messagelib = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/messagelib-18.08.0.tar.xz";
-      sha256 = "0d1bb0n9izwlk9fbwyf1hvwkrng1b6im574fxpkgk73ivb72ppfx";
-      name = "messagelib-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/messagelib-18.08.1.tar.xz";
+      sha256 = "17z8c60dnhwzgpls3b6hsvyjgjpjybw7cfkc05xn1yihi5gr2rxs";
+      name = "messagelib-18.08.1.tar.xz";
     };
   };
   minuet = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/minuet-18.08.0.tar.xz";
-      sha256 = "0gvla9ig912wrg6vvdmqv2hyybr08a45crx69l31hcd13h9pmyg6";
-      name = "minuet-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/minuet-18.08.1.tar.xz";
+      sha256 = "06jwrra25v2al0jw7dvp7h41jmw48d784ky74xi9lx4ma4h4vsvg";
+      name = "minuet-18.08.1.tar.xz";
     };
   };
   okular = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/okular-18.08.0.tar.xz";
-      sha256 = "11wwh0vb1l2dw2zhcg6f92y7vb5i5kaqwi8kszz8sd874ydpp8pn";
-      name = "okular-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/okular-18.08.1.tar.xz";
+      sha256 = "1in053a3ir4qw2fabrv69g6kxr2hmdwq360kikmwdgsb6a7a8sjk";
+      name = "okular-18.08.1.tar.xz";
     };
   };
   palapeli = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/palapeli-18.08.0.tar.xz";
-      sha256 = "1a1k44q62raw1kxkyg8cspvwxzr1islbwzcb7sj63cmzsmwfhkg1";
-      name = "palapeli-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/palapeli-18.08.1.tar.xz";
+      sha256 = "17c6xlmjz8nnnvp4xa27yzrx2vrsjlznjm2awj70z923js5kzfhl";
+      name = "palapeli-18.08.1.tar.xz";
     };
   };
   parley = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/parley-18.08.0.tar.xz";
-      sha256 = "1cy58fs1jaz1zga4dwfr80m0p6cgzc5ip26ds2x2lpygx7pbjcc6";
-      name = "parley-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/parley-18.08.1.tar.xz";
+      sha256 = "1bwj806qm2g3n57f1svaz6x5y238xl0b3pmp4cg29a9c090gcj0r";
+      name = "parley-18.08.1.tar.xz";
     };
   };
   picmi = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/picmi-18.08.0.tar.xz";
-      sha256 = "1x2ya0vwxwc56rfskl3l83nw0vpdh1lzshh0sdal3rfw0s8w895x";
-      name = "picmi-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/picmi-18.08.1.tar.xz";
+      sha256 = "0bc3zs5ql1yfriq3pbxc0cb010n8rygqglpz8c2qinnsgf9wb305";
+      name = "picmi-18.08.1.tar.xz";
     };
   };
   pimcommon = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/pimcommon-18.08.0.tar.xz";
-      sha256 = "1j6pj7f52ya0jgzq97g65zl3mpv7hn002flv35qlg5srzdllm3pd";
-      name = "pimcommon-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/pimcommon-18.08.1.tar.xz";
+      sha256 = "0h8g374bdnf9nm43flz9wg1ddcdppqxng1vq58vqlviiy32qf86p";
+      name = "pimcommon-18.08.1.tar.xz";
     };
   };
   pim-data-exporter = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/pim-data-exporter-18.08.0.tar.xz";
-      sha256 = "1spbkwv9kqzky958nymr5plz8rgzxbn6xzgy7k9pkpvynd1a54hz";
-      name = "pim-data-exporter-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/pim-data-exporter-18.08.1.tar.xz";
+      sha256 = "01spb3lfs3rsl1h6d6lrszssj1rnbv1p21np75x4rm7qxzdn7wy7";
+      name = "pim-data-exporter-18.08.1.tar.xz";
     };
   };
   pim-sieve-editor = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/pim-sieve-editor-18.08.0.tar.xz";
-      sha256 = "0nqv530rlamlngxwy3cpbyjj75akx3k9lcifgymlbm4ipp9k125c";
-      name = "pim-sieve-editor-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/pim-sieve-editor-18.08.1.tar.xz";
+      sha256 = "09npw10dgzk7z3022d1np4qvmbwb07lxjj2nd4k1hxnkcjaz242d";
+      name = "pim-sieve-editor-18.08.1.tar.xz";
     };
   };
   poxml = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/poxml-18.08.0.tar.xz";
-      sha256 = "04sy8v3n12asz8hfh107y5irhxzlpkzgc3zjw8qfygflzg9a48cz";
-      name = "poxml-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/poxml-18.08.1.tar.xz";
+      sha256 = "1zazxxh4j8ihlb5v33b5wgj4ddqqhd809lzhxq28dq0mg7wvqcm8";
+      name = "poxml-18.08.1.tar.xz";
     };
   };
   print-manager = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/print-manager-18.08.0.tar.xz";
-      sha256 = "1mi2aqsh5irlnlgkajkkxhazyafhpndrxckcc2kmrh00d4cxhivn";
-      name = "print-manager-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/print-manager-18.08.1.tar.xz";
+      sha256 = "0ixamp14m3p13j1c6nc9x6043600k2anfw12mn1yg4f8q5fb6dnf";
+      name = "print-manager-18.08.1.tar.xz";
     };
   };
   rocs = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/rocs-18.08.0.tar.xz";
-      sha256 = "1c3i11mg6xs64wjyph51hqr6j428hh71ljdq4ajhysql7l5kbhhx";
-      name = "rocs-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/rocs-18.08.1.tar.xz";
+      sha256 = "1kchipj3q29zfp60l81q52m6gb4fcmawcl42rvzr4mxf4h7dw72n";
+      name = "rocs-18.08.1.tar.xz";
     };
   };
   signon-kwallet-extension = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/signon-kwallet-extension-18.08.0.tar.xz";
-      sha256 = "024ay0z9inbf7k54iq5v78cxh4q8x1ypvd8r3w80dyygjw2dw743";
-      name = "signon-kwallet-extension-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/signon-kwallet-extension-18.08.1.tar.xz";
+      sha256 = "1wf9xffjxyqn5vwwnp4wbn22lby5vc396snc3imdp1bx4z5ffck4";
+      name = "signon-kwallet-extension-18.08.1.tar.xz";
     };
   };
   spectacle = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/spectacle-18.08.0.tar.xz";
-      sha256 = "1gc2qza529jld1zngzs98zmd3734h13phviswqpg93qnbr9hxskr";
-      name = "spectacle-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/spectacle-18.08.1.tar.xz";
+      sha256 = "0xvw6l0712gmb3dvq9hnyp7r160rvmvmm3mvgapj4z5c00m8a1d7";
+      name = "spectacle-18.08.1.tar.xz";
     };
   };
   step = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/step-18.08.0.tar.xz";
-      sha256 = "15hjbisv3adsn0vavlcl3iy3vz6mf1fv0qj4ykmxckblcyhm1mgg";
-      name = "step-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/step-18.08.1.tar.xz";
+      sha256 = "1b7cvrhdbfkqg72phbgbl15v8c4nr6b1b9fw8i1vam028a97bq8z";
+      name = "step-18.08.1.tar.xz";
     };
   };
   svgpart = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/svgpart-18.08.0.tar.xz";
-      sha256 = "0q71nn1xsdh7ag60szl836lif9ywnv3dlv8w0sn3zfa7yv0cbraa";
-      name = "svgpart-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/svgpart-18.08.1.tar.xz";
+      sha256 = "07mm5vzd5lslr5x7r71ac3hp3s779i89nz4d84550pk0qdn3qpmb";
+      name = "svgpart-18.08.1.tar.xz";
     };
   };
   sweeper = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/sweeper-18.08.0.tar.xz";
-      sha256 = "1j87cb9bbfn42f2xn9k6j8ailgn18b5ribjf4sgglx2h1l3vpq51";
-      name = "sweeper-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/sweeper-18.08.1.tar.xz";
+      sha256 = "1vmdk38j03qj0l5gc27dc242j0cj7k2c5zfq2xrvjb44rxfirdy4";
+      name = "sweeper-18.08.1.tar.xz";
     };
   };
   syndication = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/syndication-18.08.0.tar.xz";
-      sha256 = "17j3ks7bmr3p71lvrm8bzbfai5sw3frwrwl0ckbg1rwhkbsi3d71";
-      name = "syndication-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/syndication-18.08.1.tar.xz";
+      sha256 = "0lirbr8zb1j5kalki6v98wmcg5z25xj1wamszd81h9wlkgk5aqd0";
+      name = "syndication-18.08.1.tar.xz";
     };
   };
   umbrello = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/umbrello-18.08.0.tar.xz";
-      sha256 = "0rs92l6disjha8w5nx05qjbidib4a9yyab7f4cd4sjnjfcw3i1px";
-      name = "umbrello-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/umbrello-18.08.1.tar.xz";
+      sha256 = "16p283jz5v5j40i1i7c9fk36bhs2k30rk17l3nikmf0qd7j5n6ir";
+      name = "umbrello-18.08.1.tar.xz";
     };
   };
   zeroconf-ioslave = {
-    version = "18.08.0";
+    version = "18.08.1";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.08.0/src/zeroconf-ioslave-18.08.0.tar.xz";
-      sha256 = "05j8k8la4gcydazzhhxq8700w1l4q57yylcar1wzs108icp03rkm";
-      name = "zeroconf-ioslave-18.08.0.tar.xz";
+      url = "${mirror}/stable/applications/18.08.1/src/zeroconf-ioslave-18.08.1.tar.xz";
+      sha256 = "0m1yhm17chz49xs6nh1n8dqdkbnr8kkig9p2f9nmvypnfagygpsi";
+      name = "zeroconf-ioslave-18.08.1.tar.xz";
     };
   };
 }
diff --git a/pkgs/applications/misc/calibre/default.nix b/pkgs/applications/misc/calibre/default.nix
index d66a778c1cd9..1ad236f0d13f 100644
--- a/pkgs/applications/misc/calibre/default.nix
+++ b/pkgs/applications/misc/calibre/default.nix
@@ -5,12 +5,12 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "3.30.0";
+  version = "3.31.0";
   name = "calibre-${version}";
 
   src = fetchurl {
     url = "https://download.calibre-ebook.com/${version}/${name}.tar.xz";
-    sha256 = "0j7w63kniqnpr8v1aldzbim2dyrk79n23mzw9y56jqd0k47m8zfz";
+    sha256 = "1xg1bx0klvrywqry5rhci37fr7shpvb2wbx4bva20vhqkal169rw";
   };
 
   patches = [
diff --git a/pkgs/applications/misc/dbeaver/default.nix b/pkgs/applications/misc/dbeaver/default.nix
index 35698a323319..77cad142d41d 100644
--- a/pkgs/applications/misc/dbeaver/default.nix
+++ b/pkgs/applications/misc/dbeaver/default.nix
@@ -7,7 +7,7 @@
 
 stdenv.mkDerivation rec {
   name = "dbeaver-ce-${version}";
-  version = "5.1.6";
+  version = "5.2.0";
 
   desktopItem = makeDesktopItem {
     name = "dbeaver";
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://dbeaver.io/files/${version}/dbeaver-ce-${version}-linux.gtk.x86_64.tar.gz";
-    sha256 = "1zypadnyhinm6mfv91s7zs2s55bhzgkqhl6ai6x3yqwhvayc02nn";
+    sha256 = "13j2qc4g24d2gmkxj9zpqrcbai9aq8rassrq3c9mp9ir6sf4q0jf";
   };
 
   installPhase = ''
diff --git a/pkgs/applications/misc/electrum/default.nix b/pkgs/applications/misc/electrum/default.nix
index ed2f0626e5d2..95754579c487 100644
--- a/pkgs/applications/misc/electrum/default.nix
+++ b/pkgs/applications/misc/electrum/default.nix
@@ -1,12 +1,24 @@
 { stdenv, fetchurl, python3, python3Packages, zbar }:
 
+let
+  qdarkstyle = python3Packages.buildPythonPackage rec {
+    pname = "QDarkStyle";
+    version = "2.5.4";
+    src = python3Packages.fetchPypi {
+      inherit pname version;
+      sha256 = "1w715m1i5pycfqcpkrggpn0rs9cakx6cm5v8rggcxnf4p0i0kdiy";
+    };
+    doCheck = false; # no tests
+  };
+in
+
 python3Packages.buildPythonApplication rec {
   name = "electrum-${version}";
-  version = "3.1.3";
+  version = "3.2.3";
 
   src = fetchurl {
     url = "https://download.electrum.org/${version}/Electrum-${version}.tar.gz";
-    sha256 = "05m28yd3zr9awjhaqikf4rg08j5i4ygm750ip1z27wl446sysniy";
+    sha256 = "022iw4cq0c009wvqn7wd815jc0nv8198lq3cawn8h6c28hw2mhs1";
   };
 
   propagatedBuildInputs = with python3Packages; [
@@ -17,12 +29,14 @@ python3Packages.buildPythonApplication rec {
     pbkdf2
     protobuf
     pyaes
-    pycrypto
+    pycryptodomex
     pyqt5
     pysocks
+    qdarkstyle
     qrcode
     requests
     tlslite
+    typing
 
     # plugins
     keepkey
@@ -35,10 +49,10 @@ python3Packages.buildPythonApplication rec {
 
   preBuild = ''
     sed -i 's,usr_share = .*,usr_share = "'$out'/share",g' setup.py
-    pyrcc5 icons.qrc -o gui/qt/icons_rc.py
+    pyrcc5 icons.qrc -o electrum/gui/qt/icons_rc.py
     # Recording the creation timestamps introduces indeterminism to the build
-    sed -i '/Created: .*/d' gui/qt/icons_rc.py
-    sed -i "s|name = 'libzbar.*'|name='${zbar}/lib/libzbar.so'|" lib/qrscanner.py
+    sed -i '/Created: .*/d' electrum/gui/qt/icons_rc.py
+    sed -i "s|name = 'libzbar.*'|name='${zbar}/lib/libzbar.so'|" electrum/qrscanner.py
   '';
 
   postInstall = ''
diff --git a/pkgs/applications/misc/glava/default.nix b/pkgs/applications/misc/glava/default.nix
index e0535eeca387..1eb0d0048f64 100644
--- a/pkgs/applications/misc/glava/default.nix
+++ b/pkgs/applications/misc/glava/default.nix
@@ -1,24 +1,14 @@
-{ stdenv, fetchurl, writeScript, fetchFromGitHub
+{ stdenv, fetchgit, fetchurl, writeScript
 , libGL, libX11, libXext, python3, libXrandr, libXrender, libpulseaudio, libXcomposite
 , enableGlfw ? false, glfw }:
 
 let
   inherit (stdenv.lib) optional makeLibraryPath;
 
-  version = "1.4.5";
-  gladVersion = "0.1.24";
-  # glad
-  # https://github.com/wacossusca34/glava/issues/46#issuecomment-397816520
-  glad = fetchFromGitHub {
-    owner = "Dav1dde";
-    repo = "glad";
-    rev = "v${gladVersion}";
-    sha256 = "0s2c9w064kqa5i07w8zmvgpg1pa3wj86l1nhgw7w56cjhq7cf8h8";
-  };
   # gl.xml
   gl = fetchurl {
-    url = https://raw.githubusercontent.com/KhronosGroup/OpenGL-Registry/a24f3f7a4c924fdbc666024f99c70e5b8e34c819/xml/gl.xml;
-    sha256 = "1mskxjmhb35m8qv255pibf633d8sn1w9rdsf0lj75bhlgy0zi5c7";
+    url = https://raw.githubusercontent.com/KhronosGroup/OpenGL-Registry/56312cfe680e4be5ae61bbf1c628e420f8731718/xml/gl.xml;
+    sha256 = "1c45bcgaxiic5gmb3gkrd9qcvascvij97vz5y6fc3a2y7x3gjc5l";
   };
   # EGL 1.5
   egl = fetchurl {
@@ -43,12 +33,12 @@ let
 in
   stdenv.mkDerivation rec {
     name = "glava-${version}";
+    version = "1.5.1";
 
-    src = fetchFromGitHub {
-      owner = "wacossusca34";
-      repo = "glava";
+    src = fetchgit {
+      url = "https://github.com/wacossusca34/glava.git";
       rev = "v${version}";
-      sha256 = "1zfw8samrzxxbny709rcdz1z77cw1cd46wlfnf7my02kipmqn0nr";
+      sha256 = "1k8x0a0g2pm7ficsk4az9s7mjbm85a987apjg5c4y6iyldxgd6sb";
     };
 
     buildInputs = [
@@ -65,7 +55,6 @@ in
     ];
 
     patchPhase = ''
-      cp -r --no-preserve=all ${glad}/* glad
       mkdir -p glad/include/KHR
 
       cp ${gl} glad/gl.xml
diff --git a/pkgs/applications/misc/josm/default.nix b/pkgs/applications/misc/josm/default.nix
index e753c5ded95c..fc10bc852e5c 100644
--- a/pkgs/applications/misc/josm/default.nix
+++ b/pkgs/applications/misc/josm/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "josm-${version}";
-  version = "14066";
+  version = "14178";
 
   src = fetchurl {
     url = "https://josm.openstreetmap.de/download/josm-snapshot-${version}.jar";
-    sha256 = "06mhaz5vr19ydqc5irhgcbl0s8fifwvaq60iz2nsnlxb1pw89xia";
+    sha256 = "08an4s8vbcd8vyinnvd7cxmgnrsy47j78a94nk6vq244gp7v5n0r";
   };
 
   buildInputs = [ jre10 makeWrapper ];
diff --git a/pkgs/applications/misc/khal/default.nix b/pkgs/applications/misc/khal/default.nix
index ede85aeada5a..f9c929c21bfb 100644
--- a/pkgs/applications/misc/khal/default.nix
+++ b/pkgs/applications/misc/khal/default.nix
@@ -46,6 +46,10 @@ in with python.pkgs; buildPythonApplication rec {
   nativeBuildInputs = [ setuptools_scm pkgs.glibcLocales ];
   checkInputs = [ pytest ];
 
+  postInstall = ''
+    install -D misc/__khal $out/share/zsh/site-functions/__khal
+  '';
+
   checkPhase = ''
     py.test
   '';
diff --git a/pkgs/applications/misc/kitty/default.nix b/pkgs/applications/misc/kitty/default.nix
index c34167b4ddb8..70b580cd0f8a 100644
--- a/pkgs/applications/misc/kitty/default.nix
+++ b/pkgs/applications/misc/kitty/default.nix
@@ -2,12 +2,12 @@
   fontconfig, pkgconfig, ncurses, imagemagick, xsel,
   libstartup_notification, libX11, libXrandr, libXinerama, libXcursor,
   libxkbcommon, libXi, libXext, wayland-protocols, wayland,
-  which
+  which, dbus
 }:
 
 with python3Packages;
 buildPythonApplication rec {
-  version = "0.11.3";
+  version = "0.12.0";
   name = "kitty-${version}";
   format = "other";
 
@@ -15,13 +15,13 @@ buildPythonApplication rec {
     owner = "kovidgoyal";
     repo = "kitty";
     rev = "v${version}";
-    sha256 = "1fql8ayxvip8hgq9gy0dhqfvngv13gh5bf71vnc3agd80kzq1n73";
+    sha256 = "1n2pi9pc903inls1fvz257q7wpif76rj394qkgq7pixpisijdyjm";
   };
 
   buildInputs = [
     fontconfig glfw ncurses libunistring harfbuzz libX11
     libXrandr libXinerama libXcursor libxkbcommon libXi libXext
-    wayland-protocols wayland
+    wayland-protocols wayland dbus
   ];
 
   nativeBuildInputs = [ pkgconfig which sphinx ];
diff --git a/pkgs/applications/misc/lilyterm/default.nix b/pkgs/applications/misc/lilyterm/default.nix
index 72cb1e85802a..948ae7b14a11 100644
--- a/pkgs/applications/misc/lilyterm/default.nix
+++ b/pkgs/applications/misc/lilyterm/default.nix
@@ -1,13 +1,12 @@
-{ stdenv, fetchurl, fetchFromGitHub
+{ stdenv, lib, fetchurl, fetchFromGitHub
 , pkgconfig
 , autoconf, automake, intltool, gettext
 , gtk, vte
 
-# "stable" or "git"
 , flavour ? "stable"
 }:
 
-assert flavour == "stable" || flavour == "git";
+assert lib.assertOneOf "flavour" flavour [ "stable"  "git" ];
 
 let
   stuff =
diff --git a/pkgs/applications/misc/mediainfo-gui/default.nix b/pkgs/applications/misc/mediainfo-gui/default.nix
index b6ec3305cb3a..3ff07ba20084 100644
--- a/pkgs/applications/misc/mediainfo-gui/default.nix
+++ b/pkgs/applications/misc/mediainfo-gui/default.nix
@@ -2,11 +2,11 @@
 , desktop-file-utils, libSM, imagemagick }:
 
 stdenv.mkDerivation rec {
-  version = "18.05";
+  version = "18.08";
   name = "mediainfo-gui-${version}";
   src = fetchurl {
     url = "https://mediaarea.net/download/source/mediainfo/${version}/mediainfo_${version}.tar.xz";
-    sha256 = "0rgsfplisf729n1j3fyg82wpw88aahisrddn5wq9yx8hz6m96h6r";
+    sha256 = "0l4bhrgwfn3da6cr0jz5vs17sk7k0bc26nk7hymv04xifns5999n";
   };
 
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
diff --git a/pkgs/applications/misc/mediainfo/default.nix b/pkgs/applications/misc/mediainfo/default.nix
index 5b2f8125f72c..d222ad1e53e0 100644
--- a/pkgs/applications/misc/mediainfo/default.nix
+++ b/pkgs/applications/misc/mediainfo/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, autoreconfHook, pkgconfig, libzen, libmediainfo, zlib }:
 
 stdenv.mkDerivation rec {
-  version = "18.05";
+  version = "18.08";
   name = "mediainfo-${version}";
   src = fetchurl {
     url = "https://mediaarea.net/download/source/mediainfo/${version}/mediainfo_${version}.tar.xz";
-    sha256 = "0rgsfplisf729n1j3fyg82wpw88aahisrddn5wq9yx8hz6m96h6r";
+    sha256 = "0l4bhrgwfn3da6cr0jz5vs17sk7k0bc26nk7hymv04xifns5999n";
   };
 
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
diff --git a/pkgs/applications/misc/notejot/default.nix b/pkgs/applications/misc/notejot/default.nix
new file mode 100644
index 000000000000..59ba45e6f376
--- /dev/null
+++ b/pkgs/applications/misc/notejot/default.nix
@@ -0,0 +1,47 @@
+{ stdenv, fetchFromGitHub, vala, pkgconfig, meson, ninja, python3, granite
+, gtk3, gnome3, gtksourceview, json-glib, gobjectIntrospection, wrapGAppsHook }:
+
+stdenv.mkDerivation rec {
+  pname = "notejot";
+  version = "1.4.5";
+
+  name = "${pname}-${version}";
+
+  src = fetchFromGitHub {
+    owner = "lainsce";
+    repo = pname;
+    rev = version;
+    sha256 = "0mjig4y2rb6v2dyzya44mfz0dxgp5wnjs3kdavf9ha2jzjjr5xyb";
+  };
+
+  nativeBuildInputs = [
+    gobjectIntrospection
+    meson
+    ninja
+    pkgconfig
+    python3
+    vala
+    wrapGAppsHook
+  ];
+
+  buildInputs = [
+    gnome3.libgee
+    granite
+    gtk3
+    gtksourceview
+    json-glib
+  ];
+
+  postPatch = ''
+    chmod +x meson/post_install.py
+    patchShebangs meson/post_install.py
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Stupidly-simple sticky notes applet";
+    homepage    = https://github.com/lainsce/notejot;
+    license     = licenses.gpl2Plus;
+    maintainers = with maintainers; [ worldofpeace ];
+    platforms   = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/misc/qmapshack/default.nix b/pkgs/applications/misc/qmapshack/default.nix
index 3b9e76aee4b8..a2c8c75dc245 100644
--- a/pkgs/applications/misc/qmapshack/default.nix
+++ b/pkgs/applications/misc/qmapshack/default.nix
@@ -1,17 +1,17 @@
-{ stdenv, fetchurl, cmake, qtscript, qtwebkit, gdal, proj, routino, quazip }:
+{ stdenv, fetchurl, cmake, qtscript, qtwebengine, gdal, proj, routino, quazip }:
 
 stdenv.mkDerivation rec {
   name = "qmapshack-${version}";
-  version = "1.11.1";
+  version = "1.12.0";
 
   src = fetchurl {
     url = "https://bitbucket.org/maproom/qmapshack/downloads/${name}.tar.gz";
-    sha256 = "0yqilfldmfw8m18jbkffv4ar1px6kjs0zlgb216bnhahcr1y8r9y";
+    sha256 = "0d5p60kq9pa2hfql4nr8p42n88lr42jrsryrsllvaj45b8b6kvih";
   };
 
   nativeBuildInputs = [ cmake ];
 
-  buildInputs = [ qtscript qtwebkit gdal proj routino quazip ];
+  buildInputs = [ qtscript qtwebengine gdal proj routino quazip ];
 
   cmakeFlags = [
     "-DROUTINO_XML_PATH=${routino}/share/routino"
diff --git a/pkgs/applications/misc/ranger/default.nix b/pkgs/applications/misc/ranger/default.nix
index 33b8c33033ea..6d883d89de31 100644
--- a/pkgs/applications/misc/ranger/default.nix
+++ b/pkgs/applications/misc/ranger/default.nix
@@ -7,13 +7,13 @@ assert imagePreviewSupport -> w3m != null;
 
 python3Packages.buildPythonApplication rec {
   name = "ranger-${version}";
-  version = "1.9.1";
+  version = "1.9.2";
 
   src = fetchFromGitHub {
     owner = "ranger";
     repo = "ranger";
     rev = "v${version}";
-    sha256= "1zhds37j1scxa9b183qbrjwxqldrdk581c5xiy81vg17sndb1kqj";
+    sha256= "1ws6g8z1m1hfp8bv4msvbaa9f7948p687jmc8h69yib4jkv3qyax";
   };
 
   checkInputs = with python3Packages; [ pytest ];
@@ -51,6 +51,6 @@ python3Packages.buildPythonApplication rec {
     homepage = http://ranger.github.io/;
     license = licenses.gpl3;
     platforms = platforms.unix;
-    maintainers = [ maintainers.magnetophon ];
+    maintainers = [ maintainers.toonn maintainers.magnetophon ];
   };
 }
diff --git a/pkgs/applications/misc/sequeler/default.nix b/pkgs/applications/misc/sequeler/default.nix
index 35242822d4a0..89b4e33a927b 100644
--- a/pkgs/applications/misc/sequeler/default.nix
+++ b/pkgs/applications/misc/sequeler/default.nix
@@ -1,10 +1,10 @@
 { stdenv, fetchFromGitHub
-, meson, ninja, pkgconfig, vala, gobjectIntrospection, gettext, wrapGAppsHook, desktop-file-utils
+, meson, ninja, pkgconfig, vala, gobjectIntrospection, gettext, wrapGAppsHook, python3, desktop-file-utils
 , gtk3, glib, granite, libgee, libgda, gtksourceview, libxml2, libsecret }:
 
 
 let
-  version = "0.6.0";
+  version = "0.6.2";
   sqlGda = libgda.override {
     mysqlSupport = true;
     postgresSupport = true;
@@ -17,10 +17,10 @@ in stdenv.mkDerivation rec {
     owner = "Alecaddd";
     repo = "sequeler";
     rev = "v${version}";
-    sha256 = "04x3fg665201g3zy66sicfna4vac4n1pmrahbra90gvfzaia1cai";
+    sha256 = "0j5z3z34jc1acclmlkjpv7fcs4f2gf0bcfnvcpn3zdzw9fzj0sw7";
   };
 
-  nativeBuildInputs = [ meson ninja pkgconfig vala gobjectIntrospection gettext wrapGAppsHook desktop-file-utils ];
+  nativeBuildInputs = [ meson ninja pkgconfig vala gobjectIntrospection gettext wrapGAppsHook python3 desktop-file-utils ];
 
   buildInputs = [ gtk3 glib granite libgee sqlGda gtksourceview libxml2 libsecret ];
 
diff --git a/pkgs/applications/misc/solaar/default.nix b/pkgs/applications/misc/solaar/default.nix
index afe944e868e7..e26071dd3612 100644
--- a/pkgs/applications/misc/solaar/default.nix
+++ b/pkgs/applications/misc/solaar/default.nix
@@ -1,5 +1,5 @@
-{fetchFromGitHub, stdenv, gtk3, python34Packages, gobjectIntrospection}:
-python34Packages.buildPythonApplication rec {
+{fetchFromGitHub, stdenv, gtk3, pythonPackages, gobjectIntrospection}:
+pythonPackages.buildPythonApplication rec {
   name = "solaar-unstable-${version}";
   version = "2018-02-02";
   namePrefix = "";
@@ -10,7 +10,7 @@ python34Packages.buildPythonApplication rec {
     sha256 = "0zy5vmjzdybnjf0mpp8rny11sc43gmm8172svsm9s51h7x0v83y3";
   };
 
-  propagatedBuildInputs = [python34Packages.pygobject3 python34Packages.pyudev gobjectIntrospection gtk3];
+  propagatedBuildInputs = [pythonPackages.pygobject3 pythonPackages.pyudev gobjectIntrospection gtk3];
   postInstall = ''
     wrapProgram "$out/bin/solaar" \
       --prefix PYTHONPATH : "$PYTHONPATH" \
diff --git a/pkgs/applications/misc/taskjuggler/Gemfile.lock b/pkgs/applications/misc/taskjuggler/Gemfile.lock
index d1642e76fa65..ebd04c20ea6d 100644
--- a/pkgs/applications/misc/taskjuggler/Gemfile.lock
+++ b/pkgs/applications/misc/taskjuggler/Gemfile.lock
@@ -1,15 +1,15 @@
 GEM
   remote: http://rubygems.org/
   specs:
-    mail (2.6.3)
-      mime-types (>= 1.16, < 3)
-    mime-types (2.6.1)
-    taskjuggler (3.5.0)
+    mail (2.7.0)
+      mini_mime (>= 0.1.1)
+    mini_mime (1.0.1)
+    taskjuggler (3.6.0)
       mail (>= 2.4.3)
       term-ansicolor (>= 1.0.7)
-    term-ansicolor (1.3.2)
+    term-ansicolor (1.6.0)
       tins (~> 1.0)
-    tins (1.6.0)
+    tins (1.16.3)
 
 PLATFORMS
   ruby
@@ -18,4 +18,4 @@ DEPENDENCIES
   taskjuggler
 
 BUNDLED WITH
-   1.10.5
+   1.14.6
diff --git a/pkgs/applications/misc/taskjuggler/default.nix b/pkgs/applications/misc/taskjuggler/default.nix
index c5429b6c8510..f3f9285b312d 100644
--- a/pkgs/applications/misc/taskjuggler/default.nix
+++ b/pkgs/applications/misc/taskjuggler/default.nix
@@ -1,16 +1,21 @@
-{ lib, bundlerEnv, ruby }:
+{ lib, bundlerApp, ruby }:
 
-bundlerEnv {
-  name = "taskjuggler-3.5.0";
+bundlerApp {
+  pname = "taskjuggler";
 
   inherit ruby;
   gemdir = ./.;
 
+  exes = [
+    "tj3" "tj3client" "tj3d" "tj3man" "tj3ss_receiver" "tj3ss_sender"
+    "tj3ts_receiver" "tj3ts_sender" "tj3ts_summary" "tj3webd"
+  ];
+
   meta = {
-    broken = true; # needs ruby 2.0
     description = "A modern and powerful project management tool";
     homepage    = http://taskjuggler.org/;
     license     = lib.licenses.gpl2;
     platforms   = lib.platforms.unix;
+    maintainers = [ lib.maintainers.manveru ];
   };
 }
diff --git a/pkgs/applications/misc/taskjuggler/gemset.nix b/pkgs/applications/misc/taskjuggler/gemset.nix
index e65ab3451a62..24c1e4311777 100644
--- a/pkgs/applications/misc/taskjuggler/gemset.nix
+++ b/pkgs/applications/misc/taskjuggler/gemset.nix
@@ -1,47 +1,55 @@
 {
-  "mail" = {
-    version = "2.6.3";
+  mail = {
+    dependencies = ["mini_mime"];
+    groups = ["default"];
+    platforms = [];
     source = {
+      remotes = ["http://rubygems.org"];
+      sha256 = "10dyifazss9mgdzdv08p47p344wmphp5pkh5i73s7c04ra8y6ahz";
       type = "gem";
-      sha256 = "1nbg60h3cpnys45h7zydxwrl200p7ksvmrbxnwwbpaaf9vnf3znp";
     };
-    dependencies = [
-      "mime-types"
-    ];
+    version = "2.7.0";
   };
-  "mime-types" = {
-    version = "2.6.1";
+  mini_mime = {
+    groups = ["default"];
+    platforms = [];
     source = {
+      remotes = ["http://rubygems.org"];
+      sha256 = "1q4pshq387lzv9m39jv32vwb8wrq3wc4jwgl4jk209r4l33v09d3";
       type = "gem";
-      sha256 = "1vnrvf245ijfyxzjbj9dr6i1hkjbyrh4yj88865wv9bs75axc5jv";
     };
+    version = "1.0.1";
   };
-  "taskjuggler" = {
-    version = "3.5.0";
+  taskjuggler = {
+    dependencies = ["mail" "term-ansicolor"];
+    groups = ["default"];
+    platforms = [];
     source = {
+      remotes = ["http://rubygems.org"];
+      sha256 = "0ky3cydl3szhdyxsy4k6zxzjlbll7mlq025aj6xd5jmh49k3pfbp";
       type = "gem";
-      sha256 = "0r84rlc7a6w7p9nc9mgycbs5h0hq0kzscjq7zj3296xyf0afiwj2";
     };
-    dependencies = [
-      "mail"
-      "term-ansicolor"
-    ];
+    version = "3.6.0";
   };
-  "term-ansicolor" = {
-    version = "1.3.2";
+  term-ansicolor = {
+    dependencies = ["tins"];
+    groups = ["default"];
+    platforms = [];
     source = {
+      remotes = ["http://rubygems.org"];
+      sha256 = "1b1wq9ljh7v3qyxkk8vik2fqx2qzwh5lval5f92llmldkw7r7k7b";
       type = "gem";
-      sha256 = "0ydbbyjmk5p7fsi55ffnkq79jnfqx65c3nj8d9rpgl6sw85ahyys";
     };
-    dependencies = [
-      "tins"
-    ];
-  };
-  "tins" = {
     version = "1.6.0";
+  };
+  tins = {
+    groups = ["default"];
+    platforms = [];
     source = {
+      remotes = ["http://rubygems.org"];
+      sha256 = "0g95xs4nvx5n62hb4fkbkd870l9q3y9adfc4h8j21phj9mxybkb8";
       type = "gem";
-      sha256 = "02qarvy17nbwvslfgqam8y6y7479cwmb1a6di9z18hzka4cf90hz";
     };
+    version = "1.16.3";
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/applications/misc/tilix/default.nix b/pkgs/applications/misc/tilix/default.nix
index e101005e44ec..98e320b7aaf5 100644
--- a/pkgs/applications/misc/tilix/default.nix
+++ b/pkgs/applications/misc/tilix/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   name = "tilix-${version}";
-  version = "1.8.3";
+  version = "1.8.5";
 
   src = fetchFromGitHub {
     owner = "gnunn1";
     repo = "tilix";
     rev = "${version}";
-    sha256 = "05x2nyyb5w3122j90g0f7lh9jl7xi1nk176sl01vl2ks7zar00dq";
+    sha256 = "1ixhkssz0xn3x75n2iw6gd3hka6bgmgwfgbvblbjhhx8gcpbw3s7";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/misc/tootle/default.nix b/pkgs/applications/misc/tootle/default.nix
index b2aab54c1047..d15b8111fb0b 100644
--- a/pkgs/applications/misc/tootle/default.nix
+++ b/pkgs/applications/misc/tootle/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchFromGitHub
-, meson, ninja, pkgconfig
+, meson, ninja, pkgconfig, python3
 , gnome3, vala, gobjectIntrospection, wrapGAppsHook
 , gtk3, granite
 , json-glib, glib, glib-networking
@@ -18,7 +18,7 @@ in stdenv.mkDerivation rec {
     sha256 = "022h1rh1jk3m1f9al0s1rylmnqnkydyc81idfc8jf1g0frnvn5i6";
   };
 
-  nativeBuildInputs = [ meson ninja pkgconfig vala gobjectIntrospection wrapGAppsHook ];
+  nativeBuildInputs = [ meson ninja pkgconfig python3 vala gobjectIntrospection wrapGAppsHook ];
   buildInputs = [
     gtk3 granite json-glib glib glib-networking
     gnome3.libgee gnome3.libsoup gnome3.gsettings-desktop-schemas
diff --git a/pkgs/applications/misc/worker/default.nix b/pkgs/applications/misc/worker/default.nix
index bfb43d3e49d1..f9267411dda4 100644
--- a/pkgs/applications/misc/worker/default.nix
+++ b/pkgs/applications/misc/worker/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "worker-${version}";
-  version = "3.15.1";
+  version = "3.15.2";
 
   src = fetchurl {
     url = "http://www.boomerangsworld.de/cms/worker/downloads/${name}.tar.gz";
-    sha256 = "05h25dxqff4xhmrk7j9j11yxpqa4qm7m3xprv7yldryc1mbvnpwi";
+    sha256 = "0km17ls51vp4nxlppf58vvxxymyx6w3xlzjc8wghxpjj098v4pp8";
   };
 
   buildInputs = [ libX11 ];
diff --git a/pkgs/applications/misc/xca/default.nix b/pkgs/applications/misc/xca/default.nix
index ee4300cde0f5..7b95cf002ca1 100644
--- a/pkgs/applications/misc/xca/default.nix
+++ b/pkgs/applications/misc/xca/default.nix
@@ -1,15 +1,15 @@
-{ mkDerivation, lib, fetchFromGitHub, autoreconfHook, perl, pkgconfig, which
+{ mkDerivation, lib, fetchFromGitHub, autoreconfHook, perl, pkgconfig
 , libtool, openssl, qtbase, qttools }:
 
 mkDerivation rec {
   name = "xca-${version}";
-  version = "2.1.0";
+  version = "2.1.1";
 
   src = fetchFromGitHub {
     owner  = "chris2511";
     repo   = "xca";
     rev    = "RELEASE.${version}";
-    sha256 = "039qz6hh43hx8dcw2bq71mgy95zk09jyd3xxpldmxxd5d69zcr8m";
+    sha256 = "1d09329a80axwqhxixwasd8scsmh23vsq1076amy5c8173s4ambi";
   };
 
   postPatch = ''
@@ -17,15 +17,15 @@ mkDerivation rec {
       --replace /usr/bin/perl ${perl}/bin/perl
   '';
 
-  buildInputs = [ libtool openssl qtbase qttools ];
+  buildInputs = [ libtool openssl qtbase ];
 
-  nativeBuildInputs = [ autoreconfHook pkgconfig which ];
+  nativeBuildInputs = [ autoreconfHook pkgconfig qttools ];
 
   enableParallelBuilding = true;
 
   meta = with lib; {
-    description = "Interface for managing asymetric keys like RSA or DSA";
-    homepage    = http://xca.sourceforge.net/;
+    description = "An x509 certificate generation tool, handling RSA, DSA and EC keys, certificate signing requests (PKCS#10) and CRLs";
+    homepage    = https://hohnstaedt.de/xca/;
     license     = licenses.bsd3;
     maintainers = with maintainers; [ offline peterhoeg ];
     platforms   = platforms.all;
diff --git a/pkgs/applications/networking/browsers/chromium/common.nix b/pkgs/applications/networking/browsers/chromium/common.nix
index ebc700a7f37c..6b9f7225c84f 100644
--- a/pkgs/applications/networking/browsers/chromium/common.nix
+++ b/pkgs/applications/networking/browsers/chromium/common.nix
@@ -1,4 +1,4 @@
-{ stdenv, ninja, which, nodejs, fetchurl, fetchpatch, gnutar
+{ stdenv, gn, ninja, which, nodejs, fetchurl, fetchpatch, gnutar
 
 # default dependencies
 , bzip2, flac, speex, libopus
@@ -139,11 +139,6 @@ let
     # (gentooPatch "<patch>" "0000000000000000000000000000000000000000000000000000000000000000")
       ./patches/fix-freetype.patch
       ./patches/nix_plugin_paths_68.patch
-    ]  ++ optionals (versionRange "68" "69") [
-      ./patches/remove-webp-include-68.patch
-      (githubPatch "4d10424f9e2a06978cdd6cdf5403fcaef18e49fc" "11la1jycmr5b5rw89mzcdwznmd2qh28sghvz9klr1qhmsmw1vzjc")
-      (githubPatch "56cb5f7da1025f6db869e840ed34d3b98b9ab899" "04mp5r1yvdvdx6m12g3lw3z51bzh7m3gr73mhblkn4wxdbvi3dcs")
-    ]  ++ optionals (versionAtLeast version "69") [
       ./patches/remove-webp-include-69.patch
     ] ++ optional enableWideVine ./patches/widevine.patch;
 
@@ -243,15 +238,11 @@ let
     configurePhase = ''
       runHook preConfigure
 
-      # Build gn
-      python tools/gn/bootstrap/bootstrap.py -v -s --no-clean
-      PATH="$PWD/out/Release:$PATH"
-
       # This is to ensure expansion of $out.
       libExecPath="${libExecPath}"
       python build/linux/unbundle/replace_gn_files.py \
         --system-libraries ${toString gnSystemLibraries}
-      gn gen --args=${escapeShellArg gnFlags} out/Release | tee gn-gen-outputs.txt
+      ${gn}/bin/gn gen --args=${escapeShellArg gnFlags} out/Release | tee gn-gen-outputs.txt
 
       # Fail if `gn gen` contains a WARNING.
       grep -o WARNING gn-gen-outputs.txt && echo "Found gn WARNING, exiting nix build" && exit 1
diff --git a/pkgs/applications/networking/browsers/chromium/patches/remove-webp-include-68.patch b/pkgs/applications/networking/browsers/chromium/patches/remove-webp-include-68.patch
deleted file mode 100644
index 1995bf1fa8f5..000000000000
--- a/pkgs/applications/networking/browsers/chromium/patches/remove-webp-include-68.patch
+++ /dev/null
@@ -1,12 +0,0 @@
---- a/third_party/blink/renderer/platform/image-encoders/image_encoder.h
-+++ b/third_party/blink/renderer/platform/image-encoders/image_encoder.h
-@@ -8,7 +8,7 @@
- #include "third_party/blink/renderer/platform/platform_export.h"
- #include "third_party/blink/renderer/platform/wtf/vector.h"
- #include "third_party/libjpeg/jpeglib.h"          // for JPEG_MAX_DIMENSION
--#include "third_party/libwebp/src/webp/encode.h"  // for WEBP_MAX_DIMENSION
-+#define WEBP_MAX_DIMENSION 16383
- #include "third_party/skia/include/core/SkStream.h"
- #include "third_party/skia/include/encode/SkJpegEncoder.h"
- #include "third_party/skia/include/encode/SkPngEncoder.h"
-
diff --git a/pkgs/applications/networking/browsers/chromium/plugins.nix b/pkgs/applications/networking/browsers/chromium/plugins.nix
index 84c4e6202625..9faa7e5e31fd 100644
--- a/pkgs/applications/networking/browsers/chromium/plugins.nix
+++ b/pkgs/applications/networking/browsers/chromium/plugins.nix
@@ -98,11 +98,11 @@ let
 
   flash = stdenv.mkDerivation rec {
     name = "flashplayer-ppapi-${version}";
-    version = "30.0.0.154";
+    version = "31.0.0.108";
 
     src = fetchzip {
       url = "https://fpdownload.adobe.com/pub/flashplayer/pdc/${version}/flash_player_ppapi_linux.x86_64.tar.gz";
-      sha256 = "0bi9b6syx7x2avixgjwanrvynzanf89xm2g3nxazw9qgxxc1cp48";
+      sha256 = "0dcwyx0fp7wbsx0cyi7xpwq0nnvcvkzfgi6zyy75487820ssc4h1";
       stripRoot = false;
     };
 
diff --git a/pkgs/applications/networking/browsers/chromium/upstream-info.nix b/pkgs/applications/networking/browsers/chromium/upstream-info.nix
index 89b6a7ce3121..ebf730129079 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 = "0w5k1446j45796vj8p6kv5cdrkrxyr7rh8d8vavplfldbvg36bdw";
-    sha256bin64 = "0a7gmbcps3b85rhwgrvg41m9db2n3igwr4hncm7kcqnq5hr60v8s";
-    version = "69.0.3497.32";
+    sha256 = "0i3iz6c05ykqxbq58sx954nky0gd0schl7ik2r56p3jqsk8cfnhn";
+    sha256bin64 = "03k5y1nyzx26mxwxmdijkl2kj49vm5vhbxhakfxxjg3r1v0rsqrs";
+    version = "69.0.3497.81";
   };
   dev = {
-    sha256 = "15gk2jbjv3iy4hg4xm1f66x5jqfqh9f98wfzrcsd5ix3ki3f9g3c";
-    sha256bin64 = "1lir6q31dnjsbrz99bfx74r5j6f0c1a443ky1k0idbx6ysvr8nnm";
-    version = "70.0.3521.2";
+    sha256 = "1lx6dfd6w675b4kyrci8ikc8rfmjc1aqmm7bimxp3h4p97j5wml1";
+    sha256bin64 = "0fsxj9h25glp3akw0x2rc488w5zr5v5yvl6ry7fy8w70fqgynffj";
+    version = "70.0.3538.9";
   };
   stable = {
-    sha256 = "1676y2axl5ihvv8jid2i9wp4i4awxzij5nwvd5zx98506l3088bh";
-    sha256bin64 = "0d352maw1630g0hns3c0g0n95bp5iqh7nzs8bnv48kxz87snmpdj";
-    version = "68.0.3440.106";
+    sha256 = "0i3iz6c05ykqxbq58sx954nky0gd0schl7ik2r56p3jqsk8cfnhn";
+    sha256bin64 = "1f3shb85jynxq37vjxxkkxrjayqgvpss1zws5i28x6i9nygfzay7";
+    version = "69.0.3497.81";
   };
 }
diff --git a/pkgs/applications/networking/browsers/eolie/default.nix b/pkgs/applications/networking/browsers/eolie/default.nix
index 8d7f4e6cc703..91c5f697132c 100644
--- a/pkgs/applications/networking/browsers/eolie/default.nix
+++ b/pkgs/applications/networking/browsers/eolie/default.nix
@@ -1,45 +1,53 @@
-{ stdenv, fetchgit, meson, ninja, pkgconfig, wrapGAppsHook
-, desktop-file-utils, gobjectIntrospection, python36Packages
-, gnome3, gst_all_1, gtkspell3, hunspell }:
+{ stdenv, fetchgit, meson, ninja, pkgconfig
+, python3, gtk3, libsecret, gst_all_1, webkitgtk
+, glib-networking, gtkspell3, hunspell, desktop-file-utils
+, gobjectIntrospection, wrapGAppsHook }:
 
-stdenv.mkDerivation rec {
+python3.pkgs.buildPythonApplication rec {
   name = "eolie-${version}";
-  version = "0.9.35";
+  version = "0.9.36";
+
+  format = "other";
+  doCheck = false;
 
   src = fetchgit {
     url = "https://gitlab.gnome.org/World/eolie";
     rev = "refs/tags/${version}";
     fetchSubmodules = true;
-    sha256 = "0x3p1fgx1fhrnr7vkkpnl34401r6k6xg2mrjff7ncb1k57q522k7";
+    sha256 = "1pqs6lddkj7nvxdwf0yncwdcr7683mpvx3912vn7b1f2q2zkp1fv";
   };
 
-  nativeBuildInputs = with python36Packages; [
+  nativeBuildInputs = [
     desktop-file-utils
     gobjectIntrospection
     meson
     ninja
     pkgconfig
     wrapGAppsHook
-    wrapPython
   ];
 
-  buildInputs = [ gtkspell3 hunspell python36Packages.pygobject3 ] ++ (with gnome3; [
-    glib glib-networking gsettings-desktop-schemas gtk3 webkitgtk libsecret
-  ]) ++ (with gst_all_1; [
-    gst-libav gst-plugins-base gst-plugins-ugly gstreamer
-  ]);
+  buildInputs = with gst_all_1; [
+    glib-networking
+    gst-libav
+    gst-plugins-base
+    gst-plugins-ugly
+    gstreamer
+    gtk3
+    gtkspell3
+    hunspell
+    libsecret
+    webkitgtk
+  ];
 
-  pythonPath = with python36Packages; [
+  pythonPath = with python3.pkgs; [
     beautifulsoup4
     pycairo
     pygobject3
     python-dateutil
   ];
 
-  postFixup = "wrapPythonPrograms";
-
   postPatch = ''
-    chmod +x meson_post_install.py # patchShebangs requires executable file
+    chmod +x meson_post_install.py
     patchShebangs meson_post_install.py
   '';
 
diff --git a/pkgs/applications/networking/browsers/firefox-bin/beta_sources.nix b/pkgs/applications/networking/browsers/firefox-bin/beta_sources.nix
index f3a8ca6f289c..813217b3031d 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 = "62.0b20";
+  version = "63.0b6";
   sources = [
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/ach/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/ach/firefox-63.0b6.tar.bz2";
       locale = "ach";
       arch = "linux-x86_64";
-      sha512 = "bcc42abc76f41f5fe32a1bf1e824be451d15686c05adfb58b85df6eeff39e29aac3aa18878023469e85bcd8e9d4f55cea9cd96d7b40a5b6918ec2fa572e32b7c";
+      sha512 = "3f968c3b3256b13b73046c6efc9db7cc8faeafb449a3c0e5d49516f6dbb3023165e2f8133651240ba1a008de80496a83fd02dd1add24a99720e767b73cff7cc6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/af/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/af/firefox-63.0b6.tar.bz2";
       locale = "af";
       arch = "linux-x86_64";
-      sha512 = "f371acf6a9435d6c673768270be5a950ac369cb04e91b77f8422feb77cb09e65731c6842e933aa5012402a69bfa4c01373419caf029e133408105b71d218a3f9";
+      sha512 = "aa2044214846e0b8f808bc2a0f5e45999eb7f2c766fa91dd8dc8d035efcc1974fb6160a2cf6b29401908f01fb785cb4b2c25b326e54924df8c70c31f39e26d57";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/an/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/an/firefox-63.0b6.tar.bz2";
       locale = "an";
       arch = "linux-x86_64";
-      sha512 = "79fa43b710bb99cb94ed463b845d7eaa993a2d35b27eecafac0e387f5781b77415375fb3d19256d3097f314d0891020ac929877635d3f26ab3fd808bd105cf1e";
+      sha512 = "f4232c87630882cdf7d6e26a983099ecd250b7dcb1d7e1c0bf5ec037aff4f839a056150453e3116bab464c802e39337351fe5827b5e1518e867a95f2645ca5db";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/ar/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/ar/firefox-63.0b6.tar.bz2";
       locale = "ar";
       arch = "linux-x86_64";
-      sha512 = "66b40adacfa9e36e61d9f4f77fb85db08cbce2eb162201fd65db48bee54c38f4749c7375d893727796c8954a71004e4f163fde8a3f701dec712d271f808c40fc";
+      sha512 = "cc2ca97918be68556ece0f6676355307a14a994b951b40030c55a4ad3663e3f6f2fd37afcd8796dd16e0b63ad0382c0853c10ac9adf42de631d4983cdd4573b9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/as/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/as/firefox-63.0b6.tar.bz2";
       locale = "as";
       arch = "linux-x86_64";
-      sha512 = "090f4b517d242f67b43bdce75e586cfd0eb58abb076cccae9c5cffc74d14b04ba06018764bb7696f2b43049ff8311f3a6b6d7207d3ac0f3432904f4ecf39e96a";
+      sha512 = "be3ea0d52a469cda394241c9e030af634f7356053d0cef40da63d527a9a72921ec503897d9b91d15f010fbe10a9be54e4f7efe7e5f77f607c6614d045ff68bbb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/ast/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/ast/firefox-63.0b6.tar.bz2";
       locale = "ast";
       arch = "linux-x86_64";
-      sha512 = "309b5feeffbe980b06bd04b4a6db6f4677d131c7ccdd138cb8d43eebfec61b423e30d5f7d5776827f973f6c7fd995f091263839e811e1496b7d4def2f97ea922";
+      sha512 = "57825a7e5213159d845673474f64980e89887e24d368a104653b835dcd296bd72593902d6a4589b5e0ed543663600c4021480ad0d13368bd185ff9cf6304af6d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/az/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/az/firefox-63.0b6.tar.bz2";
       locale = "az";
       arch = "linux-x86_64";
-      sha512 = "6b64a0346ce7a5854c878317a34dd91c044456f823fc5e55e8dcfea55663600a2bd1c9471f01732426397674303919125f69ef0d61d77fddcaca0d462cd8e084";
+      sha512 = "e22a7aed19b698f4fb84a2bdbc4fd8500c6b828cb329c473e1fa1e60396af5cf70c53fd80e62cd2d406a19260cfc3d48ba64e81be98f559335b2a08fef61729f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/be/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/be/firefox-63.0b6.tar.bz2";
       locale = "be";
       arch = "linux-x86_64";
-      sha512 = "9553685556a1def24354972fafe785ca9ad180b0cda48a928b39a47011fae41660a4d046f6a38c11c148ac2b6a883c1f8a56d6aa4b6ada75365df2b985cbe473";
+      sha512 = "995836ead5595e7a70b1bab9a25ab05e6f12955a25effe751018892936ae2deb27b34a630aa68d7352189c76fc6c9b6a52f48df9e01ca2a26dec71beba5de07d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/bg/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/bg/firefox-63.0b6.tar.bz2";
       locale = "bg";
       arch = "linux-x86_64";
-      sha512 = "531e0f09ba97828a039f796b6166753a9e35ee902258b9318fb91838b956d92de6d0f86168f2945eb2ed6352307f60bcfb81740dbe3e3ebd0988c9a8fa59ff18";
+      sha512 = "840770bf166118616309aaf4742efb1d1cbd3159ea8e9589c64293a3918285d55088c65999e6b3e50aa190c69b46009d35497cba8d17da1c41f88d7b8c0795dc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/bn-BD/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/bn-BD/firefox-63.0b6.tar.bz2";
       locale = "bn-BD";
       arch = "linux-x86_64";
-      sha512 = "545525b698e0bd93f6036b92e3723a452e8083cfb0cf7462c8c077ddcbc0210d25ab53d3b41b67dcc1dbaa14d1923fd0b56b3097b98bf84164ca367f1c07413a";
+      sha512 = "6b5ece3dd9af3b9c4d6e47bd271669656648fec4d4c2ebd546dd19566819ea19890516517dd2b9ab897f2c678eb6c2c968d2f5ba3849a7aacb9ca0607f927caa";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/bn-IN/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/bn-IN/firefox-63.0b6.tar.bz2";
       locale = "bn-IN";
       arch = "linux-x86_64";
-      sha512 = "95ceade2812bd3ffc084167280d4154331fe5239f167f79b9c29a43646c2c9f5c7a4e22cf6d814985dd01e8d60661007c66ebec27bae9e19a85895ae9610f9dc";
+      sha512 = "70cf764e62ab0bb069f0715da4275972353462afcf0cf87f0af42aebcdd4a8ff573852fbc466f4b78bed4fe3222491377cac36050502d59dca4be5e4857895f8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/br/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/br/firefox-63.0b6.tar.bz2";
       locale = "br";
       arch = "linux-x86_64";
-      sha512 = "15153f5e0222d3d0bd716e7595e2d5ad7b84595bd14971153ca809fd62955c55ef99b01b8687e32e3e3ba65b030f4e93beae90938efeda3b5bdedc9a2a012c1c";
+      sha512 = "fec6876647936a2d21c96fd668f0100cec88f56ead11c6e2f261b226b162d9f8992cd130d95b4b1c2b38a51f13b3fe0a9b0f72f9acb8408936548f756754c6c8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/bs/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/bs/firefox-63.0b6.tar.bz2";
       locale = "bs";
       arch = "linux-x86_64";
-      sha512 = "6f7b1f882ae6b9d95fccee972962e98c9c722194bb08c466071333cbcf5ff56b149c07daf1d6abf808fe0e07e22af78a915c94268fa356412c88a9f35fe5364b";
+      sha512 = "7c79c0fcc079718bd0a39ce88b5989e47c925602709f698aab47951eedea4d74b63966f2f1d436407ffd7e71fc14e37c6629dba90b69b6e9b33fc1a4a3a7dd67";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/ca/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/ca/firefox-63.0b6.tar.bz2";
       locale = "ca";
       arch = "linux-x86_64";
-      sha512 = "dfc0cfb8f95421e8b60b91716a68c6a5db1c0630c298c2b76c80b3a24308d852e056e552530b034f9889b87c72e581590ad018ef0b0657baf14895f383a594ef";
+      sha512 = "2134ddeda70d0319da8d61c8c79ece5deb179e2f3b34e4c28b2f99ac3181f03cc0c66bd46cf7965d98e2cbfae29a4247ea51256c7966e7b887d0f0fe99866b23";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/cak/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/cak/firefox-63.0b6.tar.bz2";
       locale = "cak";
       arch = "linux-x86_64";
-      sha512 = "7561a94f9bf8edd5693c9e961aabc316056a76f19c8b3d0490f94d74ee1bd8cd0b49aecf71b48c7e90435a2ea2efd716cde53303c73a68a1a6230e51445f719a";
+      sha512 = "532a6d9e03da80202b5e667b756c6eb9a1e14f2d73577ad69edfdceaaacd9fe7f65b4eea9c78ab48e8a8182c9e4a3adae30328839c6b9480239c5b018827a801";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/cs/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/cs/firefox-63.0b6.tar.bz2";
       locale = "cs";
       arch = "linux-x86_64";
-      sha512 = "cf2f2b8cff2951cb71454f3d0351e157606af1bb306b65f0fb8930a9257e16ed5f7704be09114bbeb37c5c92d12feec1371339b2fb126c8766aa8bc8034d07c8";
+      sha512 = "247f6a20bf116d9d6fac7d9e15517018377b47223230a5a20f887a9cc449e2831e2b09d47e9b0414c373f094097adf1b6a82a3a521a428c52d2d3ec2ee4308cc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/cy/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/cy/firefox-63.0b6.tar.bz2";
       locale = "cy";
       arch = "linux-x86_64";
-      sha512 = "05e3f84109a47790bd88cdf248c32eddece4c95ef9c5cc46cf67b013063441106eb0b4022cfaf8501593c6c4e13f84684ae1b8f48ddd3704ea52d520d1f9a185";
+      sha512 = "6603623425d443285c883ed0939f0810c33086da37fa4df6738b4e50d72ca85c5f518b924e50f265994b615f8891c44ce4cc198da11a115956f36677ba06771b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/da/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/da/firefox-63.0b6.tar.bz2";
       locale = "da";
       arch = "linux-x86_64";
-      sha512 = "cc8dbabf299e1009b180ed8201699ebc773351e4969587df146b977da3a7a1bedadd0366e765488d2e16aa81e768c3fb0892972346d6611c29a1d6eda921e672";
+      sha512 = "56650af07f629b570a3ac2e1063afc2a3e210b76f2a46b97d7e9374f9db26129ee1bf424ec0afcab380b3dc7ed3bbc330909dee86f14f65f7e3ccfae4083553f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/de/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/de/firefox-63.0b6.tar.bz2";
       locale = "de";
       arch = "linux-x86_64";
-      sha512 = "a69c1786b2b5455fece6d49ae0a8408cbb448c4b6c3f394401c2eee20a5f7d80db09d982ac50e4893877d876123586b1e1cf844e72495d5b1a5ed2349300adbd";
+      sha512 = "7477ea68091928b2f96f6980363046e2a7843b9fbbc79072dda9019acd76325a41d9dfcaa4febe60178316ac0551ce7a2c787799b49a4081d5947a128f675b62";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/dsb/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/dsb/firefox-63.0b6.tar.bz2";
       locale = "dsb";
       arch = "linux-x86_64";
-      sha512 = "b464c71a4dddb8fd864f1a4c7ab2ed6e870e0cbbf3213255965f3534b2b776d7da03e997d78c9f4e794da7201c92f0e9f85bf5b5631131a2355224452112ab0a";
+      sha512 = "c996ff2925c3ce57b25603f90ed67e4fefd2942546eb399c6ff40209fc62315379da827966f4a6a7489b8930e31fe437bd12fb18f4a178ae959ef4edba015a9b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/el/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/el/firefox-63.0b6.tar.bz2";
       locale = "el";
       arch = "linux-x86_64";
-      sha512 = "9578203045825c12c8efba6f3488771efb52452f3a1f57b8a3084fd0c83998f0733520f1d646b1b847ffb76cbcd4d3e184cc0fee0ca01684429396dadd09757f";
+      sha512 = "ef041be85d2613a5e831b1d1dcc6ea62cbb530275f23406f5661377a861ad2bb9d0502d785071c94e56910ec28bcfb4447e56d1083eb8ad6205d0997c32252ec";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/en-CA/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/en-CA/firefox-63.0b6.tar.bz2";
       locale = "en-CA";
       arch = "linux-x86_64";
-      sha512 = "d316262b3c08730782a741177224e3aa269843e1d65ba7f1487e947be73ebbd4fb88f0734bc98e840951d89ecca8ef0a62cb5b8c456e4203da1d11a8a4a1451c";
+      sha512 = "291451acfdeca62bbc29c46b446e6d21712813c0b30ad8fc1141467b6987fb29b1163fb9ccb9915bd61984c0d8d1d3afbd1f2f97f07669c132a693d78d6d6496";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/en-GB/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/en-GB/firefox-63.0b6.tar.bz2";
       locale = "en-GB";
       arch = "linux-x86_64";
-      sha512 = "fd43c18250362b0f18140d123eec2d87578e29acb864ea1513498ec47b7696f0138424e8be33f8af2b77cefa11d7a5ba368b3fbfc85205272d9ed848ce2a9f1f";
+      sha512 = "2f961b1fd18a310c050275b5848016736f53607f6838d79cb0fbd1f5ac83fda78385293116c21036adf7a4742277fde38d3cdc5aac338779bf72ea990fdb8b97";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/en-US/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/en-US/firefox-63.0b6.tar.bz2";
       locale = "en-US";
       arch = "linux-x86_64";
-      sha512 = "f5c6b847ea22bed95aec68a6e4316e0217fab7a4d7426d4b6b57ec0f7f4a6fb3b07e9aa330ce41f0a2c24d500425696bd475583c849556a6011b2b9169581f29";
+      sha512 = "54e169bd171baa0345300691b993052a0d03e2701d7da2ac1df8f6c21c7f30be613d36cc1c4ff07449aebb01152048ec8b55d5fcdb9655efdac53721a1d70b3f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/en-ZA/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/en-ZA/firefox-63.0b6.tar.bz2";
       locale = "en-ZA";
       arch = "linux-x86_64";
-      sha512 = "5bed0853937d3777307f2a432e8b05f7fd919ee0f781fd88381e6cb81c43711c2c12b9fe05d85c22eeb70b217710ea3d44e1f599e447c2212209135f796eccdf";
+      sha512 = "6530dc0f3e38a95ce13b31d9426c501a8f807bee75587b25b58448dee3793065eaeba745a4abfa7b4c23a0c92f482f5bf99e39f5d4fca3fde105d90040464d0d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/eo/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/eo/firefox-63.0b6.tar.bz2";
       locale = "eo";
       arch = "linux-x86_64";
-      sha512 = "3881270a0874ca0094b27361cdf228e50c01c326f931062a54b5ff774e0c88e36b3df7087f11faa3f7f6add2d4156d385fbf30be4ce30f73102b47e280b3f006";
+      sha512 = "e900cc039eedab4159bdd645d71cb2279db5e667edbb2e614347aff8a484a54800a8476f0461fee4699286195d3271e6cedd6f42bcd2ee1d59106f6fbe15f68f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/es-AR/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/es-AR/firefox-63.0b6.tar.bz2";
       locale = "es-AR";
       arch = "linux-x86_64";
-      sha512 = "44191518ade9f6c7c5f72296886d90b2c649d59a0f64ce7e7b23896f858b95ca12f3d1c91e4dfabe94bfe1dfb91dbeaac536cb121d7e497efc77f1316c323385";
+      sha512 = "fca6d57b7fab0ffdab609ae5950f632192f5de314e3406dd8608194f105b95df5c2fc7f32c014eb0b1adeceeb6a53b46473e5d8d82a3e5c6e4b56efe06a40a5f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/es-CL/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/es-CL/firefox-63.0b6.tar.bz2";
       locale = "es-CL";
       arch = "linux-x86_64";
-      sha512 = "628e49819bb7e98f685412ed024e980a7934c1dcd3968709b8a1f23f449c493a0c8a0edd646f80e131d49d0b22e87a93c6671f892684e677e77207085cc84b79";
+      sha512 = "eb27a2ec8d18b00541343b7034f99235cd51b3fbabfbb298147e6a1eab22df337debe03504a567d68f62c99e39dc70277a12c48f0df6a26bc7fae9f37cdd8908";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/es-ES/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/es-ES/firefox-63.0b6.tar.bz2";
       locale = "es-ES";
       arch = "linux-x86_64";
-      sha512 = "ca0edb153550ffa62cb56686bca81970a6e15ed0f982db35f82e69068e1c28452f69ea09df674aa26171e05832dfe39b47d48d0b25205b689455b282b679c6bc";
+      sha512 = "a7ad1f6e8c5c97eb628354f9b436547c4f817857f6d1f89867642fb1d256bf517f871043f4554ca98a780f37cf111502f59b4a290a3e1e5f202e4d5fcfcccdc2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/es-MX/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/es-MX/firefox-63.0b6.tar.bz2";
       locale = "es-MX";
       arch = "linux-x86_64";
-      sha512 = "28c26551beb43276c8bcab443e88d52921a6861796bf2c0fe5519bc2e26cb6fdd28e3be54575e300a53186e96238749c61394aeb7a71f6c196ea6e4f51cb73de";
+      sha512 = "1373fbf3c9c9a442e2253de8d800bfcb019c39e9832f5a551376784c33756eb63c3431419995861b67bc056355dd42c51e2df116b8ffff885019baa44f9facbd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/et/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/et/firefox-63.0b6.tar.bz2";
       locale = "et";
       arch = "linux-x86_64";
-      sha512 = "f26a59f6b75d1b85da6e13d02a206a41754e7e8214b41240839f0852b3fb4d38aa75a22556239262ec5551f551582ee7a374121dc57ef32fbb466a089e8bf98c";
+      sha512 = "0a12e0e00a89203e83cd03a6b72e2fd013a54fc2da678d1fc6cd9e78a0c1a66fd0ec6cbad60ed0d6eed3beda4d29ed19d9fc3c111c01810a7a06cbd595f2bc2a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/eu/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/eu/firefox-63.0b6.tar.bz2";
       locale = "eu";
       arch = "linux-x86_64";
-      sha512 = "60ea439cb2d5ec6dad00e6ea597d5ca78e0f56001703e4f4e8099f695b5e557ff945cd83e48356fd7e78c7a054030d0f23fd85ebc15fd72030e32db1d78b7b5c";
+      sha512 = "c2075cce028a676ad078f6b1f0d050abad6e90c23724126a93033e6f3991b787e11f6604308674c89426d1e914506ade2f58eed541bbe066de662cf59aa97aa0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/fa/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/fa/firefox-63.0b6.tar.bz2";
       locale = "fa";
       arch = "linux-x86_64";
-      sha512 = "7d0454ecb645438b79137acfba79d8d03cc9d44a3a70edcbf72b628f430b83d5eaaf7bf6d5a5f04f2f592cf6750dfd7667a39907a29de398a926e40b2a36b31b";
+      sha512 = "725b78dff3bb95d1c9c598c3da97febc92e639c193a48901991024def3faa21de6edccafe16428971aed904793d03e6e0cfdbae5b610d46ab34bc536c074d8d3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/ff/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/ff/firefox-63.0b6.tar.bz2";
       locale = "ff";
       arch = "linux-x86_64";
-      sha512 = "c1f5e4d7df8590fc18844e5bc67e28bb2d5e88c3eca8b1dc8d3103d49f333ce9dfca7bdee432e190d01688ce7b8c58fb1a2a3fea0cc71e5a007d11e411611d53";
+      sha512 = "69fbacd0723315f008999e698cf2209eff9d49a3be29c4e7589c90a4143f6359c37bd5586f2b79d96fcb780600c8df82562ad7e680f33538eab7c808b59069e1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/fi/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/fi/firefox-63.0b6.tar.bz2";
       locale = "fi";
       arch = "linux-x86_64";
-      sha512 = "a848315e5f0b259e6770fff8e275f29946a0daa8f432135ae2d7d94ebaaf0f7bbbae7566c87f20cca78ae0fb512c7c4434dffb322df78e568095ef3b166f7f37";
+      sha512 = "6c5df02349a9ecd18e79e63b8e84fcd2fd3854a13ff310600317841d7e50f70289c735f1421bff1b47badfe413443c0e1fe27308c46e27958ad7769ddf3e355b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/fr/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/fr/firefox-63.0b6.tar.bz2";
       locale = "fr";
       arch = "linux-x86_64";
-      sha512 = "1a65ba7d442436ef0a8de3c7ea18b765eb933c59a211652a4a472f10e73db987aa2888a9e0b33f69586c6152da5213f1ea1d9a0bf6919a3a5a4b0a352f35e421";
+      sha512 = "277606330ac880656490698b8baa34cfa3f1a1b69ab8f57e65cdbfc5ef545233ac5301d1c396cdd4211058d0ed33157110a14ab745a0295e0bf154167a26b4b1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/fy-NL/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/fy-NL/firefox-63.0b6.tar.bz2";
       locale = "fy-NL";
       arch = "linux-x86_64";
-      sha512 = "0871b3adc369c1125e3b4532122610de49a9a4a8a309eed73e4b76a86e4c0f25510c6ab5b37e87090e68d6d72c07519f1044403fea7144c84b6e003294f86e64";
+      sha512 = "a3433a63fbde753129168a667c17e35364fd599f627bfead913431ee37a04d3576f8ac37171807fea13acd724a5c2f8206426f310c27ce85ae74d98ec5dcb631";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/ga-IE/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/ga-IE/firefox-63.0b6.tar.bz2";
       locale = "ga-IE";
       arch = "linux-x86_64";
-      sha512 = "c99aa21fe8e3f835047c3d9caa167401f7b692ba4be1b7c43a4b22d61eeac1a2e2e5a8ad2567730f310ebff73dbd5cbcf1032a13ff454477a80b30421e1b4abc";
+      sha512 = "c83ed532b1fba3c839a63c8e61d51273930dcfded6d531cff645b57a520415cbfb3b088d4e6659ba330bd3911d77a10b6110d44887c53ec64ad47d93d2e2ded8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/gd/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/gd/firefox-63.0b6.tar.bz2";
       locale = "gd";
       arch = "linux-x86_64";
-      sha512 = "8906f71ad07f89647eb43940da7ffcaf97d10845d7ff0a9a89e60601004aba148a5f49d8343190f9b559741213cfbfd840d17e68c3b67a61183647b8caa7d6ab";
+      sha512 = "c88d8b536510936e80e175b634f4b9d95da104e905dbebff2283b30dce89724882bbca6e3d7edbbeb5280f6e3ada52860a810b587d35da1f4b1aab05dddf5f24";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/gl/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/gl/firefox-63.0b6.tar.bz2";
       locale = "gl";
       arch = "linux-x86_64";
-      sha512 = "8865ea0724ea9359e07f59ce65c0a9953710ef963a440ca86e0fb2bd612b0129c86436f1c53b803ae0eb87ea4a710cd49f8fce9ba128dfa36b2af703c274bf33";
+      sha512 = "f2fec677989c93e49318e590c935a39fa958cd153f89b3308b1970cff62b97cf59a85e462f4a753bd913bc3e2c79d9d4c2095858b3941532200fb1846a4b3ebe";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/gn/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/gn/firefox-63.0b6.tar.bz2";
       locale = "gn";
       arch = "linux-x86_64";
-      sha512 = "dd9e201889a78f8c779aab5da5112c11bb57fcc2e1294bfb078c90ce7f4b81010fe014d5af3ad4a3ae9ae3af7260c1d33a19f5c9282577e5ac562e4493102fd4";
+      sha512 = "4b3b6bccb78a0ed37ecfcdea8e9fda81a13d1af65c2880981b999c87360b627c05508e1b694c54a70c87c779b41c61e45378a6c5ddc7eb989106589c59cc37b4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/gu-IN/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/gu-IN/firefox-63.0b6.tar.bz2";
       locale = "gu-IN";
       arch = "linux-x86_64";
-      sha512 = "53a97afb17c1a64248c7c0fda8f2a412fac892b075d9b956fc92974dcb6fb2f5fc25377d215cc565d10e353b2e34554a0d4cebe73ce45780e2d5bc93a0af4451";
+      sha512 = "8704547fc74b2814c85e9cf4a4dbb5c2e52a86995b19d03625cf7a62944894557e6bbc1acb0f762b72b70792169462b8fd1dfca312f1201d78509a44ee2a5153";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/he/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/he/firefox-63.0b6.tar.bz2";
       locale = "he";
       arch = "linux-x86_64";
-      sha512 = "084ac6281fc2bae1efca509e3f1c2306640c54ae976cb747b6a8bbf6c9f5a962e9a37a3e1219df29acb8f25436782f72e2b388b4d1eac69dccbd628bd4304956";
+      sha512 = "f8d6be434dda8dc38d727792772d51d1ac6b2bb6ddf56cd73e186b917da62d2e42ae6988acfab2bc08e8d371eb5ab2dfedc4a73df10c4f1f6718a8390b217cf7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/hi-IN/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/hi-IN/firefox-63.0b6.tar.bz2";
       locale = "hi-IN";
       arch = "linux-x86_64";
-      sha512 = "05d91b4e6b8411e9a979222d42c82b7772a39653e621339c30698fc5a41d58696614c5677cb41c20b9224d3fcb77501ac436b1681b38c104ff505b1d1ed95945";
+      sha512 = "89de36898f1c03af052f9fded0e85ddb2987a26c7e85e770f80d4b88b5545539e809af8a79e3e890c94462acbfaf25513c9395f374d3446ca9c510ff7ce2ff48";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/hr/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/hr/firefox-63.0b6.tar.bz2";
       locale = "hr";
       arch = "linux-x86_64";
-      sha512 = "6b497998cd3d038cddf0b1bb3e940da7993b95c711bcc369a0aef7f4e8b757a3c606fd5c0f109adf4f0648acd770327a5c4550338afe065ba6f85f18aecdc62c";
+      sha512 = "bde719d4f6a79e48732a4dc5ba8871020de21b28c7dd482be59a4387a3a781f7ed583124eb38e7c09afc5c902fb8393684a0cf67aff9b0ddd37d0dd9a002a768";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/hsb/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/hsb/firefox-63.0b6.tar.bz2";
       locale = "hsb";
       arch = "linux-x86_64";
-      sha512 = "6a06093a377b8ec417edb4183bd19707971d35bd1792ba83cbf7ed801f4ab050f7859f4e47278d39340c25b15ca2506594ab70210d62905f45a764e28adf81d2";
+      sha512 = "90d585288c5c1e3678eb6b074d5bd52abe2b97cc90d6f70a4023655a94e86e287e0109fdd57fc6ae4c3d6a650380e8934a6421fa9f0eb9ecd764cba1d4bac061";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/hu/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/hu/firefox-63.0b6.tar.bz2";
       locale = "hu";
       arch = "linux-x86_64";
-      sha512 = "2fb808e6938b525e5c5af4fdbc4da7a4191ad8bb5f488d50245662427e4295898a7495b4e94066ea04e4f68a4fca8b09b621b5503d4e51949dcfd682f7bce1b6";
+      sha512 = "427bca6aae653f53d9ea52b8f2cf93d060c005afb48f3311e139e6361786f40b1a29ee2c4f0d3b7942f40d9c356d4a8cf3bcebbd4c83c1ad4e1d07ecfc5bf101";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/hy-AM/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/hy-AM/firefox-63.0b6.tar.bz2";
       locale = "hy-AM";
       arch = "linux-x86_64";
-      sha512 = "b17e2ae6e42676ee01016f2e90d73d4e43968224669b1a9c63aef86ebab479bf7d10ba29d6102e38db7317ad4befa3d66eff472905a9372aaa7b1519e2c71189";
+      sha512 = "8f5bdb8a2bfc4ada26520cb30969403b20a653cefdf1c0163e2616aab77342e51bbc2dc0c5cded0298c906c38cde3fd27cd95e3b36c7ae489db90464310a6d7b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/ia/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/ia/firefox-63.0b6.tar.bz2";
       locale = "ia";
       arch = "linux-x86_64";
-      sha512 = "8cbf136b34e180efc01d2dd21bbec2a5802ed0fe3cfe742a3f4760668cb165bfbba009eef26944a186b1ca8b3bd7b2a4d467eb0665be8a5ea0bf7e57bf9c97c0";
+      sha512 = "009d4366ac357911c50b445cf4f99888592631976d0f8b323504105934309bbddb37dba70bfb2068c579ac05cdda329d23580d26a630cc1c6f7bc9335e2f9efb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/id/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/id/firefox-63.0b6.tar.bz2";
       locale = "id";
       arch = "linux-x86_64";
-      sha512 = "ef9a54d8895242d75b6f0346df227ae3b819a85de4a4c6fd658533fb2e5f32a465374a80e70ab0614c9e833cefebefe44413767ce0295982c062633dda81b466";
+      sha512 = "4b85a054ba11a68ce137d96881f86d983357e170e9011f5017f39a7c2dee20850c039f90aa6460728c01e5e04e966e4be6c3a1e048091bfbc0cffd9e50b7a0df";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/is/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/is/firefox-63.0b6.tar.bz2";
       locale = "is";
       arch = "linux-x86_64";
-      sha512 = "ec2e9056cecc69516637d8a8d5da90a199dd4f287f85af19dd6fd8cb4d29cd85802b5c578c44a9fb1aae8f7f3e742ca071a2f09354b41e113f64dcbdf78cd82f";
+      sha512 = "1bb92b42b6da82e59243ebeed7a0b219ce370ff3f6e52aa50748cb24dd6213b8ad1893e7320e2f6b591a19beb8fbac3d89cdc0eea84c18c55eb971385dffd272";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/it/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/it/firefox-63.0b6.tar.bz2";
       locale = "it";
       arch = "linux-x86_64";
-      sha512 = "1e70e9bfdd3b9346fb8815b1457ae89466c97b22150afd32d60a92c2c51e72ec7e151780398399d4d3a410a3e7d0871b6107018e8ed629476bb6fa23e2cb0c61";
+      sha512 = "6738e3d55ada6f4ce88081f1c4ff20feb4643165d92619e169d0777fabee4adb2fe0b3b69cde8bff542c0cf3c64ed81d8ec7a4bed2e68c6f3810678569b38e06";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/ja/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/ja/firefox-63.0b6.tar.bz2";
       locale = "ja";
       arch = "linux-x86_64";
-      sha512 = "83e5d827c447081e073daf51a1c842c42a86ed984dc0961548b04b4353e1384b6bf6dd75f60b0058a31281b51401441bc79c0d0acbac9407af6fd6fb62b08752";
+      sha512 = "be234bf275fe385b52c07d2a900d510161272fa8adb8f6da53e66afcd104310a5216b741205b376c07f1cba630d79d1019b7e7937533f9dc6db7785dad88055e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/ka/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/ka/firefox-63.0b6.tar.bz2";
       locale = "ka";
       arch = "linux-x86_64";
-      sha512 = "036c2a3ce2342ec50c3c2227f49c4708785ca4b7afaa9324d2708b1653ff09cf97b08be9c7e8ec5cf9713badb0db9ac3b2b1f36fd5e941cc5cff8c8ec9a72f4c";
+      sha512 = "2b5e93931150cf683f5b895117a76f7c1a456f19b256bb94e2816adcde6980c22938849e9224260d7a4365b9eb7caa4f0b4093d93509cc783d19fabbfee197f8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/kab/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/kab/firefox-63.0b6.tar.bz2";
       locale = "kab";
       arch = "linux-x86_64";
-      sha512 = "fced42ab596fa0eed255e895a115fc117acaeed0c32204c9625ad37fba62b64f9199a97bd0794d5d91c432776abbf533cac651ab6156c5e7d1d34998ed97d760";
+      sha512 = "09ad7eb4ba151af744e38f36dd8533b0d616ac3d085bf88cd379809007e9d36fb0769d2970b889d066839fbdc79a25f476fcc30fbdb4a7ce14c1030300ac2b78";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/kk/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/kk/firefox-63.0b6.tar.bz2";
       locale = "kk";
       arch = "linux-x86_64";
-      sha512 = "89c23113f22f4a16977c91bd5728514b31bdc5ef8c75c7946caba06c7db64a7c1dcbbaea194addccc203365b91d284066f5a68be585873a1d05aad176cd9f3db";
+      sha512 = "dde0e6f296aa4687825db6a507619be2154962c881d0d9d115e3c286f936d94cbce115eec4192f97d1700910c9d8db11bf1a3d11f222c20b3db16ad66c696275";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/km/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/km/firefox-63.0b6.tar.bz2";
       locale = "km";
       arch = "linux-x86_64";
-      sha512 = "2b97795dd8ca4ce7d934df392c6863ae7a1824b63e8c8a97ea923d0b7324a1feb42c39cf259b83302240e7ab2f0fc84ec65aa5b72ef36ff98e9316a85eeb348c";
+      sha512 = "36f78430639c4b8ec80dcf305d59dfd35892f9fbf0a8ed0d2672a48060118784a076277c6dcff76081496bd70228d4688586e4e65a42f421008954d02b703648";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/kn/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/kn/firefox-63.0b6.tar.bz2";
       locale = "kn";
       arch = "linux-x86_64";
-      sha512 = "b53454c825088debd764988e3217052039ebb516b1e9df4a06d411d4b69270303a8617fc83eddfd48064dd35f9712369f5cef2e12e4c01e35da20aaa9f53ab5e";
+      sha512 = "34e993088835a9af6074a74b36ac3d078a44846177e7f46b544afb177af099baee422a4a0c222abe5199756e24294baa501891994243b9366d4312f43344b268";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/ko/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/ko/firefox-63.0b6.tar.bz2";
       locale = "ko";
       arch = "linux-x86_64";
-      sha512 = "5f40c6f0cab40af75c473e4579510847ffc69b1364af264ab90c9cab97872d685dd62d57839ded440dd34fc6b431c668fdb927d9a58c76f2540239c490bbf465";
+      sha512 = "3eb5c66e38eacc85ddd3eeba8f4fa74effa732960d940982622f6b9b45321a642867267d9ab09ecf4c13ca2dff8a0e3de5ca722f3240b89ab54590c144f0e1cb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/lij/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/lij/firefox-63.0b6.tar.bz2";
       locale = "lij";
       arch = "linux-x86_64";
-      sha512 = "772d20d98fe64cae50ac856e2a0d085cc823cd90e8d4824ba51106d473ee3eb530cc49e8e77960ab5585439b9d82bb809ff1c899b3984274525d0cf0f07c6769";
+      sha512 = "27f758c0fbc6ed07e4aab87c3b6ae30faf2b8f0d818f430d3d3ef75369f4488172af8b29c38eaac3b8169814252fcd08917da03c60ea6ec71bb752905760f5b9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/lt/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/lt/firefox-63.0b6.tar.bz2";
       locale = "lt";
       arch = "linux-x86_64";
-      sha512 = "62c55ce5dfbfb14124b24e7462b18e61a7a4e6b5afb2d5da3c79ea9069b3875cbf71c2d9d28f499630ab4c1603bdb0d71a90d30c39beee17c70f4de5931324df";
+      sha512 = "4697addfb6069fbaa63c8e94ccf83adcb06c43e3a066e32de37fb64c946f199612c415b0a97d7dba2d4a6c570100d40b7834725b98ca8e388a23ddc78598b74b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/lv/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/lv/firefox-63.0b6.tar.bz2";
       locale = "lv";
       arch = "linux-x86_64";
-      sha512 = "d01e28e410b7325b2710c04127666fd69e047ff78046b518d3000271a89d9536ece6ec365248bd3a925e13078ba0b750b469a082b7273bbb02356c3318c46c6d";
+      sha512 = "4c6ef5eaa81ed5d656daf545ee25753f7c9f12c562b9325cff73b07e0bd4dcc9b467a7c0930812f825a2aa409ab10d629fb139591766564c8bd59548dc671181";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/mai/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/mai/firefox-63.0b6.tar.bz2";
       locale = "mai";
       arch = "linux-x86_64";
-      sha512 = "501a76a99b28dd3d33c1023c95dd1203f321e9ea82a789f56c27fb63ac2b0dc1c4a758535b81cd38fa2a6f9234f5a854899c5c9af70b6afe0db0011d1ed144f6";
+      sha512 = "0de6f387a3a3779caf526f6b7c8b1b9a284b333f93314a54e737d908633e78e3456e53013558325fadc981665092d356aec379e9366f9b64c5dd3888cebc089d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/mk/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/mk/firefox-63.0b6.tar.bz2";
       locale = "mk";
       arch = "linux-x86_64";
-      sha512 = "734804d2b15cdb34bfb1e3e51d3b4475d0b23ddcb0bc7e5de536c6098e9f5c2debcc53bcaf9ac76bfe49522ceb345c44d45721d4440b3763054c2e0e195ce68b";
+      sha512 = "be5ccd3fdaf9c530bdc2b6ee0348ac52a3a73093479e3e18a78b4bb2f784dc2ff050d8e7216c64561d835d0f7a6d930419ebe06cd841a5f8ead6289d99533247";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/ml/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/ml/firefox-63.0b6.tar.bz2";
       locale = "ml";
       arch = "linux-x86_64";
-      sha512 = "97eaeb4382199859ee8c8d5f92322bc30eac9aecbea4a00fdebb63ec93172be9225d7269b99d7284edb93bd2b98ed6542cda6e5d65b45f97044c1a117cba53ab";
+      sha512 = "fd06844bad011b8cff7bfaf6ebd4042c95ace65a24fc693e53f1cee432e5a76e1234016be242c811aa0f0ec211faf0d8e36b0833ebf738dbf78419edb6b67af0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/mr/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/mr/firefox-63.0b6.tar.bz2";
       locale = "mr";
       arch = "linux-x86_64";
-      sha512 = "1d1677c48b3d829673fb5140891d1b52ac9b9f075b2348c527c5e364d0a3fcb6eb5cae2c0fb255a834e7d94bcb7af03b928151ad397a1fec13d629a2cf37d44a";
+      sha512 = "f934e0346d75a9a3d0fdb15254748afec3060e576f965fb89e67481eca3c6a1380543a107b6d16659e8dab654dbb6b2549883dfb8150d600bdf315de199d17cb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/ms/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/ms/firefox-63.0b6.tar.bz2";
       locale = "ms";
       arch = "linux-x86_64";
-      sha512 = "70524b569d00964c9773560996972a6f96079e749389849ae6615a90f55ebe458d0d857a1ea7df89b51d39b5cd8e0bfd65bec6b98ba5500419c8e17e269713fa";
+      sha512 = "59975b62484b3cd539832beb1ff243bce8e1148549ecbb3d1b75b9d3dbc7cd18ded9499065770702246fe0ef08612b4cebd1017e3a8fd4ccb849c7174d97bbb9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/my/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/my/firefox-63.0b6.tar.bz2";
       locale = "my";
       arch = "linux-x86_64";
-      sha512 = "19fb98e2f9622ee33d828df12b2f2ed035abc7c66b8d8c4cc5bcb5d985ebc0a7a42d5d793b102e247da395d8257f9070f3896531e507d50c21575b3287792f80";
+      sha512 = "36bf346bbdf5f984fcac96dadb4de9ff62bddddad48df21a6aacc9fea50244775a8cfe7d1fc90a79ad12b37d2c18c486b6971b82e80256ef297f32d7dede8944";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/nb-NO/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/nb-NO/firefox-63.0b6.tar.bz2";
       locale = "nb-NO";
       arch = "linux-x86_64";
-      sha512 = "a5073203319b7e778975c86dda8930fc5f7676b1cd124d461ae0d01d9fd7290a8a87f2303bdb2ceac78eb562955b06eaa86a4111098a241513023cd005cc450c";
+      sha512 = "fc09ea41cd2941f55686de2ce2b0b53d84c59f7f62652899ebdf673d6b87f3b678bc5155c0feb17832e0a32de1fe20574f6e9d32eaf03d468adfdb11ae1051e6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/ne-NP/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/ne-NP/firefox-63.0b6.tar.bz2";
       locale = "ne-NP";
       arch = "linux-x86_64";
-      sha512 = "432b527c41424d34b61bc9ea3c691349397efbf26fd5b9ff85b1e1701d768be7f5f61f621d1f920a696579f5e4d0dacc0e3f91642e2c24b725cb0be16e0f4283";
+      sha512 = "b48a729b9619bb8294430d45c217fce674c5f179b238cae9a08745ff101630929bdfba71815b31109d2cadfa9f727d39a9318b80b07afcaae50ab607b8d5ad85";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/nl/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/nl/firefox-63.0b6.tar.bz2";
       locale = "nl";
       arch = "linux-x86_64";
-      sha512 = "27bf6e9aa084cf7ff041c0d4d9e380f9becf909309317bfc2fb8f99af81a849975575f8e12c83b4abcf0b1706987f29ad313b352f5bee7a73d76b3c8ce5eb95c";
+      sha512 = "c32c199d135c5de225be18bc336414534a973602b477dd0424ee3fb780035c240a3bebea937612c5a746dd240cbf03e1597ee98401ed0bf0a4f60c15c781d842";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/nn-NO/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/nn-NO/firefox-63.0b6.tar.bz2";
       locale = "nn-NO";
       arch = "linux-x86_64";
-      sha512 = "62a187309f01f6d0d7c2b89ae77fac381d14d91ebc864990f897ffdc45d068a7d51a5af3371e4319c0719dbf126f25ee4445a8cf30badf02c89a8a756c44f83f";
+      sha512 = "6fc57dc47794e3c086fca47352bfd7030f7a9678c2e0f1999fda58b0b5a29a8a7feefaee480ab1c1ce1eb21d4fc1ac5f77f221ff0de56bc436b2db96816d67d7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/oc/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/oc/firefox-63.0b6.tar.bz2";
       locale = "oc";
       arch = "linux-x86_64";
-      sha512 = "a5d2fa30167f19b9a7d6f05ddc2e374cbf9918da0eb2d12a121c442f48106ac369133d42bf9ad4de83379c315d0e4ee4820365d43191563da07e3908937bee01";
+      sha512 = "ea37736ffdfd9d774aa32a9cf15082e6c4f14cbb241aadd7d79303642eab35f50ef5dcd8a1701992789da9dd32a6c5f87f655c6ad0c045d7f96f2cb1c431c8fe";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/or/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/or/firefox-63.0b6.tar.bz2";
       locale = "or";
       arch = "linux-x86_64";
-      sha512 = "9aa6f12da9a63cd135b7196fcd579b2115a6a3d0fd7dbcd3896d5c76caa021f64e5622ccc298bada1bbf1eeb78dd5905efc79e779c4e46ce96acda18b0f54576";
+      sha512 = "c1c294e73a891ab0401f8c8d5c18279f62084f80969440bba27907919d2e3357c931571ecbba40570653da382edb5038e0418a8a400189b6d880e7ca03d02f26";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/pa-IN/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/pa-IN/firefox-63.0b6.tar.bz2";
       locale = "pa-IN";
       arch = "linux-x86_64";
-      sha512 = "c90b483004ea2ebd3da65f4b8832990894cd20230aba256ce01b38148378831a7950ad9366ce420d961a72c4bca682bbb5f9ceb027021cb7527530d7260a7e75";
+      sha512 = "0aef8c71dea8366860afa57cb5176fc5f9f6ef4be55c1c84402b518588fde181fa6b3be99862180ac52264582360563247afaa2fb107344c9c4848c4714b6252";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/pl/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/pl/firefox-63.0b6.tar.bz2";
       locale = "pl";
       arch = "linux-x86_64";
-      sha512 = "35b67fe4b6a526256e0c7b0669a99409064dc7e2f8a1e7d46cf71751b6c2074207a592e8fe263ec3634601a793f56d76b09de8233b94fa410ea391d72db5174f";
+      sha512 = "14ba80c2f2d7cce10784475895930e4fe0d22c0dd8029b931ecf22bcc84435172ab0184346a73fb7b1c8079fb1c0b6dff782d49396a3fb3e933eeb3cb7c3c5fa";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/pt-BR/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/pt-BR/firefox-63.0b6.tar.bz2";
       locale = "pt-BR";
       arch = "linux-x86_64";
-      sha512 = "ef30ece766447105ac86da1e324c7a9818ebf7c0a5ea93a31f20ee0e22e3663593824be9db040f02f424cdb6e9ff4e4bb121a57505b0019a0d7579a12ef7fc0b";
+      sha512 = "9f148aa1983aa68cc820b0982cbb23ab9d15023a5abdff346b6d279255ed9b9ed5a5aa1893df223a75d2cb405066d81020e9539b7f51a84f6e4b24ea50b712eb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/pt-PT/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/pt-PT/firefox-63.0b6.tar.bz2";
       locale = "pt-PT";
       arch = "linux-x86_64";
-      sha512 = "b6a571f6c019522d49824554881684f38fdd5df7c518daa35950fdfb7f481ab8ac03d90ce89909e4c6a9112c8b965ce321ece7e317d176394f700c4e0d24adc2";
+      sha512 = "0d4414e33d482990c34e96ddd04469c529d5141748995a3e8ab977733f11c79b91b94f0da5e648e00e269ee3fea173619589a63c62b4121fba407474be98fd33";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/rm/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/rm/firefox-63.0b6.tar.bz2";
       locale = "rm";
       arch = "linux-x86_64";
-      sha512 = "d72c24d58c415f02b85b9312709050cdbd975f0febae57e39db118d88741c5691f82412e6607cf8c440295ef2c55805512d60a05013ba3020afb4c6723c9419b";
+      sha512 = "2550d2444e497ee35daded5c4f5d5ed552754356cb612fc6f6d062b1a078f634fdf56f181b2aa27fa1899af23aaacad37aa82d87a089f3773cb89d7696306bf1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/ro/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/ro/firefox-63.0b6.tar.bz2";
       locale = "ro";
       arch = "linux-x86_64";
-      sha512 = "e881440fceaabe3bac8b038e3bd4569019c1f85a27586f4b4e16a7b2d2f55f47f520b317ab5e1df238ad41529f00b004b65b104ffdd4ca6055cb07e2de439801";
+      sha512 = "83196bb1f7549925b4ee97403c295db75006a240016d9965dd68439a3bf2cbc81d6e3e7c9fdbbfef0b314f3f6856b04769472712ed6a1d77e03caabd493c685e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/ru/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/ru/firefox-63.0b6.tar.bz2";
       locale = "ru";
       arch = "linux-x86_64";
-      sha512 = "777d3c168580d3686f9b58fa6ce83b3941c3fcfd17eaa84ec31193192019c76345ffa2b416d081e974f050c14d485eaa5862245bb4464c239290c27bf9cf8299";
+      sha512 = "c0040be66b906b57b91144f369e56c819f7a58f1440e1dce4ffa1108aeca76c83f40adde4db57d7ffea84025086912494a7d6075de7d82045879143e39d08fef";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/si/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/si/firefox-63.0b6.tar.bz2";
       locale = "si";
       arch = "linux-x86_64";
-      sha512 = "aee6dc0e73a06f3aa2cc7ede2890cee4a72d3711510eef89420cc6cdc09380e30706ca3706b14823fa7c7b53d57f7257aa5f5692bf49834178322015b828a969";
+      sha512 = "689ecdc02747f9ef09209b9ef2a46d3e68114fdbb26bf8c5ce7e0ec1647b8bc726b0a1cbd8089dd18109f0fe7454ac4f5dc0e0fa952ba47a25c475387ed89c9d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/sk/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/sk/firefox-63.0b6.tar.bz2";
       locale = "sk";
       arch = "linux-x86_64";
-      sha512 = "6063a5ef564f2cc7b54f89002a67a2e8488a6b62051a61e545c43ea123c95d3a51fde6eef2165a983266423af421d1c915bcb5a80c63aa4bd16a27eb59c27245";
+      sha512 = "9fd5c81b2d5c5f2a3f3ecec159c36b51a0a16735c8fa53e957a49c361fe5c88cffd72616bbb6e3a5b31f99f0e038fc8f8f43261d657aed43734e3ca7d2bfeede";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/sl/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/sl/firefox-63.0b6.tar.bz2";
       locale = "sl";
       arch = "linux-x86_64";
-      sha512 = "76fe24bb152e4d89e9d4a4409bee5c2555e42ef2dc49beae13cf9f26b4ab5c3ac2d7d8bea9d1d257f2a7ac4e68e520f9e7c00529aef46dfc7436cc9de0b6eedf";
+      sha512 = "195c5214f66ddccc8ae943680664ec75d403c6c0fa4c5f8dbb019423723fd75df17804033d566c7072b4903ee5ab8ff04a1b10486d9b00f17511482dd73f67ea";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/son/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/son/firefox-63.0b6.tar.bz2";
       locale = "son";
       arch = "linux-x86_64";
-      sha512 = "f641b6ac0915678b88e18d8a4d4ba49f9a303252024ffbc21641ca5c337c8d3d4317aefc889e9ee9c647fe51a10c3755146d1b859955efcce2ea2d2f5e9e4a11";
+      sha512 = "9fa5ef38aef6812945eaccde0ca19d73aa4f5b06fda6229813f1b3f4718ce90461fba0f67c888bcad93a531223aa335d6f61e28f9887af2c2cf85d45e7c7ba9a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/sq/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/sq/firefox-63.0b6.tar.bz2";
       locale = "sq";
       arch = "linux-x86_64";
-      sha512 = "773904cae848afc33b0b88fa835db0e0ccb62476ae71628cf5edc1190b70edfb2e91fa6583ea473c6632b8809f485e34bc55a5a86f61380cdba5ea4e99880ce0";
+      sha512 = "82e136a3e4dccb9b604d5bbe853d4c4a4f78c2a5477d765e9df8aa7135648f925bddc79805bb72833df4d563139748baf45bd2ba72e11acc9cbc660d59714e38";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/sr/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/sr/firefox-63.0b6.tar.bz2";
       locale = "sr";
       arch = "linux-x86_64";
-      sha512 = "dbc995e9a6c690d66e6cecea3012ba6c0825124bcd1f49073ad0c70e740c7bcf7b07a565360a881fa31d13988dc88a7e2038e13f229894d532ba44d0f7f36f82";
+      sha512 = "4d915a9a2a81cb9e9936eb75424a546de1a2375c0d36530fae192f02038cb4afcba3ad4ac017eb4c4637def51bf8f2ea3b49f6d4739bc6a4b2599975310e9360";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/sv-SE/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/sv-SE/firefox-63.0b6.tar.bz2";
       locale = "sv-SE";
       arch = "linux-x86_64";
-      sha512 = "94664f3b8a5090c71d7bf5d66534567af5e88aaefb1b96bfe68398c1726dfd3d139f1b106f1fe743d480c857828bba7877c0d77d3b1a582e9f39762e2f2600e3";
+      sha512 = "b03ad21046c2b5bef78bcced78166147fa93ec5f10cc0e48cee403c9e42f2e61c5276d734dc9175ecd7eebc1be1cf6254638c0eeac00f463cf36f849bbff455b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/ta/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/ta/firefox-63.0b6.tar.bz2";
       locale = "ta";
       arch = "linux-x86_64";
-      sha512 = "05f938e3f3d380e991ea61b774c0afa60681cd90e193dcf3ba99c2d8f783c265f6094b0a3f088639ab2b060b07a9d1f90396b65cd9bfa2480dcd366f3f05a2b0";
+      sha512 = "85858ba5ef0b5c3e89c855740f6147a71307dc891570e4c99d6db49e9a25d37598b2975863a308d0ded578626dc0752a947db933f50afc550786fe66d9858fad";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/te/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/te/firefox-63.0b6.tar.bz2";
       locale = "te";
       arch = "linux-x86_64";
-      sha512 = "48aab49101dceacc974792ba8b355bacd40569a6571c9e7fedb72574b09b019ae3e78fb8ffaf1f7809f121e7cad7ff581b5555847bfa8067cd7441f131d9b973";
+      sha512 = "271f53dc27eae9af525a2bada8496e2d3a7237856062e125e9ef3e188c79cb04171a2bbb6648a58a545cecbf220e14b7464b78c7f378f74a26448bf4e76a3c55";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/th/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/th/firefox-63.0b6.tar.bz2";
       locale = "th";
       arch = "linux-x86_64";
-      sha512 = "1d6dac041ffabef622b1e71b1473a8acade169f567e98906795c14146f8ec800ae4ec5e5a4ef06a800dbc18a41400dbea6892a9a0cfc902d9d7348a201ae3548";
+      sha512 = "cd63b180020238cb720f5dc8d439a97b879fb7a4ce3d3e0569ba2216109c8244de6c2d31ac1d4b631ba44ba36b7b0ea63e484a344447ab11bb4f1cb09c95a289";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/tr/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/tr/firefox-63.0b6.tar.bz2";
       locale = "tr";
       arch = "linux-x86_64";
-      sha512 = "0f6e4854a5f6a9540d78e14090b4204bca5de037fa15077bc6417bc422f6f7cac6f0655b61f9062be6545515a1eb38a54ef5e7d0fe347426424b48686d6928bc";
+      sha512 = "58e2a575f1564965eb69409548ae66356995ac7e6f4fa1c30368b86bdd9b16e9c24d581f287ddb7987d9b12418a6bbb06630d3c886b4807407085be57285b150";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/uk/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/uk/firefox-63.0b6.tar.bz2";
       locale = "uk";
       arch = "linux-x86_64";
-      sha512 = "2288d8d209a6392646f10f0fdd2229b281eca6ed9e830ef4102127b74f9f314b9f3d67f03d68aea57c8c99814e46c87a2c27c6d1ce5b31e43e427ade1ea7535c";
+      sha512 = "34a666d4932a5812f2142e7cae3b88e5b7f247d46aba0f719def7f71efc287f495f2bbe2a769b1b8d5894e84a1ae3ea5571ff6d893cd94d57d72bb29b731ca2d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/ur/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/ur/firefox-63.0b6.tar.bz2";
       locale = "ur";
       arch = "linux-x86_64";
-      sha512 = "a1cdd10df63e2306a0907686de28066c7c5c6241dc594350eea456a9684a288be20bb1625aa7017e320d3f5bdc961d8f0945220126448c54ee57699e67f5aac0";
+      sha512 = "2aff092fd5fd768c8d85186e4ea5a8717eab40aea9b02f662e495c73a71b26a5cf3636408d64f8ed6cf92a9ac60467b5b8a0361ca359a4e5a5961b1e2df77528";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/uz/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/uz/firefox-63.0b6.tar.bz2";
       locale = "uz";
       arch = "linux-x86_64";
-      sha512 = "70905785d613426e585ef75989f90d4ead06f267e49a668c986df0bca93ca5bc409cd1f62d1b4b23de0659c18155075e05aca5122fd2ca7d22c748f94b34dfc7";
+      sha512 = "7265652e77785516a81e60f13b0c8629382815fe3cad0c3f506ae237f1725756b4d3b5b4c645a50fbbc4f31bc4601f338ee01d9ad53b4663fe94734c595bf218";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/vi/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/vi/firefox-63.0b6.tar.bz2";
       locale = "vi";
       arch = "linux-x86_64";
-      sha512 = "9ff2e67f2be33356054615abe599acb7d192f6fa7525ff20307818c7cef25cef649ef7f26c231d75afcb7e0babdbf4df9ed4f56d5b749a884a0eb17335bc1919";
+      sha512 = "7af8e33d2539f1ef7139def4939a73d041169ed9f96beafa999fd464ab736562f399151bdf0f144ac5cc564d627d1af7d7cf74e242c1afa36a174e993c83e2b8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/xh/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/xh/firefox-63.0b6.tar.bz2";
       locale = "xh";
       arch = "linux-x86_64";
-      sha512 = "39b0d603092198f6b06fb0fceb9de7f5787bcb24d3f8129888b00ad5b22e171c396c679a945dae43e8088a662ef2abb2aa94c2cba0bd1037a7f4f5dd3ca2df1b";
+      sha512 = "c27af26c046c2bda79af486e3e9adf5d2bb26a88092c3853bb798ef057298b10e29867ca15246c4b6f492bd255ccbd87a8a039934fa74a0e59b09186e70b8dd6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/zh-CN/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/zh-CN/firefox-63.0b6.tar.bz2";
       locale = "zh-CN";
       arch = "linux-x86_64";
-      sha512 = "f0ae1486ea7155521095dbb2ed764365cd01bca16e7a9520810950699e3a6d0b191488c929a2b9980783976b90e0df7c5999f1df8b67b8f851e133fb93dc600d";
+      sha512 = "6344d2270fad58127b10139f0557f03215e3a0e91acdfbc0a40bf5ce642b88519008787629bc398968f2778b2d58ce23cfdfd22735ec419358bc04395a4d28cd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-x86_64/zh-TW/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-x86_64/zh-TW/firefox-63.0b6.tar.bz2";
       locale = "zh-TW";
       arch = "linux-x86_64";
-      sha512 = "7d970407678c320e731de0a4f00438ad7faad0dbc375e0eb12c3956a543279ef379b8f1e009b3f866680ee2122f6383da232f2bd1bf06ababed3ba04e453d065";
+      sha512 = "e589bb6b8878bcc4470403e3d2df103405a7980b6bf3dd19e13ae28a231755f91eed8cecb09a1946a645804f026bd3b04ea1b3acc1416231cdcc2148abbb9531";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/ach/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/ach/firefox-63.0b6.tar.bz2";
       locale = "ach";
       arch = "linux-i686";
-      sha512 = "04da51cb7580a716ce70f46ed48b6332342a7c54548280d2c2a82bcac01534bf6ec638bf6090f61794b78fc3a1445dec98fbb420103f2b942314d9aa3db85263";
+      sha512 = "eab5ee28b0c03725c403556567f9f4d7d280b8e46355af6efcd58358d5623d0edb69bac5d230be34b0abd5c23815ac686539e8bac53682838de5ccef46d1215f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/af/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/af/firefox-63.0b6.tar.bz2";
       locale = "af";
       arch = "linux-i686";
-      sha512 = "1acf9dfca2cb878c4fc3ee1ca56a87daac9248a42295d0d0ae11e829768dc4dec8655fcaf4c0843fc916e58927a417b9ccca4ee8886ac5238c37cfdebf8d4608";
+      sha512 = "b728cd2536a9c319bcbe995c782890a810687de604babceccde6c54f4c5989c249e7565a732ca07e51d09aabcc89280793b3624d438aaf888d0117bf0954fb92";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/an/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/an/firefox-63.0b6.tar.bz2";
       locale = "an";
       arch = "linux-i686";
-      sha512 = "81897f7babf614ce6951f402104bd829e770fe88f6f64335181fc4283e73c6c01c45d4078b70a933525a20d8ab1f4c3b3b23eb9fad5304f0b35513e43b79d15a";
+      sha512 = "a4c4501dea36758eea77183bcb18e6f070f776abf120052d1b85fe01a5f7ba46bf901e7064c97dd1d7ede451946c4b26005fa5302f01cb804511512c6a41dff4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/ar/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/ar/firefox-63.0b6.tar.bz2";
       locale = "ar";
       arch = "linux-i686";
-      sha512 = "67beeb695048bb70f2e613a4d08e00d2d5ea5d7748e6c8606ac7ead43a9d2f870e72c3ca1dbbc3c7244068ec29a916354ead91391d3cc77b1bee5184c25bd75b";
+      sha512 = "9bce6e99cffba96eeed14f3add5bfd27a1665ea396a94e16cd21bf253b711f2c5d4bdadbb08416bb361c3fc69f065d10267d91e23916c110066b6380a9b4a873";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/as/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/as/firefox-63.0b6.tar.bz2";
       locale = "as";
       arch = "linux-i686";
-      sha512 = "6d39b86898ea8169d47f801058874a07a32c2da59d59c0f101fa020b4c118be720fc221cfb59fbe124aa278edd49c828142616b714be0053b1d74beb8dd88b33";
+      sha512 = "3708b422b68680a661a0d919478bed981b8eb7e3f9173e2b14cab5b2a15cccb4421d7ff4f2b14ebcd2e8d695898a1add8bd9616d6db80fcb6a4021d06425780c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/ast/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/ast/firefox-63.0b6.tar.bz2";
       locale = "ast";
       arch = "linux-i686";
-      sha512 = "552d79448ad366770d1f759793f1f792265d1630ecadd87a011eae75f2a17243a1636ddf483afc10e1a59874f1466e8a9bcce5b2b8e31f2ec72be831c9e2d7b5";
+      sha512 = "bf2091ee05da54d03eee37ee21ded86cdef173582310a6508d9277928a95878aaf7bcf1aa5bd68e2d2ca9ad1e65d47724f0fd78d5d919e31e4378b676204c6f9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/az/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/az/firefox-63.0b6.tar.bz2";
       locale = "az";
       arch = "linux-i686";
-      sha512 = "16eaf530b848b2291fe2ee03489b9414d538693024ee12be223dfca2980ef3536d560b698ff8f99744bf6101138fd1303ffd42002d2272b2dc5fbc5f97dd4138";
+      sha512 = "d45f1667a8cff1b8714a95f79b012467adb6bcc7c095ef4aff0fd54a2025b0a1fbd834ad2e262faff609cab0c300b41d8cbbd11307751f5373f3460e7c4e70fc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/be/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/be/firefox-63.0b6.tar.bz2";
       locale = "be";
       arch = "linux-i686";
-      sha512 = "47565829a3f5859fe1e640263d4c46e2584666fd5e388c4e831b6411c5af0fadbf4e69c14c730ff2adeb14d732ad71031a2f903e86a1c0ebc26eee3126739ae5";
+      sha512 = "f663fa9a6a3f4d23e792a0bf36bc6fae8abef7c7f0b3d13907ca319fe1d64a22fad391e61b77a1abf35e19f8a5171330419f51d5313ae8b698c1693c3bff7b57";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/bg/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/bg/firefox-63.0b6.tar.bz2";
       locale = "bg";
       arch = "linux-i686";
-      sha512 = "5ba29e660effe660301e9c9f009e3c88c12aca3b79553f8480dc01f99f5858cd838fa9a7fbd0105070f5186a10476719c753514f0005957fe774d845e182801a";
+      sha512 = "4da474498d551006f141471730e5bc2df1eefc53b5272c5857a6f2d020593aa3ed76a1fcd3c2d18765bda3dd3d0937377684da83174b5fc703816cef14abb05d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/bn-BD/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/bn-BD/firefox-63.0b6.tar.bz2";
       locale = "bn-BD";
       arch = "linux-i686";
-      sha512 = "ad81b92e79e754b1d88a2292643699d6b66c34259ba66f460017cdfd4739326ef97610ab2be3168d0db88cbd1885a2161f708e2c1b889e5b5f1680ab2ff4a1b8";
+      sha512 = "d9c59c5d6da1e2ff3d487726e469483eacad2ee6b25e1185b4033cc485e86a5092e6085f7d5343e996b6ddd77cc97d3a4a503361d472ef138897d2125eea17a8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/bn-IN/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/bn-IN/firefox-63.0b6.tar.bz2";
       locale = "bn-IN";
       arch = "linux-i686";
-      sha512 = "960b40181a3f4a31844a7b1d63b2211c296b1337d4c072f259e80a368fc5b6554808683eac530068e0b0a155f72292d6a4ebb717d3693e367142841fe325a827";
+      sha512 = "1b39194c16f6717e212f8c51b8ea97bc4f250cda22976218a03ef1447e38df56c2095593de0914d8d2f67bb980a2a407c74809a6600dd5c079b6c4943c19f346";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/br/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/br/firefox-63.0b6.tar.bz2";
       locale = "br";
       arch = "linux-i686";
-      sha512 = "4e1fb7c0155bf06af57abf0dcd10989199063030378ef6864ff5f4cb7410fa1af780c038dabdf3ff6fee5a26aa27592dfb01911e353dd300faae04a8782e4408";
+      sha512 = "840837c47fad73aa7391262f00a1c50479d3fb43d047dea8d02e198dab863cc49e9a512e632197e0330c293d30b345de764f266e67aea0cbf675e8256bda626d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/bs/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/bs/firefox-63.0b6.tar.bz2";
       locale = "bs";
       arch = "linux-i686";
-      sha512 = "7af74277d78647ff61ad05aaafd1d9cec295f63198bebab083c5bd8817f3c00de6f5ff49d7548fe8b6d2d7e06663255864e6bd6852ee769c465577217366d074";
+      sha512 = "e551e302b24f053efe05ce2b5eb22dd5c3c67b39a5270d3cf802eeb6412e2b8fdb71813817b3761a4d6f028bfac5a17252e7d64752b94e7aae3389744d21c3a9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/ca/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/ca/firefox-63.0b6.tar.bz2";
       locale = "ca";
       arch = "linux-i686";
-      sha512 = "fa050db4fea78126bab3c2ec2db4514f826a22a98e2986c8a779c933641bbb722b223e76b6d7b533cc43f5186a8c978af34603ae4ba1987ee1fe383004079232";
+      sha512 = "1aee350896ce766299a75719fd7c1eaf14b62d2ebd7260efef09a6c2a0dbfaf41884577fb5b387a4001599d64d48b6b2cd9405a47d6627b02ab2f801cee5c3d6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/cak/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/cak/firefox-63.0b6.tar.bz2";
       locale = "cak";
       arch = "linux-i686";
-      sha512 = "c69d394ef30975c4e546978dc9e64266236727bc1703c5224e721b12476d73e1455197380dca29e4d71b741116a29ecd441423422d398004cade9b009deecb7d";
+      sha512 = "e46d2e799ce00f4c6c24f5a90a0b723b3dc51b00965667c1cf036976be8ee55680a67a8a63e964ec721582d12ac84ca72aa19cf8b8f8c7f2942529830ff9b5e0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/cs/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/cs/firefox-63.0b6.tar.bz2";
       locale = "cs";
       arch = "linux-i686";
-      sha512 = "b5d4a689fe6b475fc87083ef7be7a31bac3569063baa160b0c6ab8847a12807f8a1e9c3e6d0c2c3b49ba74f3b93514211c084a99b9406bee369d0bbb78678b71";
+      sha512 = "f78e1cd0f24f756e9374929c6ca2df9ab8c455c6ec5e3c1696b2ba17b187c56a6e6a16fc123b599c2deb0cbda1c8fa963a66f8217795f891cd01f8450af3cdd3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/cy/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/cy/firefox-63.0b6.tar.bz2";
       locale = "cy";
       arch = "linux-i686";
-      sha512 = "baffd6932c5fef0b4e9a652ff4c892be693abecdaa0757d8ed1ebf5aaccfab34d0856a8a156db252892b8721093302a03dda65ec510837cb31713c3a803a11cc";
+      sha512 = "7d69f5ac3e2d2808d6cab53201ba554efb20e700a6d95945f96680f84fa61d9349f6bd51e8ddb5081e39044de3301ac7c0ab4fee3ec2abefafe96444e0e00d98";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/da/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/da/firefox-63.0b6.tar.bz2";
       locale = "da";
       arch = "linux-i686";
-      sha512 = "bc4a2a7eec60f6d4ef8436538ff4067a34fa6ead9d75b4f88b24ebb6d3e7712facad4386423b3c2dcef6ae183891bc71d0e9062421fe5ce7725ff564ac042b70";
+      sha512 = "1357e1f114f800a1a0b4f6c333b3b9ef1be6ea7353cced97dab3b253d39709b330b76453cfad83952fbdddc92d4b590455a5166b1006dca8296582ebb5d8ef84";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/de/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/de/firefox-63.0b6.tar.bz2";
       locale = "de";
       arch = "linux-i686";
-      sha512 = "470d8758e2407781308814bb581b68ef6d46bd918c2a7e2eb2cade73012c79ae01796fc2df8848ce92ffc3953d180a0d742d1da315025190d1795e450004cef5";
+      sha512 = "147e6e8e5399608f18bc5bf7f2eccf9cf44af143aff5e2d876d6f1b7880a7fc6a05b38954548e05289a586f3b8ae2272bfa802bcc3960cb24e9132039d120f8b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/dsb/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/dsb/firefox-63.0b6.tar.bz2";
       locale = "dsb";
       arch = "linux-i686";
-      sha512 = "14f9beced9df9de025550b06a9a418e4d37b8978025068570b955ab80dc1a5a87e43f93b92e145287668082024eaef91916232ec1736070af6e415bfad9f6c56";
+      sha512 = "3a3ddf43dd388ec96494b529275b27fae940831b3180c3750dcdad3037be770c4405d586dd7aa49db709eca376272d77943261e96171ec2c413ed20cbc43f1f0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/el/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/el/firefox-63.0b6.tar.bz2";
       locale = "el";
       arch = "linux-i686";
-      sha512 = "a52072b717f8d557fee3e4536cbfa436ccc87fa9568837b58494ffa6f2b3d153ee43378ac871f99b7afe62ec6adb831805ac7e1348b2b395360b79d94042b35e";
+      sha512 = "be9e7dbf2d8b750ec002d1dd818163cfe2cca78e65dba20f055dfb0c967455768aa64e5b9d5159d6dfb4ce80fe6eaf61db8fcde4b1d1aebce250dee108bc8067";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/en-CA/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/en-CA/firefox-63.0b6.tar.bz2";
       locale = "en-CA";
       arch = "linux-i686";
-      sha512 = "71cadf96c97c236d0c9d4bc8886368ea5a9220f5fcd63a4e54ccea90de606391037bf87e4fb8deab4ff3043c2a0c8d641ade107f60ac5e7793ef1e85c031c525";
+      sha512 = "6606e63b836e57e2b02737070e59438a63ccdd1b633d1658fcde8d4b794a32083ccd640668abf0853cece990892197e9f2a8d2d451b082283cc87a036a3522ec";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/en-GB/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/en-GB/firefox-63.0b6.tar.bz2";
       locale = "en-GB";
       arch = "linux-i686";
-      sha512 = "0b7a55f1172239857ddc9d75a14061e7b5feb5855fe8d5e07088300f64a1e4c0c1521d1db5a8b7b05837223d1ab43ec5730d8e706953a14c9fd13ec3c73020a8";
+      sha512 = "4dd2493e7242f790a87a9dab7afb097d038e7a3bedf44ac7c63d84322b60a84118d24073e3be479792ca451c2cf3dc201ad56648e215c30e001318299ed9aee3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/en-US/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/en-US/firefox-63.0b6.tar.bz2";
       locale = "en-US";
       arch = "linux-i686";
-      sha512 = "1622748e3b656c8703ebb276f7a8bef4b2f6a593590eef50bf0e9722466d49a33ea31be107e3879073dd7b2c4e7ee3e2eedfa89b3e723108ced6a34ec3007868";
+      sha512 = "505d3bcedfe2483ff46ece4bc208b120f2da0893d90d11384fe294dd360d2b49c9def89c2435484d3248b59afb4da5a25e4403a9d82c4faab68b2905740f0731";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/en-ZA/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/en-ZA/firefox-63.0b6.tar.bz2";
       locale = "en-ZA";
       arch = "linux-i686";
-      sha512 = "d5186d4172f636ecc4c39c60d32c80592deffbbcbdbe518e88eb67d3c56d8095ba440ee82af3efe138e78d3ae40b8367f5281fcf2900b913557734978f741354";
+      sha512 = "cbd5fb2b5f14f88038a15b602741e51dbf1e9b3b824871f98cfeff331a4cf5529f55f0c7401683a453b39e98aed016df404090dd3bbc7a634620985895f85401";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/eo/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/eo/firefox-63.0b6.tar.bz2";
       locale = "eo";
       arch = "linux-i686";
-      sha512 = "e0686beaaeb880be30604a8a5ab0acc541df1020dc2de3757d5fe5e43a1ad6a7de603d5c137569cb42f5dd1f2845c75392cd276815512231116991a5e54f1af7";
+      sha512 = "54b045a91db22cf4f079c9ce80ed3e98987978f6cda8acdb218bf71e4d9de510b3122a773e51bd8378183623ec28609641428251410df41c3c42f49468a2d024";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/es-AR/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/es-AR/firefox-63.0b6.tar.bz2";
       locale = "es-AR";
       arch = "linux-i686";
-      sha512 = "5816049b91462845cbc4eed891aed168836e86ac2935bfb8d27485de30a7dacf83bd765016b528465b7aa559dda30034ef2195a98756aa5b17a25b96906b4573";
+      sha512 = "2de07b3e57fbd845b506862588381bc41b4d36afb734370fa7b9b9717d9f65bd2e42d3c85d4fc6f244e68c13583627f618b7b49ba5fb5e2d62b9d3f68479f1ff";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/es-CL/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/es-CL/firefox-63.0b6.tar.bz2";
       locale = "es-CL";
       arch = "linux-i686";
-      sha512 = "cf1b7bdb35d5bc8d30c805c98e3a0843f714cdc2f79ef8478277356032bf8eaa4c013901f46662712b4b628d62e2f6b1e9520e868f39badcb0dfa56581862699";
+      sha512 = "36de5dabfd2c212e4942a859058a34afd9678dfae19dee82437d1df8c3a794648c0b71e5262b6f2ead8ee2ab43b7d4ffe011ed3ca82c100f66a116aab81b3ac8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/es-ES/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/es-ES/firefox-63.0b6.tar.bz2";
       locale = "es-ES";
       arch = "linux-i686";
-      sha512 = "ff873d670ce9b20b8ff63bb8727a338b3bc0818f0568675f1a3fc6bda13e8f4097d1bdcf6cbaf651ca89163c8676f9492103bab682a8f9956b43c2686a51df13";
+      sha512 = "44421cc401469730b0797dd54175677d6a663efb393ec172c98f89b18de6a64ed3ba74b960d9c13d35c0b86dbdbc4ac8721bf7e7abd6943cddb7685f4dd8cc02";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/es-MX/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/es-MX/firefox-63.0b6.tar.bz2";
       locale = "es-MX";
       arch = "linux-i686";
-      sha512 = "253c140c390c3107ce16a9c2f73c41a71e4b080eabd049a5c1f65c8fe895bd3ec669eb653c8bad55b00bd65e97108d85be18e1edd1ba7457374fdc0b9d82d616";
+      sha512 = "bb2fb4de76ed136ba9264770ee5f5c7a63e195aff2122294b55d1dad5fcfa53ad2e47ff34ef944cfbbd8b84a57df72da0b9611bf6e8ebb07b6e29803160f5adc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/et/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/et/firefox-63.0b6.tar.bz2";
       locale = "et";
       arch = "linux-i686";
-      sha512 = "cec92b0815fd530f3dbbf195104c6699e4d078a4a35353cfce2425050bf62811b093e4276052622eefb60d4f670fdef28919f8d83e273a27c7c9cd6b9725f064";
+      sha512 = "019d81bc4fbdfa5b86d9f92ff9594668b62228307a8f449a64be7ec696e151711cea0860bd8a7112d9aa994626fe1a96b8a70f2809c611f476e73686a4fc0f40";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/eu/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/eu/firefox-63.0b6.tar.bz2";
       locale = "eu";
       arch = "linux-i686";
-      sha512 = "6cf19489fccc70da26bb2b28f8d036a402214ee785e082e2be7b065f8420fd1057e3caeacb42436955a84467228fbcf2cbc62f871fbec959a4461d9555ee4fc2";
+      sha512 = "02709783ac751e78266bf7301e9e155001256947cb5ce3cc1c8bf7debda220cb70d3a14454a73dd4bce22082999fcf8c2944ed1c1c40533366afd6a40b78b44a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/fa/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/fa/firefox-63.0b6.tar.bz2";
       locale = "fa";
       arch = "linux-i686";
-      sha512 = "5d540a7f403ec92a884656279cd4e7bcf7bcca72f25246894295f2f0d7271b756b6851d68d925f1853e16be14c4f9607b2284a642f4438725384a2ed18e8def0";
+      sha512 = "8e80f8a0853450de97623cd274a6e376c342782dd9b1a2754b0b1d176084c479547b3b78241776588cb4fbfa40d2f60c8a4ed26468f075b557a343e467ca31b9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/ff/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/ff/firefox-63.0b6.tar.bz2";
       locale = "ff";
       arch = "linux-i686";
-      sha512 = "65b32a30ab5bbe626cbd1276eb0fe4bffb60ac5651ca6437b0887a0bcbbf5201aebc74c3a80c92baa1a56e60a6852b32fe7ec7228de99e9296deea976c6c238b";
+      sha512 = "13a46600b238bda2b7f601bebde0e41ffd8d71e47ec434e2d4cdbdb437e8cbaaf59bb36af63e83a6f99cf13e3dbc43df942e9cd29834e52425b325d399ae479c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/fi/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/fi/firefox-63.0b6.tar.bz2";
       locale = "fi";
       arch = "linux-i686";
-      sha512 = "00515a094f79ef0817bc3bc392ab9d4effabd68748d0de0f6c0cb14e7996b97fa48df200e1444ccfc2810c80252ceb22b6e87037efc476dc58330f9af712bb05";
+      sha512 = "f14de9d2cb994f23f6fac5557ef5c0f64fd8833e469cc80e4c7fc4566ff0b4c4797a0f78c4e05ba7ba0a1d93e22647f50372129fdc48e33d7c25452627022035";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/fr/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/fr/firefox-63.0b6.tar.bz2";
       locale = "fr";
       arch = "linux-i686";
-      sha512 = "2a1f2b26f3f8031e2da3778e375b889793bcd87cc2e21b3f26f16a3aa2f4043225472e9be3c8e914578a59277f7bf42c929a2f0d5475041eeebbd8d722a67c3e";
+      sha512 = "8b8f5320d1be4dc55185f013ced37103f4017c8b855d04c99982b8a3f8e3f9161696c28c798098f697bda961726e61647f16c1e71c479fdf00fca318370d89c7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/fy-NL/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/fy-NL/firefox-63.0b6.tar.bz2";
       locale = "fy-NL";
       arch = "linux-i686";
-      sha512 = "669f1c45e9382b81aac5c612fc111c9be716e662f0a87c7b0c9f536277d010203438c09ecaeba58c87cb91f979427ce389c5de9d55adab8366d36273a4926ce1";
+      sha512 = "bf6265205d7e3ebf7e3a639e1f2189eac267afa906748505d02a464657264e4c4604bbd543e9fe32831c11ebe4ae23b7767155bdb065725a258cfe34f82e5196";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/ga-IE/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/ga-IE/firefox-63.0b6.tar.bz2";
       locale = "ga-IE";
       arch = "linux-i686";
-      sha512 = "c6977760950f0121cfc61e7d130f89965df9cb6d319389811bfc08b6acbce34eb6d644b3926f4b2fe4fcc735aad1a1be447dad8a160a85bc543d95d2db3d2b36";
+      sha512 = "f2c924148d58aabe6105562762cb9fab4fbeb8eebab89a736792fdef830fcee2dd19b41d04b58f6cd5a850883b7726deeabbcbbee45c3bce80e64fe4b05cb40f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/gd/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/gd/firefox-63.0b6.tar.bz2";
       locale = "gd";
       arch = "linux-i686";
-      sha512 = "cd1d2369a9609969f52d08012bab63ff82a795438ddaeca2c17f0df69a713df209b455eba32112cd571769f0a7a8cf8f8eab718a597b5f795f05b6867e88a382";
+      sha512 = "ace52bd9f1dbe2dc52dbdd77872e523f066e032305ad1ac26e680ecebbdf78d5792dc8b30abc218a7e483feb01cc1be6dc715e8e93d19e220194438de7ca01ba";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/gl/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/gl/firefox-63.0b6.tar.bz2";
       locale = "gl";
       arch = "linux-i686";
-      sha512 = "a0a3bce700746a50651a982ac7dfbdbaf192f10f0e443974ae088c9bcf0e2fe6eb96d3c406138bb236512bd6b1460b0e9005ed370f38520d4f618d090e58201e";
+      sha512 = "7decc69243d2c0ce0555ffdb9ed2cffc98c7716150e55d11f891e26a039b5d69c78e19151ffe9c2b61770e215c6194e44495c6360a5c5ab8bc6d045fe87e281e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/gn/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/gn/firefox-63.0b6.tar.bz2";
       locale = "gn";
       arch = "linux-i686";
-      sha512 = "d609256292a297f959793c39da5d91ceab2a409abe9a560b47fa51e8856fdef2d1af2bfc6a4b2fe870f4fb8ca175c369e9ad9029df6070b7ca12205b712a6e21";
+      sha512 = "802d4a653a9ad5993a165b5bbfe181dffbc713f139c6d47c1f808633b5511c535357da14722c2e95f02cf4ca3d713537e64a3ba72e7c1e460caa83cbca6ccd62";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/gu-IN/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/gu-IN/firefox-63.0b6.tar.bz2";
       locale = "gu-IN";
       arch = "linux-i686";
-      sha512 = "c014f45aa1a46558a67d80b177f8f22a01f250b5658149c64056ffcc2f1f7953f43a0e6eb21b7c8ec5d4e7ce677f6620fd87454a7d65d145a3609e29c7b2dfc1";
+      sha512 = "8aea57f8059a9645f609e11de02fbc83b563e0edc3e84d0072571d924686429de9b1c6817c9050bef05fac4c4535a31bf108502c54bea86ce50952b6bdf11c2d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/he/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/he/firefox-63.0b6.tar.bz2";
       locale = "he";
       arch = "linux-i686";
-      sha512 = "e65683aa8ffd57fe3563c8b7d13087fc473eaf240d1acad36a23be418cbf41a543ad4a2226df16ba65dd3bd6d309fd7cee162b60485c58ff5c4b61a1b2e25b5c";
+      sha512 = "a2eea01e4b6ebce0d9950ed550c1317a5b4a89f43ae74bc30d36d584cbcef1df8fd783f2a9465d818b32eba548d40aa6b258a9c4ac61d6d7d2b68775cda6a8f1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/hi-IN/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/hi-IN/firefox-63.0b6.tar.bz2";
       locale = "hi-IN";
       arch = "linux-i686";
-      sha512 = "2125df51d6209b702c1445935ed44de5fc13b218e44f199300bbfd1efe51fcfa5123c47063f5e465a542f34f5a8f7643ace65aac433f76a2db9ce17a4a727c70";
+      sha512 = "1798cf81a92c4fa0449c9c14e4f41e879b79cea4030f10412d95005be7c53474674c914f5b1a62f7734f60f159b92065679c90c650a6d32193e701f723308fe1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/hr/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/hr/firefox-63.0b6.tar.bz2";
       locale = "hr";
       arch = "linux-i686";
-      sha512 = "85067ec21e29bf7a055c5a089c829412a703985e0fa699579edad4f4e01a2212d5068212b93455965f469d71b99e374aeb512cbb8f83228b5bf66e392a5c26e5";
+      sha512 = "17a64f915c2d49eb3a835d250d28d0a535c74514231eef5861de9627b4a52dcb86ef7620afea56d929c200b39885a772ded4f19c78519762c7da3e59358cd878";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/hsb/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/hsb/firefox-63.0b6.tar.bz2";
       locale = "hsb";
       arch = "linux-i686";
-      sha512 = "5eacc1b187016d1d9202fc0755dc5eafded40552ceb34ba6391a15785a720bd13b01b5e451b5fa013d3047e572e460195236c6acd98c041c31e50b5f7ae1c0c0";
+      sha512 = "deaf0ecf6f4a871b82e6ac091e2273f5fbf9e9e7433374d2094b5a5b97e19725b12c64e57fec8113ff97501027a5b9758419daaad8cbc8685e91b0227722cb88";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/hu/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/hu/firefox-63.0b6.tar.bz2";
       locale = "hu";
       arch = "linux-i686";
-      sha512 = "b820778f6ede465d2047c2a8ef6e509983647fc0ce8d829ac38a269fd0c7ce9eba0c9ea6f1ff53debfe934531794e78a71c3c212a716a85c6f3cd866f832a841";
+      sha512 = "8bdbd1387f891f8dfacd6ce2ee61a34ab5938832aff4b2b21738e1e672dc8d524f4abbbe0805506bd914b0991139f603b5cf431cc4b50361e2d0dd8f371355b4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/hy-AM/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/hy-AM/firefox-63.0b6.tar.bz2";
       locale = "hy-AM";
       arch = "linux-i686";
-      sha512 = "6859c52b6a7265a14feee8c41d969d79c9e347a297dae320e6fd7ed17e8d306dbb4775df49d907003ba2c506c00ce774239cf3afddaeec78bf8d4738af555fd7";
+      sha512 = "d0e252c057c8395d49c02f218ed84bf409189ce970a279eea816face6d876f7646db33ace6ae6cb1dfc7c4b5e143c89a483cbf363bfcf95f3f431f9586c1a1ff";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/ia/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/ia/firefox-63.0b6.tar.bz2";
       locale = "ia";
       arch = "linux-i686";
-      sha512 = "20fcbce5d73e2cdc53f715876d5863725cd2645025ecc468f9b5a9c73aed58676965279834c2ac3daf9fd439fff6952ed398afb356ed210221e6c4cba0803601";
+      sha512 = "00af6fbd66080b69777f1e04c11a70f2cf6c34206e8f8b78a40342e787840575c5b15b066e2db5f1a25ad79102440e1faf2b899990751f45c3876c5663101267";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/id/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/id/firefox-63.0b6.tar.bz2";
       locale = "id";
       arch = "linux-i686";
-      sha512 = "b7308aec549714ddd570fc0347db65ed8692df6c9ba8a98b01f51671976232c6ab6b3deadfe952a6371b05525a49e480fa34cefae6b11a11a81e0bd8c80e8563";
+      sha512 = "289df92b4e23123976b2cacb586302d09dc8df466dc85ef835df260e1938902f3e797da052980cb3cb7e29d9a2a0c7fe602f9cec45541f0e789d3628a830cd30";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/is/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/is/firefox-63.0b6.tar.bz2";
       locale = "is";
       arch = "linux-i686";
-      sha512 = "1a4b499fa6a14f2556456a2aca27a636a5396d01f5be9ffd324228c2f7c1a63e200320e33852436187cb3a301a0992b4d4ce52d40dd3b62360bf1aaa572007b3";
+      sha512 = "444fbfa5ec27b0623f00d48ee2ef7ab0f172806f4a74322294ca165cdb72646dc6ebe96085136f94c009a82cbb98aeb1d50b2aa6df8df267f80a6317a04b8ed2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/it/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/it/firefox-63.0b6.tar.bz2";
       locale = "it";
       arch = "linux-i686";
-      sha512 = "86bcde5aa926466b1c49c3b0e1fe54b011816a08772582b35b7d35c091809c4db9b8d63630029949172709302e65b4a7ef50a8ef60dcc31fa97696b08d3e7b37";
+      sha512 = "bbdfb37dab9e9ece7b4f17b1e1e06b1ca24b88fc43ca9760e9ceebdf7b4778f919210d64e95ef9bdb96b8ff79236aa1d8e5c8720bbd2568f4b8fab188b0b26c7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/ja/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/ja/firefox-63.0b6.tar.bz2";
       locale = "ja";
       arch = "linux-i686";
-      sha512 = "af6b46c0c452f38a66333b022191a37f25d24792bef794a34a1f3f5aeb9ec88aca4f7764e4221b4f05a7148b37214e1f8121058f30ce85ec639d56132e6f85c2";
+      sha512 = "82b50fd71be229632c6bead6af45d3c90bab32206650000aa8492135f3ce56e6895ced667a3cb7a32810758680ba4cc82fa72cf57a266f5bda0c7aa3f60e98b2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/ka/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/ka/firefox-63.0b6.tar.bz2";
       locale = "ka";
       arch = "linux-i686";
-      sha512 = "3d7e18abd78e4525803ea45e7d47fd9157c1577179a449aa9224704a467afe4cea4b9c2c25117c05e91c8d4cdf096e5a3d9e478fe0b391695b535df74ad5dfa4";
+      sha512 = "02e25e99ed57424dd1423d234155949f460fd560e76e3063be7b1d2948878d5f68f57d965f1289f1a5e49981f6201e8ecf9777bad68c5822a818d9bf7c26f29b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/kab/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/kab/firefox-63.0b6.tar.bz2";
       locale = "kab";
       arch = "linux-i686";
-      sha512 = "a8221b5079837075511af6e94a99a0bf3b30930683956ffc862966f4f3637afe11ad67ded04e98f609b885dee65c2f885daab91d4150585d0199ffc8cc5c9958";
+      sha512 = "2c1345224436e8107bbaa6dacec6ec7a6ba74f3f7e2d24ccf45e24a852202ebfb6fb3b803ffca539dc4fa1d58f7fc0aa6ed8e56647e46ff794287ac691aa93e6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/kk/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/kk/firefox-63.0b6.tar.bz2";
       locale = "kk";
       arch = "linux-i686";
-      sha512 = "720813df718cb5a6a6fa464950857ca262ff6784d53c85debe1e172a992efc9d46092b55bda7a13df46ac453a4c65024c9fcb78d544ac19976afcd4169600e93";
+      sha512 = "925210f2c2ad93f29472ee7588db499a4212e7141475bc96b3f7c76f893a0610a9903ddf9abc8707b7b8580ab26da896fcc869ea505fe1cc2cc6509b058f1c48";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/km/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/km/firefox-63.0b6.tar.bz2";
       locale = "km";
       arch = "linux-i686";
-      sha512 = "1da32f65cb39f0289f3b68ed645dc6dba1604d0cdafcfbc41ee05af0d9468b49af8f0479d1391150284b0175bcdb5c0386137850afb7f026883597662f2c69d2";
+      sha512 = "94b49896be62788e8634ad41c64bcc1ada6dc4ebb9ccb98883f196f6afbcfe5b44654d7295495e6d647f55da0d5b43340d5e728fb3b8ed567b6e3f9d5c5549de";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/kn/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/kn/firefox-63.0b6.tar.bz2";
       locale = "kn";
       arch = "linux-i686";
-      sha512 = "997e6a75633829c6a981f647a550a716232f72e385bb02da03e52533a719bf702db2f4d5972237611ce0c6ea320dff071094e8b10f6bcfbf4bf17613257853d3";
+      sha512 = "6284470b93ca5b934a51eff752d1abead88baa2168c985cab94023d7bf6e6b8487d682a08f4a6016273248acd664b91bde7e9f32c0108f18eb2bc800c7f766e7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/ko/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/ko/firefox-63.0b6.tar.bz2";
       locale = "ko";
       arch = "linux-i686";
-      sha512 = "28bac11d194b40f94ac2e951a5a96fe05d21624d72b1210669c8cf2ca094b3c017388205072b90a8bb94207f9fd9d8beee93b61ca557837ae96a4c567704083e";
+      sha512 = "3f970d147a88322d8dc2b3e0a636e8312dbdab26ef888cb0266d9f99c29ddc1310c9cf7a22308bcde967ff1b2f243a17ea1611092d58824ba7f15980ee20912d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/lij/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/lij/firefox-63.0b6.tar.bz2";
       locale = "lij";
       arch = "linux-i686";
-      sha512 = "c3c3a6ae74919acad82a9c796c36bcda9c25627a173897f67f9270adfe2a6b44ce2f1c3dfe7dd76e05b9bd772df2f88b40c0d6794e4b355bea1e40b83b48688a";
+      sha512 = "a774e0f3558626edc6ff244f36e5aa2c8d0743eb17734fadd577d0edf7b81875e17d1115e901f5680a798401e1da7ef10cdad093dd8dd1c5a63c9a84ec8a5dcf";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/lt/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/lt/firefox-63.0b6.tar.bz2";
       locale = "lt";
       arch = "linux-i686";
-      sha512 = "30d70a30c0140e89696e457ea799b5575e3be75ca02954c46158aac96f8b30e94180715608535c8e8c43f09506d218e253a5713463bceb03267004c5b82a6aa8";
+      sha512 = "d3c4fce5b8b833a53dd494d3dc926d7fe2d5fc6d4a451e7597a63ce954b5e676297661baf4f5a1012003aac2909abd552efa51705ff3eee2184c7b6a4d833d7e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/lv/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/lv/firefox-63.0b6.tar.bz2";
       locale = "lv";
       arch = "linux-i686";
-      sha512 = "4c089810bef9c3ef475a178d9e64c379ebb2f120f336240e8d004586ddac300050dd46671ee4f3872e0e6ce84cea09438f7035685362f8f66b3c2748194fa61a";
+      sha512 = "0ff4dc581b784ba46575a4b6a5efc90ef7fcca29eec9b077adf7556b0b500d89a5558bef211cdbb76884136bc85fdfdd4321c6cfeb93e1ff3930fd7efed88c06";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/mai/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/mai/firefox-63.0b6.tar.bz2";
       locale = "mai";
       arch = "linux-i686";
-      sha512 = "cfe6c4676bbf009256c3cf9e7b4533236ef48404664a27f8767a37b40046eb3f418921f9c5c4789c8db5930dfd940628e026ce1dd8ba4ca245dfdd97fd5f564b";
+      sha512 = "58d2dd9aecf1515e81262cf3319aad363f4f3c25dac1e8ba73f086feef119bb548a40b286e272ba948706a06241c6f64b3f03a677c879a3442710690bef564cb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/mk/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/mk/firefox-63.0b6.tar.bz2";
       locale = "mk";
       arch = "linux-i686";
-      sha512 = "bcfef6667c8e7a7fa8695483d8da79c2cee101c6001f24a10ae1d1558422d4f250ab1c1c55370daf5c913742e2655ab826e0302cc91117d134fd124c51b18a00";
+      sha512 = "179f34359c0418307e7fed73a8d34f4af6637d066398340531a896d7b804c4f78b71b192daffe50aa2b6713148fe7103e35607f4c1070def21cde891586b5fcc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/ml/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/ml/firefox-63.0b6.tar.bz2";
       locale = "ml";
       arch = "linux-i686";
-      sha512 = "a199e177f361dacc07aebfcfa6ed5e28a07cbcafc766c7f7e86f83d42e33680d219ee79d3df3c55f0025aa3ee4ac2ef0ace1af1f83ee6ee536876aa9fa904015";
+      sha512 = "e4dc114ca2d8b7ac8d24b85464ab07ae5964122eb8be6d97303a2ff97ba503e8d29a53052e475ebd8248e5b5cc0fcd8215466ddc29274cff9d0eadf4b5cbd559";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/mr/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/mr/firefox-63.0b6.tar.bz2";
       locale = "mr";
       arch = "linux-i686";
-      sha512 = "795079bc0cb4ed0d6ff7e4dbffd9ffc5cda8f5045402a22e10689f88a63e0684d99d74d896317dbaa7cf2f1b3c2a4701bbfef3fec1b5bb8f1e132b7848064a00";
+      sha512 = "397833dde5956d8c6e5d010e6597366b237923345534ead8fe4dbee4d427e81122bd67ed81980a80a429d1234290fc7633e52a4a74d73766a838de90b1d7aaf3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/ms/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/ms/firefox-63.0b6.tar.bz2";
       locale = "ms";
       arch = "linux-i686";
-      sha512 = "919828730ee86c893563673c27cc81ff99a9831bcf20f5d12b630b89306f7bcec3395c289b39d9bc41804e45c66addf8307dc6de5777f0138f397d9cf4d01048";
+      sha512 = "840a4c4fcdcc2c250fe265e5e7e52c8963a2c9973f5d429ff0d7d4a9d6d2a94cdafb19c32848be2e894438452d34e6e2b1601a4dbd993bdf884d06fe7c102a46";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/my/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/my/firefox-63.0b6.tar.bz2";
       locale = "my";
       arch = "linux-i686";
-      sha512 = "9d0a31384a9cf43999b4edfe0904449e5c86c5f7a55f83403f5b612a3df260a24f78d8a077f27560d9c95a83680aa58fd1f0dc43b57de1f9f9eaf5d7125f1f0b";
+      sha512 = "abcd596fbde8705b50414f64933fbecac68335227b4641341a975092646444e8f5bd32828e05083ea1e6c8499e1329051b6de954f9b80acdf2d9c60a5b946228";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/nb-NO/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/nb-NO/firefox-63.0b6.tar.bz2";
       locale = "nb-NO";
       arch = "linux-i686";
-      sha512 = "0bf6caf24367e8a86692b3bab88a740f3aeeaaaddab7c9f475daae259c6348a6b61f20b01c2d8c611aa26ed61e87fb158bae8baeddf335849ec4168531306877";
+      sha512 = "d61b9fbc5b07d66db2658c95cbffb722645a78c75737c2de1f62cd73dc757a083fdcee3b0f2d649a27ae5d1e26344c194b3e064eef668a734d694a63807e0c0d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/ne-NP/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/ne-NP/firefox-63.0b6.tar.bz2";
       locale = "ne-NP";
       arch = "linux-i686";
-      sha512 = "9a871db32e0ffc5126536b1de4647aac0e081126ca0c7a042188eac8ae3dc80d3912377714e42f2d5d851ccca3afa995249dbf58e9a4e2203dc228aab50f84de";
+      sha512 = "323b19eb99b09b7f302513eb8103ecf4e465b8249501a872ed811adffcfd4f8ce280c8362b1b9cd34e9d94bed22ba10d4c6735812899b482444fde984ddce1cf";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/nl/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/nl/firefox-63.0b6.tar.bz2";
       locale = "nl";
       arch = "linux-i686";
-      sha512 = "4a5e884f833ad8d7d66050f95fbf7f856513ed6d2fa3481df3b1ad71ba78c0711412890414dd8581a080156d05ef08118fde9ef2c13717cf4af4bfb67c7312d0";
+      sha512 = "6b6ba812e19a6fa17baf0a45fe5bc5d6f21705ff78beda3a12f461b43a0e2bc26889881c0d52b66c8fb0265c762c9b763f01161eceff12cf0eef4e61b393a450";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/nn-NO/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/nn-NO/firefox-63.0b6.tar.bz2";
       locale = "nn-NO";
       arch = "linux-i686";
-      sha512 = "3f2b4e57ad161cdcf31512b0207c0c3d7ca810bf897be5d6b9fbf41f4f84898b960e61cf881f19e5ebd886bcaec95612e11aebf78d4894b6c6cb6c6c1c7651bb";
+      sha512 = "c122f8ee627d712946ef302fb9671086ab2da22056ad93d15061b47f66101c61bdf3001f0406f701787ae04f34ca713e591dbae3af830931e0f463e26708d706";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/oc/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/oc/firefox-63.0b6.tar.bz2";
       locale = "oc";
       arch = "linux-i686";
-      sha512 = "a4747101315a61f7b2f04b58ef36540adb1ec941eeee86ccdaa515f408b15b0f300f8edd3c7e81ac6845a80aeed596b0577c35d64e626f90c981002886747604";
+      sha512 = "71423e13e859fb691a874927bb522d54c3b6c196e1f107067e599df594ce99af6d9a745502190142424558407f65cce9493617f7d4c716527104e8abb6c2f13b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/or/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/or/firefox-63.0b6.tar.bz2";
       locale = "or";
       arch = "linux-i686";
-      sha512 = "93e76f3f570bf6a053551bf24fc1dd04e13e3032271122ee159d1bc72828a932c0ba45d8dd7f80d5f0638f39d5966a836276b2655e3e33d1c141dd038fbb196f";
+      sha512 = "7c5e784430f7e43df723676ce23e49f774dbada41f957ed1b5c2f0b18897aa3c4f340eb940dde94ee79193e5c3c65bbf9071e1b7ee5cb00b248ef10da6cf5dbe";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/pa-IN/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/pa-IN/firefox-63.0b6.tar.bz2";
       locale = "pa-IN";
       arch = "linux-i686";
-      sha512 = "7fcbbd0526596f106f062cdc48ad61989074ca3357aa725df9e32254a74208f8b3604569c0ee66e1c9556fba19bc7c38958d1b779c1a2444527b92bafae0e021";
+      sha512 = "7bb3447da606501e9494d1e523da7203c7bd7cacbadfef44f3417b7a7e99fb9e6471518e9dc43f15be36c5c3e120dce1a04cec1a083c676ba212d740ca48ae43";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/pl/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/pl/firefox-63.0b6.tar.bz2";
       locale = "pl";
       arch = "linux-i686";
-      sha512 = "d8e86a809ad774eb43a20f2aaeafd35f0dfc0710716a41338bbb0e75cc9a2bef5dc92e671d1912a902d484a77a5d0f578633d180718653ac421d0b744c3db567";
+      sha512 = "74954ec0a53b5f113604e5b778b713e189f0fc889345aef8d516261383ebc1ef9ad3086576bdc29e3052f0eb1b95f02bf66558bba6f18c5b4694cd02936a6764";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/pt-BR/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/pt-BR/firefox-63.0b6.tar.bz2";
       locale = "pt-BR";
       arch = "linux-i686";
-      sha512 = "0b02882448b1c2c1b164ee5a8b79582e84e989aa42e03d127cde10087097db57887a31d7ffdf6960bbd29e8ab7316fad38dab61f7bca58893adac25e898f703d";
+      sha512 = "9f733d7440761f222097ee389f0b7d986ddf35c14046bf17e53dd9af1ee3dd2040c7058419032edf7beceef2735eb6d753456990d2909888a80a5adfe1cc2a88";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/pt-PT/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/pt-PT/firefox-63.0b6.tar.bz2";
       locale = "pt-PT";
       arch = "linux-i686";
-      sha512 = "82b714e304f0f358b66c2b8ec76d93aab65225c16afdeb2041e1eb6e2617e969dd7fb123158f186194a36c57a41eb9e7b25642cb60cd1ab6faa7c56f031736ee";
+      sha512 = "9929ef96a510b321515fcc1e959d832041a85c8ba2af43fa54eb676a01f0240a412bbfc49f7746e4e976791156e11bd94045eead843a9f8430d04d4c5de3d614";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/rm/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/rm/firefox-63.0b6.tar.bz2";
       locale = "rm";
       arch = "linux-i686";
-      sha512 = "997e8d1311efce4fbe0b4ee9d76e7a9f6fb52eed6f64aa89928d62f251b38e4e7deee42312d6b06e417db7932b3990e9936f8ee2306e66d4bcc0200c747af2b7";
+      sha512 = "7aab5000205de4e266d2708fd20bb75a58ab3cda940538d2bbf6ea5a38a64cb1e3790ea8a298e5d6d2dbabb78db1e73bd7664764e10262e83f73795ebd8f7840";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/ro/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/ro/firefox-63.0b6.tar.bz2";
       locale = "ro";
       arch = "linux-i686";
-      sha512 = "9a658f5d770fa0192374e29b82a209895b7f684e61133d6c7f83347087d85de291f8566fa4597cede1a8f8a5bd90b491c7a87392578ade07da911ee9dc4bfc8f";
+      sha512 = "0db825ea45a80d4b50bf62ca1e0a1c04f04d325214e809763967d233b444e451ef6a3bbfe772bc3c8b5b85ad36d084ad3c932d7a644e0fcfbe114910ceca9999";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/ru/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/ru/firefox-63.0b6.tar.bz2";
       locale = "ru";
       arch = "linux-i686";
-      sha512 = "fae3452c17b0b7b4b309e1fc57c027b1c1ea24f3722c6e15bc3907d239891cef6f3696fbb901b76811cfafe566dd94b0f16c9f9335edeaf547caaa940f57c2b4";
+      sha512 = "431e1b93c68b3b6c7922d2d3619ce60587906caa048810c419153541465436fb831077a28559ee696276caaab43fd63faf20cecc1ce5dba6269d5780c7f00e3b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/si/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/si/firefox-63.0b6.tar.bz2";
       locale = "si";
       arch = "linux-i686";
-      sha512 = "a2b5133a8f8efcbc5ab1a6c36b95afcd21a89e048c3f3782760ab9608ebdcb0afa72d8eaf451579c0bca196346d4642ae96b885d084921388240eafab580a80f";
+      sha512 = "754a03316364012fece2330937775b44f1939ae27749b57ababc752270133b9d432dce76d314464f6b650b4706dd1b2b771c987d97cfebe50edfa2ed44db8820";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/sk/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/sk/firefox-63.0b6.tar.bz2";
       locale = "sk";
       arch = "linux-i686";
-      sha512 = "ceec1a45af1c9e05f327acb520ba6df722e0fa416a98821350cbf71f73e2fc9ff3172edc472772441236bd66d9ba08918dbf76e864dd87c9a028eb3d274350d8";
+      sha512 = "c2b8d786b611ed3ba4a266092d61a4a019a087c39443d3f5af0e9b7a26840c41e8f8bd6823aee10427a93ec0c642059fa506b79eae738ebfef12c818ac37dc72";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/sl/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/sl/firefox-63.0b6.tar.bz2";
       locale = "sl";
       arch = "linux-i686";
-      sha512 = "ba63d313cd3b75e341322ba40b38bf7da4b447f5e05c26a1ef6503ce8603ffc8a5c4b486d86a9061fd153f2997fc339241118344e54e75f6436dd8575bf4c191";
+      sha512 = "2d545ed7f9b1571a34db7e0074aeed0219e8fe08a4ec879e5be1e3845f77482a38df8fa41b2d58e6bade7d0184f77cc41226d72ae9501c57152a1695fcf87e17";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/son/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/son/firefox-63.0b6.tar.bz2";
       locale = "son";
       arch = "linux-i686";
-      sha512 = "b938397f1825f9200c7dc490b59c6c649765c94a99670ca4604a0a1040bf307f259dd52235ae045ddc85fec1558dae1382858fd59a5b82c63b5a0e87a12233fb";
+      sha512 = "9049a0d8bdafe9075c8468fa976bd33a33b77c1e3f8edb52844bcebb5f56039a7cb64db60074176138c98d634b9f3bacba28a9ed11c06da27796a3880b182de9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/sq/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/sq/firefox-63.0b6.tar.bz2";
       locale = "sq";
       arch = "linux-i686";
-      sha512 = "66d7582888e7b8c6d5322955558009d15d243c5feb14cbd36a6d76e2308ed229255bf19104381e284859a85272e901a6a3185988c97a28d3b9c2ece77c36fcda";
+      sha512 = "59facd99a6917dfea8f2a65505b1eac14c07f5ea349e321794cac77ac8dad7a53a47eb4f72a011e4c137b9dfe27a9511384944a59c00d6d0ad1009eddffd2c04";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/sr/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/sr/firefox-63.0b6.tar.bz2";
       locale = "sr";
       arch = "linux-i686";
-      sha512 = "ad28930d33084df204283f7ea1312510f02dfe4915018e7101873cd773291275de8e8307df6f099b9f6bbb946a49fe930a65bf6ed2791a4bae3477bd44da7809";
+      sha512 = "3e91df8e40903fc277a53b1eb3b1ffcbef8ad480d5c752eaee1e5d2eccd820fde3e2c029b2b83dbcd213fb0e36ad7cfea8619cd521334b3cc707290ca86ade42";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/sv-SE/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/sv-SE/firefox-63.0b6.tar.bz2";
       locale = "sv-SE";
       arch = "linux-i686";
-      sha512 = "42a9f3612c5e2fcef7c67c04faf6279bd8d9de0144e03ea2325f2bb2b59d72dba78c69d3c3ea9768d2b7e8483c6a9676e53b6458e29ff05d215aa698d6df901b";
+      sha512 = "f73666d1672323a0db9b7ce3e93b2c0e9289b7220d075452c8ec72000c0e89be92b514acfd30687463590c17605b7952b58cd85b1e653a13329249c71dfe7008";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/ta/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/ta/firefox-63.0b6.tar.bz2";
       locale = "ta";
       arch = "linux-i686";
-      sha512 = "8e9c36dda61507c313396a70ac2959f500b761a51d2423956ec4343a79b688d8a845358f880443d123260134627ed08f280c422129c4c87196ce4111d64f7c3c";
+      sha512 = "128e05bc5df3994bf50c0a2fb63366f9de6923d509f4951b2c0fbf7f579b0c47814816221145aec705a820de3d5f1440ae8c79ef5260e028a797362f0f597fb7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/te/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/te/firefox-63.0b6.tar.bz2";
       locale = "te";
       arch = "linux-i686";
-      sha512 = "1d97795b7b4e0a26f742db20de34a2551cfe9c0077560e4886e710d12fa9ed932e7bc532f66b9be9df438fdfb3d67b1a7dac481f66b778d32cb9772688048c12";
+      sha512 = "007feba73d0add3a23307c0eb55a0b9f38c022828f3d320a19a98f61229fe820c7ab59fc5a84dc5d874c6c5bafed0b7fd0771b7ccf798a4b8e96efa519b9850f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/th/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/th/firefox-63.0b6.tar.bz2";
       locale = "th";
       arch = "linux-i686";
-      sha512 = "d9769f7a21189104cf53f6a837b3e30b8954b963c4d5b6751012ee1e0800de27321248a5c2d1b44bfc3fc28a2d7204659bf006b6681f8067799e94688e7777e9";
+      sha512 = "c7eab31cf9789fbfb3d4f9cb13193c6197b5f73e5b1839f0cda9b01eb291a898f418d5ef8a7e82f0d28f8cc23861766c2d2bd407eabf11e9f5df0d3d653ccded";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/tr/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/tr/firefox-63.0b6.tar.bz2";
       locale = "tr";
       arch = "linux-i686";
-      sha512 = "c12bd30cb85a2140c4e342e4996c8dc32c34cb14d64441901774313c3384aa1765fc9277f67bb2966f6509ed67fe5cab938eac18881f4ae003b354c381e146a4";
+      sha512 = "33e7bc1dfe7577bf71585fd7226dddfca784b32ebd7a922e07245deb3858f4bccc8417e56bc988acc7a8cd1babd871d2dc6ffab65caf2ac93da8bfbf814051ed";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/uk/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/uk/firefox-63.0b6.tar.bz2";
       locale = "uk";
       arch = "linux-i686";
-      sha512 = "5ae83fe9bc6e92d19048c6f3f4e9832d21be4ed4b648036a792f08af813e9dabfa48cb2450a3e49fd227bbf379784dd225b03a654fd54214a71ab9cfaff200b0";
+      sha512 = "b90c2e68a05d754aeccf07a567d4bf53dc8582b78bac3f09f1c5439d04582fc68b948676a87cd6592bb338baf924f49b7b9f16450c289ddc9ed4f2d1bb1a38ed";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/ur/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/ur/firefox-63.0b6.tar.bz2";
       locale = "ur";
       arch = "linux-i686";
-      sha512 = "bbd4e1ee235bb61dd7380e22818f692710d2354abc7d3b895ffd750bb5ead6d3e5127088c2dd11ee38f7f8ab4f89ef710eb1c84385b4e9fb4f7342ab333dd93e";
+      sha512 = "e78ee959b2c8c7c54fa2a62a0a2d353517ab9eee328d6d4319dfcc90d8a5fe5bd879da860bd0d49d8caccf37d13e92c20cee99ace26cf3c0ecc286fa79c62466";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/uz/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/uz/firefox-63.0b6.tar.bz2";
       locale = "uz";
       arch = "linux-i686";
-      sha512 = "116a7914da2659bb40fcd8e06d12fc715d78bfe17fe8409756aae1d72010780f25d6b2234ab1e13a3fe69037b682b68e2cb9ccd5c156405426a959d9d3d954e1";
+      sha512 = "a1cdee5806ce52f35bc40eb224292e1aedef8fb5ba09cf411597d1bdb0ff9375ea3b98353fbe367f9428aa74c48b7d17970cf452fd48f83a131b09a351a2d1b0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/vi/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/vi/firefox-63.0b6.tar.bz2";
       locale = "vi";
       arch = "linux-i686";
-      sha512 = "e661ae440c5e01e77110a0f5969df213d33236589c9d6a7e5be2da2e5b0efb6d67dddf9d6f209e0fb5d0ba99badadc3460f4ff61e58de1f0a2fb0fbca5c7c85a";
+      sha512 = "14d4810dac2ba95feffecb26ef6ebd247eed1d6263863af67b282c14afd1aa2979775e7f32fa7f5ce0d90371fca87c80ee7d28a4cf376c4da7fce2cfe5f7218f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/xh/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/xh/firefox-63.0b6.tar.bz2";
       locale = "xh";
       arch = "linux-i686";
-      sha512 = "4c4841775946ddaebefeb930cb1277a800b814a6896d46b329c6550f5e1e9d1d1ec2041e7ec192f9053775bcda81f663e196968c6b916f1e5ffa962ba2935f10";
+      sha512 = "f830087569ea719fff523ef595ad6ccb881da046e6d9930a809d644ce6666436e51f10e179d5ab9052f1f3928e45e8da6fef97afcd1b16bb1907e39a2c41d56b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/zh-CN/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/zh-CN/firefox-63.0b6.tar.bz2";
       locale = "zh-CN";
       arch = "linux-i686";
-      sha512 = "d14b19d5566b7b2ff85c692091576d0e343fbb8aa2be3141693e8185ccf3e492cfde0e9eefe4aec1fc8773063438f1e65f6cb00486f7f95090df726563375ca4";
+      sha512 = "ea1f85cf85d791dc343af564b817ec6f85394b56aa40e4425d26875c16f03004d78b275c930c581c4c0018de173118f0a4d23da9856eae6e970e3d0db2f101a2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0b20/linux-i686/zh-TW/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/63.0b6/linux-i686/zh-TW/firefox-63.0b6.tar.bz2";
       locale = "zh-TW";
       arch = "linux-i686";
-      sha512 = "71c96ebbb527ad8a83be94bc718d2eb928b78420335170e9f2dbdd3ed9de50b6229f27ce1d11131f4f35d931a95836c65b3a74c200f4c8f247df93027b6c6126";
+      sha512 = "674ef2f083cb79783c25fb9741fc1c80a43e64023813e2cf45fe95faa3bb58e9a89f8d5d5bf54dc713effec2fe64504fb99f2d955b1c9ca91b01a00aceff0747";
     }
     ];
 }
diff --git a/pkgs/applications/networking/browsers/firefox-bin/devedition_sources.nix b/pkgs/applications/networking/browsers/firefox-bin/devedition_sources.nix
index c0ba8e5e822b..07ad3cb610db 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 = "62.0b20";
+  version = "63.0b6";
   sources = [
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/ach/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/ach/firefox-63.0b6.tar.bz2";
       locale = "ach";
       arch = "linux-x86_64";
-      sha512 = "47f6ffba22960f16caa981e72d58c28f5308581c0740c15a6e2107431761e90f6751fbffbf79f2a03efbe7edc3e9f7078835d60a79de603aac1f06b09b0eee5e";
+      sha512 = "4603e03f097e91bb205658cda8a4093f80a808748b9e935a19fa4ce5dffa1e88c4045ff661dda4fcdd21cc04c3ed15b8bfd2540ca98cf0331dae5854a262f347";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/af/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/af/firefox-63.0b6.tar.bz2";
       locale = "af";
       arch = "linux-x86_64";
-      sha512 = "a7b1e73f5f6de78b73654a153a34648fc6c65559f7489b6fcb88f763f8aaa6ea0238dcf71a19f3f97c72c4cf16a919fd1b47bf4dfeab0cbc96db8b22ee4cb932";
+      sha512 = "393bba693aab5de8996e085bce9aca41474d0f5f3a5d2963467c3c994826f20949286a5a10f4563279ef5e340836d30fb8ad8e667b2b211b5af6160eb749fe6d";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/an/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/an/firefox-63.0b6.tar.bz2";
       locale = "an";
       arch = "linux-x86_64";
-      sha512 = "626b63a3a550c92e6b8c8df8db925c3b0790cc835e7f76274bd8b2a12179d300fb2659fc47d394c8868c89f2291fdd7c865b034464a84fa454825d84e53f1fd5";
+      sha512 = "bf814725809aeadfff9260c2e1b90989532d90fa96cee0f7c36d525122bd234ba3e41deb1e5473476e240d2473e558b2be07319cede32046c24858556a51c103";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/ar/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/ar/firefox-63.0b6.tar.bz2";
       locale = "ar";
       arch = "linux-x86_64";
-      sha512 = "14385896811e1b6e53d204caa9a3b8e56758c494376cf87309a25c4af795b34a906b959963fb96926143bc5bcd8c658e3558c5083642150fdfa3501feed67392";
+      sha512 = "7ae25e4ce8dd67c700c0998a052b547dc6dcf15e47df1def53a519d68c25ca153d0d9086d1cf14e1587df232e6061e28dab3557af270af851280dd3ddf88cb56";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/as/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/as/firefox-63.0b6.tar.bz2";
       locale = "as";
       arch = "linux-x86_64";
-      sha512 = "859413e14cdc432fb92e02d94212dea896c28a26d86972501aed1fee38610917ae70a0d2f749f4ef1432d543819f1b403d85ac3ba6563639bb1a6e6bbfb75978";
+      sha512 = "6935b28a5049663ec6b677cba03d3a58a39d4f15fc22445b227b5443492f15982959c55e4546d0b61c3a6a660ca532c83511af86395d36423de5b4f2dee18504";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/ast/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/ast/firefox-63.0b6.tar.bz2";
       locale = "ast";
       arch = "linux-x86_64";
-      sha512 = "139a2995639bc2fc6331f47cf1fc5d5e1df2c4f7c1d582c125c5320a54fa20f58bc0d8fcf94ef07eccb32cce6839b6e8ddc8044c2166242dddc40e861954df37";
+      sha512 = "9674c4b37eddbde604748250dacef46309f7784bc28497e85baa79906297e50a8dbb7d96e7526efd999f0a10a2812cd6aa8b08bcc5fa8dc88442fb397203a13f";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/az/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/az/firefox-63.0b6.tar.bz2";
       locale = "az";
       arch = "linux-x86_64";
-      sha512 = "b7785f29b4b6dd0dfbd325e6c51c9ea66f6fc34a6151a991506863f9169d4051af6847dbeabe4db04a7db70049b0b964ce9038c363749c3c728144037d7ae821";
+      sha512 = "3f6507f10fc5787f596c40e2220fcaca4c85736ef87567ee049768f2d1d687784b6f8841515829b83d70da9526410b1850286cb562b98da02de14059f0d76c8b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/be/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/be/firefox-63.0b6.tar.bz2";
       locale = "be";
       arch = "linux-x86_64";
-      sha512 = "f246128a4473237afd5881eb088d334b086d2c49c79eeb051f9365f0f0bb5eefec7d0e06a67ad1d3771d81a3bffa7a665d270242155cad5b099b9d5890b7d71e";
+      sha512 = "1f1b2f678251b22670e5618b28f3bb1afe6e1cc8b2ef5b80c98a37e47f376fdd529b3acfade88d8e22ba00210488326ce5d2df75fed824023794688e9eb9a5f6";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/bg/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/bg/firefox-63.0b6.tar.bz2";
       locale = "bg";
       arch = "linux-x86_64";
-      sha512 = "262eae9674709dba572674214ba2626c6e36b372c99ef8f278b1edd900c0a75854fce26f3cff80b669e56cb70b592d92b070582cb82ff47526c956d45f2f1936";
+      sha512 = "640fe4d6d29bc9b2e8b04e327bd0046c3a650061f66cad26979ed517fcf07a315a4f9424c4899ae5c64635426d7badd0e3b132251d20610efb29673a4d663a00";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/bn-BD/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/bn-BD/firefox-63.0b6.tar.bz2";
       locale = "bn-BD";
       arch = "linux-x86_64";
-      sha512 = "69f03e13c99f621bd83061bf1cc8ddf9e761e05eb5a11c35e8a1e4a7d82cf258fa32292dde088ef5c383320ee59a05da8e46ddce6e6283aad3463a7ebfe68394";
+      sha512 = "96e8f65b3d1a3b97f0ba874afd8b7e29779ea580abf94534b88a6c303be57cc173cdf3a7b73d75a0517f532ebb881637f0afd64896e0f4c1a5b2fe10dfe6f73a";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/bn-IN/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/bn-IN/firefox-63.0b6.tar.bz2";
       locale = "bn-IN";
       arch = "linux-x86_64";
-      sha512 = "1fc385ea3e38dee112329e72b7397c031b4bff02bd1e3e863d673f96c98366115d2112ee5364da93a34ce3de631e81b156e0f51895f64c1fe84bcf3724b744c8";
+      sha512 = "96f35f652892fd2e2dc0ee160867f77862f9e706917a4cbaecf19953ddddd048177eb1dca5f004808cd55bf63a9b87a588d6986fd72b2c7c4d150334ded65365";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/br/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/br/firefox-63.0b6.tar.bz2";
       locale = "br";
       arch = "linux-x86_64";
-      sha512 = "45ee27e4889203ac4b6267388e5dc9a557713e044c5ede07dfe039358ddd9c91c4b79f5205f3b9c0f5c770232ac4ad16aa87c26d4a436a5f4e58f44c861649c4";
+      sha512 = "20c0137102bac235e6ba7817ed6c55546e1299af50f54d1b5a9ebd9d556165466242b0cd586ef7e03208de130eba7e2cd2582d8fef4d4593fb823c009b913900";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/bs/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/bs/firefox-63.0b6.tar.bz2";
       locale = "bs";
       arch = "linux-x86_64";
-      sha512 = "a190925733374f1abd35c974b2bf4ff091d208c274ae59f04f6efe2cd904e607829212d23efec2f6ed1c297b1ee8eedb797b460b815800f18b4a3969589b33c8";
+      sha512 = "7e6e5d09824ca7f05d03df2a26e97d6a52a48a4a604b28200b2b2ec81b844cfc90cdabe394e28e2b9bfa2a15d456091b72239b96f59c475ed0fd6f9fd83de310";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/ca/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/ca/firefox-63.0b6.tar.bz2";
       locale = "ca";
       arch = "linux-x86_64";
-      sha512 = "35fd9322687c3a7bd4163f5b6493bf4385b4a08c8060ae4be47b9d1aef18b7847977d32bc67579f7543549cb803a1a3a06d655c9e02e9203860316c9364bb26b";
+      sha512 = "d22440b08e636da6406ad0e047faa3a5c5fb43fd7dd1164df88bb27a950d9b00eca16b1f8cc6d17efc432c9063ada8cb9b82d14c02702d08ff364afce3ba3626";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/cak/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/cak/firefox-63.0b6.tar.bz2";
       locale = "cak";
       arch = "linux-x86_64";
-      sha512 = "ec3e12bc71fa7976dc4ed73eca01b4e38c3e4c69d257ed2a51c913ab1c7f24e14b1ab0cd6da90c76d432f2efda02c350f752293c41d62ca4fdac74ed7f94b179";
+      sha512 = "167d1e9f3015c53aea5a73ecfafb73524e0f61caa31ceaf98043dc173c14000f61b9ec47394473d7b1c5ef346b5d1fab29a2471e9b67f97819b99be5cf79acfc";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/cs/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/cs/firefox-63.0b6.tar.bz2";
       locale = "cs";
       arch = "linux-x86_64";
-      sha512 = "73af384a8a5f0efd33954e6dcd4cf1043dd7fd4accca1aaa93f58bd3742488e01ed4c4911694c21f45cfd4d2b4e1b213d7d18b233360a1eafbdc14e63cf8d515";
+      sha512 = "9083a7511cda652a3225ea60355d533fbc9b3fb48c0b4f21bca6e4563a49725ffdb7a9cb3a2e139dc71cbbb6bfe39ca887cc093a89529986dd84973a943008e0";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/cy/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/cy/firefox-63.0b6.tar.bz2";
       locale = "cy";
       arch = "linux-x86_64";
-      sha512 = "07c8c875b8c3b8b613d4405de0cbbbaa5b1a3808e754e6135bd2ed368f674bec3033e5cc069dee811cb4b57ba884437a1607c9d1c0277b2d8aae6904b0dca007";
+      sha512 = "1462403ac468504d8f1c83263b8b1ad83dd1cab51a8ee10eeee34e15beb5da6339588189a24c430c96b857fa9eace2c6295343074af4c32f5da7a6f25d72d66b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/da/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/da/firefox-63.0b6.tar.bz2";
       locale = "da";
       arch = "linux-x86_64";
-      sha512 = "7c65fa62a1f0fd65da54f8ddbd33b4df1f375a567c7c5daed49d28be1ce738c9fa7689fc7302ed3ac865db53aee7a287702936a9db623815febb20b7c04a627d";
+      sha512 = "41d3a59a0e4720cb83b08c657e79ae77f0bb4cf2c0282730fa92455e1bea2a95bd99942d00e3e0a13b7d9513e3b7ec323a07b181bd7168128c8b45acc605593f";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/de/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/de/firefox-63.0b6.tar.bz2";
       locale = "de";
       arch = "linux-x86_64";
-      sha512 = "0fa1128a70b4658a7a32cdb0002ecd069486192b2fec14664da94333627028e08d9d942d1d04a14c672210da3612170d7122dd91744c18e41cc0a67f5e333071";
+      sha512 = "ca22c469e9f4a8603280b59623b5f2ab973e93a5a64725f0487432866b454274755435062128548de93c529919defdc256e4a50ba768cfeec6c0a93d2257c917";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/dsb/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/dsb/firefox-63.0b6.tar.bz2";
       locale = "dsb";
       arch = "linux-x86_64";
-      sha512 = "4b79c34b4a56033a885837a74c9a7bd10a6117f7f184a0b9b0801300ccda5cebe94b7f19eebbf17cd12c86406df2485340cfc30fbd1dbcd7e1ba7ec6c62b567f";
+      sha512 = "dfb83b2b59c9bf99a6cbcf9698e7a253da54808407fc78deb3f7891003d4424a3b780102f483569188fcfa8a97781efb44f29e93e4292717a35d8f07a1609bad";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/el/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/el/firefox-63.0b6.tar.bz2";
       locale = "el";
       arch = "linux-x86_64";
-      sha512 = "16695437f4a137f57c2ddd5b88cc0148737a419dedf09e16e0395a4595490bf4021f7c37726beda11b8144cc9b8ea194e82bfac379198f59b2f0e4097093fbd6";
+      sha512 = "c464fed5e7af2156228d1047594df46caac6d3762542ab6b2a159b9eeccd8159161b682066a462724060d4fa81bb1f1af84fc5b7b8d1313af470b1ec026bd75e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/en-CA/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/en-CA/firefox-63.0b6.tar.bz2";
       locale = "en-CA";
       arch = "linux-x86_64";
-      sha512 = "6ce532e57b68579117c41299fd0dfc08ddd5dc4ed963d4a70260d801e4a07553199d87cdbe5f2742d09153b18fdd5c1b06948a990e1793a32ec718e46a62f281";
+      sha512 = "b8f8ee783efe498e2697e91b42ccbe6fbe835af20eaf847c317d8f24adfadfba1c6c3aecbc3c1911dc3bee90722a90d1908e9ad6a7eff050635ea2c79f9ac417";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/en-GB/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/en-GB/firefox-63.0b6.tar.bz2";
       locale = "en-GB";
       arch = "linux-x86_64";
-      sha512 = "f830812530c75a6d916196c445f494c77bea33419abda526abdeb534c533553387e156a43c749bfa3425f1233235f96b174abb7fc2bfca75956325816a7714a0";
+      sha512 = "bf84aa9e3ec47623f5317f9b0ddf54341984236ad90e26ce0b76196806d240b54a3f833b5e06bb96b1678ca03e7ba63beb7b6a9fad9177f8034bdee124d60c56";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/en-US/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/en-US/firefox-63.0b6.tar.bz2";
       locale = "en-US";
       arch = "linux-x86_64";
-      sha512 = "ba546c700ca987f07d05eb363e81c1a30ff31873643898f54a6dbe76647071dae4e0a189069066ad854383b39460f273358b2aac1d9c6b627eb89de089ca7bbe";
+      sha512 = "357b352ba14c04b4f5fab1d5c165217270d213fe31629624d6ffdc7511fc7af9d6de1a9b4fc4bbd6513c0e735fc21bdd7d49f7a323680533be491c530431e1ce";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/en-ZA/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/en-ZA/firefox-63.0b6.tar.bz2";
       locale = "en-ZA";
       arch = "linux-x86_64";
-      sha512 = "ef5e08dc45f8f111a22753e52baa0c91991fe363ea774df0617afabf6805aae2d508d3d9c29afb0d30e8e81661ca283115b71155b5fac725fe85134813b06a2f";
+      sha512 = "547554a1db5833aaf4a0a76ae59e3a81832f7860275456b435fe4db5fbd4ad40b79d333aa44359beda89a81d415b5bd9bfad01842388fb33a6db59dc5177a863";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/eo/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/eo/firefox-63.0b6.tar.bz2";
       locale = "eo";
       arch = "linux-x86_64";
-      sha512 = "7bc3e96d300ea64f6e871b04e980aee436451df9995c562fde3592c829b9f3824e534793d506bded7b7f82e7c6367ed4e09010d3b1bb845d5d3e0801230a7e6b";
+      sha512 = "e8dd5060538a9cb1db67bb6bb519ea271d927566f3470f32bb0e7b9a3d8a53054f9d9615d7b82b958556448d041f5fc84ba9017522568a6afb13b74799f1eb9f";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/es-AR/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/es-AR/firefox-63.0b6.tar.bz2";
       locale = "es-AR";
       arch = "linux-x86_64";
-      sha512 = "39a25d45317f7783b9f960c59435ac2c846142a272020dea9ad5c46a91dac8c4621b2d8b400b23d15bcc58673a1df9ec1129fc68fb06c39368a670705ce125fa";
+      sha512 = "56ca35eb5d694b7593047d2fdd8d35851f997ccb372a030b7b0a953f93491209045f0f31a76de5ae56ad891c64df415075aa4f6880ad884aabac02cc8f77724e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/es-CL/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/es-CL/firefox-63.0b6.tar.bz2";
       locale = "es-CL";
       arch = "linux-x86_64";
-      sha512 = "fd2229ef1d2f64f2f602b15894322163cc4067a72d580c13eb8ac6113dbce4a2eb5e4a17a833ee13ac68e30bfefa24fe83739d7c820b48232af841b24e9c0c97";
+      sha512 = "bd7f4004ba4247f3e22efea4fea58eadc4bb4fb5c613b51445eaaf835f5d9fdbe837a997691ef5a9d60c3a7b86a6ac8607137edb239a11a63850983d1d4aed6f";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/es-ES/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/es-ES/firefox-63.0b6.tar.bz2";
       locale = "es-ES";
       arch = "linux-x86_64";
-      sha512 = "c65a840ff3e3b5be0a3c74ba82f17d2a65f3071d91e71cfaa634bfdc92531fdbc7f6865aa8e3621d94eea626c4483736705ef7363907dccc3d7ee2ea643ff629";
+      sha512 = "d58aba547347a48c2d64b1603f95cb4e29c42db9b1a97f97f812989e3241d77a1293e3fe8101401a42e84d20e2a28328b2a531577883f6b5abe52c41ac976d69";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/es-MX/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/es-MX/firefox-63.0b6.tar.bz2";
       locale = "es-MX";
       arch = "linux-x86_64";
-      sha512 = "8a964e8832a9fecb6124cb1453ebccb0b8064a6d9306a92a6646fccf8ca23a058e3e2d99d3e3e10bce4de9f2f75bd32ad94f3486d1cf9597c2bc93ed70ef4c9a";
+      sha512 = "26b06e540e55ae4ebee0216ec1ca760e096261d7b53993a7b53637ace8dff879bcb4e24de2aa128fd3a87df4ab0a7c167786d32b5bff5be63d8e4cb45cc9192f";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/et/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/et/firefox-63.0b6.tar.bz2";
       locale = "et";
       arch = "linux-x86_64";
-      sha512 = "13c7521af9e6ff3b6c1058c93ae84c3fa7e46482938a90f5aa489b3db99a87a6d25143d244c8c0e493a22e84cfbe831f5438f1537f78699a90aea476bba221a4";
+      sha512 = "60f3fe4db3e939c0d876dd339be8c66d150bba594b7d9f008885658dd947ad772a71226ca36af6b3113b38a76214e0f5b5006a1568f750927240c4f063456a9b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/eu/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/eu/firefox-63.0b6.tar.bz2";
       locale = "eu";
       arch = "linux-x86_64";
-      sha512 = "b28e45e45a91c732db3fbef5ac249ecf6b6880d3f25d3151e9e0981556eefd4e98bb27b2312b9d4b0ec50e63ee8176401ceb6dbe36046b7ffb3ac80c3e09aa32";
+      sha512 = "7fa7900eb5c0bdc96106a25ad8aef512939ec367323218059b3f2168fd6ebd9edb7a831129c4b328bddfcf724d9cc98e3c26aa752c526eb1d9f5c3d5226d4852";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/fa/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/fa/firefox-63.0b6.tar.bz2";
       locale = "fa";
       arch = "linux-x86_64";
-      sha512 = "abde704eee0fdafa637ed4ac52f605c81cb6f4a4563ed4cd2cbbb7af31b40148ebb3614ffb6b3312f19eb05b026833f32485006e79ad577f4f1de3fa6ea83398";
+      sha512 = "5e664c060c95e0af391da9f7ac3f301428c89fd7fbd11df4726e65d61727ef7722d853faeddc696932b216e4aabb7e47f4025e6e283877fc83652bb3a44444b3";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/ff/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/ff/firefox-63.0b6.tar.bz2";
       locale = "ff";
       arch = "linux-x86_64";
-      sha512 = "2a16ba87e145740d055df33201510cb33ff2dbd6faaa30b894f71b960ab5daf7a24f1c3ecfcb984a5e20d525a70c2e72f4ccbf32ceb66c7879c8a238f5618a82";
+      sha512 = "1db89fe0eb24de211a346b0697c71c12fc154eebfb9554f9887c5201636e5e2e163f17a4faa4147a05ca4c80d08b4ec9029c08da1e2e9468af3b98b8dfc498d2";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/fi/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/fi/firefox-63.0b6.tar.bz2";
       locale = "fi";
       arch = "linux-x86_64";
-      sha512 = "06aafd066c312ec6d8163cb5cc773c0622432424516e70b84716c662e36ab68a2e4923b0a5ebd184a3ec50bc2db27a3eb98dce2a3d6046a929e1c499303b55e4";
+      sha512 = "66655c37dafec3d94ae3abea07fbbd98af2b6ece74c7e965ca1e57792d9a9232e3567850f96df2db359ecbb7a5957b5f7c6bdb1c20637fb6679ba3cc75c77dc8";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/fr/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/fr/firefox-63.0b6.tar.bz2";
       locale = "fr";
       arch = "linux-x86_64";
-      sha512 = "044c2ec838104a7abdce0a9f4dbf3cdc0238505fb15ed7de36f197863afb606e4f1749df31bc1d2777acb7df874a8a1d4900b29a51877c53c5174608c330ed1b";
+      sha512 = "b9f1396950332cd518f3523ae999a7ccc49d4e72eb8aa64a62762c0c2dce4794caaedbf80adf78bda35b23eb9a3d925530302ae7f4fd231519e8ca06bc986552";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/fy-NL/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/fy-NL/firefox-63.0b6.tar.bz2";
       locale = "fy-NL";
       arch = "linux-x86_64";
-      sha512 = "3023d86731d6a2174a638e3f20c4922447eb904e7b6350664eb6402724841197d19e1755c514710a46bf60b27ce107fd9f41bcff894a86918ab6bc3451f88e98";
+      sha512 = "fd9c857552b6271f33dd294b9059c840352e438e190e89e2d2c8ad2f2cefbebd66f13d6af9a87ebfc8b7f4c4d1ed354be8168e3d222aa668204e15ba83a29afe";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/ga-IE/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/ga-IE/firefox-63.0b6.tar.bz2";
       locale = "ga-IE";
       arch = "linux-x86_64";
-      sha512 = "a901fd3e728500244de17055d7c9c543ce0899d3c8d0e6b0b16436d45c3a66db43c2b59368d23a1ad3681b365e07cb47e9414124cfcefa98251533e75789b7e5";
+      sha512 = "f5b0297e260a68128e40883dd64cb466910f6f020e3475d12250e53401ddd564d8729af0c5e7b4e3bca82c030c73d2669418d566bd9825de610163167489d348";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/gd/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/gd/firefox-63.0b6.tar.bz2";
       locale = "gd";
       arch = "linux-x86_64";
-      sha512 = "d96c4f74fc2c76e1012b98a75bfd70c17fd22966c6d4e2ca0174fdfbeaeb5500f55637df7851d23b34b4e1330fd010bff0da0ede28029a3fc92714bb14eeb30e";
+      sha512 = "cdebaa167e057d73e23db04762ec71d1ff5d7c12779ef0ed58a8cb72f5f5682cbd4d1a15f14098ce3d375c1ac3109c682324241f0e9aa14df54ebd35c701fe78";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/gl/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/gl/firefox-63.0b6.tar.bz2";
       locale = "gl";
       arch = "linux-x86_64";
-      sha512 = "6f20c7966d71bda681412b3c9e3a782e3a6fe71e096759b8fcaf443f7671a94565de0fa8222fa8b2c430a1fbc28146567f47523e96e23a94c6ded0022d8b04e6";
+      sha512 = "debc5022c4f6672346c68d7ee240f0b2a9d2fd1ff536e2f95ce2a636c18eb5d9301af8b546291f00dfd1469ec5416e3a81492317b30da81edfc276af2cdd9e62";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/gn/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/gn/firefox-63.0b6.tar.bz2";
       locale = "gn";
       arch = "linux-x86_64";
-      sha512 = "bb5e2c63b2a48c3ec8746997a57d88b9a7f001e2b9b9f3c3e4d2913935cbe34931d9426d528d6336dc60ede140afb24487ecd3c93547113455e28928336169f5";
+      sha512 = "c7343c3cd338acbb572927790f143753a051bd30cf7922648470fad8f4184927ce74e98d28b7058a1bc6d1e908bc4569eaeceb7919143a33776ec43a8d69ccc0";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/gu-IN/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/gu-IN/firefox-63.0b6.tar.bz2";
       locale = "gu-IN";
       arch = "linux-x86_64";
-      sha512 = "8139f6f236b5ac5d082c2c01f3e7950d312e6e241f2a1bc29e22a71238056546dba1ae7d5dab494662d82ac53b7617ab1dfb50375cf77eb565cadb3f4b074280";
+      sha512 = "2cf0b051a4b0d90f1806852344bf8c7c3bbc70f764594ac58e4d74cf4132591ad4260c38d2387ea2e96274581f83d94d9477ece7ac7473f633aaa2b4bd594376";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/he/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/he/firefox-63.0b6.tar.bz2";
       locale = "he";
       arch = "linux-x86_64";
-      sha512 = "a311fb555c096a5c69c174da176881d390dc187147c46722bb3ef073e4bac236e36e307c22d856036bf52bf87bddfd02ebf3f90dc3cb9b7c707ecf13fa27e251";
+      sha512 = "96da735c98945db3e8385c59295dd1ac5a321fb9a56f4d65172423a8d8ea6f1994fbfaed3d06b6569919e9f448a80120e92f4a18c2826ae130419b04a08ecc44";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/hi-IN/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/hi-IN/firefox-63.0b6.tar.bz2";
       locale = "hi-IN";
       arch = "linux-x86_64";
-      sha512 = "56758751511dbf42d04a772a6567fe436030d4a272123fa8da8aaa7e8ed26f06bea6a32b35cc195674eb93be9f7b46b280e140dbe906292dd346912b433a2867";
+      sha512 = "ff306c88e6ad58977cd05d1c197c5ed3c42ee72efb996fd041fddd84160fb67f4c57d9853f5955ee3dcc2013fa35dbd46468abb4e4f925dee814db69060c286c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/hr/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/hr/firefox-63.0b6.tar.bz2";
       locale = "hr";
       arch = "linux-x86_64";
-      sha512 = "da29589e3f62f2e2d4441059393e84f79cf973179db7bda8ca9e632d6c0e2d83e30a32f93f02fde21fa74a4899d89afd4871cd1d3341b2b8ddbde8a10743f755";
+      sha512 = "eac436ddda3f0e3575d013b1acf8faa726ca26b9c5c56577323a0fb16664f9b1467ca8cc5415522e44f5836010a66eac41aa0825075deeca202379dc02d9e4cc";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/hsb/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/hsb/firefox-63.0b6.tar.bz2";
       locale = "hsb";
       arch = "linux-x86_64";
-      sha512 = "9846523a1d026b04ecebcee3534bc17093ae8ab891e7090b45c397355506d41da1261e69073d7b1a9e228be0909bacd8f6aaeb877f23aba0d2c84ed8303c9aa0";
+      sha512 = "bad8c026c9d4fb968cf45dd86dfb2516ed6c6f553601cc2b5f382ca59f18da1bc2c5fa0a8c8b4e597126971f6f362559935128effb902bda1c569c136cace1e3";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/hu/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/hu/firefox-63.0b6.tar.bz2";
       locale = "hu";
       arch = "linux-x86_64";
-      sha512 = "1966565f1cb52a30aa941a28db6da2dd6232e8eda91d1f54d996da884dfe46b172a85606c3c33b8c5160667719d30fe710e9620b5332421742072debdd56e410";
+      sha512 = "28fe4720fbb614ea50a9869e40bbeb2e9b704e7cb02d2274b99cbffeb7c51ec6ee0046bfaca4bce8e91535b08fde1b3e616f428eb3b6b46452f1c0dfa0662881";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/hy-AM/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/hy-AM/firefox-63.0b6.tar.bz2";
       locale = "hy-AM";
       arch = "linux-x86_64";
-      sha512 = "367d11c62740213ad5161e708dd7a2cb3396a1f09e9e8b9426cc25ae3b32d70dc3ccf70b50542503818d50e62fbbe1f373f1328779f2be0d2ddfb143288187f4";
+      sha512 = "640836659ea3e13791e486b3660d39e47495c003170b567948256cd1b6037afd4dabf630c1a110f0f02d1338798b4de4e653d56f40b171d7357b3fe524589581";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/ia/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/ia/firefox-63.0b6.tar.bz2";
       locale = "ia";
       arch = "linux-x86_64";
-      sha512 = "6a0eaca21a2d110a12ac3e5ad8a453d8b07b122335da4ed7f33e5e20ccab69f01eb1b7365136de20aca83b670ecbd6b44dc3a750809cebdc2c9d9c76c9c55613";
+      sha512 = "15a71c02f0503e0ea469deb70f95bbbaf90b455d21d73f6d9949b26117ade477d7c5266a558ffe232da36a027cae7d82231cedd36cfdf0677eb4f0d7fe2a9e7e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/id/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/id/firefox-63.0b6.tar.bz2";
       locale = "id";
       arch = "linux-x86_64";
-      sha512 = "d821c322c2f40fa726692d54d393a29569f38f66cdc0c9991d4800f7d2fc9366e9cff0123a47259274681b0a67b01501ae0dbaf9c7f96207170b92cdb91fe77d";
+      sha512 = "8d5d29690cf96c12478f20c3de2448296349db8a5cf34f6b6a418baef61c028eaaddbb7297a9449eaf1749aff4530d4679d2f11fbba73b3726960a57a38364c5";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/is/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/is/firefox-63.0b6.tar.bz2";
       locale = "is";
       arch = "linux-x86_64";
-      sha512 = "d5b2ab8bddac3fb0dc3351cd130c77249e4f5ca79815c96b41cce075298a181be79b27a1ea09bac48b79d8d35ddc710f3d7382ec036effafd974f17c7e44bd10";
+      sha512 = "c48b4e8b5673e424c95f43c83c2a183b8b51b7939dd440b4b3b668280b5ccd774f4f9a9af8468b67f271e47ef8a779f7a269c5e3d99d0445bb93f7009f8fd661";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/it/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/it/firefox-63.0b6.tar.bz2";
       locale = "it";
       arch = "linux-x86_64";
-      sha512 = "aba0b87b3605077cbb7362c2dd23514f8a31a61a69d7a054753e2e89b5388541fa7d356a13e7fb3d21540381d5b244645d305c88932854ff91e45acc75bbfaca";
+      sha512 = "42909bdcba545ced29ed5adbcdeaa1de6ddd16f578ed680f1de88b273fbef6962ab03513451da82a8ade79b2b02b79864261dd3cb2f7261fb063b6c272bc6eb9";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/ja/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/ja/firefox-63.0b6.tar.bz2";
       locale = "ja";
       arch = "linux-x86_64";
-      sha512 = "ec5377009d64d2e2d625ba9f364e456c4a6d576cec8633164a3ea21a73cc643c31f74a27a64aa8cc9b2ec6313b6a5e25a78612566a11ad5833308eb69e5c4a2f";
+      sha512 = "74bbbe80a0fb2a1bbdc96a97554f148cbf5e6751d59c8481dff7d5109bcd9a2294f69365df94bce93870ce795b87ffc9b22ce56c3f9203f3640ef8c2e4c8620b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/ka/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/ka/firefox-63.0b6.tar.bz2";
       locale = "ka";
       arch = "linux-x86_64";
-      sha512 = "7362eadc3fc6cb0ab78948474570641a8f78a6d311a8035211e08dcdef9d035177eb25f679d4ffa9b6411ae4e2a3fd389814b0ea724e05320762539761cf1cae";
+      sha512 = "46685c741572fb18c60811349c8f4cde73e753cf9e29998741cbe98700cf854796066bfb12ccbcf6cb1c244f8eb6a197a4751905ca5a58463895e52202834fe0";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/kab/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/kab/firefox-63.0b6.tar.bz2";
       locale = "kab";
       arch = "linux-x86_64";
-      sha512 = "b45027c2fe7eeefe582868ff307330e9691c9796a3fc792967399edce5d5cfc9387ca6e50c1d623743eff3350476eb2db7588eecaa00407a69fd5c5ec2aa3e81";
+      sha512 = "13825b5c4d275499922423b594949f9af017347c40f90ef5720f0eb05f3463051b95e4cb7c2fa722c83dea2ce14803556e54a5a847808c27364422cfa8aed214";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/kk/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/kk/firefox-63.0b6.tar.bz2";
       locale = "kk";
       arch = "linux-x86_64";
-      sha512 = "f2f79ea3415f8f9db46d7a4c86be44e5d055133f0eeb2231c8f15171aa27133aeb7d7aca5e475af839e68cb09218ca96e0176b19111589ae643353fa7bb08b38";
+      sha512 = "ee6bbf940bcf35471f8cb2169d369b5c89a6238e99929ea7a6fb8cd595332ee484b66d9a07dd906954a433aacdd4637a33d2f32db419336b076abb6a3da97c47";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/km/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/km/firefox-63.0b6.tar.bz2";
       locale = "km";
       arch = "linux-x86_64";
-      sha512 = "fc573a0131b6e0ceb6e7d49347178aebcd902b61f870c8855e08eb7f4da29bacc9a22edaf612e4c00287415bcc18a8a8d5577e08ec324a68440f8f224819ae93";
+      sha512 = "32ee6331f9d6cdea3885dbcaa838436a371b566aa5cae352274a4f8473635a07e9ac81e6792cdb90950bfc35dbeb4400fdd37d651be314b9566244ff3bcdb5de";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/kn/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/kn/firefox-63.0b6.tar.bz2";
       locale = "kn";
       arch = "linux-x86_64";
-      sha512 = "1fdb48b0e5a270182e337efb03819fec21f55f9542fbf6f9607d6b4f205742017d63531555244ab89b8171e141e600b6209508eb1b619062ea43c01719c28aa8";
+      sha512 = "e5d29cfa9d25a612ebf8536fa9e0c9b5b9c8e4dc59fc18227c4e4855df2444d2cb942319c430e9cd13a1a45110e5c47282e56eccc841bf571b6339aced783f94";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/ko/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/ko/firefox-63.0b6.tar.bz2";
       locale = "ko";
       arch = "linux-x86_64";
-      sha512 = "6d101bb20570c5ec2229079982070da0338fb4b77694f3a6e75e0336cd645ec95eb085b9d0223e43ea14561c269b1c58d382a0128e4149bb6a04ad640d159845";
+      sha512 = "2bc1aff09a287c841f62063310466f7e29835c3e6765fc7c8b8718453d7e694e1bd135721b4c65046289676b2a9c444a74465b718d20f00fc1245baea29517ac";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/lij/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/lij/firefox-63.0b6.tar.bz2";
       locale = "lij";
       arch = "linux-x86_64";
-      sha512 = "970a52aef535b3ae87f295c3326d0217edef7c5e19fd8f155fac71d86b9eaa0c18c9f8f393ea4dae5811a6801caa38ba03cb432e690fc19d5ee559f576098540";
+      sha512 = "3c5478929e81359c4d0a144cb3e635c32d1887c5df32d7de5375b28483fe990a9788016e5a533fb2e6bfafa6591c7b8d2572f1f058fe64ad191ad32cb4300267";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/lt/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/lt/firefox-63.0b6.tar.bz2";
       locale = "lt";
       arch = "linux-x86_64";
-      sha512 = "a9acdc7f4a94118f115d9cafcda0960adb82fef5fdbfb7916ae785cea3b541057052a027b0831bcedef43014a088b6ad3d3570bbcb467cb62411513f877a91f0";
+      sha512 = "4899788aca01de4a3fe8b661c8b88f7cf03910e26013e50442dfe18e7df217ff2a58fb13462100dbbdd78ed41309be630d2bf301557137497e69e792eb6aeff3";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/lv/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/lv/firefox-63.0b6.tar.bz2";
       locale = "lv";
       arch = "linux-x86_64";
-      sha512 = "47d690d3e12c718d67877d4f37951a31114f6a3fe7bf49b0813ca0acc5d3c5c8f60b6c0b572e0e7e7e77c3d9e68f8d2f28d407ea62bf1976350ec4e05f05aeae";
+      sha512 = "450df380b34c68115cd84ec320dccd16288ffdc2f85da9aa5816977f1deaa55f8f411b080ad5af6d81c4318ad648995c170c89321d68557083fb549be558afb1";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/mai/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/mai/firefox-63.0b6.tar.bz2";
       locale = "mai";
       arch = "linux-x86_64";
-      sha512 = "1fbbf72a08f98df105b47c21c07ad98270e9b4bca21bc5d9a940780db040c3d51b7531dd00aedfc8f7c946359749a5718f40744695086c25f9ba0d6641ca26b6";
+      sha512 = "92c8d221f5513790ed012668858067a5b0921f0a8f0e16a8348411e0fdb3314695c27afae9691828f3e6b88ab4ca69e8ec9555ebca608b4ecb19522d3c032cb0";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/mk/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/mk/firefox-63.0b6.tar.bz2";
       locale = "mk";
       arch = "linux-x86_64";
-      sha512 = "64047802b567ad586cd3dac1a444f5fd510f9bf06a883cdd60d3bac9dee4fac12cced932d927b39fd579d60a256dd4a7c2cc52561edf477eb2d48f29a111f159";
+      sha512 = "98bc349a8724c912160e0fa45466da5369bd47ccdaad726d5a9bfbfa00d8ef5fb532ba52b9b2c3cd3b7060fc1fc2feec822f74fb46da852807ff34e9bc535cfa";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/ml/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/ml/firefox-63.0b6.tar.bz2";
       locale = "ml";
       arch = "linux-x86_64";
-      sha512 = "f98cf7854193dba3ea520eaf0e2c0c0f60f4965b3aa5d1ad442dae5aeb518d334ccf0edbefe9c4c1dfe2f7372188d64d17ba7cfdf41d7a1d715318a4aacf51d4";
+      sha512 = "4bc7dc9e9c0e1163a8519972269e30e850beb9492799be70a519e3b21d1138ac0828d50294e27b9fe777fa3372b7af295d63d015fbc867dffc70bc3550aaa390";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/mr/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/mr/firefox-63.0b6.tar.bz2";
       locale = "mr";
       arch = "linux-x86_64";
-      sha512 = "abb1425003da6faea70157e01c733a757c8a46b1a22304f86ea93a84ad3fd5777754e44873b70668ff2baaaf0402631e5b9272bb0a0711c6c03fb46a3ac2b607";
+      sha512 = "164d58072c851af9bb5fe107ecc6a9409f6db68e41eb92277a62297dca233b6c830b1dddd5d3dfa4783f360f1a2b58cf9f6978e302d5b09b0e48beb66c5c0e47";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/ms/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/ms/firefox-63.0b6.tar.bz2";
       locale = "ms";
       arch = "linux-x86_64";
-      sha512 = "a96e18eef12d7067d4808e0b680773b192017dad2c95798c541ab2b97cb94990e010b227982b6bd83ea595ea5ee33fcb644fcce995131a5d7a46c880e27aa9ee";
+      sha512 = "fa6148018366d6e0807848d2badd16b33dc8a9901defb7276c37c255a137431960e4fbb8d87b0b277d9718e2fb3a98c07ba92e49328fd6b4c44786431f43263d";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/my/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/my/firefox-63.0b6.tar.bz2";
       locale = "my";
       arch = "linux-x86_64";
-      sha512 = "53e6e08640443f40285f372b53cfb9dbd3c44757693a2a575479f71333951c5dcf9ef5f8b948fe493c40ad789233a17e89efe2d91a132b414e7809635a78311a";
+      sha512 = "927cef5ae6a947fc410681d43027b6a098bb17d20b0d806aae7b18e5399ea3cd532a9d0eb68c01e99742986041134cad21d78bf105c78fe47be6ad9bb5dc4e46";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/nb-NO/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/nb-NO/firefox-63.0b6.tar.bz2";
       locale = "nb-NO";
       arch = "linux-x86_64";
-      sha512 = "fb3883a509ce36e8d24a0f0fc7aa9774c2ecad35d66d37f093cc20af8efa8516a8ff75c5f8fc410cc4c3e616757ff7136869b218735ecc7ea9ea20265331f491";
+      sha512 = "38bb2b2e2bd86f10f48eda1dab0eba955e8631c53189d012399595c84d99b3ea4ba70df0e48381cf0c03dc716b5c9d843ff4dfc5ced218235d5d0ae9f74af114";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/ne-NP/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/ne-NP/firefox-63.0b6.tar.bz2";
       locale = "ne-NP";
       arch = "linux-x86_64";
-      sha512 = "f12033fa6a5c2b18c2ceb96ca22cee6dd7842223c7baac09d235c8bbb75e638d38c6160750ae9a0cb9e5ecf04301c9da873dcea1891b436fea9ba0d9466faba3";
+      sha512 = "79bf3687bfe6e23915021b5a54338dd2712742c58bf2a74af8c4c1dec631f79bbba36073a90fc151cc637e013a05d55117e0f06dd526cf8f565aab42e9bd9bde";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/nl/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/nl/firefox-63.0b6.tar.bz2";
       locale = "nl";
       arch = "linux-x86_64";
-      sha512 = "37126248ec02b357837f22909b6dbcfa7979ca3b3907e339558d8f213f92c5a7c8b89a4e9d7d069a99dd494fbc41c52bf66a4b8c2910f48eced058098927c6c0";
+      sha512 = "bc92321ef5ec422eb75869e87a2383ffde238eb577b71b5a7f9cb12ee6d74b63f219d405f58da943b081f3820339a7828342324cd5a4de91b64496bbefacaf13";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/nn-NO/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/nn-NO/firefox-63.0b6.tar.bz2";
       locale = "nn-NO";
       arch = "linux-x86_64";
-      sha512 = "746da9da5138c7c9d0c0252aa4a679a3d8ae2e3ae53695cdf59355c7e943a4d0598bd691cd55e580b01536ef6779dc86ef17b1a5481e0a8d8d551695fb5fea19";
+      sha512 = "13c6b904e566e5137e3fbe4306cf757c3ed3054a3a86669ffc99fb2a8e9ea01e6524ad6f7cfcfe0384a3dc4a0edc6c2db001e18298440959501c2dfe27fda928";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/oc/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/oc/firefox-63.0b6.tar.bz2";
       locale = "oc";
       arch = "linux-x86_64";
-      sha512 = "ac454a4fd62dcc0c8436e691e103859bc5767e679d876c445ad3e553f5afb4741460dc80e647ef82f006b34aa44436469fe66978917a6cd852fb0a47ced85fff";
+      sha512 = "1efe59dedb5ad0db5bf7a9af77baac5d8d869fb29b872e1470e948c2da19c1b3b25240acc235e5b8464df0851a2b36a0c4364fda30a3ba29270895851ce49780";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/or/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/or/firefox-63.0b6.tar.bz2";
       locale = "or";
       arch = "linux-x86_64";
-      sha512 = "ac11a4b4927eccbb5a3b0c823cba907dc32ad228e8f147d1d84f5670b1fb12638a1ce858ce628b486f41eb0e98ef8b7d8757facfa9d592c3edde03123a79a703";
+      sha512 = "68286c106a1968fb39f8026710303a2e85473a967f4b94484294242e40f4316c4a3f34a39c2d2501a0681bbac6172653996cc075374c09b263dd9a76141d873a";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/pa-IN/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/pa-IN/firefox-63.0b6.tar.bz2";
       locale = "pa-IN";
       arch = "linux-x86_64";
-      sha512 = "396a14508013d7b6b8dd396d7d48fc26c68da3c1ad57952213a0e01a859445201dcef08d824ffeba6958f8a79b5c1af59b4f6c30e539f80ffe5568d6a09406e7";
+      sha512 = "528696769c497a1920bebe4c5dd4076e53eea357f15f24ad213110d0d2c0744536ddabb4ceea630bea5820075cb606d631e129ff235618da855cc14ed0d08f80";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/pl/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/pl/firefox-63.0b6.tar.bz2";
       locale = "pl";
       arch = "linux-x86_64";
-      sha512 = "67a17f065011d6a84cd455c614804351e1d9de4be361aab3bec5f34db43db378f1f594b4f76c35967181aa62f484aa84b49a05e129e6dc00b67caf68ececed60";
+      sha512 = "bfa2d73f62c2713b42ae5c8a28c32d7506ad1e39049132fd9b95d8366756ab6be053a8e6009ce7d538265b4ed078b4f1df7b43d1d6900ed7c935cca3e603e459";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/pt-BR/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/pt-BR/firefox-63.0b6.tar.bz2";
       locale = "pt-BR";
       arch = "linux-x86_64";
-      sha512 = "caf1805b852a6f8b19251450d72701cacfd1f0c20ffe23cd65378fc2f99109246ff9f237c120f273902d6b9cb67d7db54a0bd5ebf4cbe0217ee13ee28a390136";
+      sha512 = "c0ddca68029afd6f886955425165f53a848c4fbc77c760be925f42b4e9ed7acd3c647303e74ddf85a68596045eb1c6f407c916773f369e33985b08f26917ed75";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/pt-PT/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/pt-PT/firefox-63.0b6.tar.bz2";
       locale = "pt-PT";
       arch = "linux-x86_64";
-      sha512 = "6119fd1ce5695c4c3aa8d61cbc6748d656a591ca7ba6e3aa8bf52fd7da68633155897fbb739568c816c78b1c7d291544d747dbfa70a346d93acac951f21c33da";
+      sha512 = "3e47d046af4cebe96ba7a8c8bc7717f729ad9cbcc19b216a2c965d6edd362608c28742cfca4a3db36dd727e9cc489182105ac744c45d45dbeaea148c94b8b8e7";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/rm/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/rm/firefox-63.0b6.tar.bz2";
       locale = "rm";
       arch = "linux-x86_64";
-      sha512 = "04ce2405adb0be7f8a1c2fd9f5df38f648f704abf342ad7b7854cddda69b2ceb1d0f4925390f2a96d349c62af3f486cd587fabc5f42e555e83874d1b76b52922";
+      sha512 = "067977a13236f74057a4605fac66abb37434fd4c964298c383c952ec72e2b2395887988fb18eef9e235699b70854e2a1c656a4bb3fe9b214663042361f341353";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/ro/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/ro/firefox-63.0b6.tar.bz2";
       locale = "ro";
       arch = "linux-x86_64";
-      sha512 = "d4add282f611ca37aab7a43c9d5bc284b77384b87f941df77123a869ad1a9ac8a4de3db540167e1b67b61531441fe1ebe3bb01bab95abb60c483dc666365cdc1";
+      sha512 = "b641edf0afe14420ad3c0ea502a7b46cda19e062e803c20177ee66a58b6338c0d2319e16c3d2d341377890f4651379d44ea037def461a1b1cf9e86a78cec3b4d";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/ru/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/ru/firefox-63.0b6.tar.bz2";
       locale = "ru";
       arch = "linux-x86_64";
-      sha512 = "0ddac21be61e70542bc94e3c2541b5ff91991bce26596d4c7330557353db6d9d0670ec394a88c49ddbe08f862e5c53d74ee3ba23a1ba0d6cce2500873fde4756";
+      sha512 = "2b824c42976f7a9fdf7504e60b3cf057d31121dce86223d352bbbecb842d0b7c41197d1c045d1e27a6d1f2b2a863c89e5f4956b8c125bb678930e8e1a1078384";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/si/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/si/firefox-63.0b6.tar.bz2";
       locale = "si";
       arch = "linux-x86_64";
-      sha512 = "f74c8063bac884db58ee847f2f9d2ee366d72e4335c07e268b3aa22d33bee4dfb1c8ead9a02592178924bbf056d75ba05b12b8e79f2b10b5cf91e55d1b08d15a";
+      sha512 = "3639b0fc46244cc42f5bc31e55790097a11941844e9a7185d363a124574928ca8814d6553c46ad8828e82f7876c8814bab664b6c55d78680635136bd9f5ecd2f";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/sk/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/sk/firefox-63.0b6.tar.bz2";
       locale = "sk";
       arch = "linux-x86_64";
-      sha512 = "2020c4c9115ff890757620a2f3fd2da39ba989feeb2baf83af50627e9d22cc9f68a44f3f442d846910458f14523a59df78cccb238095feaea76bcee93fb066d9";
+      sha512 = "8dbcd590f5baacf53f0ff13d25f40c08637b358a98a680f7c07584249ab3ec69678389638ddf2ec11ba0543a4d54deca0fab3f65ef4297f6a403f0c6897ee92a";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/sl/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/sl/firefox-63.0b6.tar.bz2";
       locale = "sl";
       arch = "linux-x86_64";
-      sha512 = "338b4ea7cb5c4ed7773eb7ed45c464da01e63768a9eba76b7c50ff2ca9a78c9580ad067f94e01b6e2d55f9b3dd76d7db9e8f0b5d3cdf023ba8e76a0a5060ab5d";
+      sha512 = "2ae24291ad7c8ec8f85301fe73e7bfc2e1da272f5fb6920f6248cde32b897ebb6640e27dda62289badb2a363842f5d6425d4372a5691bb7e140852ae8792c103";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/son/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/son/firefox-63.0b6.tar.bz2";
       locale = "son";
       arch = "linux-x86_64";
-      sha512 = "e2bc04b99f98b1c22e92bc326de8278dfa57d9b54be24d8b3f0efd27ad4cace395565816f7ba265409f66f06c0ca60fadf37acf4abe21729b68113206d389f9b";
+      sha512 = "62cad5b16c58b9cebe78aaedd30f5c74fc065c6e8c3e916d7753b8143081e23cb4322140faaab6e84847f870ba588f99b0a32f275fb488d72cbd780b58be8028";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/sq/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/sq/firefox-63.0b6.tar.bz2";
       locale = "sq";
       arch = "linux-x86_64";
-      sha512 = "e430eb8296d46986ea536ada48db5bc3444eb381d3caaa44b22e17be1a8b6f05c06df85a8c90827d0bb87cf4864d1ab3c20ba43de8ea0622d8c6753fdecd187e";
+      sha512 = "4a65b5fc302c937afd545c2ca2e0d38aac5c66d6fab4b450380e942c1f5a568f37701746753d805971e03c258e3f352f64e12c14f5fffe1dbdde634f2f4aa237";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/sr/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/sr/firefox-63.0b6.tar.bz2";
       locale = "sr";
       arch = "linux-x86_64";
-      sha512 = "9a6558c6c21cf211b5d52c713a2136d55a39146954a580b6e9f304b63d28cd8c8fb9f88beab95998edf12cea87578ab6941a9e7b793d50eccb4678b57e283b21";
+      sha512 = "94398267503bff1aeaf753c3077c0d1437f6d8d4f5b0691af4efbf7a50fec1f6056c7405ef3a23930b8baeb274a4cfaf0c963fafe8298bff26e79294f12fd078";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/sv-SE/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/sv-SE/firefox-63.0b6.tar.bz2";
       locale = "sv-SE";
       arch = "linux-x86_64";
-      sha512 = "55aa7f899a770bcfe0690df0bf61a209a5f55a90524f6bbe7ead517947a3884a48ea19f887bc4ac227e0396f6704b15eae9ae992b3314899372f4e41d8ab8f43";
+      sha512 = "d2811762cb743bce3fb9acd50c912ebae495111f02ad92b37069a81362c84e7dcffa5735b7d34fed47d0330a02abd86aae9d088f4908db9634d1716c584e9d95";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/ta/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/ta/firefox-63.0b6.tar.bz2";
       locale = "ta";
       arch = "linux-x86_64";
-      sha512 = "61b6d93e433575fe3b5d2982cf558f165e11f02ea2009375b8da468efc641455ea028afb0c0c5e6e26048832fb9274344a607713350b6afdccc5b95cac3d318c";
+      sha512 = "3a07818b877ea4bc409708f9771cfd190670c2aa947c4005515880f456cf435dbb645c99be09934c9c8eeb21890ced8d6bf5004e31c0fc70c8c02fed91de1898";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/te/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/te/firefox-63.0b6.tar.bz2";
       locale = "te";
       arch = "linux-x86_64";
-      sha512 = "fd67b31ef7d18af1786c966cc011a909367b9700eb22130246f0bb66b3f3e2ee266612f1993e65b79bd8f9e7aa6e7daf7c50e678e0e7f0c67aa63adde0c155d9";
+      sha512 = "e2acd0f2bd90a31cfac5ea348548a435192205949fa870c0b964421ffaa99941c21e4cc78aae04f761fee49c9bb423c8b959e212fd3c655815653508e21f8b75";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/th/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/th/firefox-63.0b6.tar.bz2";
       locale = "th";
       arch = "linux-x86_64";
-      sha512 = "35d657b0e14853def56ca6c15331cc8aeba7ba1f230f8b8669b6466ae257c362a4a97a1853d9b32bdc62902f3de71001e17d2859cda77642283c6f8a41e7702b";
+      sha512 = "562fe7877ef17bd200810a48db5efd2085d7dd8c004e137f35fac66f89903f4108bb45cfd2c19c001b30a137c9ff27ee75ff33d42baf997ec27175a8c3e43cb9";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/tr/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/tr/firefox-63.0b6.tar.bz2";
       locale = "tr";
       arch = "linux-x86_64";
-      sha512 = "1b562046ac23fd3a34b450042773afcaa255025972ae251855403865b4d2ce96e958f6a2de9d96267d17ecabea9a9e02d48314ffcd9986f1cc3f58f24fed310e";
+      sha512 = "cb5c3f134fa81334508307c3a8a57df4d79309ffd92449c1147e8a3667a0ef12db5ded5cf25df9d14a10a645dd994ef58da30af051cfb9c61506671292aa0dee";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/uk/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/uk/firefox-63.0b6.tar.bz2";
       locale = "uk";
       arch = "linux-x86_64";
-      sha512 = "7adca8260cfa16067d0df3270602d01b19df2bb9a7e5a373fc39a0ad846239ebf1ab868e13f3240381465ab7e950898f4664cefc7907af4d66698ea8eebcc4d9";
+      sha512 = "b29cf419083fbc9140091eec02a199337b814a7da04e21a118b586f813bb0bfc888a3ab62872348bc706e315c5566f8b15a3db19dcecd7571a113d888a3160bd";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/ur/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/ur/firefox-63.0b6.tar.bz2";
       locale = "ur";
       arch = "linux-x86_64";
-      sha512 = "b492ef2bc8447460f02db4646e8a489e9e0e880660fee94077306ed9de0642498c46a1a81681692a5cda8ceafbb1a5788dbfe7c46ae949d4a0b1d1e4be695576";
+      sha512 = "39e9a404353b9a554d61c1a5bab869222b0ce127dae6d9b6e018771de759a614938564ba906a747bfdb2a4d552dbae447083937b68c98aa5b3e679f7101c9ca3";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/uz/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/uz/firefox-63.0b6.tar.bz2";
       locale = "uz";
       arch = "linux-x86_64";
-      sha512 = "b45916a341b82f95e983bb796d2316b77480982e3158d07c05b87dd8096385a9e8100995fa4aaa9b8fe1feb140c672e87b01cadc7861c8a057ad5b01f23fd295";
+      sha512 = "f1576289f479891be687559b0c9a2ec216733e3414b40ef381b25642b6b36116878711436a27cc6710ff3bbe25971432ce1c85cc5a4f64e5f4d8482bb11529cd";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/vi/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/vi/firefox-63.0b6.tar.bz2";
       locale = "vi";
       arch = "linux-x86_64";
-      sha512 = "c04fdd2751851bfaa7d61a6dfa405820f422f456a6768feac95061e7fa24f05380c0808a7637b54a344fcc237cd135bf0a32e7d697d9252abea8bfe31e2659e9";
+      sha512 = "4b7d515fe6eec6a121efe76123cb027bfa6af2c508c917efc824535da292941b109f3f1a8697ef208819dd20f02f561d5512f82345d414fadb1d3cd29cd146db";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/xh/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/xh/firefox-63.0b6.tar.bz2";
       locale = "xh";
       arch = "linux-x86_64";
-      sha512 = "aa754dbf9f04586c60e6406b26649955a273395c130c5955e6b83c2a5d7714de1f0afcc0c6904f01bfa5acf50cb03e848244a62214d4db241eed18f049320f6d";
+      sha512 = "3b7fbcfd7f9cfecacff3cf7a98a9b228d118733271dedb9d5cfc8a413e09e2e4fe4b3584d855be0a268303598d48a3802637e2496b2a0593e5b1b64d7fedd6a4";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/zh-CN/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/zh-CN/firefox-63.0b6.tar.bz2";
       locale = "zh-CN";
       arch = "linux-x86_64";
-      sha512 = "2b58c6806c8ae4e476add919f5f4d5e380252cd2a822dc0ebcc5caaf20f1797430fc8ea4747f998953f41e612491e41c6c00a9eafa98299f4a10571a89d6128a";
+      sha512 = "dbf1222759b24ddaddd149844560351f2486ea91ae934e8e5c45af86420b37dea180267ca2e326c5340e7a3aeac1d62507c37e877b65533e00e482ec135655c8";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-x86_64/zh-TW/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-x86_64/zh-TW/firefox-63.0b6.tar.bz2";
       locale = "zh-TW";
       arch = "linux-x86_64";
-      sha512 = "8d744785056b3c423f42e337befec9983c1e914475eccef8ed43e8db87aa80514003fc20976a60fdeabae3ac95b8c1a4d8701e31158f2f811ecec1e003cb03c6";
+      sha512 = "6b3eef73b01ac14b261cf7c2aae47e9406cf0cfee36f42920bdd2176f19eb6f922ed651b56ad9f9da5567a33232eb11853e961165f118abeadda5450cbd24d1c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/ach/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/ach/firefox-63.0b6.tar.bz2";
       locale = "ach";
       arch = "linux-i686";
-      sha512 = "b89b8af1e22c88e1e6140e46953e15f25673bf0f3645a8af40a9c1be3f44e621ab469fc171538cc2d009d50c3bb9fee9d1653ea9a3291f3c535e3918fe25ccc8";
+      sha512 = "510180f21ec182ec20d95a84187390014c1b4fe325271730ab35cb4e6f271851e6f7838c2a38327634904d1385f9e04d8bdbff0edf3ea1cf6fb6df1e86a6d257";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/af/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/af/firefox-63.0b6.tar.bz2";
       locale = "af";
       arch = "linux-i686";
-      sha512 = "cb217f4fc3d817f25f76691abf459fde2b9d55e41318600ed822ead6ee1492396441bcecb898386fc5e6e6ed8a95736562d241b05b186dd0497bc0100cfec6ab";
+      sha512 = "4a46e95180ecdfd87c8d8637913e7937ce530d8d1e49245a1ca4f3a0aab0a400cabdd69d53fc1ee2a86a5ca414979c96c09d59394c689b068204d74a6398c3be";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/an/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/an/firefox-63.0b6.tar.bz2";
       locale = "an";
       arch = "linux-i686";
-      sha512 = "298f2737835faf98e688d2cca5c12f6c121e83ecad52f0fa6af06a1a0a823a5b1c9713742524b1495452bf099e82b3e1fc8faa30c9c8fc5221f11b514b165ab3";
+      sha512 = "2e7cf12169e6ef76e7429a754909ffa3a05aaf8bb208d3a23b202c18aacb3a364628e550a5a2ef66ea4be145b4dfacc9b91d22b7f3fb752d20c8ab0172c79aa2";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/ar/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/ar/firefox-63.0b6.tar.bz2";
       locale = "ar";
       arch = "linux-i686";
-      sha512 = "659908189fcefe7cb5c3a0dba1938d8dcd23336be2a728b0d96641a410fd9bf723e4ca4978649b5e01e13c3545ca3d8348a5a1451496c690efb663640961f6dc";
+      sha512 = "9cf8386fe93f6f577e7eb9982eb7af9d60a1ad7aa95eb62c49e7d5a9f312b8d557610d6b5adb5b562b4e18bd16ed352df055009fe35ff6309945ddee789702ea";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/as/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/as/firefox-63.0b6.tar.bz2";
       locale = "as";
       arch = "linux-i686";
-      sha512 = "e655389c4dea4d9db66549256ec05443a7bfedf508db46ab8943ad644229cabe2ec1edf8ab40b55bb2b53cdbc83832c3a39aa5c42950fe15fbce1152eb9ce8bd";
+      sha512 = "b83b25440d971c1f19ea191ec2cce1813f89eb52e921f9a7ba4f8a7a04c59035a03492b40d5ba2e4f772c43af0a47370476c18e2fc3996b0c20b3e781ce42030";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/ast/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/ast/firefox-63.0b6.tar.bz2";
       locale = "ast";
       arch = "linux-i686";
-      sha512 = "7be4c535d4d63ae1c5f98e49b58c57af0adafc95553a505fb60d5a83523422e6b71054f1bbf02a060510d59a8f85f905830a02c2837fa3c3e5008494e3bbe74a";
+      sha512 = "03baf39793c730723af20a8cebc9e657bc94fcf46e4e9c6fad4d82990fec3c662bda90dd9b8160883e5110c2cfe43f857dd8bbde6f06b8a9b7ba2caffb373f86";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/az/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/az/firefox-63.0b6.tar.bz2";
       locale = "az";
       arch = "linux-i686";
-      sha512 = "2b13f55b90997e245c69b16f6c0fdc1df6f1f7cbeaf4af72cade86866aa7c4b1afdca46a705e5203b74b0db645a514995f6554c59094c2f21c13aef1f126b27e";
+      sha512 = "19c389593da9813dbbb7f994d2990955e78dc9828dba697883ab2939b538f2336b7e3d60594372ddb3c55768ddb2fb4977cc933c1444cfc2a1832bcd3d334599";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/be/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/be/firefox-63.0b6.tar.bz2";
       locale = "be";
       arch = "linux-i686";
-      sha512 = "d7bf4a8aad2adb1dc5c9c0fe474aca23b8f3b3e66374ef36f28cb3818c74932aa4c5c92b8c06c384dd4f200fc1215a8a5fc7a2c22693224d5955965b239754a3";
+      sha512 = "15154744d2977ee3cd95b589fc4030231183370b3e295f195a9458d409cac226c19e2703f6ab6aed6821c97d15bba61c602bf3d79c1559df485b90c94dedfa8d";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/bg/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/bg/firefox-63.0b6.tar.bz2";
       locale = "bg";
       arch = "linux-i686";
-      sha512 = "f1d9bdff18573cc004b8172c96f2766b42b0f0759a756e7dbea0aa46fc8957675a556e6b952b3a7562421a6ebb33d825a886c1cc96ad627e806ad7f0a097799a";
+      sha512 = "94618a6f0eecc2784d8d89f6ee4da40ffdf2bddced4e18b4b573898c189b81245de5df75190232307cbde6117c1a1063bffc343a85b6dfb09068d4bfd3c3a942";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/bn-BD/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/bn-BD/firefox-63.0b6.tar.bz2";
       locale = "bn-BD";
       arch = "linux-i686";
-      sha512 = "aa1509462dcf6c8f2718a85bc6fa00c572fa3f41856b50a7bc0e2fe1f50a7c6717c05ee674e7594c4d07ef0ff23395bf9cfb23caebf707e0d8b4112687caadfd";
+      sha512 = "452b1c937ddaf8434e797955d015e3296fa20eb8fffad82467301d8e762fa4492cec15d9a237aa4412d1ead6bf34c925457472ad5be702fe755e9c72bfd733a8";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/bn-IN/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/bn-IN/firefox-63.0b6.tar.bz2";
       locale = "bn-IN";
       arch = "linux-i686";
-      sha512 = "e71b318b693a256dceecea4ea1ee494f5ffb9af08d72fb14a76c21a51b8f8796659a7f9a087e2b732f72cc8787217f14d17776c658c0affbcebd5e2208160a7e";
+      sha512 = "15a7f0663bb90d9581e14951b2a12259fe19c59ef0f8200464823c0693a73c59513234ac3f1af944ff8533d8c77b4a8f072b94679c23acf454826f48a5d47d6b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/br/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/br/firefox-63.0b6.tar.bz2";
       locale = "br";
       arch = "linux-i686";
-      sha512 = "1c33e290074d0dae9654d30b21592360f3f7199069b070a791974f665388ce290d36bc7cd9518d8bf855bdfac97acaa90430f4cc4627e9033c169dc75bd79700";
+      sha512 = "6dd94018e628439b533080ddf5d7fc2edf386989480a7c45727c0d32dc0cb4b4946c4d88994934e5e567a09df9caacbb282967cafb5028e5b870fd096d1c2101";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/bs/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/bs/firefox-63.0b6.tar.bz2";
       locale = "bs";
       arch = "linux-i686";
-      sha512 = "a92dcbdc514f3b593f5c222f093f88953558388e03e71f851cb2c242b67f3d51ce7c891a8f183fa554752d13ad93152171233b81aa727c9c20a341e558b39229";
+      sha512 = "fae7ad771bcfd77eb6cfa0c4144ea3ea3efdfbf65b4064dddba1b555c2084c5bc9911b2ac3a6cff7f43478c3e85357615594773a4b7dabd45e6ba6a8e01b3f17";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/ca/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/ca/firefox-63.0b6.tar.bz2";
       locale = "ca";
       arch = "linux-i686";
-      sha512 = "ecd961e322ba0b9b8477a52bcd1e31084a18109937ac50cac68d73333c3d62efeced2fb11ba63fa97e144c0b711f5e9e15ba346d957bdd4506dd9a7a85400e1e";
+      sha512 = "2f206b1c0e2653cbc096793619fa48f96423201d3907fbc823e550b58ef8b7dc6b30bd489e8c113463ae1ef78bca38827619930bf75f600af6af058a586f50ce";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/cak/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/cak/firefox-63.0b6.tar.bz2";
       locale = "cak";
       arch = "linux-i686";
-      sha512 = "d49f167dfac2e4ce2a3f5cdfe7b5651347e90f7a04d52cea92c05ec0325f67993ec3ed97ecab501d973f16da856e474321307719842da958496e07d07dea2b64";
+      sha512 = "fa15a78d3d06c9155d46c6a37472f74edd89d8a459a292f1e3a004b080db7ad1c5cd51d3e400ea4816e6d403cd8a44661e65d39d5138f28733a6196a84c6a371";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/cs/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/cs/firefox-63.0b6.tar.bz2";
       locale = "cs";
       arch = "linux-i686";
-      sha512 = "04829e46c4d84745abac063114ea1abeaea8ec7f596e7e3850ecb8702134aa2164ccd11c98da7a22adcccc9bc21fee5886bc7c80652f4ef3682ce907f7e5ccdc";
+      sha512 = "d56c79150e1e0747a5f562e9e3a413152700cdfcc4ab091c9b3a4ac07753c1147601ff5189788336dfbbe22c3d1180283d5a3ab2733182a98954d9d0c5215e39";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/cy/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/cy/firefox-63.0b6.tar.bz2";
       locale = "cy";
       arch = "linux-i686";
-      sha512 = "b211eaee0ca7f2faf073762e9b0e47a6fb1249d20f0ec96345104b75367066c5b671d3fd16cd1387fc773152c1f22f26784df14146e5b3ef41db61810d6ce317";
+      sha512 = "91e0d1f95645b6f368902594044e647487584a0cababaf78456583ad8b4e87ab3399693c681c403f7e4ac7885633421c3d52b1258c1017325a4f4077d6556555";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/da/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/da/firefox-63.0b6.tar.bz2";
       locale = "da";
       arch = "linux-i686";
-      sha512 = "46c7f949b5d306f1511ee68d624a276b4635edd21cbbc9f3b19dcb8f6fe7842acfbeb55307dbfb6bbe19461f093752d1d27abe908b394a013cdbbc68b36caa09";
+      sha512 = "9dd67e40305dc77a8be1fdcf811f25a80636de47910cc42e1563902e1cf8a57ca58f3ec26366dbe85eb3c36bdc1a849b0c7f301534e469be573d8ed82047ce6d";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/de/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/de/firefox-63.0b6.tar.bz2";
       locale = "de";
       arch = "linux-i686";
-      sha512 = "d53f3ed49d59945ac711cca09a49460f82a74afeea3848605b0375778f3d94e2b0f8e473ca567a9a3326d847de97a83374b37c012b94d96bdff7482cadd45139";
+      sha512 = "e1c28ac98b003f0e3bc34cf375fcf23f01625e913d027ba248f3bf4b86babf70be15987ef04c8f33feed1f2aeb26b6aea3a93bf0d7f0803f4a03a9b55d91b4b4";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/dsb/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/dsb/firefox-63.0b6.tar.bz2";
       locale = "dsb";
       arch = "linux-i686";
-      sha512 = "e9274015c9a150ca2518358ed9847f060dce50f5aae902ba107eb07071b7be1255e3f034a8c3f8d9c29a4825d17d124da76b4072da20082364fca5ff874a9a19";
+      sha512 = "1651468f59eebdc1a763719c3c7f8974417188e1626c8498f1b7c6ae026eb40fd442346642a3c45bb1fd36ccf6017539c852ad3a7ac6424ce3069993080ed37f";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/el/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/el/firefox-63.0b6.tar.bz2";
       locale = "el";
       arch = "linux-i686";
-      sha512 = "8631f28be76ad3e16c521cbbc263f3c58df6e73cbcc9b4a5528934f9411faca0ed28f821004c901c97d925abb95fd597a34b901f97f33fdc508e99a3d8c4f689";
+      sha512 = "834aefe52a94aec8d176641cb138b09dff511d7307c6f10327db07a5e96d1b93714eaffc98be6cea18d5fb4f21e6ab69c50e3452c29e9c11fa597ef36f5e8acc";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/en-CA/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/en-CA/firefox-63.0b6.tar.bz2";
       locale = "en-CA";
       arch = "linux-i686";
-      sha512 = "1f70a550b4f7a6dd2578fd0a385a68b153954002d1a4d7e66ef58f86a1b5c9f33e153ce04a32737113f974e7caea5c2c6d338b69da94ced49a56dfbe61a99d68";
+      sha512 = "b3be84c80f9a04ef5095ee1498ef549b865c9d1d53a9e2f7a1e9012b09c6b562b2a3b2904a6537faa7f6bcb2d89e176d67e2981e26749a74fc3bcbbb704f404e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/en-GB/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/en-GB/firefox-63.0b6.tar.bz2";
       locale = "en-GB";
       arch = "linux-i686";
-      sha512 = "473dc2bfc05fa24f4a5c88321d087604b81245b08e3813dc45a2a7bd62e2c7012f0d2ca1dcbedeaceab7549ef5f53d47208c04b0bbc9f9267f4319b2720a14b9";
+      sha512 = "5bf3e7e43aa60dffd109a8671ec1d919ba4d70932ca9bd3648e2bb43721b59c00c9030cf3c3f8c416989f799b8bf4c21303c855e3fd8eb021e94eb3a0cda1faa";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/en-US/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/en-US/firefox-63.0b6.tar.bz2";
       locale = "en-US";
       arch = "linux-i686";
-      sha512 = "317db45661d149e6ad123241b9b335f34a2852921a97ac0caddc7c49dbb1d105091990e99d538255359c42c5f12057fa728dd546019e710168f696b88ca202c2";
+      sha512 = "d855733b5751efeeff97b761ad3bacc877609fc77e26def25a390115e9083f857c1babbff5523484cd3645a3470f2c9e287d0ef3fe1cd212285ab021c571426b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/en-ZA/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/en-ZA/firefox-63.0b6.tar.bz2";
       locale = "en-ZA";
       arch = "linux-i686";
-      sha512 = "dda42571be54e4955cad1db913579ae7e5b002dea09eef65c47da53adeff0631667d34339bf102d2c779d5601066b7d403da03349dffb60efb9205cbf92678b3";
+      sha512 = "ae6a764d9f46029338d2802488985180fe63c935bd1e2b0f33ed6267349deccb7019ae12acb37773a806f8f945f1ccd3b210eedfe1b44563423622157cdb272f";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/eo/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/eo/firefox-63.0b6.tar.bz2";
       locale = "eo";
       arch = "linux-i686";
-      sha512 = "c52807336eb6a7acefd83053b13b9e5e6a8ce746466fc8a117e29b3293317d8d8aad86fa5f893b57713ae6e2d1a86e63ac3a8e00079542bb9d171d0297b46a39";
+      sha512 = "3d25ad40f8b6457bdb77dc85a16e9a2cb839891816ce683bb3a371e95045876f4e70620290464d6c10d148fb386e711b0a9b4394510a167e9bda0f70da9673a4";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/es-AR/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/es-AR/firefox-63.0b6.tar.bz2";
       locale = "es-AR";
       arch = "linux-i686";
-      sha512 = "822524e73b1f49037b0e94b297fca1239dd8db130661bd791c1e5e213c9d3cc8f433af205b9cb3a2b3b983bc1470471f558d5e49e908ca582921b0f04d429472";
+      sha512 = "8c314a8bea657951c955dc1328e5277d5eb649d6d8e4fe261aa2fabd5400fe16017c1880a20f9b0f8485a2eba34546b695d84faced0cf0743713525e9bf022dc";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/es-CL/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/es-CL/firefox-63.0b6.tar.bz2";
       locale = "es-CL";
       arch = "linux-i686";
-      sha512 = "24e6938f719b0f369db6d2277017e976e3db83ad342ebfe3caee1c266e4832c0fe306018746e3b45bcf6a7a430c9083fd56cd22e57945966ff4f2943b828299d";
+      sha512 = "fe13ce6f7338ddde928fc1b1ec917515c2ac85783da89202adafb307439c54c66be87a8ae3f15faa6006fecb28f21206e0994401aad9ddd50099cf48852c20d3";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/es-ES/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/es-ES/firefox-63.0b6.tar.bz2";
       locale = "es-ES";
       arch = "linux-i686";
-      sha512 = "7d97797796becc35a27bdcc461aed9f0165e49ff8010234ac9d2fa0274ce9270b2b69657d841545fd2b6b4cf7727ebea76ba3d5c2bab8c2f1a4612fa678828d0";
+      sha512 = "872420f6294fa3ab715b6cbcc2b4e538e53902fd434eb2dde5a1df60adff885cf494168538eb94a3448b50707db15e1d30fdfc89351b4f7ddf9570a7b57ca898";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/es-MX/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/es-MX/firefox-63.0b6.tar.bz2";
       locale = "es-MX";
       arch = "linux-i686";
-      sha512 = "bcba9c47bf13b77679374f077024b62e6f4e6048980b71901f576492629ee4e6074f9e5f33b9260eb67476823a604803194f668c4ce1ad09bfe78aa5017ad9e3";
+      sha512 = "6a1f277fb6bda8b8f807d2d87d03138687bb9dc83265475c3aca7b68bedf3c01bc0fc6120a131dc9895cd648b0aea4756cc4883ad9ff81b4f6ad73283a1c1385";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/et/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/et/firefox-63.0b6.tar.bz2";
       locale = "et";
       arch = "linux-i686";
-      sha512 = "ef00d5c331d377d544c3f8acf87ed78c658a5e076db36a025a9c004366b27d95f2c82971ce45f2d48eda4cf34f57adb95c646ad21d2000e5d631aa2a8c2355ce";
+      sha512 = "820ee6763c2bd74a747d6ec3cc3d4e9cf35c9ca8251892379a30b8fdd986bc9b25bd7f61a4e6679db7d764ddc757d2cb627ef3582cf1f4f980b6acb6359f6dd1";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/eu/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/eu/firefox-63.0b6.tar.bz2";
       locale = "eu";
       arch = "linux-i686";
-      sha512 = "7d83cca4b0f6de980d5e66b152bcbc72286cc7a241ac1869cc5999a7007f7b632d35b9319425fe1391cf0b16188709fc62c05e81fbf9d1bad0a338509cc7c529";
+      sha512 = "cb29b448be7d9c000b019759da81bd4883cccdfbc6c3c57adbee92a069c84d1f94bcc9656bf771f61720618cfe9626df133f9be529e2c5dbbace7ce929e4b799";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/fa/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/fa/firefox-63.0b6.tar.bz2";
       locale = "fa";
       arch = "linux-i686";
-      sha512 = "aaf6b7583a9c9219c4967b34c2d89d58766261178efa2d89f4cb7c9bf8018d908887ec04bafaa0ec464c243d301cf09734cfe6150d40952df532579c35abd517";
+      sha512 = "75de042b2aed3f161428d979834c8a7f4bcd8f3843509aeffa7a20c548a8b9d54531cf68dbad278cbaff70251672471744df3df5bd71bf35d6d49435ddff8c83";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/ff/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/ff/firefox-63.0b6.tar.bz2";
       locale = "ff";
       arch = "linux-i686";
-      sha512 = "3cfb4321724a30c49e735b001dcc3b3b1fe2ea2872793b5287adaaf89b6821f8b81669761d8296111b574be14eb6bce7d0467a945dd22ed652f82d2ddc29a46a";
+      sha512 = "460332c01db63286026260c192ccff50ab75a64d65514ba02fcb6986ab7267b358ff8c51d76c8884cde24893f202392b788f326dd60dd60840be64c527379f81";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/fi/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/fi/firefox-63.0b6.tar.bz2";
       locale = "fi";
       arch = "linux-i686";
-      sha512 = "2acdfd29ad1213c8fa5ffde258737ba2232ec1d2fbdd5285c913b7c383f4e30a2cda65a16e1f597c81f9ae0ea1b7fe492625eac48a92fc2f428d5fb0ecd5ef83";
+      sha512 = "294d616e6634d257f83a480752492577a8397228520c67ba92d039cd21f925efa053cab2fd3e23e59d4fd02d0711a38a251074deee671878236c380cae3bc605";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/fr/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/fr/firefox-63.0b6.tar.bz2";
       locale = "fr";
       arch = "linux-i686";
-      sha512 = "4f18a80f38d2f8b2e828e58171a10bf0509275dcb5321867c52a818ce82b56ee564973f13fb222b049e0df3aad1d7b0f68a6ca24e88181553bd3ae125577eb04";
+      sha512 = "d9634c8cb3be18dde4063521d4ba732e488c322174a6a254b19c77d6282c33fd1e758be72916639df8cf4498886f8734b4b82f1f8115bd808c41b767f9215045";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/fy-NL/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/fy-NL/firefox-63.0b6.tar.bz2";
       locale = "fy-NL";
       arch = "linux-i686";
-      sha512 = "c7b18de94816353897423bcb35b5f5d88e998c5dac3d37b417e2887f5fcc7ea2c4233a5e603596e742e2710e345edad14a48f45b74a91810e126a14be803b7f2";
+      sha512 = "5659a13a6016c057a478893624c8de70145dbbe7ba72dcbbb05e1c53fac644528cb124ee02d1a643b19b04d1fffa70141b42f950ff1a197f5d2e5550be2e362c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/ga-IE/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/ga-IE/firefox-63.0b6.tar.bz2";
       locale = "ga-IE";
       arch = "linux-i686";
-      sha512 = "e1b070d63012e494a0fb380d7e97f8ca32e93dc3e8df5e2f5347cf829b6a94fa886dabd46285110b4e83c807f49fbdc7f792061ca36246b1f7c1c4260dc3d927";
+      sha512 = "353c272783bf99ef7683b57bd0e7cbe94b761afb0841244d09b5e13c64fa44cf6397569d55e6db5d3257a21cbaaf5ce00ddb58bf6adebb402af1fa6e4816c39f";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/gd/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/gd/firefox-63.0b6.tar.bz2";
       locale = "gd";
       arch = "linux-i686";
-      sha512 = "218450b49eafb3e13dee8d96cef0374423c0fd9ed9f3700428fdf0234a7f921138b4188dbdef60013062c6aa62fe2e13a6bbc219c756b8085e4b87f1a7400ab2";
+      sha512 = "214d09b7849fe0b5bfd552875001cac21842c880557adbd7120e79e7194ce2cd8d17f9aba5c684b30458272b38c464274ccfb5c12d30efc4bcfbe58665945d6e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/gl/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/gl/firefox-63.0b6.tar.bz2";
       locale = "gl";
       arch = "linux-i686";
-      sha512 = "e841e13d8f9aff9c00e3d78f01c6a6145d87f9c6fa5fd6390080b1f0002cd6ae2e1d45a14624151f7d2a075a479281c534b06bea6f03d022dcdcf330858fb212";
+      sha512 = "5aaf2f5d740651a4040a4661feee6c5d1b5955f5dfb811a6c3adfb65ce6ada1d05c5055700426325ccdfe504b35e2bd610c8ee027a130df6df07912c0b620d7b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/gn/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/gn/firefox-63.0b6.tar.bz2";
       locale = "gn";
       arch = "linux-i686";
-      sha512 = "00b1242cd074fa385757a2059719fe680d52bed9ff74ba913f50fd3c7a6e2bdb16a2c0b63343bef47dd0fe2a7b55b5bb089e801feb3d4e537048840b453b9464";
+      sha512 = "ff77a8fd53f6096054ff4541709c70d9e3f2b7ab3331b80fb5461099e12d055de2f0cb3a941285079eda02900101d20e93a80fa22a1cf960219c49b760d26de1";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/gu-IN/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/gu-IN/firefox-63.0b6.tar.bz2";
       locale = "gu-IN";
       arch = "linux-i686";
-      sha512 = "a1ba413e9f9f9167d15f37854d91620cee806edc1d3aef95fcc8b067384632d07789ed7fbb90255e572de0de73096fe08147082e24fbad9373717d1388f275dc";
+      sha512 = "d77420d5155696c45bff77c55518922e497f40dfc639019a9ce13f98adc31b7e64437631fbe74c8d64b619d558c1de2c136e593206f52d0474378c8d6f5053d7";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/he/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/he/firefox-63.0b6.tar.bz2";
       locale = "he";
       arch = "linux-i686";
-      sha512 = "6ee67f5d621666c3d1fe3bea325499f21be3c5b51b76dac0ce04986e4a780b2da6abfdd2ca2b0e135abbd5c085b6a58da3bdebd9aac2daac3921e36b5c823027";
+      sha512 = "1a8c37f655c8d1792196e2974808ada0d3fc00506f4c500f5920504e9fd30f3e442de063e0c5b04a9c2c71465247b0fde8bf0a149e5b0b046354601dbd19722d";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/hi-IN/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/hi-IN/firefox-63.0b6.tar.bz2";
       locale = "hi-IN";
       arch = "linux-i686";
-      sha512 = "a6c674a0303589372f0f065509977a7233a0a64ec3eae0d6c33321a3f8ef39e8bb0c06fab28114c620560a5dd7748801aa01c59feb785250455ea5d3683aa324";
+      sha512 = "137a1930c18ac470648a7065f6f6bccd609b40c82eb69a8672df4b9628acd82cfdf6d9c24f02d3f443a277b9e4dbba09f414b45e0053f7b87d2fc7a945dfcb79";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/hr/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/hr/firefox-63.0b6.tar.bz2";
       locale = "hr";
       arch = "linux-i686";
-      sha512 = "49491d5cfbdb63a0ce5dfeab0041f3ac188eea65d9804ad204eee826a745e7274b59119545278a76e1a69f239b2350835ce69aade82195f2c9e3d926849b0732";
+      sha512 = "9e926c8ea71641699791eb5ea593e703d527eaa798f47c6bc890786825f452e25b1d9e0a10f10be84de50d2709c3ce30e5b3f27c8c2715b1816863d280671faa";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/hsb/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/hsb/firefox-63.0b6.tar.bz2";
       locale = "hsb";
       arch = "linux-i686";
-      sha512 = "94a1b14a0307be3946abf0291be752d90ffb004742e27ecabeaf340c8a291a203a71152dfefb0ac8614f029763d0f7748c20a9e254763745e74bba7e00dbb752";
+      sha512 = "d98d195333ab6e91a3322fab6f867b1cb667c11184a0463a4a727d901f258c11161d5eb4d2bb39c3f0420eb58a9f6f03792cb59f8906c7f44276b317f23f7dfb";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/hu/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/hu/firefox-63.0b6.tar.bz2";
       locale = "hu";
       arch = "linux-i686";
-      sha512 = "ad13f2c9b2e233b63685e5d259e189c42e03c20fa4635b1e3549bc993aa84b6b6f60db765d3d754d4077df71482db8a410b78255525a98484af90963d7bd46b8";
+      sha512 = "28698619a67b8bb93300c1407a25ff14d66874ddeae70bf807c91e88583c880a73e058e404f65d6b8831264faa5da8f488641e319735b2ddee6c3b17907430a4";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/hy-AM/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/hy-AM/firefox-63.0b6.tar.bz2";
       locale = "hy-AM";
       arch = "linux-i686";
-      sha512 = "af60b06dccac40856fd7553853ea27f084db076ab544e02bb85608f54b7fa91b05eafc878ff453f5392a2dc642e1f8bf7792ea2393233814e23e65f4eecd39e8";
+      sha512 = "e70fb05087078c86576b0959f9fe5f5e2041c50e48e1badc7de8f3a7e9759f1904980c2a8093cfbf3c78c98b901a82f44d21785cc2a140b28d9a57b42c50aae2";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/ia/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/ia/firefox-63.0b6.tar.bz2";
       locale = "ia";
       arch = "linux-i686";
-      sha512 = "f1a8b6d609ffebb5152f0156ee2dda7452f56321852988ccc5f0f644c96477a0bdb8bf1645f5049bc404b0ebe17627b53db7467c208b7f2c8406f7742e90a9ca";
+      sha512 = "c6b7193a25dc6b93a853166509d9dc84236862405156e70314b7e396942b1c0c500e068cc95b2336c03b29f6dfefb0600f78a4fcb0869fd56e68647540914c4c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/id/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/id/firefox-63.0b6.tar.bz2";
       locale = "id";
       arch = "linux-i686";
-      sha512 = "8b90571b48108e99021594d517e07cbbc897c96a84dbb8547c29a674f875fa7cdf01432af3a8133a524fe43640b7d6e6b6603627789b01b6cdcda0e3dc6be431";
+      sha512 = "7e16fce94693c50a7a64328124c8e0c5ca2e78176d6a1a54a7d8b8b3fb72ac1d7cf3876b81060b2bd52b94a39d591967667d6c8569bcab49db6b63312d7f0116";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/is/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/is/firefox-63.0b6.tar.bz2";
       locale = "is";
       arch = "linux-i686";
-      sha512 = "85f59ccc1812b98df3a7ade05998e997180ff5e1fff189dcc08a6ce65d5f020d3fa1a364e36d363d92bdd9cbd8c30af38a159b304c100f65fae619371ea817c9";
+      sha512 = "3cc4edd3189c7abeb0d0aed8a12e38b412952ab5938ac7ceb3f970a46bc53a26f9713a8c77515f3c1985e66a064dfc1ccd9079c09c62d311c9d229272235f089";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/it/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/it/firefox-63.0b6.tar.bz2";
       locale = "it";
       arch = "linux-i686";
-      sha512 = "c6ad61d891ea8d26a18da6d53d60216ad51fb236a4e011d99dccb06fbc79cbe983310c406dc9aedd1cb6b9c15212bafdc3db23f4b63a05343509cef1f5e309a4";
+      sha512 = "31ef0998c6ccfe9b71670aa729a1f6717420a25932544d040a87c34872e4e4d1752837c8671add9472c9ca0a49413395df954605a7a1ee27216781998783f0a8";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/ja/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/ja/firefox-63.0b6.tar.bz2";
       locale = "ja";
       arch = "linux-i686";
-      sha512 = "0b802cbeba1f5ea66818f3eb4738e43f0c448bf7a33d02a656a1c5116b218c5e7ee915f788d8de19e9599a544ac335b2a2dd3734ceb1bf927517f55a331a9ff0";
+      sha512 = "be6c98019416b61280850c8bfb91ae346c4981aad4ea96d029ae39816b9889fd732e00b3cef78597884d1ac28ad92c6e9c06687b113bc3091ddb1fce28a39c27";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/ka/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/ka/firefox-63.0b6.tar.bz2";
       locale = "ka";
       arch = "linux-i686";
-      sha512 = "2b71658317f90bbb6beda188cb347e2ff413476e429709da08b094eb60363b658f3eb84dc58d96ccb2f16c9d7a692bbc0f282d28020dfe6de3ffdf554636f437";
+      sha512 = "40348f8077db44bc70a6f7b349d37558023951d8e37e622ae2ee08de74725d15615cbc875c9a44119f2ff8acac91d5d19c61b450fb342d2b29216aa00e0f6ad0";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/kab/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/kab/firefox-63.0b6.tar.bz2";
       locale = "kab";
       arch = "linux-i686";
-      sha512 = "129ff0155fea5269dc0d655633d6b807aef97a626e338b4d6a0accac675b0c7cda99a95a5989990ccc69cfd9137f4c2f907b833f650f4b789c7beb707a634f18";
+      sha512 = "d432bda358eff82b6121869565ee67d054091980ee3d63e4528b9fad44964e420e004310679c008af31fea0fb0a4e6098a0ea9048eed20a35634d5ccc9ac51c2";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/kk/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/kk/firefox-63.0b6.tar.bz2";
       locale = "kk";
       arch = "linux-i686";
-      sha512 = "8cf6ec86d8c60fac299eaacc9f046beb497205f1414334980e0d6ef2576a043f731df5610c3ad918b5fce0993410ea5125efdb769300387ec0ee6fc5c5beab9a";
+      sha512 = "676935d56cc2256e76584a8d1a07a7fc8b741c9b0276bf114a10b8c9b42138b7038026a1e70abb086e45c1fca0daa36e7358cc45dfe42b1baf6f312c68dabd40";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/km/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/km/firefox-63.0b6.tar.bz2";
       locale = "km";
       arch = "linux-i686";
-      sha512 = "2b5a8415796d16a386de7c82201449c2929b7f75e96ca84b5adc25bb52ed27e76fd5f510d6cba14b04be26866d17b0cad026bf9dfbe49094cae2fbed984873a6";
+      sha512 = "f45fcba2dc07f1d6b7763f63e778ddd5925c3b3095acb8c223768579d96a7b97cbabe562f650d683f53256e27c180a1bc27e64411c97edcd85403a1fb6cf0f42";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/kn/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/kn/firefox-63.0b6.tar.bz2";
       locale = "kn";
       arch = "linux-i686";
-      sha512 = "2d6f3384708ac2275c5b372d33daa0e80b6b253d69e80e0f2ff755bac99dd8eb2dea9585e3aaf20c2efd6528f020089b0a29a1eb8fc9719958edec806557232b";
+      sha512 = "5b564c901032cd6c1cf20adb8ad24aa76d8bf6f7aa50e2cf5d1d502beb274368814e039eaba920b2124912ee643e8bccce0c7f9d29732d14bdee8bb4e5043288";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/ko/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/ko/firefox-63.0b6.tar.bz2";
       locale = "ko";
       arch = "linux-i686";
-      sha512 = "dcbfc97a8f6f5292e519995becb41065c561395b7cd24f76b6717e8c920c910a5456ba382e079641988de82871b7c4545cc1d9b044157222db780cdfeefd9949";
+      sha512 = "34e68a78a3d990e875f1dfbd48b5089ec70f37e1e4993e9aca10c10d221fa80fa625ef8e54e8c6319bcb97b55d9c503e54b2337672df89fce32061f01e4fa811";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/lij/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/lij/firefox-63.0b6.tar.bz2";
       locale = "lij";
       arch = "linux-i686";
-      sha512 = "fddd4b5a341405ce2d7598768d53a51c37c54c6486286569d4ad06965f27b4c7249d769507b586f5c880ea994e67b0e51a2bca9746c54501939c4717dbbdcd80";
+      sha512 = "97b06fd1f703c11487de6948691802e234e5261afea85b104e41232805b0e737cd38f3d540090a78e3f5609306d938b66d5ec1fc0a96750e60e37066325475cc";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/lt/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/lt/firefox-63.0b6.tar.bz2";
       locale = "lt";
       arch = "linux-i686";
-      sha512 = "e6a11b4709c0578aea57330e43f9e7f15d7c1c9401a2fa04d909e373be7a6c80123f05ede39a9e72a33c8824b211e42483a96a9620de419b7748080cc9a7e998";
+      sha512 = "8b1d8eabcf0c2cd23e16e2fd70487e47421bac59b3e77605ab914483085db06862d62608c9361d499d3d2a271a8a07ebd7afd070eba025dfc31d2c0c2cf8b0ac";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/lv/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/lv/firefox-63.0b6.tar.bz2";
       locale = "lv";
       arch = "linux-i686";
-      sha512 = "f1c6e3422d6cbba13d9ad137523f06be5efbaefc60490f67456d5a604c4e9083a172c3299ab1d41efdd76884ebc1fafaed6a083493c00abe81888a23b2dc0c87";
+      sha512 = "06aeb27ddfd4aaf8a8cdb9747ac8b741c764e2198649a96fb64e195679ab727731cd7b08901308883dfc4c37d1f5c3fc047469c3ae31101f68d802ccc171c349";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/mai/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/mai/firefox-63.0b6.tar.bz2";
       locale = "mai";
       arch = "linux-i686";
-      sha512 = "5e7368d6a098f90c6b550e0700342c1e036f69c7d2a28edef7511ac88601b5befae37f2fd279c22e383050ec5fe0f5109f22309af34914c98e120144f94a0345";
+      sha512 = "3c7da7c05e55361aebe4b4e960cbf55e337f6e9c4f78401b6320f7fd009deba552ed9b2e849893c29f3cb592d81eb3fbdc6ee671d37c1a8ee7297c13e538804b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/mk/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/mk/firefox-63.0b6.tar.bz2";
       locale = "mk";
       arch = "linux-i686";
-      sha512 = "4294fbcd18dc778ac641cb29c64d242570c018eeac33bf21445dbea4f9abcdbb31a384ab2a73817be265f6cbb6e509b86b9fd132b7cdf09258cee191821d1796";
+      sha512 = "4e9c2799d3b83c316c1a53bcc233ccd10b34b8d042a394d651d5c23a3bb574c8bec6b34833e5f19e3ea8c11f2067ba1f6546ceafe8ed225c24b0c8ba0a308f15";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/ml/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/ml/firefox-63.0b6.tar.bz2";
       locale = "ml";
       arch = "linux-i686";
-      sha512 = "050f90fdb97edde5a75b798af02a10f7fc5bda28a07bf5f0b883c5039d855cabff160b0fb7411726c5852584f96ca4135878ba7ea8c3298de2fb3af85b7e99a4";
+      sha512 = "8e55fd98653fc601a90304b8bd5a7c4f74f67517a8e23cb369c77db7969d004dc3d44295f14da124427237665a7e09dd497b031275188ac48c2d031b656a0946";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/mr/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/mr/firefox-63.0b6.tar.bz2";
       locale = "mr";
       arch = "linux-i686";
-      sha512 = "a005fa90f6d301d1dad2175d58bd9de698f061226a6776dd5da82195eba19b004252b02fb464f004b6aaeb13232e8d80d511bec3cf955911f087ee40cfcc0015";
+      sha512 = "8f171a5c29c5389521ac9402d4b81f81fcbf7e890d73aee5d861af78e786cdf1e2178805fa4c83fb1d7ab7b280cab235059034e53c26dc6ef58dbf792b878bf7";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/ms/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/ms/firefox-63.0b6.tar.bz2";
       locale = "ms";
       arch = "linux-i686";
-      sha512 = "4ddf2b483f24b16a08b293a3c76049e62fb7326d3da7287bf0493eb838220cac3ba5a81473a0278c72a5c5e5391edb17304c0140e81c43c1b943b9135ada3b9f";
+      sha512 = "9bb879a050c279c1db871cfb9a72126dc12c1c7d00d713cff078961a501fa219420d0997958d333af98e2b815ac623b58c39cf7137c54f5c141751839ef27b9d";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/my/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/my/firefox-63.0b6.tar.bz2";
       locale = "my";
       arch = "linux-i686";
-      sha512 = "23f2c208eca6472879e47a5bf3c4fbe04a2feaac0d220cdcd1985001665f65e8992a97998630e65cde02c6c87dee34fa10bb78b99beb5c8968c99b410b226a68";
+      sha512 = "04bf73bfbf801eaee7e9619d63c9c1ecbfff78f4c987d27b4271fb8517ed6147345a02d0a6cfb24edb9ccf2af75230d1c929dd8cff5683969be048983fb91320";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/nb-NO/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/nb-NO/firefox-63.0b6.tar.bz2";
       locale = "nb-NO";
       arch = "linux-i686";
-      sha512 = "22461cd2fae62819fe9a44a1b947d63ccea61d5b5ccfbc949644518d3c65c242e91770a10405fbcde24b2f6eef794b3014e9b6396eb6a945c904e762792e2634";
+      sha512 = "0e4e8c6b93ae01c8625a805a4e179b36283fb52a69f48dd2a8bf46e692d8d9a335e7992f27b5842026c0770ebe2a6c9382a529cfce45ba839b9c2b4a53db592f";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/ne-NP/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/ne-NP/firefox-63.0b6.tar.bz2";
       locale = "ne-NP";
       arch = "linux-i686";
-      sha512 = "b499cb8cc7d5486d368b381ac6c0416861846568fe6b8cf83dd2105427d87fe12a648da5b36c42a4a22b64db48c9016828c14f61d4c6ccfce347095ac275deb5";
+      sha512 = "80c01828c94b96fb9703ed60c9e2031a161b078e3ed857e199997dbd757af351159472b901f22b726602fa52a716b608d07c72f1abd1ff94639991d649d6e4fc";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/nl/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/nl/firefox-63.0b6.tar.bz2";
       locale = "nl";
       arch = "linux-i686";
-      sha512 = "3107acdb8fcbba9629c0e3ba940de4df42d7b2d57328ae3b2b67cfba280ae2f97499d248c1c909630e795fe1f8b8c096a60e273dee3ba1bacecac8244612ecaa";
+      sha512 = "a36f86e0a33b83478b8d47e0fb8d29c88178068f9d0658ee95a3ef9fbb139266e702576fbb4eea90471850628a12d88c6aa088424ea7d3cf8ad47d429c610448";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/nn-NO/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/nn-NO/firefox-63.0b6.tar.bz2";
       locale = "nn-NO";
       arch = "linux-i686";
-      sha512 = "bb5f4ee13acbed4dabf349fe8373a6dd36df5980c6ce4c4d8a2f59cc2a7e53c0da33370ecdb394c80e3e0738d9330690664e4702776a3d5faccd6fb041fcebc2";
+      sha512 = "6adc52d6c3c4516ced33003841dd1b3dc223e3baa3164af5b874cdabd0456281b0d5510313f380298c51e820b0f9dea6684a3119c1447600f3a0a44fb5121cfa";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/oc/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/oc/firefox-63.0b6.tar.bz2";
       locale = "oc";
       arch = "linux-i686";
-      sha512 = "fb0ae7f6c96a5c3dab3c8b205532cf0963f58bdb6b5be335af6e04c583101d7e0769ebbe7af5a25eb8c8e0e52d29762660d1325bfb36f52ff118c3443b9c503a";
+      sha512 = "f1daa77cae526e536b03c038491c86343eca0b4d67858ca039879990e11ec05354aa888704c131784e47bc488ed79990fd7ef8c4cf1d1396e26d7875e377f44d";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/or/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/or/firefox-63.0b6.tar.bz2";
       locale = "or";
       arch = "linux-i686";
-      sha512 = "3a096af1920f5882a3c14623855a62bb21812a342ce8202dab99937c95bf2bb25ee95d6e8d8f83efb3a4a6576cbedc08fb1990f32aa2ff95e9db109b3e246a70";
+      sha512 = "8998bd0d075fb7a611aecfadceefdfb90f4da4f56bb090baeb4962b53e809ecb18a16fabc2397d9983e6f5091e86808155efb736efd64d183f4da392da57d2e7";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/pa-IN/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/pa-IN/firefox-63.0b6.tar.bz2";
       locale = "pa-IN";
       arch = "linux-i686";
-      sha512 = "c078b293d2ed28fc1780ef5a245650e88f64f806b6beaf593da3f34e554e77e239626699e959c681f652a14143b46b13146a7d4fa04d3e71bbb9a55c0d487e0e";
+      sha512 = "705b5cee264ca9bd766abd9c668d14531431449441977ab3d083b89082ca36c330b361bf66b3028c774e1c45abf0c16a5e63b4384697bcf39aee0029f22f1587";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/pl/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/pl/firefox-63.0b6.tar.bz2";
       locale = "pl";
       arch = "linux-i686";
-      sha512 = "6c528057f326285a7b41a12f5b60f6dc0c659d8475d1766b577bf3967bb0111bdbdc43a4c5dfdee20a215d12b9768cd080d33b7fde31633f41edb9019ff87a50";
+      sha512 = "ca933047157354690d2577473e5748da44c955fa356878acc93ed58c4546d248a3ddbeeaf003fbd1eb0a706149dc775ce5175dbb3a7019ee50b12624ce462d41";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/pt-BR/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/pt-BR/firefox-63.0b6.tar.bz2";
       locale = "pt-BR";
       arch = "linux-i686";
-      sha512 = "e8fc71862f83004c660168b0e955a1043384dbab038f3e959087c799088bb3307c102097f627925249a5ce3f316c102a0ccc871e313cf7efbd4d10c91b2eaea7";
+      sha512 = "3b02c299e124c0d149ec37659bd1992ec564556c416046d5a604a0dc88426b9a94a1608acdd169fd484904db9b1bec1d5743c4dd66325354d1fb99891ce7e276";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/pt-PT/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/pt-PT/firefox-63.0b6.tar.bz2";
       locale = "pt-PT";
       arch = "linux-i686";
-      sha512 = "6c7881edfe14ad6cce5241e4de562e137f44abf23bec6c49e801c1fce5f1c417f88939a97f4484c37061063f7b13d64eab55777c6852634d3bcfb69954ca3837";
+      sha512 = "e15b3a44c5068a6447f239de67505d913942721ab088c2e66c15f4a6cea587a71f66dc09414dbce656775cf0b0ddd61c706ce8c5fddd3e51c889878fb3d8bf93";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/rm/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/rm/firefox-63.0b6.tar.bz2";
       locale = "rm";
       arch = "linux-i686";
-      sha512 = "1516fe15becfeccdc63f3014fa1e776662777f303e66f1d7aa48a39905eeab20dd646832bbdbd1e3b61275f02dd338255e0e6db6b0fddb159d480be4c89dc1e8";
+      sha512 = "5e0ea213d65acc7ccc2e98a462848479dbf07585c45fa04bb3472d233feff4cf4d09cc00a938d17446e9bdb06ff3198c3d06feac8a50ea590243ba2bc090bc9f";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/ro/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/ro/firefox-63.0b6.tar.bz2";
       locale = "ro";
       arch = "linux-i686";
-      sha512 = "ac6e751c4d2be30c6e918ccc1562a8aefd0e02ac672e2bd3a3f6b9bd2c153ecb172674aeb6ac9607210250e6b9058e007626bd541c4c164316c77d98e7e77c8f";
+      sha512 = "686a0d4386e87eb3616e08107b12488d88e75381ebc15add947dc11010c7d114810322c4c6127446562d611b88d2af5d022fba9882fe1ac75b12c152fe4df7f7";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/ru/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/ru/firefox-63.0b6.tar.bz2";
       locale = "ru";
       arch = "linux-i686";
-      sha512 = "92a7cec3b0e4783cf2bd66a2afc0db069b9e26b0359bf376abc36db8c461b68690a789c06275d7cf3407802e961bbe6d6779497a158872f3676419cbcb1fa864";
+      sha512 = "fc1df633debdaecd9fc15eae1f8378d211465c6a966f28c2debca1d8a885d80bfbb86cf4aca63b64b1f1e1f18796cccb28ccb181029566d7b5058e1f8482bd76";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/si/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/si/firefox-63.0b6.tar.bz2";
       locale = "si";
       arch = "linux-i686";
-      sha512 = "d0cbce1d70714e8c4b5d61caf7f6e02b1caf43530b3a8d5db775bf164b74c273ab458262502cfcd6f0aa4a77a69b0fa3c6ec7bf9d3485c7ab447b07d8e534a28";
+      sha512 = "4356c6b3029139e3cddc558da4dc33572bb631afec9fbd4f1efcf7b396c3e97311dee480eeef3943f6e8bb34d385522dcc0c245358b795ba76bf0a780fa24647";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/sk/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/sk/firefox-63.0b6.tar.bz2";
       locale = "sk";
       arch = "linux-i686";
-      sha512 = "89033347ffc61f42d9dd9a2b50a24623f7e8b96e58b8f6baffb9f751e3b6b64041ebf4080fa7fe872f72e65982e860b04004b42b5c51aeeffef4129a3a593c8f";
+      sha512 = "26a1475f7c88a466d7a766fc0abd34ecefa4697cf76e020d2a6e539edbbe871e6a6d8cfdd7b2af9b27d4687a88b1398141be86932222ba5af33a615abc7d2d3d";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/sl/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/sl/firefox-63.0b6.tar.bz2";
       locale = "sl";
       arch = "linux-i686";
-      sha512 = "ee4ddbedb3c5b0b7c11d277f84028c867b17bf7a1559b276340312415105c80aaac8ce468cfaf99368d55ab4b9171e0555b5ff6949bce306ef72dd029464d479";
+      sha512 = "1f9bb83fcee2498792bdedfba32bfe98486712c835de0bf8f54a6359b494806d6cd5a620b76641125cb874d5c21a961b95bdd5c8157af45792c52b43e820b653";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/son/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/son/firefox-63.0b6.tar.bz2";
       locale = "son";
       arch = "linux-i686";
-      sha512 = "19a7e802542421b3147c2c0acf379d5bb8fe444b1dbf3ea41eac08065e11bbaf4467fd2bf0eec2fbcbcdeb8a24677b665035bc6c7e892bc762b5f8e01f9b9cf3";
+      sha512 = "c3ec8a80faed707884916321d8759363d2cd875dce4ce695470ba9774a68e88fbfd4d4684046cea82e1a82c2a7713664b76366d7c60f191a6250f2c92f7a2089";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/sq/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/sq/firefox-63.0b6.tar.bz2";
       locale = "sq";
       arch = "linux-i686";
-      sha512 = "32baacb624f9060d34b76d8aece1c52bb4dcef3d99f01d5160878666bb0b7a79501fbbcac8db57a2be1f8bcb243f323b52510934dfed36a96efcf0a23664619d";
+      sha512 = "86c4c25da77cb911e1e0f32d6ae8ffafb560286b85ae83d17ba7c68e166a3588df81cfb72fdef72d6652f06d41f0504bee0b8be7a4754628b315390141069928";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/sr/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/sr/firefox-63.0b6.tar.bz2";
       locale = "sr";
       arch = "linux-i686";
-      sha512 = "307d847f3a8fa5dbf8ef3bf8fd4750b508fd0e01694d1b7312919335247274323806f70e7863a1cc66fd368192c8b7d3df53f5c0993fb7defa2723f50eb59ee2";
+      sha512 = "efc696c6f835a5d442b344edf4fa5ec248e4fc4e6ede9ce62c56a0dfd0b43e7d582f3c34be5b5350e121e63e86997025ef10b11815fddf2f9ed195ae0ff21c19";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/sv-SE/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/sv-SE/firefox-63.0b6.tar.bz2";
       locale = "sv-SE";
       arch = "linux-i686";
-      sha512 = "e7c257a6bfdf9d946174a274ff41fbb2043978f4263e78a7c4af67f030b70ac9fe3ff0944d71b002478c9fdf033ea4a252400819e425dcd707adb40d249a2df1";
+      sha512 = "34e33ae363753573b3b7acc2fd40742b0dba1e2420106c090cc6e30ebde955de2dd225580b1f459476a0a48037167cbd5de38573324f5d823047fe5e54efe605";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/ta/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/ta/firefox-63.0b6.tar.bz2";
       locale = "ta";
       arch = "linux-i686";
-      sha512 = "a47b5ba62065cfe25fb0bb650c46fe1b7f92b1c87ef99e9cec15cc9d46b7cd7eb33c74065a9becbc0555604020f7a3e61588e29f920c8a926fe90991260c4cc0";
+      sha512 = "eb65d00bb195f438f30c94849fff3fcfe29e4f2e76875df54fab641226777f101c988074e62a69d0587ddfd541e5825c190939116b6c7e7df2e00eae6154fa6b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/te/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/te/firefox-63.0b6.tar.bz2";
       locale = "te";
       arch = "linux-i686";
-      sha512 = "0e54ec5597f42d4e6b04841bb0bced5e6129c966ae917912d3b91dc0314fef006a1929af6a04b126564713ee2a810a4bb9c1957803519ff7a64a9a05512b737a";
+      sha512 = "16ffcce555b6ca78a658cc58edf0889cd08461734e0eca829585145d370103724eeb6b8d0cc5459b6bf93717eb96b9133e366d14a1b31aa88858f079230c79ff";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/th/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/th/firefox-63.0b6.tar.bz2";
       locale = "th";
       arch = "linux-i686";
-      sha512 = "c8ab7bdb4b1a95f08620a2788ce00c3c4c054826026966a2fb6407035e26fcdb685337dbd5187235683e7ea08234d685540f541b6a1c52f3e9f2a1fb5d2a7db5";
+      sha512 = "7009b5cee1c307e4065d6b92665fdf02172df641eb44305fde1f9c7e28fd8c914ce723748e9ee17f2168e09196f64800eac84111b2d1c7f874137c38077492bd";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/tr/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/tr/firefox-63.0b6.tar.bz2";
       locale = "tr";
       arch = "linux-i686";
-      sha512 = "35a4b18c459898b470a35ecbdcfe863ea66755de4f51842f2a368300e542eedcf92914d9630b9bb32c2c0381406b3656ec1860d9eaafb2d2ca1f7e315593b17a";
+      sha512 = "eedd061d2205f0d0ee07f42cc6009397dbb06e9efe488af1b4848473665ae51a05339f978386dbe8edc06d8cddd3c7e3ff04441c3ae28c4d7466ed6ee89dcb0e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/uk/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/uk/firefox-63.0b6.tar.bz2";
       locale = "uk";
       arch = "linux-i686";
-      sha512 = "854153f02ac9500858aa9da1f153b231ff71e372e2c9d2ad87282ac0fe981d959103847a5688be87b01b2c3032e486ecc39fc76d3e495c395c2cb88240b5d32f";
+      sha512 = "3f2e3ad63802fbf679bcb34295203d891fe3dd1eced062b02b02e5b144c8e00d13bf85e024bcd590658591c75c95dc95d02f6cfd210e246ff47cf09282278c87";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/ur/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/ur/firefox-63.0b6.tar.bz2";
       locale = "ur";
       arch = "linux-i686";
-      sha512 = "0434852668d46ae5a85e9a1ec6a4db9ccb801b4d870b28e500690be33171b1596c7004f23ba643d88183edd524a6d558f0f105b65d1356147648003a0b6b9355";
+      sha512 = "c8d40978c1658e7b8178708a932a5b4c98d13e355c5dd7b21057e4167f96ffb4ba3588b3ba4091fc53699545240eca4b4e383f2a7369cee2b310c3bce380b50e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/uz/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/uz/firefox-63.0b6.tar.bz2";
       locale = "uz";
       arch = "linux-i686";
-      sha512 = "51e106c354bf253319107ee772619139413b4ef569ef3c97abc0fd26a5cc1c0eeada6a2924c3838f320fab51225e05e7ec170d61151baf018f9ad39f3de83f5a";
+      sha512 = "5c604d63c1dd6379e2d195d4208171b4dbcaa7fd168e5bb8a8233e802a6374371ada27f5f49d64109f53e28af01fd2895b64a93e8efc6077321b30c6630d0d0f";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/vi/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/vi/firefox-63.0b6.tar.bz2";
       locale = "vi";
       arch = "linux-i686";
-      sha512 = "bd3d7a34c737e2b165de9bd893932e117d993c1ac396f7161221aa84c25e8f7bc5e528c0de710da46324bc05c18762994107b08291dec49e5d8fba58b4c10dd9";
+      sha512 = "01f8c5f4adcb64201009b36664be0cdd101155d5cdebffa7f4a160c824e8b19d7463164515d962638e308a511e18cd8fe88b16a4972f15216db429de55484d32";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/xh/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/xh/firefox-63.0b6.tar.bz2";
       locale = "xh";
       arch = "linux-i686";
-      sha512 = "3c339ca6230783dfec8df3b14709af1a849986fdcc05546447d698f84e3e8d1b006e0885ef90321cab8d44dfb0222e6ebf936d1f3934bd8b487ad941699392e3";
+      sha512 = "ba0930610cf94b516800fcfe7112abf261e922824060c4493935fae1f8af184c74368c5c47172f08b08bf201cb74ce4b29ec419a7776bcdc64e4bae8774f87b4";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/zh-CN/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/zh-CN/firefox-63.0b6.tar.bz2";
       locale = "zh-CN";
       arch = "linux-i686";
-      sha512 = "8c699af29bdcf3955c4570dbff4f3449b033360892cf8c1b86bb00fe6bbb778f6a80293627ddd0fdda8198e2f8cc89649e66f3f37bb0d2cc9a2730210ac0506b";
+      sha512 = "eed5edb2b728110456dd142f19ff3cd4e3426916aa638071e0654f0fb4b6011129aacf4d667ad82bc7252d5a0fef426e0052eb31e2fab2575dbeb8a3fb5f589b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/62.0b20/linux-i686/zh-TW/firefox-62.0b20.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/63.0b6/linux-i686/zh-TW/firefox-63.0b6.tar.bz2";
       locale = "zh-TW";
       arch = "linux-i686";
-      sha512 = "93ab2022e6fd50266e201352e37a158d2eb65c00ed76cbba5940d852af182e401a6ed85aff4b7e50ac62a461afe21654526b158787fef15f9ba4c71cae91a8a1";
+      sha512 = "03ee54fb3258d796f6ee28be53af092e7ab2caf924a2d4cccd9b1419edb7e9e59a2c15e6bdebe255b30c2237b9d8cb2576de32504a588550a05e55cc3ff45c3a";
     }
     ];
 }
diff --git a/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix b/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix
index 13808fca99fe..594cf175e9eb 100644
--- a/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix
+++ b/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix
@@ -1,985 +1,995 @@
 {
-  version = "61.0.2";
+  version = "62.0";
   sources = [
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/ach/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/ach/firefox-62.0.tar.bz2";
       locale = "ach";
       arch = "linux-x86_64";
-      sha512 = "572696944414358a50dcf8e647f22f4d3172bf5ac846cd29bcb4baeb0ac5a351f361632ee87dacc1214633848f9970f93cbb25a6e9cfbd9ee796e30e06f34715";
+      sha512 = "68a0802cccd72ffd36bc9188fb96b819b6357b889630173294f92af4dcf719389d678232b986ff6aeb258d2cd149d670d70c2bc90309dc61fb359b1d3011cc6a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/af/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/af/firefox-62.0.tar.bz2";
       locale = "af";
       arch = "linux-x86_64";
-      sha512 = "dc4b22a8df99c3519f3a8001d0bdbcfdf4fc5d4dd13d18bd15892fb29e928126d46e2ccb9b512dca0c5395852a3c918a5aacd2b9a7b7f2cdb982052e915d5413";
+      sha512 = "afdb463bc4bb5f0f3ba95a0af9430d5407a707b7cdd181c44ba0d343230d75e16a3078bc1f412dce8248991b8e752480be885355e394c1e4a4465c7c1929075e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/an/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/an/firefox-62.0.tar.bz2";
       locale = "an";
       arch = "linux-x86_64";
-      sha512 = "2d57784a18278bac69c08e81fafbdc3530d17a112d3f1e7d407e2590935c87058641498c74300950d3f151bf5fd67065133d91c83e1e500c72b60ebc91a4572d";
+      sha512 = "c54b5365a97c44559aeac1c50a5d22250eabb94180987e3745bc875e7f2d7a843fd1282946cf5f27e53f4e0e6958a00376e6f761333e9bd5fd9ae7f6c081e1a0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/ar/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/ar/firefox-62.0.tar.bz2";
       locale = "ar";
       arch = "linux-x86_64";
-      sha512 = "e397f8d276c115105afcbab6fb71afd7bcc93778e79ec86a4274e10a6a039ad3107cbaabc9dd4bd197ce6be7add3cc0af954f029c179a6972ad2ba15ff2e3eb9";
+      sha512 = "08d5c5aefa22408c15a44646ef1b82ec3100a8bd69beb68a1d34029d2b0b554e110092ea5ee905bd866393cf506cd658591bba2e6f670943b21187015d99a836";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/as/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/as/firefox-62.0.tar.bz2";
       locale = "as";
       arch = "linux-x86_64";
-      sha512 = "9869e76e004c1e77d976f01f9a4cafe29c253ad3c85b1119d67a65c784b5f65dd7a4927ccd535ee80fd63a6a47127e614478effbd0455a227e200ca31c846acb";
+      sha512 = "c403ca739506adc934e3453bff0e282ed514580895dcab70d41ac92499feabaa0d811a821b4441b988a3c12320735794d891620e06c8f081f13882f3bb6a56e8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/ast/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/ast/firefox-62.0.tar.bz2";
       locale = "ast";
       arch = "linux-x86_64";
-      sha512 = "5b298cce253df9c8a072fdc93df894fdb4218c720ded3260f282c711270086104eca08e2d5afe1be4960beb274017eb4e0ae7313ceb5d6e596d0591f026f78fc";
+      sha512 = "8d0e1c648c9eb8ddf8987360be83238eb6daf578f090687071ad5a63ff76028ebb4a988115a8ff9f7c40dc3522f06b4f79626f2ec8371040c76501457b93bcc6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/az/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/az/firefox-62.0.tar.bz2";
       locale = "az";
       arch = "linux-x86_64";
-      sha512 = "cd8df2a19e10d5445ac0970814ad245e25f6ea695ec9590344c1a4e261b6fd7d15534028f6a8abf1943fb97f0e127ed55774e2cc2bf7cf85be525503bbb69f1e";
+      sha512 = "2cc58aa3833572ae3a97e0d2b70caf19f5429d360da8d3587399a3ef71b48bd1565b0a6eb560c032c45984930e74ad072ca6806686a18cbd7a0ee24805524a64";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/be/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/be/firefox-62.0.tar.bz2";
       locale = "be";
       arch = "linux-x86_64";
-      sha512 = "94947ee7b7477b467016cd21daa8134bf28ab289ea29c0905e04291b7560da895124be2ab7403d2b9874291b7e33f5a92d36f9c0ed9d58ccc3306ecd7723305c";
+      sha512 = "fa196010cf483c3f8a4bf63934cb54f543fd00bf8cee45d76aac29675a2b95757f687f8584e7f9122fa1e82b007aa13ef06f0c8fed7dcdea059223f3607db0ed";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/bg/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/bg/firefox-62.0.tar.bz2";
       locale = "bg";
       arch = "linux-x86_64";
-      sha512 = "9b0bce62c85282c79708245fa792207dccd7bf939ebc23ddb2e6bb7bc3f6fdbfdeecf69d1ba599b2ec8d10fe2d79bab5dd229cf9fa7b79e076797267df39c54b";
+      sha512 = "e0f107ab8248ee3e1bdb30ed081e415f03dba9068599f9596706dc4fb907be7737a9f2378e347aeedd667f2526a5b5753c4f35b004da6db6dfc9ca1593e9c91e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/bn-BD/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/bn-BD/firefox-62.0.tar.bz2";
       locale = "bn-BD";
       arch = "linux-x86_64";
-      sha512 = "4de95899462eafed03464fd054b7ee12cf53d004fbcb58ad18bd462e57f5c50c31d3b50f689a7d54f973228a2877e6c77c47740280daf7d6db4f7ba5988b9484";
+      sha512 = "794d93fa5bc61186b3cc1d7866a13d155420d6f829e9b20377c8bd8ed66418b92eac08e843170893a23249fefd7fb4c5a93df89fc9249b8de00ad803b9aad0ab";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/bn-IN/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/bn-IN/firefox-62.0.tar.bz2";
       locale = "bn-IN";
       arch = "linux-x86_64";
-      sha512 = "2ecbf2ae7d1296dcfd6e2268dbc27060ce07bb4b3d9d62f6bf27fc8874f114dfcca73672adb4d411d2c1eca7ffac22f7832bc5cdad12a492c3bc4406e3a6746a";
+      sha512 = "1ba17cf852e267f1adf9192d0081e03b7d96f4a23cb83ff1a67f31d7340b234037a6def0c821fb4a872fd011999b14b464a3041d308cf5135382c2164f9832c8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/br/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/br/firefox-62.0.tar.bz2";
       locale = "br";
       arch = "linux-x86_64";
-      sha512 = "a92abcb1aaec11ae3b0eee75b5b5610157f8ca64627a20018925431ac09cc4295d14357e63ea0fa2b66bb415039c659f53292b8133558d591a16cbb5772f875f";
+      sha512 = "7ff933244cabb95fbdad1a64ae900f6fd694dacf1d76621865b4a2066624c31f0686c4dff53add7523749d6f5befe6ec7bbf0160e426e1a02457f8d3d5e15016";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/bs/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/bs/firefox-62.0.tar.bz2";
       locale = "bs";
       arch = "linux-x86_64";
-      sha512 = "15dda8914e02198a9b6efdf0ba9dd4f37e41ec7c6674b8b32189ccc368ab6ee671e401cd668c5ed57157634220c176be543c277342e708baf7b0110cbbb4fe64";
+      sha512 = "dfd9a7b8f2f355f274dca7941349512339aeaa9da4412681a4e933cf0e1e9396d57d60887fca59c341e70496dd7073647794fbb4c8bcd1abd7b5062ee6809b53";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/ca/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/ca/firefox-62.0.tar.bz2";
       locale = "ca";
       arch = "linux-x86_64";
-      sha512 = "230591cd45dd9d3644313b96ea304d33e9c87d6968c37b73ac3c701132bf13a3869672317b135f31d8082f39298c978c07d614f5055555ba9079afc6e17a489e";
+      sha512 = "3785649ca22ab7882f751d0c2223589b7c8b5fa04bb0786ba5f64be405ba89a665244e7f4882d77a85569c46da9f6bc1d3fc95f0ff77e57f02cb8a7dc22f5b67";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/cak/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/cak/firefox-62.0.tar.bz2";
       locale = "cak";
       arch = "linux-x86_64";
-      sha512 = "c622e622cc199b8a9946276afdf03f006403bd302d2c62a5076403e6764dfdcd121c1e15fc56d45bdb1751131326babdc9be96e6425fcab9e55d6c689e5959ca";
+      sha512 = "e367d02bf8c743f7a5c42b6ca19521813ba31f6a6525f4fbd4ecf418c9927a083d218ded1ae8b11084d4cc5707f97312b327a40735d638e1d3ea07056dce7070";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/cs/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/cs/firefox-62.0.tar.bz2";
       locale = "cs";
       arch = "linux-x86_64";
-      sha512 = "8e4d452a75befcb6c2a6e7ed0b4b1aaa8f18d4d61302ddf6b8143e024352a060621c375742748db5981efecb8075268f56811702586189a116698a669408dee2";
+      sha512 = "cfa21baf935d6e325b6ea13d19796ae7adb51bfa6923f7f13e5138628f8064154bbfc5a4a0131a147383b2bf723e1abc46a79b698b2682602faa9a8f80b5e6cc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/cy/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/cy/firefox-62.0.tar.bz2";
       locale = "cy";
       arch = "linux-x86_64";
-      sha512 = "349f73f43be8dad527549ff158b267c62be7c0d828c2adcfc635e419ac9840076549a7a51396b306bc042d1d7697c8d6caea3bf0b4e3f42e7c0efbd5b8d92e1e";
+      sha512 = "0a9ad3a8ba02b863194fe4ba347be568fdb92bd72352251220f673349b77ebdb2b2c6e828e98c1c757fe3d4484783528e5f0129ae994a2f0226a17040a2f8c7a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/da/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/da/firefox-62.0.tar.bz2";
       locale = "da";
       arch = "linux-x86_64";
-      sha512 = "187bec61e1218fa6c2fe79b3e80066a617ee3c26f83aa16b61a21e3fc76a64c2c821120f9206240642dd10175b6976c352b13a5b2e5514126a3840524fdd1de6";
+      sha512 = "21ce01d959f36084dacdcd52cd26440a67e724c79361ed1897371fe4b33a853c72fc4feec6fee446ef47c1ce29c4a88392266bfca08189f1d99127ca637b8be1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/de/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/de/firefox-62.0.tar.bz2";
       locale = "de";
       arch = "linux-x86_64";
-      sha512 = "8aaa8aeecf1a2dff922b785ed3a4cbf248454cf010ea9c188a4ac70f0550813944a8e9265c2edb13bdbdfbe20ec5a0dda3168d2dcd529d082bafcfaef6271913";
+      sha512 = "cae69bd2193db9888ed3a415ed7147dc3002c05029a6cf3e7a010259919dfb0f209055b20e259459f008b99317a215cf6962ab173fac0f1e57c86341571d0eae";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/dsb/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/dsb/firefox-62.0.tar.bz2";
       locale = "dsb";
       arch = "linux-x86_64";
-      sha512 = "c821eae950e48de43580c9dd4af7fc609927e3fd27ea876fca909bb3319574663120688e442ba83acf1d273e1fd22a87d0cd934e68151edd9a8561015e58a47c";
+      sha512 = "4583f05b675973a2818b06baf771474b7bff9ec741c2e606cce13f6e4b153f92fadfb0c15d91c4a25d492a38fc3c48180cb6c7ea5e433aa774a9fffe26f4e593";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/el/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/el/firefox-62.0.tar.bz2";
       locale = "el";
       arch = "linux-x86_64";
-      sha512 = "afa286bd1ac48a6007b6e5072bce0a26482a0eefdb00aee824de8c4dd06688d16731252933cb71b9f3bf6d30f951c6df68c2ede85733edc81facbb628118c72c";
+      sha512 = "4419885f9b6510edbf2797a047a08c97008731ce4fad19cda1fde4ab70b8912c9aa96df533f9b138d843303e549baa30ff9338bd9531b3044bdcc521cff14678";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/en-GB/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/en-CA/firefox-62.0.tar.bz2";
+      locale = "en-CA";
+      arch = "linux-x86_64";
+      sha512 = "86cf4dda9c21faea5d5031f423c7badb1876b225ad618fa8c1dd49803d65aec1032bedfded3278dc19d84c1f88688cd4ba31a27ad6f706ad55e9b407e3151f9a";
+    }
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/en-GB/firefox-62.0.tar.bz2";
       locale = "en-GB";
       arch = "linux-x86_64";
-      sha512 = "c2ca0c9a72503ac5817ed9ff3736b812005037c51534ef9a159b7914b974a356f3f1bc89d0669d05bde8dde124f2fcc3ff3a91cb412ec0329c2e6def875219fc";
+      sha512 = "278d00ec48c2d88d3aa5bedbc9443e82f367a2c9f8261f624eef42fcbfb83d74a3f35d6ad450ef3974ca8a19f7e654c93c40c1941264a2372fafdbb803c08f40";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/en-US/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/en-US/firefox-62.0.tar.bz2";
       locale = "en-US";
       arch = "linux-x86_64";
-      sha512 = "9f32b33727e5877bfdeb186420a02f185896a2a5803565a811203d86e84d51ede06f27d63a88a482028c36b65ed92ac4c17196aa2069370d6cae09b74bf482a5";
+      sha512 = "f4dfc51d6c8f9ccac869691ea4efb0f5fd8257d661698dba4eb7cc9fb7d28314e00a09ec595d424186cc928c8a6f9f93af0efcb3651eaa4fa40f81cfda73770d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/en-ZA/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/en-ZA/firefox-62.0.tar.bz2";
       locale = "en-ZA";
       arch = "linux-x86_64";
-      sha512 = "e41b7ea34f193bbcd892030b5feb2f117bb5f3f9dfbe69560ea64b7936bcdc47a55e878c645786999a2e52c4333c033320eb1ed9aace3481a9f37d87c9ae9ccb";
+      sha512 = "f6036fe984da3057e76d324c76a2cfb17903d73f3e6bc7884338bb0ef0f9f68ef69e94ee93331f81e17a8eacc40827263c74e5aeb9a70420c7cf0670a205c61c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/eo/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/eo/firefox-62.0.tar.bz2";
       locale = "eo";
       arch = "linux-x86_64";
-      sha512 = "e0850feb028cf0644340d2842b054e49608cdc1afbb9487ee744f6fe1ce0662874f0f96de2da52de2e0abbe39d7ea430efc70392d555e7cbff7a46f9029ba9fd";
+      sha512 = "011a742e57cdc2134115ea294782716bdc49ac4d2d7b06bfed048f75d18a5780cb93a16cd0ec6b8017e6b8299a5b260015adfcb3f093883703ed9403768555f0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/es-AR/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/es-AR/firefox-62.0.tar.bz2";
       locale = "es-AR";
       arch = "linux-x86_64";
-      sha512 = "72bde05493e4c140f6022e24cccf0ca580ed3c423840d2631cb28ce8a20be92837f78cfaa3b09a324bbc0fcb064ced351fc66a0edf2c56d972f629aed6662dcb";
+      sha512 = "f86be240d21d47eda8bb04ff6b502ccee3c94afd6763239c5a79e094532facb8e8beefdf024c089d35ecffbd687febde5a4f10f362fd3c4d71bdabdc3ef1ce04";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/es-CL/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/es-CL/firefox-62.0.tar.bz2";
       locale = "es-CL";
       arch = "linux-x86_64";
-      sha512 = "4bb298e184263edff9100e1e7f58cbbd405dbc73a265a5dc1d78e8cd25e538d34ef0994b6b5e79082fc12f1c0b2035c944e17eccaa7e1bd92eee8d27d8f50400";
+      sha512 = "e6be4bff771e5c64d35fdce320fcd80283c964e16fa938824adfa6dff9c69c721ee9184a1f37de86ac42f730ebc7b4c8355d151306e761bc96308868d6d349a9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/es-ES/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/es-ES/firefox-62.0.tar.bz2";
       locale = "es-ES";
       arch = "linux-x86_64";
-      sha512 = "13d7f54f7899eda53add9dc4a1bc27fd30e0caaa9c5a95d716c1ef8382c2317733cc7a71aba9aa4f2a024717eeb09be7fdd55dbf6183d1679e61e3b57964e61e";
+      sha512 = "32473438f9d39f53249faef39e467546db58b3dce905cc1f4c0250b5fcf5ff2eb671baef0ab179b27ea47bd85bc5684f9bd4846c785f2454076035711642a7d7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/es-MX/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/es-MX/firefox-62.0.tar.bz2";
       locale = "es-MX";
       arch = "linux-x86_64";
-      sha512 = "66c24cd9a80da6137a94bf9cf2bad4ad3ef0141bc10c8d92435f9d89e11712afc08018d7e1b4f17fe03e4ac62b2f6ed1cec638dc7d0726bf27453e1741a1ba06";
+      sha512 = "e81563bd3cc51241b129f084d4d9f5e8b7f34c1f5517f041bbf6992b50e0ad4fdf33fb36f0d1cc22d2bf9eb0bcbd0515a1b21b5cbb8d084cadd0f5d9d80c7b3d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/et/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/et/firefox-62.0.tar.bz2";
       locale = "et";
       arch = "linux-x86_64";
-      sha512 = "a7a686b1e16b616a3aff8901148a2818cbbe2459851660a23610ddfb4b8109aac159fe80986744bdc4124a10ab160d2703b2e8f65def0c86977bfa3fcb3ab020";
+      sha512 = "5827c7dac8e12610e731e92128ed66f8f107c19de99937a730e7439b26dc404cf518145467cb702fb395d9cb3a0f4ad45c92484ffb053d88dc7ac858781f4ed0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/eu/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/eu/firefox-62.0.tar.bz2";
       locale = "eu";
       arch = "linux-x86_64";
-      sha512 = "0760621f5d053fb802a46151f6283fb7a0b7de5c22ba0a55ae0f3056b0d43cf16c6da79af8a2217a665825a840b9c83134128f455dfe6e83f473290e425ad396";
+      sha512 = "c59ad7413f47ac19e9cd3a267150066099f561a455913714a18afd1b0e284202364f009cbe0361f5941b96d57b43c3d7d778235c9b9123133f864e75479556da";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/fa/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/fa/firefox-62.0.tar.bz2";
       locale = "fa";
       arch = "linux-x86_64";
-      sha512 = "29e8466e754900b63704206b5b650ea60aea841aebfa58187013a495a95dd32d939308253b0f856ef5e04d3ddf320c289e74cb03830a16374e9fe2c03214a1b4";
+      sha512 = "fc3a1caac599a418ab0ce2208fa921dd40912e80ff075bf7d90ef64379057e83332483c1a7a44dece95a38be523d0ea2f92a57b45c300f032b174dde4812e5f8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/ff/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/ff/firefox-62.0.tar.bz2";
       locale = "ff";
       arch = "linux-x86_64";
-      sha512 = "240232a8dd4556c5c4df872b60b3352176490b7afd4388c26322008c7dca489f48f679c21d148016965ea81d850eaffe9fb7887b97cbbbac955f9cc29f28b4f6";
+      sha512 = "629c2b79571980bfdbf9bece6760d1553cc002f91f26fe46d58d4fa5040f437b6a8b9b6ff41cdcb3d615c479c66a17d87d878fca65025070a31073165098ed26";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/fi/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/fi/firefox-62.0.tar.bz2";
       locale = "fi";
       arch = "linux-x86_64";
-      sha512 = "63c7d4ede5e02c9d4b2e59234b57d4f539c0cd3666a053b127cc18d080900bcf488f8d3d7f2dfb98399a1cec5ec6780d86d93ad9dd2ce7612e84604481562a64";
+      sha512 = "4393019f9dec44bc62985d84f95585de0a26736a923f873b92d87f7d46d11f8f3e8af53812696ed4d312fad51c3bdd34026cd7ef933fd047f771441245b30213";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/fr/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/fr/firefox-62.0.tar.bz2";
       locale = "fr";
       arch = "linux-x86_64";
-      sha512 = "3a4263e78c62faaab850c743660e633269dd9e625f03f94459b34ede41989cbaf498755fb8c2f507e4f4b88b633c29a3eae837ffce0572ee03afdf67c53d4ed1";
+      sha512 = "9d9afd43288fe6719b8d4f76c4542a26dd4b36376abcc8a0d8111c701bf397345451ccec5bc5ed1f2c2927549c62a429d4d97470d850d0c83ef8362c40531f0b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/fy-NL/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/fy-NL/firefox-62.0.tar.bz2";
       locale = "fy-NL";
       arch = "linux-x86_64";
-      sha512 = "e8c7760f3f64b4c525bd0521cb66ed11bdd9142deee986fd6a5f6a322685633aa3539f819e3ec886884906998d37dd6401b77e4790a246cd098c47cd49f929d3";
+      sha512 = "12050decaa38a27ead08d67130d43ba36666728d3920cf40ad2dc0eb18de6a204e81dfff72cc0a33022b0d96097ec83fb36c88b463707f04669e5c907b8cac15";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/ga-IE/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/ga-IE/firefox-62.0.tar.bz2";
       locale = "ga-IE";
       arch = "linux-x86_64";
-      sha512 = "8f59620f30767cd58babc163b803b2c8b174562e5a6a686c5a586d24db0da4c4ecf180c13673a6a434faee02c2b7ef746c1f10e45055d42327044a945925e514";
+      sha512 = "fb028d4b55cb5758eddb89a506b68d322c758d2e8ce01151a30678dd01c4ce625c9a051650a2e115705dbe02967f0db5894a4476d6460ff08313d4767dad9b7a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/gd/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/gd/firefox-62.0.tar.bz2";
       locale = "gd";
       arch = "linux-x86_64";
-      sha512 = "ba496ad0daec76e2c6e4f3c2dbb8219d1f3234893acb09602e51b7bfab4ef84d9f49104a021b206ff528bb323e2255c97e92a6949b3949098e5863f48e9fefa7";
+      sha512 = "a1173104e4be1fdb6cf3a0c8c997075d40e5eb950dc2482107b5795adb2590575c1c79f50daca87227de6426f4ad9d756233f95a0ddd3aa6e949ab773d319db2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/gl/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/gl/firefox-62.0.tar.bz2";
       locale = "gl";
       arch = "linux-x86_64";
-      sha512 = "3ef33eda5d7a88fb6f67f91983ab2db11404f58686ecbe30dcbc27dd1358660b4c88ab8e678184cdd3fd4102f93120e0d0a4d75435812b047ec2bcb74cb52a83";
+      sha512 = "b6b46ec64e4386c9196d1f5362674667e46b5006b756cdc164e6c1c42ebff417c57cacceee949d2e9a5f55c76b82471ed9cfa01cbddd8ab74d6669c6870864d9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/gn/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/gn/firefox-62.0.tar.bz2";
       locale = "gn";
       arch = "linux-x86_64";
-      sha512 = "5e86c34b627b66872a7f07e30ee6285e61d041e69b0e2355eec142b23ceac8ea5ef7e257adfd1ae877b442f7171381cb013fddd7593d1b6e42f3a22e2267a5df";
+      sha512 = "3c35f52d34d57dfbfe43d8df6be4f04bc10c79b3b9e08949525a503952ebecb90e59d99565c44adf25addff6f713088bce3034513eea3108a37c02b0921e2f01";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/gu-IN/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/gu-IN/firefox-62.0.tar.bz2";
       locale = "gu-IN";
       arch = "linux-x86_64";
-      sha512 = "72e43c4dbc3db08473d96d0686fa2df56f82ebdbee064a152ebb2a49cb4fa7a9a80135fa9b7106ffdb64d3342b38400de5351a3b225360d5a730f0f4991418f3";
+      sha512 = "0bdaed369d5318c59b929193686960ea2ed2173027c2cdb0384936d724585a9f8db058cd00d5a9d4b5ff8182a59c65066a9daf70e1e0b0d6013b3753e6f36adf";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/he/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/he/firefox-62.0.tar.bz2";
       locale = "he";
       arch = "linux-x86_64";
-      sha512 = "d3b5a43aff6e76264eec6d211a5a9dd0b7fb89e41bbb265f31091ce3261f4a160e1ddaf59432bc3771bc5afacf1a3e12e42e0d08107727b0e8b5941ff29174c6";
+      sha512 = "07074488f2b83055b66300b357e8fd4cd94dea52c359227cf33908a0abdfcf1bb969dbc8d00454c42e5b83f35651aadfd8492507deb5a229d3e70b329753a86d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/hi-IN/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/hi-IN/firefox-62.0.tar.bz2";
       locale = "hi-IN";
       arch = "linux-x86_64";
-      sha512 = "7b568bad470b3fa069b44bc0d69fbae51408ab44751a99fc36a7c220548d0200ec57d8362dbe1dca7370e587d5aadb45b5c9dc91e6d267f2421fe5a2260d29fa";
+      sha512 = "8e6b126bbd13b6ca9ecdf088a049e28328942c5153937198b851ddfdf1705211a03c6dbe71e95b3afd8f7d3889705d2c6a1bb0b135e34ba389830cff519dfbf3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/hr/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/hr/firefox-62.0.tar.bz2";
       locale = "hr";
       arch = "linux-x86_64";
-      sha512 = "c69df1a2226a967dbc0cbd3813ced6ae36b696389187489ec62b78b3180800175d3c33b07bc84c45112947348e160cbcd6db2e68d5e4b6f07e0a2f6adfc8fd2a";
+      sha512 = "d1c36d8cff63d070a827d24d3e95a823a1e302cd42a48ec50edd34ca3f76678f65897f060ff5365a677525e938baca6df512f27b0fa039eac6b78fcfd347b440";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/hsb/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/hsb/firefox-62.0.tar.bz2";
       locale = "hsb";
       arch = "linux-x86_64";
-      sha512 = "080ad8f1bf263f96294e3e6178dd64d30a7fda50d229081b14e54bfaa183c6efeb0ba3aa66cd23c8541a622382e415a12e3e063cb3aace5619d3c8c212ea3078";
+      sha512 = "384393359093655a50c6052cf25ba413fcc02000685fc6e97f15e3668cd93421dfd3fe95d266bd4ae5e687105ce7a4c364aef92faec9a5c01f6f5336c134fa21";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/hu/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/hu/firefox-62.0.tar.bz2";
       locale = "hu";
       arch = "linux-x86_64";
-      sha512 = "44f07968bb89c3c0e2d365f9cfd45d89b138a269cdff48542124a34f9d9ba9df5103e4613934c504f90b494fe20bbc6f71a12c210799e689e8f69405ea22e4a1";
+      sha512 = "05c76472230f7ca011fd5f936568b50cfb646ce7efdde65d1640f0d4ccb31196873a8e5aa32ca6bc796e80400d52ea4c191e334270c04ed92354b6744ff4cb50";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/hy-AM/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/hy-AM/firefox-62.0.tar.bz2";
       locale = "hy-AM";
       arch = "linux-x86_64";
-      sha512 = "8d3ee8a030ad60ae2de062b21437e8d512ff3feaf614b91da71ff6af9d3994be79aab1753e3d46a94237d7e0a49eb670781c2567f96662b6057ee7172a0363c7";
+      sha512 = "cd3f20095f0c31e20fb383089141f1aa22ba8f8e7734370fd377ba900cb71ba1f2e76e196bf30cf3e3a8139bd667575d139b03969ca3ceb3f2e1c231e70431bb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/ia/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/ia/firefox-62.0.tar.bz2";
       locale = "ia";
       arch = "linux-x86_64";
-      sha512 = "448e543b5f7075e2e1b984c808dded1ee67dcefb600058635c87d0c226eb02aa8dd7f59c624ebec60c9c0b334f98607eba88e111f2b03a1aa579b74b1398511e";
+      sha512 = "834d2f397c3eefa2da5b184dcb4537ff28d26ade5ba985f916c4921473774d79a63cc97f3c72e49e19f37b4285a6efbc0bfd8ca78159b4a9e643027fbc4fc830";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/id/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/id/firefox-62.0.tar.bz2";
       locale = "id";
       arch = "linux-x86_64";
-      sha512 = "a1f8eceb53485ac41a685f98b1e9dcf57ac094c0911ed8f9a862d4b3a5fa8072c16fa6a4cef3e06d15b07b3866397fcf9ead7b4b43143e0f5dccf93acb2f7676";
+      sha512 = "25b18c83fa9899f54a6fea9c617582c06b6ace769deb95e2ee6d1f3f4d32ce1654041605072096fb434c483b2f47913a35b4cdf392989db108f48ac9376d62ae";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/is/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/is/firefox-62.0.tar.bz2";
       locale = "is";
       arch = "linux-x86_64";
-      sha512 = "43d6ff785394bdfb6c376588531a9fe043b18fe44ae83f481b11d71a2422b5d5022356cf960d92f55fb3d0ee103e6534bc0299a3d84e9ca7e6b3a5544e11ad45";
+      sha512 = "596a5ae84a71ee3a5f1ba4896b794cd103d2bce08a505faa38ea6df9cdc5380d7b97b2c4b3c80cb525007bc2f08dfa2bccc2634a135e653c79b913c1624f56ea";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/it/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/it/firefox-62.0.tar.bz2";
       locale = "it";
       arch = "linux-x86_64";
-      sha512 = "460385b5854565f4ca33431c573ac355baddd7a35a2fbf631b3748b02102a749e56fb1128ec3e9f6b721b1123578060641bc3b783ece271a1708656626b10a13";
+      sha512 = "46bb6c5d0e575acdd510b72375677fefc3feba3c7ca2d1ad4a84f82ebfb3e7d14a9b419964850f6b640adad0970b105b3ae45bdee4a8a47200c5ac7f290c204e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/ja/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/ja/firefox-62.0.tar.bz2";
       locale = "ja";
       arch = "linux-x86_64";
-      sha512 = "682430030d87391692170bc81d759d806f4667b66b4e3df84e836e65678f274720038d0556f5338d8eb18e281b64249e758b5265b3ce30e6f272ca9d84ac1496";
+      sha512 = "031a4aebd4d676f724c95812dab0fa4ca289fe4144417ffb28c6c4579580666bfa690737f544a3b09f5e07c7661200c334c4a336ea45700b6e8fbf5bbe5cd81c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/ka/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/ka/firefox-62.0.tar.bz2";
       locale = "ka";
       arch = "linux-x86_64";
-      sha512 = "e8c9e6a61867efdb9d021aaa8f059e3ac9896444448b08b7d90f70fb2847d46d1950a24e6fa2db0b947cf3ec628bba1c230ee7d8d53a959928122018a9e5c7da";
+      sha512 = "14979e42ecff3c9005fd229a5516d36a72958ef810766a64963c2a6028c31e0717ca9079abe6103ece951c5ade140adbd35227dcb73c6101a145f1bc9e241721";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/kab/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/kab/firefox-62.0.tar.bz2";
       locale = "kab";
       arch = "linux-x86_64";
-      sha512 = "17636e7157d6cf3ab73b7e36eeb7ad5bcc35e756fe6d369b98305c58b88208b5b11f673f52425363425d18c2a7fe79274a6e5babeb926adc9cea22afe3e55e5a";
+      sha512 = "16189c288a8807afc94b1d781a3afad833a52c16ad8a805787b7ba5603ed6988bffe34d9c9a98ea3db0eda25341ff24430ab68b59a1cf9724bd16246a52c1847";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/kk/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/kk/firefox-62.0.tar.bz2";
       locale = "kk";
       arch = "linux-x86_64";
-      sha512 = "4eeb48f250c617ea8eefd99fb44159170311becc229f77ca014e801594260ea23ce46ae11e0526ad620dd830b857b73de8a3a90c18764ab2a8f71cebfecfa143";
+      sha512 = "c4a35a83e41df1149c1ab38d8f243753865a50d6d896b89499bee42db45c8237b9b8d6599fb3c932717977c5e460ce7adc6c93d561fa69a4704e1931fc11d21f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/km/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/km/firefox-62.0.tar.bz2";
       locale = "km";
       arch = "linux-x86_64";
-      sha512 = "57a0bb58ced30d8743c30d288250328568758674e55127d51e99485f5c85e8b0b300aeeec4d34526f53d1d538189b75925eb907e3b5fb2d455e0546e179dfe04";
+      sha512 = "dadea116c3bce18f18f2bfb3652ee1d26b3cd11442b8e941565772d202d2a8a2e7d6277a1737f39c63947b2972ed8a84680b4c7dc351563c5ff11abeebd6205f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/kn/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/kn/firefox-62.0.tar.bz2";
       locale = "kn";
       arch = "linux-x86_64";
-      sha512 = "c40e9f5906cf3968bc92932f45d4d0b712322e6efd9a5d1f3b48a7b94a162c6390142081a8a4fd2f0fb8737869723432eeb5a4b44c3161aa38a4d506bff8a3d8";
+      sha512 = "dd6109e92bdc9a7b3c8e08d9e104691a1ee449f9f915b5a4090ca471089ea000da34dda44883f10f72f4a5ca21078263663444a413ab1f1e7599f85f01f3700a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/ko/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/ko/firefox-62.0.tar.bz2";
       locale = "ko";
       arch = "linux-x86_64";
-      sha512 = "3f6104ed9b2fb9f1b0e3f49b06aaaf513ecf7e31b417af90c11403bca7a3ad51a87b448fa0a2ae6a01462b57dfd21f90376421ca8cd9ea62b0e3a1c7462aa9db";
+      sha512 = "1dc4383f48dc1aedb80c373398a5539649397f1660664181c97ecfaa17eac2c503a976ae15b1e7607a83ed90e3b4f6c3b15d1bd60e13e22b8f071d91d373fab6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/lij/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/lij/firefox-62.0.tar.bz2";
       locale = "lij";
       arch = "linux-x86_64";
-      sha512 = "46c8eb64b30455ed97618d67215510b22acb6cf5946ba492c5938d879e656d983accfcd7ff2e93cebe7ea5a52e9fca348ebb9ba02e70ffb4196a9d9edf5abc51";
+      sha512 = "a26d5e50807efe3d4e3e01d10b0131ecbde0ef141f13310db4b01adcbac63d003db073ee24620745ab551ecba92965a5055e553b31fcfbd2df9af0a8913c7823";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/lt/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/lt/firefox-62.0.tar.bz2";
       locale = "lt";
       arch = "linux-x86_64";
-      sha512 = "54470adc31bdab9745f72598d402fc961d6b407b6f8fabc8e0c6b785a5a5f3e9922e06a922688c6bd1ba43be81ed37bbab216fe2182bdd0b32befabc55fa1a48";
+      sha512 = "dd99282b5eea3a1e4518644acdd9bebdcb1532cde148f8c60fc83177fd39757e98e7fe3cc54c681305c699a085788a14cd44e93e5f10e11a6812afae10b2db8c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/lv/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/lv/firefox-62.0.tar.bz2";
       locale = "lv";
       arch = "linux-x86_64";
-      sha512 = "376ded474c9c8a898bab54b66a4a9e9cb598dee114d9a156b9e7fb925250511e610d2e17a5decf4c2db44f227065cb2840265d6955364a1405060ff022b04d07";
+      sha512 = "4be6a61d0ccf424ced36aad978f6419d00afb3db93751c1cd9f6d1ec0c2db8530e77099efbdd8883b333fc2dcb315143088423c359debdc7da5808853aa99268";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/mai/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/mai/firefox-62.0.tar.bz2";
       locale = "mai";
       arch = "linux-x86_64";
-      sha512 = "21643b1b723a42d81bb4476b16282d2550100278a221b5538d5666c8fd7f3e96f242393c4b175cf6431e82458e199fa80a51ef0f5bd6a9b691d0150bf1d4c8c6";
+      sha512 = "71aa1872d28a5f741df79e4f1490b110fd9bc13e9f6c4f2aea8d5028b434d02f0bff859613dcac258e0af7e8840b5a5b37fe80eb6d94d4712e83b96d971a46bf";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/mk/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/mk/firefox-62.0.tar.bz2";
       locale = "mk";
       arch = "linux-x86_64";
-      sha512 = "452571329b805586a1218dd5fcd5b48f7f20fc914ba006441ec3642ef8653537b764a98b7916c0e440888d60d41b290826114c3a37083ec098fcd6c86a6adc15";
+      sha512 = "5b9e7e8f865675c0488fb9f7e965dc37b35ff53f0ab84c3cc0d37f9baab0084bf5981e4a1dc65557a02f83de7a92302c5cc72c7c25c20baa484fc6abc552c279";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/ml/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/ml/firefox-62.0.tar.bz2";
       locale = "ml";
       arch = "linux-x86_64";
-      sha512 = "8d2c850525f9ffab96c4d02908440a9a5f4b6fffc49e5505d5eb33d35d3690fd7a81ef73aac810d0c52e0deca5b69dff9eb3f0eaf508b7c866442943f7cf9547";
+      sha512 = "d3ea17e668e021f9f002d775df1117c51e7b5bd92780b014bbdd869f93e50400e290a35e4f056c4ce8a235fc2851b630d24ddb3b8e6ccce7c21b65a94fe9816b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/mr/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/mr/firefox-62.0.tar.bz2";
       locale = "mr";
       arch = "linux-x86_64";
-      sha512 = "1eedeaa3a2b6362c460e468b28bf7efc9bb5c960c766ec9f0e423834aaa67248c5bea0fe9b4fc0a8e62b0a40d8dfd1e7ff31adfebf6d1d6405daa02879977015";
+      sha512 = "9022898d857eae94054ed357cc5d06bae72ea38fe2f1efb6d09baa6b18d55cb8a75a5c0f2b312458366e2146b36d12407373e8862278ef348e588a893c068a17";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/ms/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/ms/firefox-62.0.tar.bz2";
       locale = "ms";
       arch = "linux-x86_64";
-      sha512 = "fe2d5ae09b8921d366616eaee49c240ff529050e1b3f97c915d91c23dd67b22d78a75e14e2f192963f0fcb05eb812da2c5f68313599111d85c1abc0ac9dbb676";
+      sha512 = "c81f40e528ec7f141de902432f1f367023a39889794a46de8b271e9c4bebcfbb4b6124dc8e0b86c560214c493d650389829a04c3f4a4d121b3243ae66092a100";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/my/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/my/firefox-62.0.tar.bz2";
       locale = "my";
       arch = "linux-x86_64";
-      sha512 = "631a6059d38a64c24e1f7d2b9a27aa2e405fe413471ac1e1d7ab337f614df9a1470a091de35904c39664d679c06eaddcd239c4a392c1e2ee548ce0be7fd5e416";
+      sha512 = "ba942bcab35045de32a2d7914bf7f953dd1f683ff0d142246035df830d4528b47f195b8a6b96c95b62e2d03e89215c938072ae23b19af41bbbbc40bed3d0212e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/nb-NO/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/nb-NO/firefox-62.0.tar.bz2";
       locale = "nb-NO";
       arch = "linux-x86_64";
-      sha512 = "90d0c3c696ada86b47e9a6ce8aa9a8d0939eedf5746ccef79ae170a935e6b97906b187d7839af158a6008a9022cc50467febaf0617f3a3b1e8e21fd648805d13";
+      sha512 = "dc86c87a0e51105bd89ee579711aea9e61904f17afae27236ad12bf754831dd592f9ef938ab35d037b2da884aa301044eb71462a6c4ad26af97e9911e6356bd7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/ne-NP/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/ne-NP/firefox-62.0.tar.bz2";
       locale = "ne-NP";
       arch = "linux-x86_64";
-      sha512 = "b5e13e214cbea0d541aa8c29d53afa4ae952970a64bb5695be62ce19c829df901dba4c66cfd03d5d3a31f69041c9c700553b2689dcc4ac4ef254d155700bf5fc";
+      sha512 = "9bb1e18c015696ee9b17853a942537bf462101e687107771d34c4f62d3cb3f7d9debbbba9efdcf7acafd8a9f8c4f8c197b2df15c80b9c5a562ca1ee765867b3a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/nl/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/nl/firefox-62.0.tar.bz2";
       locale = "nl";
       arch = "linux-x86_64";
-      sha512 = "44470b1cc4e95a05b4198ac3458125651de9bf9548dcfbcab5850c519fea01a3e8c6161e4a66271af68d7f1a1b37456d2ae1e51ca890307e6185a531c8cbfe74";
+      sha512 = "2fa2082a1a9cd71f0ae7019507055e6109292bdacc9ad4c860aa5ca9ea6896c37609a083981df309d2c53811674261147053ee6247908ec1ce7a2e030d320443";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/nn-NO/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/nn-NO/firefox-62.0.tar.bz2";
       locale = "nn-NO";
       arch = "linux-x86_64";
-      sha512 = "5e49d30ed8fb64e367ea3f5b472baf0caff6c4b880d811cba5db969d21f8e5dd0d8ae4c01a151fd495eab1eef817b35b6a6e14441a860059b8f20453dbe86116";
+      sha512 = "4665302f9850b93c4cf178c3e2397e299716ccf92e4fbec9762892b17960f275c1167396de4073b899d4bdbd73bf06f87f10c36be7eda22934faaaa78925e8dc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/oc/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/oc/firefox-62.0.tar.bz2";
       locale = "oc";
       arch = "linux-x86_64";
-      sha512 = "bd75cdbb1bcbe24347f35b748ec5d62da6bb20fb0f58f17a348f8bbe19e92ec3d08da3148d41f56e0b42a8e49e1c1b70b40770c737e626239b5b538bac6d42e0";
+      sha512 = "d0b9a462b7157a1452a54e2fd3d9d0c38ab478eb6c6391350c8c7c9c581e425262f42d33fdd0ac9e50eb8cf77f0d8b71372cf15b079254c2294f5bb613337bd2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/or/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/or/firefox-62.0.tar.bz2";
       locale = "or";
       arch = "linux-x86_64";
-      sha512 = "e88f706c60e93b205484411bde177fd9b1ea921372669b5665ecebd795d7abcef5d2caee16a8605bf7f3f23e8d0ebf8036c156097318e7f8d3a22517e1fdf017";
+      sha512 = "555135a96975771bc9bef17601f1e2a2e308e07ba3681164512f2939da1892ac592a8f69264a365dfad36a473306d6d33712fc6868bc809ad5d5a3ef16eaf5e2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/pa-IN/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/pa-IN/firefox-62.0.tar.bz2";
       locale = "pa-IN";
       arch = "linux-x86_64";
-      sha512 = "81af24b8ab70e373339ed4fd7116e1c4f2bc7a2ee14b46e2af29860add01ab492ec692ee2653de81856d04a465860e4cfda0af4928a237bc0c8469c4899136d5";
+      sha512 = "a1d01ebf734b6357ecdddb3601b9062216c040966d633e282d61a28ecb830b5edb5152dff4c46a3cc273034fdc7110cc56858cbf31c6e90ada6efeb4130c510a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/pl/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/pl/firefox-62.0.tar.bz2";
       locale = "pl";
       arch = "linux-x86_64";
-      sha512 = "f7b6b21ab27b58ab1bdaaac012dc035e7cb1226f46da43fa3de37c7e4fac73f5303dac02332510eae7a8bcec0172769b620acfbaab8b383a64404bb294d6df66";
+      sha512 = "701b496e7d20e8eff7484db6bf5e15f1bac769fc97f69de028a0dcbfe0f681d0a9031242b30367833f8cf1f8fbb1acd6d469a225152bf5b220a38b369c740381";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/pt-BR/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/pt-BR/firefox-62.0.tar.bz2";
       locale = "pt-BR";
       arch = "linux-x86_64";
-      sha512 = "c17c0e7990b4192f10f7269a5c5c6c74cd6e6353b8649a0417c537197c5f853085948e9d0c50f08afbb16e242f3d8e9eaa1e9657bfb6c40075e5f4e640771d2f";
+      sha512 = "c4b3be3a9483ed76f7b8334998d75b293db031329852ec59ce8ae13e1184a541f2f35b5d1bce413ecf525d482277d27d7470444e477f297e361751d07cf64920";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/pt-PT/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/pt-PT/firefox-62.0.tar.bz2";
       locale = "pt-PT";
       arch = "linux-x86_64";
-      sha512 = "2a5db6053556c75d399bbad5ffbfe51505f6b25bcd73008d85f7dba66d89fdf56ee0ba2cfce6e2617b463cb8db087a1700507051322fdd2ea8f732be5bfadb9c";
+      sha512 = "389ffbbd4dfeb1c7149a02cdbcb70479be32ac8e91683570093f99e38b4c541f145ec27fc3cbe54f70ec3ebc21e5c0ded3b18124307976befd8f2ae1839c5dc2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/rm/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/rm/firefox-62.0.tar.bz2";
       locale = "rm";
       arch = "linux-x86_64";
-      sha512 = "94e95e037ea9f924363aa5b80298f67ecc678bb2e22d552c2207af1cdfdcd9ef5b85fa4a6b42ed08167a4b482859658ef6a946adb7462c2e2519c4685428bb90";
+      sha512 = "cf9b89f1828bec694147528a0db8a8ec4530fb60e8a1957b77c8202e95459217c95bea2f104ec303922074c3528321f775fd955080b5e012b8941bb7f6575bdb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/ro/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/ro/firefox-62.0.tar.bz2";
       locale = "ro";
       arch = "linux-x86_64";
-      sha512 = "dc901a8b6ea913f976c915807bc4ab5fd4a756c98a78498ef52fa8577cb9e3a047e2a38240bf675d72644d975ac70d720f693db056e764218151431de572a37b";
+      sha512 = "44e3ac3e35af41616c1dfab41edb172b4dd92bc622aa53b8626375d782235ce3e9540e72e14b1d25dc19f4e44db5717fede7429b1fb245b644c20f2e13c0d7e3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/ru/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/ru/firefox-62.0.tar.bz2";
       locale = "ru";
       arch = "linux-x86_64";
-      sha512 = "dcaddf1072b19f714e9f50eb1d5e8e15bce98bf96bbbc13e7a4a82581e76339818766e389279fb33d212afa6cea947185de130a3eb72c0f6079e159ff2f18e9d";
+      sha512 = "7b38581a552ae9df2222ef9bd8f2c272cd98458d4a11c55a8f942870411d08c72da0c1dc5c4354b8e2e17d0a97794e4f2d59446a394e3c95376f5e7ee296d57b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/si/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/si/firefox-62.0.tar.bz2";
       locale = "si";
       arch = "linux-x86_64";
-      sha512 = "5544833432d6b41efdff96fcc8d2d322f5c158764320ae6345e9183b2d48817afd796685bb87998e5e6fd227b1753f503bedda5f6fdfa9dcad2083cc9b7df9fd";
+      sha512 = "dbb7cc9c9efd5c1305cb7c770db67ace1b10c2afa55d2dc9b8de896629e4e69e79bdc5d06cf3d7900635d03420c32e0dcb1b0b8ead25ab8fb3cd12a154eaf0c7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/sk/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/sk/firefox-62.0.tar.bz2";
       locale = "sk";
       arch = "linux-x86_64";
-      sha512 = "d4702ea94482a276ecafaeb7e991ab850a432158009c95489b2b87a82402c92a84c33ce43b27ebf58367e20d63bc444e656f32cb957ad0ad03b1d9f793157052";
+      sha512 = "04f9b7c1977aff8144ad53a2bb7bc5aaaa11054cb8bd00b1747ab7ec34e3664d1fb3adf65b49b5d5acbbde2e1ab45ee642033e3ab57e99d5973ec853a1a6194c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/sl/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/sl/firefox-62.0.tar.bz2";
       locale = "sl";
       arch = "linux-x86_64";
-      sha512 = "6103a4d340e45af988d17b93c4e8951a656ace095c9e13f5b0d6bcfd55d51e27f9f26614223d40dc19733aee34606a80a221838be86a1f91417a1c6f00a7771f";
+      sha512 = "3202a009f73fab2326611c65ee97a8249f5ccf047365874db92da588c5cb8693ad1a7b7852511bbab10a9146d0beb7cefdc79d3269c3b7404205d616a7394dfa";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/son/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/son/firefox-62.0.tar.bz2";
       locale = "son";
       arch = "linux-x86_64";
-      sha512 = "ea04aee1c01d4d545ab4a370e4be4bd23b9f1a698bc660877a754f42995334446bbc08412bc9f8ec92a2a69a6fb8bd0caee40f622813d9ac18b43773c3111029";
+      sha512 = "a4f718670b73af088e87910197a78dace22d9e04bf268e4653709eebfa499ffa4a97b4048e4ac80c6a847afa598b0e19bdff07c6a7d6e164dfbf3d09f1070593";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/sq/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/sq/firefox-62.0.tar.bz2";
       locale = "sq";
       arch = "linux-x86_64";
-      sha512 = "6789f071e366dfb3300cf5057d690c89daafe969a8b8b4e5a3ddee6683caa1426e62901d2288da61b8e8c59ac19d9764521b82f2d0d4fbe375d4e4eecd5751fb";
+      sha512 = "8b67dfcd41328b677bb33a640c1045b3643368b8c0004cb55027d36ac2f3fb9cc99c272d132c355567ab0505a50d34fab80f6fdb8598cef09ea9806e19d6107e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/sr/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/sr/firefox-62.0.tar.bz2";
       locale = "sr";
       arch = "linux-x86_64";
-      sha512 = "2d079c315d0c66d2e1530cf2d30a357d62f9bb6517abe7313911bcfb5c42ac95c47b3f12f654ea61d2fdb74d44ed0b090443f6ec66ec22cbd51c674084a8c4e1";
+      sha512 = "51834193c037ca0e23f2c73800a351debd8327908f7c6b378a89424ea86b01a272bed893df59b1102760303592604812794c7ac70effcd50c20fbd676f4b5640";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/sv-SE/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/sv-SE/firefox-62.0.tar.bz2";
       locale = "sv-SE";
       arch = "linux-x86_64";
-      sha512 = "c78e06de0834a84bf0cdd22a46e80901db3dec7d5d9e0dcb6ad850a040e8df6d3ba2c6e68f8a3da118dd9306c7af7f352d9b56e839cf74afd3730b2d8ddbd38b";
+      sha512 = "8763a55b6a3f7ffb75afe854aaa54bd7bd5a5ee8dbd741f4348fd29ce015603f81cd98bed3547c628dafe98dfa800a97b64e281606223fbb400c03a0af332018";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/ta/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/ta/firefox-62.0.tar.bz2";
       locale = "ta";
       arch = "linux-x86_64";
-      sha512 = "d996633ce2cfc9d5766840d5198900a341c8158f4bc00c32ef168ac57a1c1d89dc10e9ebfcb2a504273d1722ed319acb9d9aca8d30257a7a6a01361ae7acbc4a";
+      sha512 = "82d687d98f2e75b637e76416ed1b749d1af18c7ac140eab32f8fdf99238fec76f3f926caaf212fb42f054d51d8c807536da8cb0ac5354ad123a3030fdf46690d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/te/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/te/firefox-62.0.tar.bz2";
       locale = "te";
       arch = "linux-x86_64";
-      sha512 = "81b745184db9c550a135efd9b085e074a0dbbce24d81a16a39fb51166233d84da6c61b556e39b2ec68365ded627b31065d367c224721bf9e99338456aec07698";
+      sha512 = "2a690bbaf6f8ba90f98c2761d6ac6030fe17d384478a3bf7c07875bc6e3e6285f154e3e21db4b639602f205cc03360fb36bcfe26473ec48cb1749a65b781875d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/th/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/th/firefox-62.0.tar.bz2";
       locale = "th";
       arch = "linux-x86_64";
-      sha512 = "a6ba250aa390005ce6830f14a4f7518062b3a98444da87e36f515fe29d3408b7efe9947a9d865a220b9f60ce57dadc12099c5742012981ca9c4d3fcc0ff4c877";
+      sha512 = "ebc344d1439fc4fdb71d772b047466e5bc19a04a83de09e64e9c820d19bc057f3deeff5d0ec9bd9cb11ed2079f4bff459f3727b0ba92fb7426e2e186bd0cb4f6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/tr/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/tr/firefox-62.0.tar.bz2";
       locale = "tr";
       arch = "linux-x86_64";
-      sha512 = "55eef864538b70b8d6e7fc2e6af2c73853a48860dfdb1ac5e4471675ebd2d9f089793c1c6cee713654caaa253b059e9e01acb12aa0f6f4efedd09632d10315d6";
+      sha512 = "9096da5a647463a3643e3e5f21dc51ee9be87d857004285de7dab164255103bca4ceb9d8474fce587ae497397c753803b8157c40d05dd8d3310d59e97965ca0c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/uk/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/uk/firefox-62.0.tar.bz2";
       locale = "uk";
       arch = "linux-x86_64";
-      sha512 = "2bf67d7523c9b07acbef099dee48902d19a5b542ffe9eb65283524ce2cbcf853b1e3e862fa2a7640160cf5dec8ad884a237f4bddf215304a458a4d9575af8137";
+      sha512 = "f9f609eb7f3050e95bff33de4b88d8e17949c4c167d3bbd7a9901cb0d19926a37f72e40a6bdde1f6c7610a3ffc67d7fbcfaf298659e519aca16592714c70bb4d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/ur/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/ur/firefox-62.0.tar.bz2";
       locale = "ur";
       arch = "linux-x86_64";
-      sha512 = "4127578edad2690915aae81fac45cbc90694b68d593562f4c55a1545cd1b8cdcf3eda18fbfb2dc9fb3e0dd3119fad09db68d65e6fdc09d96aa65440750fcf380";
+      sha512 = "35a755f1c1d93d9d8e4bd813c83a332a1cee74989d993921f987e023da90a851863f83b56a41c58878f5aed07b4e08e0ca9d3f4d4ccc8610544516bf903855c0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/uz/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/uz/firefox-62.0.tar.bz2";
       locale = "uz";
       arch = "linux-x86_64";
-      sha512 = "7b0257e2bf2edf26afaf6bff2a06f9fc81bbf5397c8823a65ee63e54cd32bd2329ddd858a5e1374df64bd188d3d3392434d83e05d0fcb4a71d0a73bb6da224dc";
+      sha512 = "d957def873388aa5f5051ed3ab5cf51196f8b5fc83e2fc4b56476f63357ff26ef38e6f3d469cf4f117b094c3e31a0f561b1f5c0a90c85e827436ecfe0d61e98d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/vi/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/vi/firefox-62.0.tar.bz2";
       locale = "vi";
       arch = "linux-x86_64";
-      sha512 = "071e162e6919168fa4858aa98d68a2c6ff8ceeb10e5968a2dff55040613ecd7e7290f3acc929f8f2faf3fa4b97cdfbe4fd8b464f7df0c3d1d530af5a9ca8fd71";
+      sha512 = "e7f10deacc80f55928f3f6ea4dff80142e790cf9dc814c38f173cd03ea59de45438fda5cce1073b0c9e1b528870c7d979d16254b038bd351834def51944193f8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/xh/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/xh/firefox-62.0.tar.bz2";
       locale = "xh";
       arch = "linux-x86_64";
-      sha512 = "7e12d3e453216ce6ef2dd56980a130c52e273b23543a3df0b5fb11c69d1366533eb4875814e5084682c54f86d2cb8a304b95b08a66c8595c8dada69d4e97af71";
+      sha512 = "0e64c9a9c1ebada345f02d6dd40d2ab1ae157ee238b8716b011aeddfb18775c1594ae0f7706c4ddda97ca01c44304391570f526524f4f19d3eb5580a1839c19a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/zh-CN/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/zh-CN/firefox-62.0.tar.bz2";
       locale = "zh-CN";
       arch = "linux-x86_64";
-      sha512 = "1b98d214d15d0163aa91316fc6f507bda61169701a8accac3aa79dc8b6d7260d58813d87ce25d7083f6fc2d2a16519464267feaa3981e2e556298d3cc3f1abf0";
+      sha512 = "cf1381aeb00f19fa6f8665ffbda8a9c6c19939a29e16fb49a2cf9097dbb2674eaf4e32b658dfb126645540582c52ad86e87a9679c1dabe03757d57032e0d3d4a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/zh-TW/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-x86_64/zh-TW/firefox-62.0.tar.bz2";
       locale = "zh-TW";
       arch = "linux-x86_64";
-      sha512 = "f466df89dcc7a4b72ef7b41800961828012fe913b2eecdf68f442b492109467ee69a95738db2afc1ff39fac0b6376598e8ae5b050aeddd6fe3d40d0dc8d424b6";
+      sha512 = "9d28b0b773227d7efc611e300250d518b303b9e03396092420e8195872c6e8c78aed6f9985e491bb01f75c541299bb7f0cf78abdf25d3a8587b085e3f6489e0e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/ach/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/ach/firefox-62.0.tar.bz2";
       locale = "ach";
       arch = "linux-i686";
-      sha512 = "6aafc9db497700c6c91087e2477b707a162447199f26c87a4921b278d81828e868214501e8b89deb387c097d5768faa18eab83076ed84aa59799b24f62a3663a";
+      sha512 = "6de54e5cde101eff5c1edd43b7f3286f10cd631398f646608e0d6f22c9dc6d8dc2a3346c8d5fa9caf6ab1a82af8708ba3ee17fcf605d0404e2beb5d10b623ca9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/af/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/af/firefox-62.0.tar.bz2";
       locale = "af";
       arch = "linux-i686";
-      sha512 = "5cfe6413a70265360661dce8555941703feaf9045604313361553769b4738e3febf21a79c8be66e24272fef72b41dbf0c3a2e8e76e5b992789250d4b04fda45e";
+      sha512 = "29c5898b88cda4a1f365b8792789c854b954b4d6533ed7a556f7d0e3dde3f7705adf5a6c3bf14444268648ad3b3002eef49dac200d5eb89cbda5ee33e1cb4d4d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/an/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/an/firefox-62.0.tar.bz2";
       locale = "an";
       arch = "linux-i686";
-      sha512 = "cdd9509e49d563ed3d26f58fe957375357fcee36fca7526a20dbd09e9f4f2867c81508cb637cb8d35572bd730b13ed34fceb0af4aefcff631e632bb78a6713f3";
+      sha512 = "484a8277cca9e437d8372f750403c71c5e4923b28b776b5809f58debb8d0d3ceb5d523df05691f326d06efba5970e27bb06abffcefc500748b04e99ee41664bf";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/ar/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/ar/firefox-62.0.tar.bz2";
       locale = "ar";
       arch = "linux-i686";
-      sha512 = "906d0020510eb911d7b2709c55cca0e4a69638c685bda7e7b406fb41f385b97ed95ee97515693d72f722a619d13583d227264d0819ef973f01e67427a269225f";
+      sha512 = "7e3deb89acab69012c5f1aa99219ec0ff0cb380ae5f1dd71eea078bee4434855c612c808a574bcf46512d2eb77b3e8f9c26ea524ece97b02699b2434d8cacf45";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/as/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/as/firefox-62.0.tar.bz2";
       locale = "as";
       arch = "linux-i686";
-      sha512 = "2fce0d7c990c7e2039a601ec5b5feafa7da368e24f363489c1cdae831bf36a11e2bf967ec4f74512f6ca06095ee3a59982b0a5ea3bd003bba9c3f4c763b9771e";
+      sha512 = "0836d6d22d13096db35f5ee3da13cd4a8504a55de73ce24897a8e4903eca5b7d56f244321d2b6b623a357b1741d419957f67ee65e71d1c71606db24bbbd95631";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/ast/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/ast/firefox-62.0.tar.bz2";
       locale = "ast";
       arch = "linux-i686";
-      sha512 = "872e0b0962b7d6f86663c0cdf5fed6f4927f4a24bfe1848debb605e7c19bc574d98bdcfb74a2e5a4362c27ed1b9372881fc1418c742e4cfa75d15d838cad6f87";
+      sha512 = "247817ddfd24b97b991ac916311e01871a831197c92025d3a2ea97937fe993869c7a12e118b32baa3aaca49ae469dfaa8e892150731b6dfdca1c4e0929c2ba08";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/az/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/az/firefox-62.0.tar.bz2";
       locale = "az";
       arch = "linux-i686";
-      sha512 = "dd92dcd6f0c32d5487525cd88832fb567ef0e8fda5cf7f401399992243146bc2690881839d5752ebafb4e7e099c6594c71ef99d5509d94753256507216a2532a";
+      sha512 = "4f0977cc5ce9e01c311d256d239a3e89dcc1db5b78b4c08f08999d7c52731fd58fce08c9f77a80fde1176a0a5289b5c59f06eb790cedd3625d96928dbdec46da";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/be/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/be/firefox-62.0.tar.bz2";
       locale = "be";
       arch = "linux-i686";
-      sha512 = "1eda2b0945a4d8e70c0e61b187abce6873b9a8a578c089cb66b2728bfc71b90aab71b57599417ce775b4d5fa1c0fd908fa4b9b3183a3aa570da95d4fd726ba84";
+      sha512 = "294adf3029076f9dceb32a54330d63b10ba9219d9f688e3c7246e04fdff2ff10bdc24b577f48b18935c35b8d9acb2437a7d6cc3533fd6441b9027ca67e7cacc8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/bg/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/bg/firefox-62.0.tar.bz2";
       locale = "bg";
       arch = "linux-i686";
-      sha512 = "597dc8972c670f67f34ac23ffb57506b896efc9436d36270dbcdab484dcacab174aba53671f5462ffc7b54b9718c0280a66734e789edeb7710cd7c2b9fd602a8";
+      sha512 = "41b78104367cd25e67a38b71d3db6054995caa28fd0c4dfa0ebb494d2293c92c20a347fd763f88b65d31a514987c607102206390b2dc41335d00aabd9d5d589d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/bn-BD/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/bn-BD/firefox-62.0.tar.bz2";
       locale = "bn-BD";
       arch = "linux-i686";
-      sha512 = "79989196e4647c035d4af9f24dc9edfceebf9d90afb1efe894e0a54e940ffcf32e3746b9e07b486bd89a11ef8f35cfaf2e61992071352a561a535bb058c0396b";
+      sha512 = "79241d9dc44b5ad35ed76f7b33bc8be8bf7f5da09855df9e34354994554aff2ddd2dfe8a2a3410916887568fc92a70927b8cae4747f20d0dacb067206eec3d7a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/bn-IN/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/bn-IN/firefox-62.0.tar.bz2";
       locale = "bn-IN";
       arch = "linux-i686";
-      sha512 = "25b3d138308e0667d62e41a8384619fea548dfe441cec761c82e238c1f0467300d6abc89d265f22f1d9699ffa2165bbb7dceab76169a78acaa4bb1c46396182e";
+      sha512 = "5194de3d21783d335a11c824cd46b0e01ea512f900a7e3fb45ed2567501acd27d5f5bf8dd68f146ff550f6ae4c70089d539f56823cf7280f02b67d5111715760";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/br/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/br/firefox-62.0.tar.bz2";
       locale = "br";
       arch = "linux-i686";
-      sha512 = "8f18a08ed64cf071462b2eb65e0965f4b3825857e867da2898f959fbe84ea55cf19fbed289a4c4e739e5c4fc5392f1f496feb6b4f383e86a753f5041dfa333ee";
+      sha512 = "59dfe19ea10c4698067a8ca70143b160ed5a73c38e0f6ed3a14d9a60209378acfaa1f8b09647a1a96d519e6fd6a34cb7e2a8bc3cc276653842c2bb3a6ee3cbe3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/bs/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/bs/firefox-62.0.tar.bz2";
       locale = "bs";
       arch = "linux-i686";
-      sha512 = "2cd2a33ff71b4a471d694912f8c102b53327f1bdf005316e16d32ef17a510784cfeac972f9a854304b07d6c9d19459b19bf3f7e47caae2e58a635fa555115039";
+      sha512 = "7e6069ecc137c1b0b479159fc8eb323a8c417c81edd8c7d54498c47cea4f1a2fd4a1cc52bed17b899ca72df8b0fbaf88e1794b17f86086d249011ccb592ce5d1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/ca/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/ca/firefox-62.0.tar.bz2";
       locale = "ca";
       arch = "linux-i686";
-      sha512 = "78649a90b8e890adb271fc57328669afb49f70e9f323a2849a2071b83125f3f1f40e13beb353336a9c5aebd930979889c719075b49ce4099715951164d979926";
+      sha512 = "932ce6517bd55ddbd927eb28935bc99ff5576ee924d239dc490fa79b3d90dd77f579a7b16c0b4fe4ddf8fedb4e825664aee7fe246145ebbe19c8f8841d098464";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/cak/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/cak/firefox-62.0.tar.bz2";
       locale = "cak";
       arch = "linux-i686";
-      sha512 = "8e66b6ed5b20efda281350535f2b08892763c2dcb62ba4fc764b598606a36b4a6f3d5960919a8f2967f736add11132252449efc4bef827653534b45566ff69ce";
+      sha512 = "38c4ed4be2e79145056bfbc5a476e3a03c4f1f6aed1ccb834a7ddb2576f99fc52305b93939145ee1e7ae9144b656e857bfcc6b084ea4b501c3a574e10d7438a8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/cs/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/cs/firefox-62.0.tar.bz2";
       locale = "cs";
       arch = "linux-i686";
-      sha512 = "5e81414b8411fda775b35704de90d006be40cffbb51b495171b9f69896b9d486e4438bcc2bd2f3775ab5f998b7b41599f44f92ee150ddbbb2a84f64058657938";
+      sha512 = "1d569ba50f84ada02f0962e0418ee7f26e79fe19cc09f50dee4350a59262ddc87440dabbf10129d73172e512eff5904062f60561f4bd2d4eda395bc67af90dd1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/cy/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/cy/firefox-62.0.tar.bz2";
       locale = "cy";
       arch = "linux-i686";
-      sha512 = "8f4c5db5c760e16ef258bf2da401e51c2cf3d75808d83eb4b7adfaea4c2b69bfca0cd92c9cf69d7e4de188a2c43574d37c49b3c641dd9c8edb7bb6aefd2e4755";
+      sha512 = "9294f39bf32de7eb2a1bc2480cf7f7e51dcdd124d3281f9e45c4729b6926002f8ac99c30403ea53a5c6857077633ec08e0c35f5160ea8e08a7f5f881e8a90748";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/da/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/da/firefox-62.0.tar.bz2";
       locale = "da";
       arch = "linux-i686";
-      sha512 = "4aceadbf8cd2ced63f15aed369d98f4234faef18560e767aab1026c876fd3d6a069cbba49139eea60a78e0e42c063451918ce4090e850fc5528a93f527067335";
+      sha512 = "77bde4fc9cacdec311b513045f3f026c44d7c199cfe0520cde20ed711c1cdb40d6b64483944f4da47b8fb280764899ff5931a8e5639bd0a8a4e03425835d8f2e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/de/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/de/firefox-62.0.tar.bz2";
       locale = "de";
       arch = "linux-i686";
-      sha512 = "327c8b22f3ff3c11061b5ee58d1ea2311743e53d804bcff6e66615eeae3aada694c8adbba58f3521b6bcd8f54513bcff1d50ac952ffe5f1ff3f22b52264bdb68";
+      sha512 = "b2bf1a5fc4536c3c0822d84c7f0138f04f6bf4597804eff101502d3d782f2b22fc54dff966c2f32821471622cb1602050de1c51aaf9f64c63314f8ba002ea201";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/dsb/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/dsb/firefox-62.0.tar.bz2";
       locale = "dsb";
       arch = "linux-i686";
-      sha512 = "5a964d9c25326d2a97730723be2a999bcd8a1bc91b2d0d7ebb4aee9bd773fe93cdfdd94c70cb2f9c0ef10f84474c28726c21c23e19a1fb9b55e6db5c2a74b6b9";
+      sha512 = "812842664c8b0088f33acc42ae1581a33cb2527d3aaea0ed102fdc27a088c06008b96a3a052f95a900694d869591311dd986bea2e828a02238aaff854a77aaf6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/el/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/el/firefox-62.0.tar.bz2";
       locale = "el";
       arch = "linux-i686";
-      sha512 = "ed1eceba7d5bae11af3a916902a55c66ed97ca6da9f1a6421e4be76c65b25111e2ca7c979c55f920d5fa30146016980fde273c643a5ff4996ed32b82f0b9087e";
+      sha512 = "f1116c938bed2333309d32c13ef69f806418c14fb8a2fc10f63c932d8d8ae169aa76a8e3835eb6bb2d61cde7c8d8dfec56240b8280695f1c2273899bb7c8aa4e";
+    }
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/en-CA/firefox-62.0.tar.bz2";
+      locale = "en-CA";
+      arch = "linux-i686";
+      sha512 = "ba07c206a4b4ee0bf27ff82e8ea14e3ddff262fec11e088a114253ef4a4a81951cd5c85cf6eb9f6e1ba06f97be0bf5787f5e26c65b7f2aadfedf27f968146efe";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/en-GB/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/en-GB/firefox-62.0.tar.bz2";
       locale = "en-GB";
       arch = "linux-i686";
-      sha512 = "019be53a2e1bafbc4ea77730545c40be314d7e4a370e5cadaffd735a2dcb3dbca14e4d23b88dd2e34aa4518a57aae1b37ca561e8e62d7acd3417227f0d18d344";
+      sha512 = "558c10ec35144d696e1458a4b70de954ed3c8d3f05d5d1ae492374ee3b90752a93d55e6e41de30a64a3ee3b9e68bab88aa479066b849971d78121961ce2aaab9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/en-US/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/en-US/firefox-62.0.tar.bz2";
       locale = "en-US";
       arch = "linux-i686";
-      sha512 = "ee88e6d55855a9e2fccf2a362f26177393447dd1210eb8f78992a7760bd0e8245267c4143eb5309a7ac5826b345b8c9637bcc504bb7214d1f7897db70e9c7697";
+      sha512 = "51d606c5d9fdc2d6b611b1fea06c54ee4a6ac7666b4dce0a26dbaec99d110a2e304f88108d307b011f27312f8b935fcbf473f87b52056a465b667f8ecff9a48f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/en-ZA/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/en-ZA/firefox-62.0.tar.bz2";
       locale = "en-ZA";
       arch = "linux-i686";
-      sha512 = "877cb9d50e95a8b0789660d871f263497279ea229b11218bc9398facb23d78200db4ad19e0030ca44cf36ae3913f8a119abddc3278e85a4c89d298c59a3443fb";
+      sha512 = "b88ea68f4eabf086ff2f3fa6752cc42bd19391029d4c0565342bf24d90817717e5f07f774e164df234eeb735e426491adf35784dd9096475635365912e57ba62";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/eo/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/eo/firefox-62.0.tar.bz2";
       locale = "eo";
       arch = "linux-i686";
-      sha512 = "5c78af15b977019cf7402e88b823ab2488b08ba9e8dd27a55caac7570392e78afd8aa972f0f95f21dfb1239936ba23272ed5b84cf24578cda5e7bb1048ce7d67";
+      sha512 = "b97c269786efad57ff954d27ec69a4983e18a7ee4e0ffdc6925268830104103a99a31247359eba915be0710455f0626379b801d5fbcf501f30e3cc0b9736eb32";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/es-AR/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/es-AR/firefox-62.0.tar.bz2";
       locale = "es-AR";
       arch = "linux-i686";
-      sha512 = "8328fef71e94c07c37491a331ac362d142d44e93404c0a3ea883426c8f11ebf6f5bf6584237b7fa75439c7312bd1f33a2ddcfcb8882c3cf3c526abfae48a620e";
+      sha512 = "a5fd087a8852f39e1208b388a2507981af3d989a8b86b1b0e2e83adcc9f6a494116050ff811e8b2225fd113ef1e689bace73a617c0e569df627df7e9c655a14e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/es-CL/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/es-CL/firefox-62.0.tar.bz2";
       locale = "es-CL";
       arch = "linux-i686";
-      sha512 = "ef4e96123acde3a3ed75d8d93868894f859349613b556d44056009d55a3794e78824928eb04afe8746e291fb3d443b7a1b6f63376ebeb65102f7e03067480b86";
+      sha512 = "bdf7aeb5fbb80711d7b8dd7ac30e544847e00f015f7bb8835315f5ee3023458bf781a368f0dcf11c57737fb1d0f077352c0eab28d32e801861bba36bce5e52cc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/es-ES/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/es-ES/firefox-62.0.tar.bz2";
       locale = "es-ES";
       arch = "linux-i686";
-      sha512 = "934e92d37b920ccb715a411509905c150501eb14d11aefd084f2639afb8ee1a4ce3e869d682ec9f9db4b70a795875f09ca3d7d997f0e621ef99cffeeb1675f04";
+      sha512 = "47bf0dbb55435016312a6f6650033f28710471e7aaf14e0dc83488f1ff87e559de552fd95d5a58864420032392f84de06d8a1916efb8128423826c7e4577ab44";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/es-MX/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/es-MX/firefox-62.0.tar.bz2";
       locale = "es-MX";
       arch = "linux-i686";
-      sha512 = "57e7bacb006bd079554670fc216ab2c1912a252b7966b32cc25a7d6735f7b0928ae0911b666c2810c63031d57513a4ff800cf92906a95868aa32608eb927e2f6";
+      sha512 = "79e42f01744b05df6c1c7928743914ac28f3dd696a6918a08000a531b050fda95ca621ce0484c216f2eadf728db867707c1ec45188c70bb91ee611eaff7ac565";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/et/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/et/firefox-62.0.tar.bz2";
       locale = "et";
       arch = "linux-i686";
-      sha512 = "b357f29c0f77e7ed4ac764f7feab6588cf322a1807210052359402e5d1092d3d8cf515e04beac86d32a6ddac43b4be8b92d88a1437f6899b4007d2c9faeb7fc2";
+      sha512 = "8489f6dcc733debebe1acbaa86cd093e5dcbdb4c8d60480414ec1e27710bf57590fef3a29fb208e9eeaa5d8858e5807d7cf0be5130d57bfe308b7653de431db4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/eu/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/eu/firefox-62.0.tar.bz2";
       locale = "eu";
       arch = "linux-i686";
-      sha512 = "61b4a7b767e62b1a1b4eee4cb024e869969b5623de658ca2a3762c271a6519fb4869c9398e7a3cbb987f01799961021fff6f8634b78dc62770ca1f345e56d061";
+      sha512 = "92f49ebaf7777962eb2d1b13043a10e82cebcad1a0f43a3527d7e7a5a31e720b812febda86051125e64d5f0355225dcb6cb496df5ace1ed10c2c6a4cfbe16cf8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/fa/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/fa/firefox-62.0.tar.bz2";
       locale = "fa";
       arch = "linux-i686";
-      sha512 = "4eec6e7231fa548c0a24b8904b55311058dfc89b2ffb87142859b994aa0a31a07c48107495cfa66bb4a65094328f6bbd7f33e0ca33632457f620ecd90678552d";
+      sha512 = "1bf258264b77fc9cece834363a12c34be719121afd55378e23fb2af9cf20da2a7ef4ffdb2d39c34c9970ea5d259a47c894b6f9d703ecf75834a2239844d783e1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/ff/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/ff/firefox-62.0.tar.bz2";
       locale = "ff";
       arch = "linux-i686";
-      sha512 = "0a17ac2aa0a855c97b613741d7933dffc4569da9fef9f753a4e404847e683cf10a4444ff4cee5b5d1f86ef069525d0f2635433e8249ef029bfa2c247ed605386";
+      sha512 = "0b60ade68d6f4b9f1fda4a3ce36fe54e69583efa5ecb41443f0f92d394257449c2d5ca7124d1e194fc7394ba0daeb67f828de4aaf13f78c89aff8dc273213ea5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/fi/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/fi/firefox-62.0.tar.bz2";
       locale = "fi";
       arch = "linux-i686";
-      sha512 = "32526703d86dcd74739f419518974ba7f43083a8b3f971d0dd7446caf787c5ed4be82710e3bd53f2d1e9e5dcb67f46735bb55f60ec7d9c49c62cfc2857866fc2";
+      sha512 = "f5cd4ed69914705a01765cce884e3f3fd66cea53e85d33da378087ac7ccbc9afcb1b2ebaa78bb4ffbdca2fc34b2ce4aebad6d55fdff44b8740a815265026d2dd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/fr/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/fr/firefox-62.0.tar.bz2";
       locale = "fr";
       arch = "linux-i686";
-      sha512 = "b7e00691c8a1a5f0c1a6312a79eb40ae17e455e156f66da2f4e43beaad5ec35d770b783aba83c500db1fa885b1038095effe69f936e17d69bd320f41b71d4b2f";
+      sha512 = "3dc1eda7eba9e0112b246a370a296c6f5e11f318e514d08fc800d198afa5fc692f13ba66fa7b2ec891929c53572ade6caed21f967b880262cb36718fd76e18c1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/fy-NL/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/fy-NL/firefox-62.0.tar.bz2";
       locale = "fy-NL";
       arch = "linux-i686";
-      sha512 = "d8d70ed1d04686cabc9862c5cad06dffa6fa8b975a2a61f0154a6c1c6b182a173abe4563b727de30f414a4d04311744917a82158665883697d26589b29a25263";
+      sha512 = "576b0645bb3c2367138e3f385282f77c72040b0a4c75ac5f39163a7f1e23a34e7702305857ae2250c96adcebd587c1cb83b1e7d129667307089b38842bc4e175";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/ga-IE/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/ga-IE/firefox-62.0.tar.bz2";
       locale = "ga-IE";
       arch = "linux-i686";
-      sha512 = "352620fb58ed1fc024e8633e70ce3a705fa518cb8f600b3bbcf1c50c440812ab8f04608bb5a3582f96dfb2a19b0d52debe6c4947dff2f06f426710d8f927977c";
+      sha512 = "416cad5b5859bf1565f7e68fd3a53ca8b180609a488e2201f70d42eda3186fb1e22c647016c67fd3068d67b50af678bc6dcd96194001511844afff43e31611bb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/gd/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/gd/firefox-62.0.tar.bz2";
       locale = "gd";
       arch = "linux-i686";
-      sha512 = "90923e5ecaa85d21d7d6de57c79a3f35b329faa14a74e8b210cc2024f1d48f3aa5c4930c63e8e1688778bdbe998f06c72b5bdce8287ffd7ae05fe62845ba2bfd";
+      sha512 = "167ac1a9411d1cc3ab052d3b206de6a119e8b56854b7e9588ed68815e7c9b9e1722210951a8b731e944aeb8b2890095cdfa7d73b03b473a5ac99a90095de6917";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/gl/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/gl/firefox-62.0.tar.bz2";
       locale = "gl";
       arch = "linux-i686";
-      sha512 = "339f8ebd6d714945e50be0d18be3af010e2f00924a84df2fe5641b06842278550bc76b01474ad2b2a0feda734f6f2ac9254c008c3a6f942714c684504bdd47b9";
+      sha512 = "efefb9e9d53be16fda773e8f40073c357c4b46cedecedcfd311e890a45810b7fbfb368ea3e93b07efd0f9111b9fa7a67808298c0ce98be2c8bc7eff354f7efb8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/gn/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/gn/firefox-62.0.tar.bz2";
       locale = "gn";
       arch = "linux-i686";
-      sha512 = "35de07bd227904bf0372555d81ead164d993410d963e0e733f536ec445112652c04d3bce8f910d0b3daa3d9ef2ff956d24ed680916a5e86c3e9a6f9366d0dda9";
+      sha512 = "044c8e610d639ac8830b00ba2e4e2ff8e1bf827c3f91101edd45a6d478b5b8b99c1100c9fb2273a6fd378826f0bcbaf8817cdf1e3303bdb1b9b0e0c01cf095ec";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/gu-IN/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/gu-IN/firefox-62.0.tar.bz2";
       locale = "gu-IN";
       arch = "linux-i686";
-      sha512 = "20b1b40d84264f0e98ab91a4e5943da078b7c37816b24443f8936933d779453d640b26ae04eca1b24b3a68134a29e7853bbd544c4cd725b934660574c6381284";
+      sha512 = "433bc4b580bb3d164ad78a21ef8894e053b4c6d972d5e4aa46a9b8ac27cdf38e395164eb46e24815cc645d8048c237371a3abbd1bb639e69b65efbeff00a30b5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/he/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/he/firefox-62.0.tar.bz2";
       locale = "he";
       arch = "linux-i686";
-      sha512 = "f8652f2cdc19827a7f2a92e6ec251c5f0bd8448d3dfaa3bd930a4ba116dbdcdd7f2a9c083c5fa93ba2a24395147782146c5443221c6183622248e54d0687f287";
+      sha512 = "d6acd3b06216d4b0f0856cb6576c36381dd9f48bfbd3543e410eb0e0e5aa11977cf3d68b38b0be7b6700831c1561e2a8dc75eb5193637bbd2484673d83bd3a1b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/hi-IN/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/hi-IN/firefox-62.0.tar.bz2";
       locale = "hi-IN";
       arch = "linux-i686";
-      sha512 = "7051302d9315dc30fc8f6ebebaa587b49d17823aae7a542133d2f82a1d5a18e3062ff02880f347518e5f88a0de913568d9f6b4ab72bf7dd20cff5812cea65ebe";
+      sha512 = "49856be15be3ab0ca687f8d6616c481d61bc0380133b043d394cdcd21d1f7cd8816b2bca5538f2e601a32ffa8c51745e89f537f62bfa853da42759db70186ee1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/hr/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/hr/firefox-62.0.tar.bz2";
       locale = "hr";
       arch = "linux-i686";
-      sha512 = "acc1297166057cdac0015758d6556bc870481d96951e7a14704792e39010938a6c0bafab2cb28e9a23bf24695813e8dc1a80512c1c5fc75bfb8a0d29f7091c93";
+      sha512 = "0040ba7333a13820e4c0a85fb24c30131d4b477da3da9e4e04296088d1c0e938fd495777aedbe3bec22533a6c4766be902adbd8b470a81380fe4dd23f831d0f2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/hsb/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/hsb/firefox-62.0.tar.bz2";
       locale = "hsb";
       arch = "linux-i686";
-      sha512 = "2ec761ce5eaa14cf5fa114524f70b93998d76971de7b8d001e656cd6331c32252ef3ae78f54906f5dd416896b2cf8b6f5afcb5e3a02d017d9c8a33835655718e";
+      sha512 = "715d14b52fb82f255300dbc828ab05fd578f61325cdf4d4cf86f1a47e22fc1856b57bb459941a4bfa8d325b7168fb0e39c075122b56de3455933fa89927f025f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/hu/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/hu/firefox-62.0.tar.bz2";
       locale = "hu";
       arch = "linux-i686";
-      sha512 = "160d7307aeb834f9ac15ad77c0cced4cf7abb855264e10d8a62eea1b1ef85aa3b0a00fa9221052bf4a3df010e54fa198d7033d8450d59212ff36c936d99a1469";
+      sha512 = "deac0b43865960d665f13a2f0a77cd9413ba9b3172fd2660695464b5f72944f4013f6d9a47801e528db63c3e05496aa7df890624a39ddc6651ff5e8d0d02883e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/hy-AM/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/hy-AM/firefox-62.0.tar.bz2";
       locale = "hy-AM";
       arch = "linux-i686";
-      sha512 = "09950c9536fa0bdbad207b84ccc83088b23a7f2f960d094ea0615de566ac1bd9cf55acbe01c0f574114dd9246bc74e582e67706ec0c34a2c9ed6dea3d30bae17";
+      sha512 = "22e134785777ea4e4fd72cdc7f17765d5bf8e943be33a0991baada71fb254f60f9ce9b68b4ba5640dc807a6db0e4ac3c81784a7a33e5096cda1833b22336f9de";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/ia/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/ia/firefox-62.0.tar.bz2";
       locale = "ia";
       arch = "linux-i686";
-      sha512 = "e6c1b00971dce7387e183a8328234ba65722c69c7d48e328223eb7e490af3706298d43c11844505ba2ea5aaf21a1fcf7b3cc8ec8946862fe7aed8128e6c6d5cb";
+      sha512 = "91112a783ed4402cec7ce357e68806609b202bd1553c649271ccf4cb90a724ec612951b3acfe0eb64646957870726cb40f66b4a233cc0b73fdeed51083d6894a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/id/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/id/firefox-62.0.tar.bz2";
       locale = "id";
       arch = "linux-i686";
-      sha512 = "85506ef07ecdd1d466fbb261d46bca8cc4ac8b3a707f27db9083dfe1996e5214cc0e78080f33c2b3198e27e044c6a6d13717d69b43c3ad98a1c43f50b12bb69b";
+      sha512 = "8b87e2f13550334a96bde04fb7d61ac963548e35de2717b8738fd14fafb015944403a1bf175e2c13ceb7d4f482f5a6d56b57b44cf015b6dabfac3fed77d86f81";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/is/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/is/firefox-62.0.tar.bz2";
       locale = "is";
       arch = "linux-i686";
-      sha512 = "973b863ef94121836f472f5450f8a1a2d3329306f289b8ba09ff811b336196a157cfc966fdffecd54e78f4f48508ca1f8284f0c2d3804579ef82be4e1adda48d";
+      sha512 = "8ea8972b5dc06bd12844fbafff92f6f493f604ebe03139043435fb5f761098cee81c0ccd42b67bcf3c7d1b370f3382858c08d4c14eb24a75fb851e78c51c296c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/it/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/it/firefox-62.0.tar.bz2";
       locale = "it";
       arch = "linux-i686";
-      sha512 = "fbb8e899b2aac3f4c64ccde0fffa11f8609ca3b7ea8bc05e062d207b46234b2414746822e0fad8d24fe8ae43e3bd8ebf2fc5d26a02365012a95a4070de002274";
+      sha512 = "b50a422dcd94d6ea69ab22426d6f79b3997313bf4e0e17f2af31d8b64ee85d603cde1768a730b279a10ff87639ba2af26185bdb81ea4bcb7b61947b1836ab700";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/ja/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/ja/firefox-62.0.tar.bz2";
       locale = "ja";
       arch = "linux-i686";
-      sha512 = "c6585b28baaeffcdedeb1167aae4d20874755e970f53aafb351a31acd3933e6b805cde1e22ce0c2ade58984ad940a5d8b6857116f11ea6070bfa88c8232bbae8";
+      sha512 = "f52d31f997b291e2a0c9cedaafbcb5bc3ffd2148b52700eb5c140846f2809613c9061f339728b1810bc5f899fd208a3eedad06ace984dad41fac0a057c101ec1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/ka/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/ka/firefox-62.0.tar.bz2";
       locale = "ka";
       arch = "linux-i686";
-      sha512 = "136f49750c33d72e7aee3fd5733730f1b78d6656fd45b2aa2299d8e9d01adf13f9debe1d08d8fb9149107e96ce5f5fefce81b5d9a2d9a1e1896cb8df3c588829";
+      sha512 = "e155d5c70de47d6f96f3f0e34ee317e90ac1aaeee4be68ed265d4bec46d52e6d67d7a140f3fb135dd086d9d6cfb5e8f80063a85f07e8b2197b23233a122efbb6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/kab/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/kab/firefox-62.0.tar.bz2";
       locale = "kab";
       arch = "linux-i686";
-      sha512 = "2a0fd4952c493a4c22e76135efbf155962fb51444328726f29660cb97586ba76c1903d28c7baed9bb4815e57747b5a009649e179971b3c7aafd19fb96be23c75";
+      sha512 = "153ed4ce1692e6691222779860a066b27dc9a5e747d79f4e1bd3273541d849d4b093062b3ff8d702786542fe99caefcde13f63cada7d0f67f461531aa32603a1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/kk/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/kk/firefox-62.0.tar.bz2";
       locale = "kk";
       arch = "linux-i686";
-      sha512 = "0cad124b5e3d995124057fe0d818121be4f7f186c7cd4ada4d13b89ca5d505a8830525ffcda9a27a0f5f2241fb65b44b8433d95221220740ab8643f374c938ad";
+      sha512 = "dd88ca465251b9489e766c268755a66babdcaa5962d40ddb4ebdc3f100a31f34b9b962bcf5fb5a0e46b2871e7ebb8d4169982a3a7174bbdaf5e6716274321ae3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/km/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/km/firefox-62.0.tar.bz2";
       locale = "km";
       arch = "linux-i686";
-      sha512 = "06a58d8d54bf641e3ddc7fdb3417f8a5a2aaa16e8c11f961321c939e803249edb7dd3e08027a4b20ea840298b4a12da20c2771364d2b9caaba496d1eba863e15";
+      sha512 = "ccb473d36522f34c889ae3d211a1cd4ebf4e60da341c51c34cf05d9d8d75615b91eb4b00e327409c6fe406aaeaa07f8eec53c364bec50ae87c48c37ac1602e69";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/kn/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/kn/firefox-62.0.tar.bz2";
       locale = "kn";
       arch = "linux-i686";
-      sha512 = "92a9d9e4fc65472200f408238ade4ed23321d4e25b0c7eff9096f23f76e480cea0031159b53e509cc6d3d6b2c0c0c8396742c81f2fc3e9825c1d5e45a35a12f3";
+      sha512 = "e1c718690141b6e89f4df017d5804efe07a1dfa838f1c23ca14b90438458278bfe90e178abb5ad6c52d43a993b6a65664c0e801a9f58ac57f9300a9bb6f9679a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/ko/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/ko/firefox-62.0.tar.bz2";
       locale = "ko";
       arch = "linux-i686";
-      sha512 = "dd9d7674f6261a94cb00fb823a02cec12758476c1ca1cf6a973eae78dbc1c94ebfcc14155c035966781398e1d3262e000da4291e90ec434756c8c3ba0de7b7b4";
+      sha512 = "e916fddce4044fd924f7aded0b0c082f82bb50fe0f7587d7aed4782d545be8b0dad67ed4d2c41bc75360f6ed7c236bd7c40cb3503b472792f1b27c8f0742f597";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/lij/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/lij/firefox-62.0.tar.bz2";
       locale = "lij";
       arch = "linux-i686";
-      sha512 = "1d01c34ab89ff1122147685b0551aa650f5b751deec35a5e7d64d6ba46272e929d7f1c49601fb2b1f5514b840ba6554af892c79c1a3f71af392216271d206cd5";
+      sha512 = "ab86bf8a92b05bc5defee073afa19ab00be704ce49a2d26f032edcbb60d9e5ef4e7a6196d31bec8d6e090c586a88d6e9b69f576ed5e587ca09dcfb60a0661b3d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/lt/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/lt/firefox-62.0.tar.bz2";
       locale = "lt";
       arch = "linux-i686";
-      sha512 = "93d3dfaca37a668eb7c43bdc74ba521bee0344fff43ff9cefad5e4746b7c3ccdba445f97577338606951a15fc5e629bcd4b8cb979842fbe550d3e7e88169b3a4";
+      sha512 = "d716f7fc2c4015f97962d07ba7ffd6903675a6c36416765f2e81da43f9e4aba759b3ff31bd82bb7cf64c7d8b99f9d7454716f4ce6daa022f9fa31f4a49d9efee";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/lv/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/lv/firefox-62.0.tar.bz2";
       locale = "lv";
       arch = "linux-i686";
-      sha512 = "0037d16778bccde9146965d7553513a21a443960cabca4a65b6f58ca2ea9f243b3405d3993e8ed078c1a2b7bd636deb86ed829f8f699400fd755f35cf048c463";
+      sha512 = "453e0bbf9eb2e9678ed029ecb797b701b4b39e030f9555bcca7eb6d56676bb44366e2d1ccc613b12a09f95d99ed08f9d3f34cfc9dd16cf38c9ab8e162dbae3e0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/mai/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/mai/firefox-62.0.tar.bz2";
       locale = "mai";
       arch = "linux-i686";
-      sha512 = "d8025e4c4ab5b7e9b2d8dd8afbc221e1765eddf878943c4daece0e27b7443e7e17de3e400d99a5ef5b62a5ba9e3f2a4c27112551c8c0ea1f81136d6d74b7e91e";
+      sha512 = "75e863c56d68cf2304f0c6c2f1861ce025d934d033341c23d3b95a70e73bfe66334c3beb77d9fd597f7b4091baf70729419ce452131009ccf03d2d33d16621c0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/mk/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/mk/firefox-62.0.tar.bz2";
       locale = "mk";
       arch = "linux-i686";
-      sha512 = "6ed44201501bd8336615b29078de4e52374712f857e2816732277cc37b6f8b305af0861894f3f70fa62fe2de6476d689bc5b79bd245b4dd750dcbab0b448c69e";
+      sha512 = "bb87f94a4de4984544477837cde4186a55309eec70b85f0cffaf0cfe747b7c761d9a6553adfa1ab1fba72d732be855e2bb46e4c7f22a0f25529207b42b6da396";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/ml/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/ml/firefox-62.0.tar.bz2";
       locale = "ml";
       arch = "linux-i686";
-      sha512 = "5b7272acc37c4dffc2421824b86c5f0192b7a92535f193a0b567fff8e79129f41bdb336bfc1c742ea0f106739eca47339d9f550b785951364233e612b035f94b";
+      sha512 = "5754b4a0a3c6c67191f4ef3dda7bc208766ed8171de772d4250033039b2b39dddc3bee800a28fffe41c68cfca82a5c9c6005625fc6bb5bf232b256d7bd58de71";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/mr/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/mr/firefox-62.0.tar.bz2";
       locale = "mr";
       arch = "linux-i686";
-      sha512 = "fff73ffc6f080aa064df90a2f19c85364a09c831a095bf3722a5bc0760e04e305be8683804883968a492589a652d705f1cfbbed617de2f00348a723babf60a86";
+      sha512 = "04e40c1d060b848cf957af34079f6d1cdd12589b0f31932f15b5ebf837e37d84d332fe3ee4a54c501ac47050233f891ec6617802d03472ae9d7e45baca809adc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/ms/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/ms/firefox-62.0.tar.bz2";
       locale = "ms";
       arch = "linux-i686";
-      sha512 = "a7574ce597a12b92aec0e88ca72d544cca1ec1a5def40b034a8cb25a24a3672c42e2fbe7ebcf0b5293f55fa12216856503af5514c3ab2b3cea551a8a43900b04";
+      sha512 = "1b84fd0960c4952ff42bc50595683da47545fec9ab10d7b3fee3e3541b2a47aee084526766fb2bbf17dad413f4dd2dc458cb0c3e8153b7ef897a9573292abe2a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/my/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/my/firefox-62.0.tar.bz2";
       locale = "my";
       arch = "linux-i686";
-      sha512 = "0bb892e7ab8126f2f946b1d3c9b8b00119dde0a165832ed211265be4f698087ab83970b1c1d47171913db7e01f43036e90b4aea135accb91c33beea1031d545c";
+      sha512 = "95fd60b8c2e9b0add3163c67a5b46e794f0105621293017838fdce48cf90a0b0bd62bcefec2693fa16b0616260b39587bf3c619b506d56b072f0c715398307ae";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/nb-NO/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/nb-NO/firefox-62.0.tar.bz2";
       locale = "nb-NO";
       arch = "linux-i686";
-      sha512 = "184130d826eda76da820974a4f729de6eb569bbc7f36ffe2d4599b7c142d75c5537546511770db38abaf28b9d3866937fc6d51c7fbcffb074432da3d98310b06";
+      sha512 = "05c83c17e5470f009ab369d0c8a1c64cb8ecc008161fe1ced3ca85e9065f36f7ee4e220f8ed7a0320305ac31b35a035b5c8f7525b3b04c6b96e95e4044418f33";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/ne-NP/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/ne-NP/firefox-62.0.tar.bz2";
       locale = "ne-NP";
       arch = "linux-i686";
-      sha512 = "2428dc2175f0da8e4fa66ac11810467306a59b181c34165e4a54dfe5f3bebc182f0fbcb117f15707e72baf97f4d75131a3ec97d03d0fc1109229caf83519dd51";
+      sha512 = "2ad4756b8800554c54aa1f47effe512de332a61fcd7571e27ae83bd5e0100cd8b60fd5d8381764f9bc2b1d925ec4b53fc3c6c6a88840cb12f57e9acba892dc5d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/nl/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/nl/firefox-62.0.tar.bz2";
       locale = "nl";
       arch = "linux-i686";
-      sha512 = "96bd92c9979e02a13db550f7f3a795585baa1017691371c5e5bc99825d730d535c63ddbf805ebf8a0e6406ae80ec644d0f715d04f913935f845ad89467c01832";
+      sha512 = "a3ba32bb48a6bc386d49e4ec703f51cda3bf917673e23965d7f5e7977dc8ae0696b375535aa04d1a416b6b5655cb3302cb9738a238d9cc8a6bcb78dda52afae6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/nn-NO/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/nn-NO/firefox-62.0.tar.bz2";
       locale = "nn-NO";
       arch = "linux-i686";
-      sha512 = "26f35cd02873ba061cd0f38cca18947e2c05589d3b399c55fb4d0f356c26d399848467a20fc542c7f51c67c912ab7c8fe5fae25c97d942260276faba40d24c89";
+      sha512 = "35bac6119415eaca5c8d9fd2d57e0a550abcd7d069454202a02ce6418f9e47ae59563224763008f23d49604cde09ad251dc8785d2205d4e9623c138a97b69533";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/oc/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/oc/firefox-62.0.tar.bz2";
       locale = "oc";
       arch = "linux-i686";
-      sha512 = "711b260ac771280d795d6e3746df07bed4b9357b7261e83e8b17934ab027d77bfa1781d3d9d1923724f49f16136468c1fef40d1809d6a020d5b49b7767030f85";
+      sha512 = "40d3e74b204da461cdd79163cc838e538a5dbb8c4e693a59d801202363cfba4bf48e01bcc87d247dce6b1fdad0a24f2bdd15272399e407b26293156698f7bf7c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/or/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/or/firefox-62.0.tar.bz2";
       locale = "or";
       arch = "linux-i686";
-      sha512 = "dcd1d7068c75428533d268b50d3d1e7324dba2709abe4049c9cfea4fd4413b09c3c7dd9f944f5f54f57454d8d2aa8471b8ba5871e73cbeae6fa357c8c68e90fc";
+      sha512 = "2220ecdcb26b459ebb0fb3380bb8b9430c1a09aa899418b18a765a4ba76c8d35480f59b71edaf6047e0eae04146ec6dd6bf25ccb619f559a260ff6f2828a0db0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/pa-IN/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/pa-IN/firefox-62.0.tar.bz2";
       locale = "pa-IN";
       arch = "linux-i686";
-      sha512 = "f34c32479a92cce9fc6564899b5477fdbdbdc868b17904f8d7ae338c2924fb7cb8335b038378a805a2119ff5ad13e349c7b80efe7a29add706bbaf1466d623a6";
+      sha512 = "91425dba14c27a3bbb744cf5added1545c071f466c6cfb77d7b2ff0b0b5ab289ffcb56821023e50d12deb4ff29cc5ae490c028420384da84811c661d277017f3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/pl/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/pl/firefox-62.0.tar.bz2";
       locale = "pl";
       arch = "linux-i686";
-      sha512 = "d62822aa991cd30cb6c5e47dc211bd4018de427b243543bd83bd166601e40e3bed35dfc073660573dc500ae19ead2dca858041a3b80bd616def3c2b3f72aee11";
+      sha512 = "a5581c2e2d7de1187967af10802c4a6577a5bbf9a0ab56448b0695ca3fdee845117fa364ea53149b81a5aeb3ddab22c58ff65863fc981445bd34858766fb438c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/pt-BR/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/pt-BR/firefox-62.0.tar.bz2";
       locale = "pt-BR";
       arch = "linux-i686";
-      sha512 = "5a2ea1494423a5ce1afc60c2d1a4e53ef084a02050ca61a688ecf18ff9d99e43d6bd334683937c12965767e7e5b0bd1a32708f1f2c2a241db1f68271633ace66";
+      sha512 = "70a9cc592980afbaa3efa37b57e190f6bd6c76fe975ee16b3a3b2e3498c65e792a83870f569836fe79fabc289c201b7f6764d4d512f9d561058eb496d1bc1cf8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/pt-PT/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/pt-PT/firefox-62.0.tar.bz2";
       locale = "pt-PT";
       arch = "linux-i686";
-      sha512 = "83cff834812ad238b103fcee8b801e46ae542eba3475709e04848f18df0bee68075b2834ee871bfa5eb58ad1ec7fb34239d661a27d0dcba17e6c39de8428cef6";
+      sha512 = "8e1d94b4b3e01e684387b4e3c9439ee1df9712cef607f370d63ff0072876c2ad9e22a978fcaba14c03802c8fd5b559c6dc412fdadaa6a01425bb491852c4ce02";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/rm/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/rm/firefox-62.0.tar.bz2";
       locale = "rm";
       arch = "linux-i686";
-      sha512 = "c4190e7e2007805b2c7507dd26b0695bc5d3c007eabd6a592c283a99cf0495ce1dfcd6dbb1e753a990f64466f24618d3b84df617f99fb266ceadf32fcd990af8";
+      sha512 = "77500b96558c055ea90750d99aeb096d789a920fac4fd368b95a032cfa565ea0ee1259503ef0d198c4802bbeeb847a3ca22f06ae79b6e554c54d336a99f61687";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/ro/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/ro/firefox-62.0.tar.bz2";
       locale = "ro";
       arch = "linux-i686";
-      sha512 = "292112e0af6bad96b97bb0a1d58d0b7c9d4cb476cf531b1caaffcfd54c2f0ecd72a4311f98b614d7f834ffe2779261f77eb43d4d7ab724378dc6b7ad83bb1840";
+      sha512 = "e3cfec0059f0372d2b3764a4c3809b7a8c9ee6e795bb1d8eccf663feb1d054be58c15569b8dcad55b5ad37a1332d950f5286ad88ca5db55441c1cb3dd879bb8d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/ru/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/ru/firefox-62.0.tar.bz2";
       locale = "ru";
       arch = "linux-i686";
-      sha512 = "3d6fa0994fba5ff988e281ac4feff8655a5353ebf0d99df5ac7412cff2d19d478a912851d27f2af5bd78fdbc68030878682bb7ffa912180d2c4aa9bafcd77cd5";
+      sha512 = "91077e66da0403828807fe1a3ee274ac162898efafd651b3c243c315c9f0f1cfb88925e738b9bf25fa7fc0c7b747f2a9f2a5a1c77b87cb83d3aa620475239822";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/si/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/si/firefox-62.0.tar.bz2";
       locale = "si";
       arch = "linux-i686";
-      sha512 = "e6d3c4049f267e68216e9824743b123539e5445a5d53297eb8af33af95a418e492a655a456970d02049f8969c81c0ab8c5be1471a5ab8e01b4744995b799158a";
+      sha512 = "f770321771e965776b55d7681783e3782b7ce4df3c3d7cce581a3de1db0f8fc8c3ded3d606fc7f7f61e62b33986e8e05ff64e49427a8cb85b68b7b6fe43f6c3b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/sk/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/sk/firefox-62.0.tar.bz2";
       locale = "sk";
       arch = "linux-i686";
-      sha512 = "66fc1f3f4fb7dec1c261db144243dc0647b4dbc4257de93c5fb017ae616d31d6825fdfafc30d3fc299a278d5fd51731f24e6033cb3807c69ccd1512527029063";
+      sha512 = "150792fbeebcd0969fdbef0827b617f83383bcaaf3eed9dac0790aa0ffb893d4498dae29eb480fda05a2feaca0428cf600bfb3398dfbcc921e92cf2ca01c7a1c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/sl/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/sl/firefox-62.0.tar.bz2";
       locale = "sl";
       arch = "linux-i686";
-      sha512 = "e089b96b77a60c2c8e96f107cd26f37e681f8a8c702cf32ee3592344900c81daba274516c32ac856609917a30f8d60d853fd649fe575c3a2915072e45908126b";
+      sha512 = "d423c10683ba690a8d8eec50e4e966b7233d565e2c35b5fdd70aa917908daab5d01f847c32f7e24c604aa19ab941ca70c6e6613b39271d01f1370dbd974800fa";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/son/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/son/firefox-62.0.tar.bz2";
       locale = "son";
       arch = "linux-i686";
-      sha512 = "00eecadab36816ae5e977dd50f335222e1fd8253b98daa1f14920e48678afb22b0e619ae4a86e6a45c8d2973f83f614f16a1f860e6ed1ed488851032075d6c72";
+      sha512 = "7f1d638cbd729b51d959b0b1ee0e4ec5473f5478bf315c890fd9df20e3065861a5c8447399e973cac78bd078d2a1f0e1bad829f6b462ec6ffc55e7748760677a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/sq/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/sq/firefox-62.0.tar.bz2";
       locale = "sq";
       arch = "linux-i686";
-      sha512 = "ebd8ed00c12288a3ae4f6a113bbac8595ea9c0fbc35575115fd019c6158857ad083588100d4cae440822780bf25789501d0dd800bbe2baef5f037fb43aeabb74";
+      sha512 = "823b4b5043e3fd8fcf0bcb345d00dbfa38e6e03fdf172a30c272f51eee7f9057ec99423c7117ab8d21e9037bcc1e19a7082401a0b25514e2258542aef4c4af80";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/sr/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/sr/firefox-62.0.tar.bz2";
       locale = "sr";
       arch = "linux-i686";
-      sha512 = "bfce8265755adbc3c30d56a1e4bbbbb14385ddd3d2434b6404b04e3fa3120d58b32cb9e598aeb1540f23d2757c23fe903fd5c9d5167db305a88077e98d9a39b2";
+      sha512 = "a08ef0de87e4f01c11b20301e45e98d3bf10bbd4d2699de56f66470d7f4298aec3744f44888ba46ec1293fb713487f6df20bb9f5682a57827993f0ddd28cdde3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/sv-SE/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/sv-SE/firefox-62.0.tar.bz2";
       locale = "sv-SE";
       arch = "linux-i686";
-      sha512 = "518b28e8f88a763aa09c5aed12eb0f2b582f84770401f3e11e5083fe69d176ce1483a81c2345a7fae2473551bf41db6a35f341495eb59c559a99398b93a7195a";
+      sha512 = "e3e65e32e5e11547e220bb34d0009257f3c4f18aec0fe961f310ef4b76311d8d885a01d6bc4420c2b97687b886c3d00c09d43af0c6c7eaca8e6a804d78d4bfe7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/ta/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/ta/firefox-62.0.tar.bz2";
       locale = "ta";
       arch = "linux-i686";
-      sha512 = "a4d5960e0b60cf03c0ecf7f0d2b697dbb68dbfb4e0f3c77548c020d574f60c0fe7cc032a81215f34108a11651800deb1b1533efad3e238fd32780f22bd5524fc";
+      sha512 = "47753ccbe4471ab3d3de3ea11992cd332251868ae3a7772e860531d013c657f5ff559d34592fedf7b52ecf3a54476dc2e0fc68119170afb9c482fccd04a36776";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/te/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/te/firefox-62.0.tar.bz2";
       locale = "te";
       arch = "linux-i686";
-      sha512 = "8bf1510077ce86f50c668cb8d931d6d0899d1b7559736312c86acfdc3149da75f8c8f750393e02023a9b063c27c03adcc6bd5c29c950fc0a6055392a2e0eb2d4";
+      sha512 = "90327dd95f3a597692cf5ea54258c31ed813261f102a7f668f5bc5062499a6bfe64d2d241dc33ffdc5cd152802e7d462c7ffdbe4498825ad88be48d21031919b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/th/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/th/firefox-62.0.tar.bz2";
       locale = "th";
       arch = "linux-i686";
-      sha512 = "af32b002380fee3b147b2cc44831c3d2ee29d784b8c935fe1be464b302992aebba73a39929ca23b35b9b6a8475e909a73622f70810e0a4a21bc7db74a8b4da46";
+      sha512 = "652a7bf7f2a7c6fa27edbd5e78cfecd2df661e1a7a01cc532b1caaed53bd40025aaee2126dd1116e77ef9e050777e78e96537ed2decfe493caa1d03c7bbb0646";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/tr/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/tr/firefox-62.0.tar.bz2";
       locale = "tr";
       arch = "linux-i686";
-      sha512 = "4216a4e126a41f26b344804e4222535aee43c9f52fafbb6e1d019cc743fe18c0cdeed7fc04dd06fb921efc0431256ed2f09ed21fafff8a1132d097082b849388";
+      sha512 = "f98d45b831f51a0caa47fcaaaf1ed37f267035e1f1ab95ae0cfbafa06f03b89f99b7a7accb9812644f862b819c2bb294f5a3454ece80f775359ac77734a99d44";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/uk/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/uk/firefox-62.0.tar.bz2";
       locale = "uk";
       arch = "linux-i686";
-      sha512 = "dfe75bb618097d0a96066dd65ba0da7e9d3ce91c14075023c48aedfb88c6d30b83c8ab503666c7581783baf347beac58e81d49e7f9b671bedcdb6827f0843b35";
+      sha512 = "6c67554c87c7941fec8193bfcdd9d5d0af906d13ab237e0ddd97733816d2df27fee5e11eb450e85f9143f71049219e8ef9c6cd4d327faf3e335247130cdd26f6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/ur/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/ur/firefox-62.0.tar.bz2";
       locale = "ur";
       arch = "linux-i686";
-      sha512 = "0a1a8cae5f364b5e0e2570ef6e06870efd136322082e2fb7690b381f05195eee48787ac679916cd7508f9f51458c038798c9e73f982992dd5b0de8d596e83ca4";
+      sha512 = "0c90e5575d057d9f32c18a102d2db7848f8821d71edb3cb9ae4f2565a1cc2851da7fb1bd493e81dca003a50a9f26454af8cf0ef7f947ea42aa22baf20abc06d8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/uz/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/uz/firefox-62.0.tar.bz2";
       locale = "uz";
       arch = "linux-i686";
-      sha512 = "153e781c6e4a530fad7631168afaaed74b0c8323317b1b4104cfffd8ee9250ae9af0ed9a0a0f157fc6745dfef7889402426c3d5e13d0c1b234fdaf952c9cb3aa";
+      sha512 = "fc35bb30011063bda8c256b6c405bffae55ae7d67ce5809367aaadaddb1094acfe0186f2cd84b2dceb55a76358ee46e29ec013058e035123a7797b5ac49b6e4d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/vi/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/vi/firefox-62.0.tar.bz2";
       locale = "vi";
       arch = "linux-i686";
-      sha512 = "1cc2e611316137b1d569d3c2617d41bddc48a8618a8937eab643ebdf94727139743b8bc6e1d18a7487e9d30f867ae1b7f77bfd528e0b535d122a4e8f9fcd311c";
+      sha512 = "0c6a94f811ba509dc468b31f9448eba7f1004e6652a418db8ef84d03d79ff850237bd7555b8f73d515f8a0c546df371a18bc51ccd3dad069bc481f58f9a4c989";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/xh/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/xh/firefox-62.0.tar.bz2";
       locale = "xh";
       arch = "linux-i686";
-      sha512 = "b0c4a093950fe90ad2249a5259843e7b3b4bdf2179b0c7ee61e1f965a4104636a53d7db0b91aaff3047cc7252855970f12e1b3bc4aa9e4f85d301652cb53c6c0";
+      sha512 = "b113f1f4a81a7cac63a8604a8152bf651ebee3ad48eaabef84d09d3576b37b529f56c04fc9fd1b3326364aeaefad77cc123a97b662c85665c7f239384f5c6d7c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/zh-CN/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/zh-CN/firefox-62.0.tar.bz2";
       locale = "zh-CN";
       arch = "linux-i686";
-      sha512 = "b3d1ea1e74ce5c7779bd1c7299197d0143688cc6bd9c4ae0b391e3849fec40c3142a9b7db19d3805616fa885deb16a6fdbe2fd23ddf0eac0fb0094498917d356";
+      sha512 = "7c3da83ebdfbcaf8a67ac8cf953d648dd3eb54d1c9f6e74680b00ef94e01a0384a53d27c4a78312e25e284209f3e4c53661958347e3250eb820a20873e66c3fd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/61.0.2/linux-i686/zh-TW/firefox-61.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/62.0/linux-i686/zh-TW/firefox-62.0.tar.bz2";
       locale = "zh-TW";
       arch = "linux-i686";
-      sha512 = "cda9d835f282746cb711054f1ed2f137e0f7e89c27429af12f470ed8984ea0c9a4f28e5cd403aa2f37fe0c06271c7651f794009ec11ddc64a96c4c661ca9ecb6";
+      sha512 = "659ea2bbd51d99a0c3573043a55ee580839e5f0323c57bb7b086ebc41a19f493baadecf67b64443b5abcf5db69e7e82e0c965a40b151d141557cda04b3ce6d52";
     }
     ];
 }
diff --git a/pkgs/applications/networking/browsers/firefox/packages.nix b/pkgs/applications/networking/browsers/firefox/packages.nix
index 984d80167c39..11222cc65ba3 100644
--- a/pkgs/applications/networking/browsers/firefox/packages.nix
+++ b/pkgs/applications/networking/browsers/firefox/packages.nix
@@ -20,10 +20,10 @@ rec {
 
   firefox = common rec {
     pname = "firefox";
-    version = "61.0.2";
+    version = "62.0";
     src = fetchurl {
       url = "mirror://mozilla/firefox/releases/${version}/source/firefox-${version}.source.tar.xz";
-      sha512 = "3zzcxqjpsn2m5z4l66rxrq7yf58aii370jj8pcl50smcd55sfsyknnc20agbppsw4k4pnwycfn57im33swwkjzg0hk0h2ng4rvi42x2";
+      sha512 = "0byxslbgr37sm1ra3wywl5c2a39qbkjwc227yp4j2l930m5j86m5g7rmv8zm944vv5vnyzmwhym972si229fm2lwq74p4xam5rfv948";
     };
 
     patches = nixpkgsPatches ++ [
@@ -60,6 +60,7 @@ rec {
 
     meta = firefox.meta // {
       description = "A web browser built from Firefox Extended Support Release source tree";
+      knownVulnerabilities = [ "Support ended in August 2018." ];
     };
     updateScript = callPackage ./update.nix {
       attrPath = "firefox-esr-52-unwrapped";
@@ -69,10 +70,10 @@ rec {
 
   firefox-esr-60 = common rec {
     pname = "firefox-esr";
-    version = "60.1.0esr";
+    version = "60.2.0esr";
     src = fetchurl {
       url = "mirror://mozilla/firefox/releases/${version}/source/firefox-${version}.source.tar.xz";
-      sha512 = "2bg7zvkpy1x2ryiazvk4nn5m94v0addbhrcrlcf9djnqjf14rp5q50lbiymhxxz0988vgpicsvizifb8gb3hi7b8g17rdw6438ddhh6";
+      sha512 = "1nf7nsycvzafvy4jjli5xh59d2mac17gfx91a1jh86f41w6qcsi3lvkfa8xhxsq8wfdsmqk1f4hmqzyx63h4m691qji7838g2nk49k7";
     };
 
     patches = nixpkgsPatches ++ [
diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/default.nix b/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/default.nix
index 72e1a08f40b3..07ef1397f9fb 100644
--- a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/default.nix
+++ b/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/default.nix
@@ -73,25 +73,25 @@ let
 in
 stdenv.mkDerivation rec {
   name = "flashplayer-${version}";
-  version = "30.0.0.154";
+  version = "31.0.0.108";
 
   src = fetchurl {
     url =
       if debug then
-        "https://fpdownload.macromedia.com/pub/flashplayer/updaters/30/flash_player_npapi_linux_debug.${arch}.tar.gz"
+        "https://fpdownload.macromedia.com/pub/flashplayer/updaters/31/flash_player_npapi_linux_debug.${arch}.tar.gz"
       else
         "https://fpdownload.adobe.com/get/flashplayer/pdc/${version}/flash_player_npapi_linux.${arch}.tar.gz";
     sha256 =
       if debug then
         if arch == "x86_64" then
-          "04hfh0vn1n70gdpfydq0sj94d6rkbk80h4pmy3rsfvhg0x540wx8"
+          "1mn29ahxjf6pdy2zp2na14cz46jrl88f54kp3bs3cz75syyizyb6"
         else
-          "073327sszbvkglh5b18axmwv40sy2vyacdhcd1fx82qskv44sfda"
+          "0inpj6bcsn5lh8gdv1wxpgipzrmpc553nhr68a55b2wff9fkv1ci"
       else
         if arch == "x86_64" then
-          "03ypgzy88ck5rn1q971v0km9yw3p10ly1zkxh239v6nx0hs35w84"
+          "1dfgsl5jf8ja9f7wwkzj5bfz1v5rdsyf4qhg1shqqldadmyyha7p"
         else
-          "0rld7i659ccp4gvcvdkqkc1lajvlss5d4qndzf9aqiksvdknv62x";
+          "0yiqwwqs3z9zzkfgqzjwqqdr2vaj1ia5xychs9fgxix3y4j934da";
   };
 
   nativeBuildInputs = [ unzip ];
diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/standalone.nix b/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/standalone.nix
index ba8a8de93209..03255e6eecc0 100644
--- a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/standalone.nix
+++ b/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/standalone.nix
@@ -49,19 +49,19 @@
 
 stdenv.mkDerivation rec {
   name = "flashplayer-standalone-${version}";
-  version = "30.0.0.154";
+  version = "31.0.0.108";
 
   src = fetchurl {
     url =
       if debug then
-        "https://fpdownload.macromedia.com/pub/flashplayer/updaters/30/flash_player_sa_linux_debug.x86_64.tar.gz"
+        "https://fpdownload.macromedia.com/pub/flashplayer/updaters/31/flash_player_sa_linux_debug.x86_64.tar.gz"
       else
-        "https://fpdownload.macromedia.com/pub/flashplayer/updaters/30/flash_player_sa_linux.x86_64.tar.gz";
+        "https://fpdownload.macromedia.com/pub/flashplayer/updaters/31/flash_player_sa_linux.x86_64.tar.gz";
     sha256 =
       if debug then
-        "133zhgc5fh6s0xr93lv70xcrgvaj7lhjxk5w7xz79h3mp185p3g4"
+        "0i047fvj3x9lx7x8bf7jl1ybf9xpmr6g77q0h7n2s8qvscsw0pmm"
       else
-        "1xz1l5q0zahalh0l4mkrwhmfrmcli3sckg3rcfnllizq9rbfzcmr";
+        "19wfs452ix57yfi4cy2din6mi5jky9hjzbdjny1bl8w32fy8xmm3";
   };
 
   nativeBuildInputs = [ unzip ];
diff --git a/pkgs/applications/networking/browsers/qtchan/default.nix b/pkgs/applications/networking/browsers/qtchan/default.nix
index f6bc05371f30..df956addf5cc 100644
--- a/pkgs/applications/networking/browsers/qtchan/default.nix
+++ b/pkgs/applications/networking/browsers/qtchan/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, qt, makeWrapper }:
+{ stdenv, fetchFromGitHub, fetchpatch, qt, makeWrapper }:
 
 stdenv.mkDerivation rec {
   name = "qtchan-${version}";
@@ -11,6 +11,13 @@ stdenv.mkDerivation rec {
     sha256 = "0n94jd6b1y8v6x5lkinr9rzm4bjg9xh9m7zj3j73pgq829gpmj3a";
   };
 
+  patches = [
+    (fetchpatch {
+      url = https://github.com/siavash119/qtchan/commit/718abeee5cf4aca8c99b35b26f43909362a29ee6.patch;
+      sha256 = "11b72l5njvfsyapd479hp4yfvwwb1mhq3f077hwgg0waz5l7n00z";
+    })
+  ];
+
   enableParallelBuilding = true;
   nativeBuildInputs = [ qt.qmake makeWrapper ];
   buildInputs = [ qt.qtbase ];
diff --git a/pkgs/applications/networking/browsers/qutebrowser/default.nix b/pkgs/applications/networking/browsers/qutebrowser/default.nix
index 47a273e99f98..b71eea791550 100644
--- a/pkgs/applications/networking/browsers/qutebrowser/default.nix
+++ b/pkgs/applications/networking/browsers/qutebrowser/default.nix
@@ -28,12 +28,12 @@ let
 
 in python3Packages.buildPythonApplication rec {
   pname = "qutebrowser";
-  version = "1.4.1";
+  version = "1.4.2";
 
   # the release tarballs are different from the git checkout!
   src = fetchurl {
     url = "https://github.com/qutebrowser/qutebrowser/releases/download/v${version}/${pname}-${version}.tar.gz";
-    sha256 = "0n2z92vb91gpfchdm9wsm712r9grbvxwdp4npl5c1nbq247dxwm3";
+    sha256 = "1pnj47mllg1x34qakxs7s59x8mj262nfhdxgihsb2h2ywjq4fpgx";
   };
 
   # Needs tox
@@ -55,10 +55,13 @@ in python3Packages.buildPythonApplication rec {
   propagatedBuildInputs = with python3Packages; [
     pyyaml pyqt5 jinja2 pygments
     pypeg2 cssutils pyopengl attrs
+    # scripts and userscripts libs
+    tldextract beautifulsoup4
+    pyreadability pykeepass stem
   ];
 
   postPatch = ''
-    sed -i "s,/usr/share/qutebrowser,$out/share/qutebrowser,g" qutebrowser/utils/standarddir.py
+    sed -i "s,/usr/share/,$out/share/,g" qutebrowser/utils/standarddir.py
   '' + lib.optionalString withPdfReader ''
     sed -i "s,/usr/share/pdf.js,${pdfjs},g" qutebrowser/browser/pdfjs.py
   '';
@@ -71,25 +74,36 @@ in python3Packages.buildPythonApplication rec {
     install -Dm644 doc/qutebrowser.1 "$out/share/man/man1/qutebrowser.1"
     install -Dm644 misc/qutebrowser.desktop \
         "$out/share/applications/qutebrowser.desktop"
+
+    # Install icons
     for i in 16 24 32 48 64 128 256 512; do
         install -Dm644 "icons/qutebrowser-''${i}x''${i}.png" \
             "$out/share/icons/hicolor/''${i}x''${i}/apps/qutebrowser.png"
     done
     install -Dm644 icons/qutebrowser.svg \
         "$out/share/icons/hicolor/scalable/apps/qutebrowser.svg"
+
+    # Install scripts
+    sed -i "s,/usr/bin/,$out/bin/,g" scripts/open_url_in_instance.sh
+    install -Dm755 -t "$out/share/qutebrowser/scripts/" $(find scripts -type f)
     install -Dm755 -t "$out/share/qutebrowser/userscripts/" misc/userscripts/*
-    install -Dm755 -t "$out/share/qutebrowser/scripts/" \
-      scripts/{importer.py,dictcli.py,keytester.py,open_url_in_instance.sh,utils.py}
+
+    # Patch python scripts
+    buildPythonPath "$out $propagatedBuildInputs"
+    scripts=$(grep -rl python "$out"/share/qutebrowser/{user,}scripts/)
+    for i in $scripts; do
+      patchPythonScript "$i"
+    done
   '';
 
   postFixup = lib.optionalString (! withWebEngineDefault) ''
     wrapProgram $out/bin/qutebrowser --add-flags "--backend webkit"
   '';
 
-  meta = {
-    homepage = https://github.com/The-Compiler/qutebrowser;
+  meta = with stdenv.lib; {
+    homepage    = https://github.com/The-Compiler/qutebrowser;
     description = "Keyboard-focused browser with a minimal GUI";
-    license = stdenv.lib.licenses.gpl3Plus;
-    maintainers = [ stdenv.lib.maintainers.jagajaga ];
+    license     = licenses.gpl3Plus;
+    maintainers = with maintainers; [ jagajaga rnhmjoj ];
   };
 }
diff --git a/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix b/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix
index ffa5d4472527..d9ff1b5c54d8 100644
--- a/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix
+++ b/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix
@@ -14,7 +14,7 @@
 , freetype
 , gdk_pixbuf
 , glib
-, gtk2
+, gtk3
 , libxcb
 , libX11
 , libXext
@@ -42,8 +42,10 @@
 # Wrapper runtime
 , coreutils
 , glibcLocales
-, hicolor-icon-theme
+, defaultIconTheme
+, runtimeShell
 , shared-mime-info
+, gsettings-desktop-schemas
 
 # Whether to disable multiprocess support to work around crashing tabs
 # TODO: fix the underlying problem instead of this terrible work-around
@@ -70,7 +72,7 @@ let
     freetype
     gdk_pixbuf
     glib
-    gtk2
+    gtk3
     libxcb
     libX11
     libXext
@@ -101,7 +103,7 @@ let
   fteLibPath = makeLibraryPath [ stdenv.cc.cc gmp ];
 
   # Upstream source
-  version = "7.5.6";
+  version = "8.0";
 
   lang = "en-US";
 
@@ -111,7 +113,7 @@ let
         "https://github.com/TheTorProject/gettorbrowser/releases/download/v${version}/tor-browser-linux64-${version}_${lang}.tar.xz"
         "https://dist.torproject.org/torbrowser/${version}/tor-browser-linux64-${version}_${lang}.tar.xz"
       ];
-      sha256 = "07z7lg5firyah0897pr04wqnbgf4mvsnk3gq2zgsg1rrwladxz5s";
+      sha256 = "139cizh33x3nzr0f4b2q3cchrv9l01n3c2v0v0mghq30hap55p79";
     };
 
     "i686-linux" = fetchurl {
@@ -119,7 +121,7 @@ let
         "https://github.com/TheTorProject/gettorbrowser/releases/download/v${version}/tor-browser-linux32-${version}_${lang}.tar.xz"
         "https://dist.torproject.org/torbrowser/${version}/tor-browser-linux32-${version}_${lang}.tar.xz"
       ];
-      sha256 = "1s0k82ch7ypjyc5k5rb4skb9ylnp7b9ipvf8gb7pdhb8m4zjk461";
+      sha256 = "1vw5wh193vs5x3wizz34m2nyzlxpn24727hdxqpiqwlhwhj7y3nx";
     };
   };
 in
@@ -154,10 +156,14 @@ stdenv.mkDerivation rec {
     pushd "$TBB_IN_STORE"
 
     # Set ELF interpreter
-    for exe in firefox TorBrowser/Tor/tor ; do
+    for exe in firefox.real TorBrowser/Tor/tor ; do
+      echo "Setting ELF interpreter on $exe ..." >&2
       patchelf --set-interpreter "$interp" "$exe"
     done
 
+    # firefox is a wrapper that checks for a more recent libstdc++ & appends it to the ld path
+    mv firefox.real firefox
+
     # The final libPath.  Note, we could split this into firefoxLibPath
     # and torLibPath for accuracy, but this is more convenient ...
     libPath=${libPath}:$TBB_IN_STORE:$TBB_IN_STORE/TorBrowser/Tor
@@ -219,7 +225,7 @@ stdenv.mkDerivation rec {
 
     // Insist on using IPC for communicating with Tor
     //
-    // Defaults to creating $TBB_HOME/TorBrowser/Data/Tor/{socks,control}.socket
+    // Defaults to creating \$TBB_HOME/TorBrowser/Data/Tor/{socks,control}.socket
     lockPref("extensions.torlauncher.control_port_use_ipc", true);
     lockPref("extensions.torlauncher.socks_port_use_ipc", true);
 
@@ -245,10 +251,6 @@ stdenv.mkDerivation rec {
     sed -i "$FONTCONFIG_FILE" \
         -e "s,<dir>fonts</dir>,<dir>$TBB_IN_STORE/fonts</dir>,"
 
-    # Move default extension overrides into distribution dir, to avoid
-    # having to synchronize between local state and store.
-    mv TorBrowser/Data/Browser/profile.default/preferences/extension-overrides.js defaults/pref/torbrowser.js
-
     # Preload extensions by moving into the runtime instead of storing under the
     # user's profile directory.
     mv "$TBB_IN_STORE/TorBrowser/Data/Browser/profile.default/extensions/"* \
@@ -264,14 +266,19 @@ stdenv.mkDerivation rec {
     EOF
 
     WRAPPER_XDG_DATA_DIRS=${concatMapStringsSep ":" (x: "${x}/share") [
-      hicolor-icon-theme
+      defaultIconTheme
       shared-mime-info
     ]}
+    WRAPPER_XDG_DATA_DIRS+=":"${concatMapStringsSep ":" (x: "${x}/share/gsettings-schemas/${x.name}") [
+      glib
+      gsettings-desktop-schemas
+      gtk3
+    ]};
 
     # Generate wrapper
     mkdir -p $out/bin
     cat > "$out/bin/tor-browser" << EOF
-    #! ${stdenv.shell}
+    #! ${runtimeShell}
     set -o errexit -o nounset
 
     PATH=${makeBinPath [ coreutils ]}
@@ -384,11 +391,7 @@ stdenv.mkDerivation rec {
     cp $desktopItem/share/applications"/"* $out/share/applications
     sed -i $out/share/applications/torbrowser.desktop \
         -e "s,Exec=.*,Exec=$out/bin/tor-browser," \
-        -e "s,Icon=.*,Icon=$out/share/pixmaps/torbrowser.png,"
-
-    # Install icons
-    mkdir -p $out/share/pixmaps
-    cp browser/icons/mozicon128.png $out/share/pixmaps/torbrowser.png
+        -e "s,Icon=.*,Icon=web-browser,"
 
     # Check installed apps
     echo "Checking bundled Tor ..."
diff --git a/pkgs/applications/networking/browsers/vivaldi/chromium-gcc-r1.patch b/pkgs/applications/networking/browsers/vivaldi/chromium-gcc-r1.patch
deleted file mode 100644
index 036d57b601da..000000000000
--- a/pkgs/applications/networking/browsers/vivaldi/chromium-gcc-r1.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-diff --git a/base/numerics/safe_math_shared_impl.h b/base/numerics/safe_math_shared_impl.h
-index 99f230ce7e9a..de2415d402f5 100644
---- a/base/numerics/safe_math_shared_impl.h
-+++ b/base/numerics/safe_math_shared_impl.h
-@@ -21,8 +21,7 @@
- #if !defined(__native_client__) &&                         \
-     ((defined(__clang__) &&                                \
-       ((__clang_major__ > 3) ||                            \
--       (__clang_major__ == 3 && __clang_minor__ >= 4))) || \
--     (defined(__GNUC__) && __GNUC__ >= 5))
-+       (__clang_major__ == 3 && __clang_minor__ >= 4))))
- #include "base/numerics/safe_math_clang_gcc_impl.h"
- #define BASE_HAS_OPTIMIZED_SAFE_MATH (1)
- #else
\ No newline at end of file
diff --git a/pkgs/applications/networking/browsers/vivaldi/chromium-gcc5-r1.patch b/pkgs/applications/networking/browsers/vivaldi/chromium-gcc5-r1.patch
deleted file mode 100644
index 8d2886fbfa94..000000000000
--- a/pkgs/applications/networking/browsers/vivaldi/chromium-gcc5-r1.patch
+++ /dev/null
@@ -1,66 +0,0 @@
---- a/chrome/browser/devtools/devtools_file_system_indexer.cc
-+++ b/chrome/browser/devtools/devtools_file_system_indexer.cc
-@@ -34,7 +34,6 @@ using base::TimeDelta;
- using base::TimeTicks;
- using content::BrowserThread;
- using std::map;
--using std::set;
- using std::string;
- using std::vector;
- 
-@@ -191,7 +190,7 @@ vector<FilePath> Index::Search(const string& query) {
-     if (trigram != kUndefinedTrigram)
-       trigrams.push_back(trigram);
-   }
--  set<FileId> file_ids;
-+  std::set<FileId> file_ids;
-   bool first = true;
-   vector<Trigram>::const_iterator it = trigrams.begin();
-   for (; it != trigrams.end(); ++it) {
-@@ -203,7 +202,7 @@ vector<FilePath> Index::Search(const string& query) {
-       first = false;
-       continue;
-     }
--    set<FileId> intersection = base::STLSetIntersection<set<FileId> >(
-+    std::set<FileId> intersection = base::STLSetIntersection<std::set<FileId> >(
-         file_ids, index_[trigram]);
-     file_ids.swap(intersection);
-   }
-diff --git a/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h b/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h
-index 94bb9161ec85..e40c6387f72e 100644
---- a/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h
-+++ b/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h
-@@ -63,7 +63,7 @@ class WTF_EXPORT ArrayBufferContents {
-           allocation_length_(0),
-           data_(data),
-           data_length_(0),
--          kind_(AllocationKind::kNormal),
-+          kind_(WTF::ArrayBufferContents::AllocationKind::kNormal),
-           deleter_(deleter) {}
-     DataHandle(void* allocation_base,
-                size_t allocation_length,
-@@ -94,11 +94,11 @@ class WTF_EXPORT ArrayBufferContents {
-              reinterpret_cast<uintptr_t>(allocation_base_) +
-                  allocation_length_);
-       switch (kind_) {
--        case AllocationKind::kNormal:
-+        case WTF::ArrayBufferContents::AllocationKind::kNormal:
-           DCHECK(deleter_);
-           deleter_(data_);
-           return;
--        case AllocationKind::kReservation:
-+        case WTF::ArrayBufferContents::AllocationKind::kReservation:
-           ReleaseReservedMemory(allocation_base_, allocation_length_);
-           return;
-       }
---- a/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.orig	2017-08-15 12:45:59.433532111 +0000
-+++ b/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc	2017-08-15 17:52:59.691328825 +0000
-@@ -10,7 +10,7 @@
- 
- #include "webrtc/modules/audio_processing/aec3/aec_state.h"
- 
--#include <math.h>
-+#include <cmath>
- #include <numeric>
- #include <vector>
- 
\ No newline at end of file
diff --git a/pkgs/applications/networking/browsers/vivaldi/chromium-gn-bootstrap-r14.patch b/pkgs/applications/networking/browsers/vivaldi/chromium-gn-bootstrap-r14.patch
deleted file mode 100644
index 624267153669..000000000000
--- a/pkgs/applications/networking/browsers/vivaldi/chromium-gn-bootstrap-r14.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-commit 96c271f8ab2be7ea4199078ea65ac50c6ada4685
-Author: Pawel Hajdan, Jr <phajdan.jr@chromium.org>
-Date:   Wed Jul 26 21:51:54 2017 +0000
-
-    wip
-
-diff --git a/tools/gn/bootstrap/bootstrap.py b/tools/gn/bootstrap/bootstrap.py
-index 1390560f8e37..ff2ae57c46b0 100755
---- a/tools/gn/bootstrap/bootstrap.py
-+++ b/tools/gn/bootstrap/bootstrap.py
-@@ -449,6 +449,7 @@ def write_gn_ninja(path, root_gen_dir, options):
-       'base/metrics/histogram_base.cc',
-       'base/metrics/histogram_functions.cc',
-       'base/metrics/histogram_samples.cc',
-+      'base/metrics/histogram_snapshot_manager.cc',
-       'base/metrics/metrics_hashes.cc',
-       'base/metrics/persistent_histogram_allocator.cc',
-       'base/metrics/persistent_memory_allocator.cc',
-@@ -534,7 +535,7 @@ def write_gn_ninja(path, root_gen_dir, options):
-       'base/trace_event/heap_profiler_allocation_context_tracker.cc',
-       'base/trace_event/heap_profiler_allocation_register.cc',
-       'base/trace_event/heap_profiler_event_filter.cc',
--      'base/trace_event/heap_profiler_event_writer.cc',
-+      'base/trace_event/heap_profiler_heap_dump_writer.cc',
-       'base/trace_event/heap_profiler_serialization_state.cc',
-       'base/trace_event/heap_profiler_stack_frame_deduplicator.cc',
-       'base/trace_event/heap_profiler_type_name_deduplicator.cc',
\ No newline at end of file
diff --git a/pkgs/applications/networking/browsers/vivaldi/default.nix b/pkgs/applications/networking/browsers/vivaldi/default.nix
index e6902aadd906..1c45efaddf81 100644
--- a/pkgs/applications/networking/browsers/vivaldi/default.nix
+++ b/pkgs/applications/networking/browsers/vivaldi/default.nix
@@ -13,11 +13,11 @@
 stdenv.mkDerivation rec {
   name = "${product}-${version}";
   product = "vivaldi";
-  version = "1.15.1147.42-1";
+  version = "1.15.1147.64-1";
 
   src = fetchurl {
     url = "https://downloads.vivaldi.com/stable/${product}-stable_${version}_amd64.deb";
-    sha256 = "15cajvn2sv05qdp3y538n2xvyy3il49q8zi5928z1mfirjz3dlwh";
+    sha256 = "01xbfrrq2kj75cb6grpq9a4y88j1s87h2nnvy1fmyb4a2db6y0ag";
   };
 
   unpackPhase = ''
diff --git a/pkgs/applications/networking/browsers/vivaldi/ffmpeg-codecs.nix b/pkgs/applications/networking/browsers/vivaldi/ffmpeg-codecs.nix
index ab2c24727d7c..87ca350731db 100644
--- a/pkgs/applications/networking/browsers/vivaldi/ffmpeg-codecs.nix
+++ b/pkgs/applications/networking/browsers/vivaldi/ffmpeg-codecs.nix
@@ -1,37 +1,33 @@
 { stdenv, fetchurl
-, dbus-glib, gtk2, gtk3, libexif, libpulseaudio, libXScrnSaver, ninja, nss
-, pciutils, pkgconfig, python2, xdg_utils
+, dbus-glib, gtk3, libexif, libXScrnSaver, ninja, nss
+, pciutils, pkgconfig, python2, xdg_utils, gn
 }:
 
 stdenv.mkDerivation rec {
   name = "${product}-${version}";
   product = "vivaldi-ffmpeg-codecs";
-  version = "61.0.3163.91";
+  version = "69.0.3497.73";
 
   src = fetchurl {
     url = "https://commondatastorage.googleapis.com/chromium-browser-official/chromium-${version}.tar.xz";
-    sha512 = "3f07vwbxllrwy3agqxa6ndcix23vai18i178zscmk0y68flhzffyjdvrwlg7dzlwgiqypj2cyl21qb4qmcay2ilgw9vnr9fql2x0w7p";
+    sha512 = "3qyzxdybiszwy62izr35wffnh1a1plg9y536vrmd4b2xl8p4nz18c7439blr0cdzsr5qplgrdl64446a27mkyhbw8c3iy0gb4zgb5j9";
   };
 
   buildInputs = [ ];
 
   nativeBuildInputs = [
-    dbus-glib gtk2 gtk3 libexif libpulseaudio libXScrnSaver ninja nss pciutils pkgconfig
-    python2 xdg_utils
+    gtk3 libexif libXScrnSaver ninja nss pciutils python2 xdg_utils gn
+    pkgconfig dbus-glib
   ];
 
   patches = [
-    ./chromium-gn-bootstrap-r14.patch
-    ./chromium-gcc-r1.patch
-    ./chromium-gcc5-r1.patch
   ];
 
   configurePhase = ''
     runHook preConfigure
 
-    local args="ffmpeg_branding=\"ChromeOS\" proprietary_codecs=true enable_hevc_demuxing=true use_gconf=false use_gio=false use_gnome_keyring=false use_kerberos=false use_cups=false use_sysroot=false use_gold=false linux_use_bundled_binutils=false fatal_linker_warnings=false treat_warnings_as_errors=false is_clang=false is_component_build=true is_debug=false symbol_level=0"
-    python tools/gn/bootstrap/bootstrap.py -v -s --no-clean --gn-gen-args "$args"
-    out/Release/gn gen out/Release -v --args="$args"
+    local args="ffmpeg_branding=\"ChromeOS\" proprietary_codecs=true enable_hevc_demuxing=true use_gnome_keyring=false use_sysroot=false use_gold=false use_allocator=\"none\" linux_use_bundled_binutils=false fatal_linker_warnings=false treat_warnings_as_errors=false enable_nacl=false enable_nacl_nonsfi=false is_clang=false clang_use_chrome_plugins=false is_component_build=true is_debug=false symbol_level=0 use_custom_libcxx=false use_lld=false use_jumbo_build=false"
+    gn gen out/Release -v --args="$args"
 
     runHook postConfigure
   '';
@@ -53,6 +49,5 @@ stdenv.mkDerivation rec {
     license     = licenses.lgpl21;
     maintainers = with maintainers; [ lluchs ];
     platforms   = [ "x86_64-linux" ];
-    broken = true;
   };
 }
diff --git a/pkgs/applications/networking/browsers/vivaldi/update.sh b/pkgs/applications/networking/browsers/vivaldi/update.sh
index 6ef6206c4f4a..0b1787176399 100755
--- a/pkgs/applications/networking/browsers/vivaldi/update.sh
+++ b/pkgs/applications/networking/browsers/vivaldi/update.sh
@@ -26,11 +26,12 @@ hash=${prefetch[0]}
 path=${prefetch[1]}
 
 echo "vivaldi: $vivaldi_version_old -> $vivaldi_version"
+echo "$path"
 (cd "$root" && update-source-version vivaldi "$vivaldi_version" "$hash")
 
 # Check vivaldi-ffmpeg-codecs version.
 chromium_version_old=$(version vivaldi-ffmpeg-codecs)
-chromium_version=$(bsdtar xOf "$path" data.tar.xz | bsdtar xOf - ./opt/vivaldi/vivaldi-bin | strings | grep -A2 -i '^chrome\/' | grep '^[0-9]\+\.[0-9]\+\.[1-9][0-9]\+\.[0-9]\+')
+chromium_version=$(bsdtar xOf "$path" data.tar.xz | bsdtar xOf - ./opt/vivaldi/vivaldi-bin | strings | grep '^[0-9]\{2,\}\.[0-9]\+\.[0-9]\{4,\}\+\.[0-9]\+$')
 
 if [[ "$chromium_version" != "$chromium_version_old" ]]; then
 	echo "vivaldi-ffmpeg-codecs: $chromium_version_old -> $chromium_version"
diff --git a/pkgs/applications/networking/charles/default.nix b/pkgs/applications/networking/charles/default.nix
index 8a60023b4350..3f019d177023 100644
--- a/pkgs/applications/networking/charles/default.nix
+++ b/pkgs/applications/networking/charles/default.nix
@@ -14,11 +14,11 @@ let
 
 in stdenv.mkDerivation rec {
   name = "charles-${version}";
-  version = "4.2.6";
+  version = "4.2.7";
 
   src = fetchurl {
     url = "https://www.charlesproxy.com/assets/release/${version}/charles-proxy-${version}.tar.gz";
-    sha256 = "1hjfimyr9nnbbxadwni02d2xl64ybarh42l1g6hlslq5qwl8ywzb";
+    sha256 = "1nycw3wpbfwj4ijjaq5k0f4xipj8j605fs0yjzgl66gmv7r583rd";
   };
 
   buildInputs = [ makeWrapper ];
diff --git a/pkgs/applications/networking/cluster/click/default.nix b/pkgs/applications/networking/cluster/click/default.nix
index 7fd4cd9fa824..2c7a026b277e 100644
--- a/pkgs/applications/networking/cluster/click/default.nix
+++ b/pkgs/applications/networking/cluster/click/default.nix
@@ -4,17 +4,18 @@ with rustPlatform;
 
 buildRustPackage rec {
   name = "click-${version}";
-  version = "0.3.1";
-  rev = "b5dfb4a8f8344330a098cb61523695dfe0fd296a";
+  version = "0.3.2";
 
   src = fetchFromGitHub {
+    rev = "v${version}";
     owner = "databricks";
     repo = "click";
-    sha256 = "0a2hq4hcxkkx7gs5dv7sr3j5jy2dby4r6y090z7zl2xy5wydr7bi";
-    inherit rev;
+    sha256 = "0sbj41kypn637z1w115w2h5v6bxz3y6w5ikgpx3ihsh89lkc19d2";
   };
 
-  cargoSha256 = "03vgbkv9xsnx44vivbbhjgxv9drp0yjnimgy6hwm32x74r00k3hj";
+  cargoSha256 = "05asqp5312a1g26pvf5hgqhc4kj3iw2hdvml2ycvga33sxb7zm7r";
+
+  patches = [ ./fix_cargo_lock_version.patch ];
 
   buildInputs = stdenv.lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.Security ];
 
diff --git a/pkgs/applications/networking/cluster/click/fix_cargo_lock_version.patch b/pkgs/applications/networking/cluster/click/fix_cargo_lock_version.patch
new file mode 100644
index 000000000000..bc4db7ef7c12
--- /dev/null
+++ b/pkgs/applications/networking/cluster/click/fix_cargo_lock_version.patch
@@ -0,0 +1,13 @@
+diff --git a/Cargo.lock b/Cargo.lock
+index ff80350..c86c6fe 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -111,7 +111,7 @@ dependencies = [
+
+ [[package]]
+ name = "click"
+-version = "0.3.1"
++version = "0.3.2"
+ dependencies = [
+  "ansi_term 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
+  "base64 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)",
diff --git a/pkgs/applications/networking/cluster/cni/plugins.nix b/pkgs/applications/networking/cluster/cni/plugins.nix
index 8a006edda6a8..6cecd3bd66ca 100644
--- a/pkgs/applications/networking/cluster/cni/plugins.nix
+++ b/pkgs/applications/networking/cluster/cni/plugins.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "cni-plugins-${version}";
-  version = "0.7.1";
+  version = "0.7.3";
 
   src = fetchFromGitHub {
     owner = "containernetworking";
     repo = "plugins";
     rev = "v${version}";
-    sha256 = "1sywllwnr6lc812sgkqjdd3y10r82shl88dlnwgnbgzs738q2vp2";
+    sha256 = "1saaszzxy4x3jkqd9ac6cphmzfim7x84h28c9i7az46px40blzm1";
   };
 
   buildInputs = [ go ];
diff --git a/pkgs/applications/networking/cluster/flink/default.nix b/pkgs/applications/networking/cluster/flink/default.nix
index 402a03b77f4a..fe7b73a9e9bc 100644
--- a/pkgs/applications/networking/cluster/flink/default.nix
+++ b/pkgs/applications/networking/cluster/flink/default.nix
@@ -1,25 +1,15 @@
 { stdenv, fetchurl, makeWrapper, jre
-, version ? "1.5" }:
+, version ? "1.6" }:
 
 let
   versionMap = {
-    "1.3" = {
-      flinkVersion = "1.3.3";
-      scalaVersion = "2.11";
-      sha256 = "0gfm48k5adr14gnhqri9cd01i9dprd0nwmnnz3yrpd20nq4ap4qy";
-      hadoopBundle = "-hadoop27";
-    };
-    "1.4" = {
-      flinkVersion = "1.4.2";
-      scalaVersion = "2.11";
-      sha256 = "0x3cikys5brin0kx9zr69xfp8k5w6g8141yrrr26ks7gpss2x636";
-      hadoopBundle = "";
-    };
     "1.5" = {
-      flinkVersion = "1.5.0";
-      scalaVersion = "2.11";
-      sha256 = "0n5023dj8ivmbhqxmb3abmfh3ahb9vmcywq5i0ll5p7xxcw2c1cv";
-      hadoopBundle = "";
+      flinkVersion = "1.5.3";
+      sha256 = "1fq7pd5qpchkkwhh30h3l9rhf298jfcfv2dc50z39qmwwijdjajk";
+    };
+    "1.6" = {
+      flinkVersion = "1.6.0";
+      sha256 = "18fnpldzs36qx7myr9rmym9g9p3qkgnd1z3lfkpbaw590ddaqr9i";
     };
   };
 in
@@ -30,7 +20,7 @@ stdenv.mkDerivation rec {
   name = "flink-${flinkVersion}";
 
   src = fetchurl {
-    url = "mirror://apache/flink/${name}/${name}-bin${hadoopBundle}-scala_${scalaVersion}.tgz";
+    url = "mirror://apache/flink/${name}/${name}-bin-scala_2.11.tgz";
     inherit sha256;
   };
 
diff --git a/pkgs/applications/networking/cluster/helm/default.nix b/pkgs/applications/networking/cluster/helm/default.nix
index d09e65a4caae..bd00404b536b 100644
--- a/pkgs/applications/networking/cluster/helm/default.nix
+++ b/pkgs/applications/networking/cluster/helm/default.nix
@@ -5,10 +5,10 @@ let
          then "linux-amd64"
          else "darwin-amd64";
   checksum = if isLinux
-             then "1fk6w6sajdi6iphxrzi9r7xfyaf923nxcqnl01s6x3f611fjvbjn"
-             else "1jzgy641hm3khj0bakfbr5wd5zl3s7w5jb622fjv2jxwmnv7dxiv";
+             then "1zig6ihmxcaw2wsbdd85yf1zswqcifw0hvbp1zws7r5ihd4yv8hg"
+             else "1l8y9i8vhibhwbn5kn5qp722q4dcx464kymlzy2bkmhiqbxnnkkw";
   pname = "helm";
-  version = "2.9.1";
+  version = "2.10.0";
 in
 stdenv.mkDerivation {
   name = "${pname}-${version}";
diff --git a/pkgs/applications/networking/cluster/heptio-ark/default.nix b/pkgs/applications/networking/cluster/heptio-ark/default.nix
index 1860874c436c..f786bff01d62 100644
--- a/pkgs/applications/networking/cluster/heptio-ark/default.nix
+++ b/pkgs/applications/networking/cluster/heptio-ark/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   name = "heptio-ark-${version}";
-  version = "0.9.0";
+  version = "0.9.4";
 
   goPackagePath = "github.com/heptio/ark";
 
@@ -10,7 +10,7 @@ buildGoPackage rec {
     rev = "v${version}";
     owner = "heptio";
     repo = "ark";
-    sha256 = "0b3jsgs35l8kk63pjnqn3911pyb397fyvsmd3jd8vzjawisgpdp7";
+    sha256 = "01z0zkw7l6haxky9l45iqqnvs6104xx4195jm250nv9j1x8n59ai";
   };
 
   postInstall = "rm $bin/bin/generate";
diff --git a/pkgs/applications/networking/cluster/kops/default.nix b/pkgs/applications/networking/cluster/kops/default.nix
index 5f7a2e8e2843..6ffe40d6a3de 100644
--- a/pkgs/applications/networking/cluster/kops/default.nix
+++ b/pkgs/applications/networking/cluster/kops/default.nix
@@ -3,7 +3,7 @@
 
 buildGoPackage rec {
   name = "kops-${version}";
-  version = "1.9.0";
+  version = "1.10.0";
 
   goPackagePath = "k8s.io/kops";
 
@@ -11,7 +11,7 @@ buildGoPackage rec {
     rev = version;
     owner = "kubernetes";
     repo = "kops";
-    sha256 = "03avkm7gk2dqyvd7245qsca1sbhwk41j9yhc208gcmjgjhkx2vn7";
+    sha256 = "1ga83sbhvhcazran6xfwgv95sg8ygg2w59vql0yjicj8r2q01vqp";
   };
 
   buildInputs = [go-bindata];
diff --git a/pkgs/applications/networking/cluster/kubernetes/default.nix b/pkgs/applications/networking/cluster/kubernetes/default.nix
index 01bf3467af95..96dab6aa66a1 100644
--- a/pkgs/applications/networking/cluster/kubernetes/default.nix
+++ b/pkgs/applications/networking/cluster/kubernetes/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchFromGitHub, removeReferencesTo, which, go_1_9, go-bindata, makeWrapper, rsync
+{ stdenv, lib, fetchFromGitHub, removeReferencesTo, which, go_1_10, go-bindata, makeWrapper, rsync
 , components ? [
     "cmd/kubeadm"
     "cmd/kubectl"
@@ -15,17 +15,16 @@ with lib;
 
 stdenv.mkDerivation rec {
   name = "kubernetes-${version}";
-  version = "1.10.5";
+  version = "1.11.3";
 
   src = fetchFromGitHub {
     owner = "kubernetes";
     repo = "kubernetes";
     rev = "v${version}";
-    sha256 = "1k6ayb43l68l0qw31cc4k1pwvm8aks3l2xm0gdxdxbbww1mnzix2";
+    sha256 = "1gwb5gs9l0adv3qc70wf8dwvbjh1mmgd3hh1jkwsbbnach28dvzb";
   };
 
-  # Build using golang v1.9 in accordance with https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG-1.10.md#external-dependencies
-  buildInputs = [ removeReferencesTo makeWrapper which go_1_9 rsync go-bindata ];
+  buildInputs = [ removeReferencesTo makeWrapper which go_1_10 rsync go-bindata ];
 
   outputs = ["out" "man" "pause"];
 
@@ -39,7 +38,7 @@ stdenv.mkDerivation rec {
     patchShebangs ./hack
   '';
 
-  WHAT="--use_go_build ${concatStringsSep " " components}";
+  WHAT="${concatStringsSep " " components}";
 
   postBuild = ''
     ./hack/generate-docs.sh
@@ -53,8 +52,11 @@ stdenv.mkDerivation rec {
     cp build/pause/pause "$pause/bin/pause"
     cp -R docs/man/man1 "$man/share/man"
 
+    cp cluster/addons/addon-manager/namespace.yaml $out/share
     cp cluster/addons/addon-manager/kube-addons.sh $out/bin/kube-addons
     patchShebangs $out/bin/kube-addons
+    substituteInPlace $out/bin/kube-addons \
+      --replace /opt/namespace.yaml $out/share/namespace.yaml
     wrapProgram $out/bin/kube-addons --set "KUBECTL_BIN" "$out/bin/kubectl"
 
     $out/bin/kubectl completion bash > $out/share/bash-completion/completions/kubectl
@@ -62,7 +64,7 @@ stdenv.mkDerivation rec {
   '';
 
   preFixup = ''
-    find $out/bin $pause/bin -type f -exec remove-references-to -t ${go_1_9} '{}' +
+    find $out/bin $pause/bin -type f -exec remove-references-to -t ${go_1_10} '{}' +
   '';
 
   meta = {
diff --git a/pkgs/applications/networking/cluster/terraform-landscape/Gemfile.lock b/pkgs/applications/networking/cluster/terraform-landscape/Gemfile.lock
index ccc2294b6a09..0b5a091fbb43 100644
--- a/pkgs/applications/networking/cluster/terraform-landscape/Gemfile.lock
+++ b/pkgs/applications/networking/cluster/terraform-landscape/Gemfile.lock
@@ -2,12 +2,12 @@ GEM
   remote: https://rubygems.org/
   specs:
     colorize (0.8.1)
-    commander (4.4.5)
+    commander (4.4.6)
       highline (~> 1.7.2)
     diffy (3.2.1)
     highline (1.7.10)
     polyglot (0.3.5)
-    terraform_landscape (0.1.18)
+    terraform_landscape (0.2.0)
       colorize (~> 0.7)
       commander (~> 4.4)
       diffy (~> 3.0)
diff --git a/pkgs/applications/networking/cluster/terraform-landscape/default.nix b/pkgs/applications/networking/cluster/terraform-landscape/default.nix
index a0dca341ff3e..aa5235068505 100644
--- a/pkgs/applications/networking/cluster/terraform-landscape/default.nix
+++ b/pkgs/applications/networking/cluster/terraform-landscape/default.nix
@@ -1,19 +1,18 @@
-{ lib, bundlerEnv, ruby }:
+{ lib, bundlerApp, ruby }:
+let
+  version = (import ./gemset.nix).terraform_landscape.version;
+in bundlerApp {
+  pname = "terraform_landscape";
 
-bundlerEnv rec {
-  name = "terraform-landscape-${version}";
-
-  version = (import gemset).terraform_landscape.version;
   inherit ruby;
-  gemfile = ./Gemfile;
-  lockfile = ./Gemfile.lock;
-  gemset = ./gemset.nix;
+  gemdir = ./.;
+  exes = [ "landscape" ];
 
   meta = with lib; {
     description = "Improve Terraform's plan output to be easier to read and understand";
     homepage    = https://github.com/coinbase/terraform-landscape;
     license     = with licenses; apsl20;
-    maintainers = with maintainers; [ mbode ];
+    maintainers = with maintainers; [ mbode manveru ];
     platforms   = platforms.unix;
   };
 }
diff --git a/pkgs/applications/networking/cluster/terraform-landscape/gemset.nix b/pkgs/applications/networking/cluster/terraform-landscape/gemset.nix
index 8dd57af4c73b..5c3946f3212e 100644
--- a/pkgs/applications/networking/cluster/terraform-landscape/gemset.nix
+++ b/pkgs/applications/networking/cluster/terraform-landscape/gemset.nix
@@ -1,5 +1,7 @@
 {
   colorize = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "133rqj85n400qk6g3dhf2bmfws34mak1wqihvh3bgy9jhajw580b";
@@ -9,14 +11,18 @@
   };
   commander = {
     dependencies = ["highline"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0sry6raysvg9qsx5nqqw09n8r8hvcsqzvci7xp2qk7jq3s9mgvnn";
+      sha256 = "11sd2sb0id2dbxkv4pvymdiia1xxhms45kh4nr8mryqybad0fwwf";
       type = "gem";
     };
-    version = "4.4.5";
+    version = "4.4.6";
   };
   diffy = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "119imrkn01agwhx5raxhknsi331y5i4yda7r0ws0an6905ximzjg";
@@ -25,6 +31,8 @@
     version = "3.2.1";
   };
   highline = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "01ib7jp85xjc4gh4jg0wyzllm46hwv8p0w1m4c75pbgi41fps50y";
@@ -33,6 +41,8 @@
     version = "1.7.10";
   };
   polyglot = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1bqnxwyip623d8pr29rg6m8r0hdg08fpr2yb74f46rn1wgsnxmjr";
@@ -42,15 +52,19 @@
   };
   terraform_landscape = {
     dependencies = ["colorize" "commander" "diffy" "treetop"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0476q2kx88w9srj7rlzl6skrza3pdgyym7zksw78infsb2105lg9";
+      sha256 = "1mlpbsmysyhhbjx40gbwxr4mx7d3qpblbf5ms2v607b8a3saapzj";
       type = "gem";
     };
-    version = "0.1.18";
+    version = "0.2.0";
   };
   treetop = {
     dependencies = ["polyglot"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0g31pijhnv7z960sd09lckmw9h8rs3wmc8g4ihmppszxqm99zpv7";
diff --git a/pkgs/applications/networking/corebird/default.nix b/pkgs/applications/networking/corebird/default.nix
index 56947d6650e4..5dd4cbb52c2a 100644
--- a/pkgs/applications/networking/corebird/default.nix
+++ b/pkgs/applications/networking/corebird/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchFromGitHub, glib, gtk3, json-glib, sqlite, libsoup, gettext, vala_0_40
 , meson, ninja, pkgconfig, gnome3, gst_all_1, wrapGAppsHook, gobjectIntrospection
-, glib-networking }:
+, glib-networking, python3 }:
 
 stdenv.mkDerivation rec {
   version = "1.7.4";
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [
-    meson ninja vala_0_40 pkgconfig wrapGAppsHook
+    meson ninja vala_0_40 pkgconfig wrapGAppsHook python3
     gobjectIntrospection # for setup hook
   ];
 
diff --git a/pkgs/applications/networking/feedreaders/feedreader/default.nix b/pkgs/applications/networking/feedreaders/feedreader/default.nix
index d2991c3ba1c9..158b02cff5b9 100644
--- a/pkgs/applications/networking/feedreaders/feedreader/default.nix
+++ b/pkgs/applications/networking/feedreaders/feedreader/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, meson, ninja, pkgconfig, vala_0_40, gettext
+{ stdenv, fetchFromGitHub, meson, ninja, pkgconfig, vala_0_40, gettext, python3
 , appstream-glib, desktop-file-utils, glibcLocales, wrapGAppsHook
 , curl, glib, gnome3, gst_all_1, json-glib, libnotify, libsecret, sqlite
 }:
@@ -18,7 +18,7 @@ in stdenv.mkDerivation {
 
   nativeBuildInputs = [
     meson ninja pkgconfig vala_0_40 gettext appstream-glib desktop-file-utils
-    glibcLocales wrapGAppsHook
+    python3 glibcLocales wrapGAppsHook
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/networking/ftp/taxi/default.nix b/pkgs/applications/networking/ftp/taxi/default.nix
new file mode 100644
index 000000000000..503b685ce28c
--- /dev/null
+++ b/pkgs/applications/networking/ftp/taxi/default.nix
@@ -0,0 +1,47 @@
+{ stdenv, fetchFromGitHub, vala, pkgconfig, meson, ninja, python3, granite
+, gtk3, gnome3, libsoup, libsecret, gobjectIntrospection, wrapGAppsHook }:
+
+stdenv.mkDerivation rec {
+  pname = "taxi";
+  version = "0.0.1";
+
+  name = "${pname}-${version}";
+
+  src = fetchFromGitHub {
+    owner = "Alecaddd";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "01c552w68576pnsyqbwy3hjhbww6vys3r3s0wxjdiscjqj1aawqg";
+  };
+
+  nativeBuildInputs = [
+    gobjectIntrospection
+    meson
+    ninja
+    pkgconfig
+    python3
+    vala
+    wrapGAppsHook
+  ];
+
+  buildInputs = [
+    gnome3.libgee
+    granite
+    gtk3
+    libsecret
+    libsoup
+  ];
+
+  postPatch = ''
+    chmod +x meson/post_install.py
+    patchShebangs meson/post_install.py
+  '';
+
+  meta = with stdenv.lib; {
+    description = "The FTP Client that drives you anywhere";
+    homepage    = https://github.com/Alecaddd/taxi;
+    license     = licenses.gpl3Plus;
+    maintainers = with maintainers; [ worldofpeace ];
+    platforms   = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/networking/gns3/default.nix b/pkgs/applications/networking/gns3/default.nix
index 5c66c5a5298b..4260c3608522 100644
--- a/pkgs/applications/networking/gns3/default.nix
+++ b/pkgs/applications/networking/gns3/default.nix
@@ -1,7 +1,7 @@
 { callPackage, stdenv }:
 
 let
-  stableVersion = "2.1.9";
+  stableVersion = "2.1.10";
   # Currently there is no preview version.
   previewVersion = stableVersion;
   addVersion = args:
@@ -10,8 +10,8 @@ let
     in args // { inherit version branch; };
   mkGui = args: callPackage (import ./gui.nix (addVersion args)) { };
   mkServer = args: callPackage (import ./server.nix (addVersion args)) { };
-  guiSrcHash = "0gpif6f7zqz2n8q3pkr8xv3fdc904hq69661w8f1fna360xvksd7";
-  serverSrcHash = "1y19jzyyz0sjjxkrpgr6z10irb47v7d8khdvk5nzmgnjfxv875yx";
+  guiSrcHash = "0vn33dcd3sfj5gna79vwm35l8aznga91a8r7i6q06dr4c2svml15";
+  serverSrcHash = "062dai1rb04dyrlrjgk0gr5hx0la8n1nalx0il1i7k1inwy52gj5";
 in {
   guiStable = mkGui {
     stable = true;
diff --git a/pkgs/applications/networking/google-drive-ocamlfuse/default.nix b/pkgs/applications/networking/google-drive-ocamlfuse/default.nix
index 87ef5f2a41a2..ff099a909c75 100644
--- a/pkgs/applications/networking/google-drive-ocamlfuse/default.nix
+++ b/pkgs/applications/networking/google-drive-ocamlfuse/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchFromGitHub, zlib
-, ocaml, jbuilder, opam, ocamlfuse, findlib, gapi_ocaml, ocaml_sqlite3, camlidl }:
+, ocaml, dune, ocamlfuse, findlib, gapi_ocaml, ocaml_sqlite3, camlidl }:
 
 stdenv.mkDerivation rec {
   name = "google-drive-ocamlfuse-${version}";
@@ -12,12 +12,12 @@ stdenv.mkDerivation rec {
     sha256 = "1rjm2jcc93sz7l25zbgqal81534vvvbmwy7847s0k8fkr5nq97gp";
   };
 
-  nativeBuildInputs = [ jbuilder opam ];
+  nativeBuildInputs = [ dune ];
 
   buildInputs = [ zlib ocaml ocamlfuse findlib gapi_ocaml ocaml_sqlite3 camlidl ];
 
   buildPhase = "jbuilder build @install";
-  installPhase = "mkdir $out && jbuilder install --prefix $out";
+  installPhase = "mkdir $out && dune install --prefix $out";
 
   meta = {
     homepage = http://gdfuse.forge.ocamlcore.org/;
diff --git a/pkgs/applications/networking/instant-messengers/SkypeExport/default.nix b/pkgs/applications/networking/instant-messengers/SkypeExport/default.nix
index 9ec9a3451bef..163f0ba3f497 100644
--- a/pkgs/applications/networking/instant-messengers/SkypeExport/default.nix
+++ b/pkgs/applications/networking/instant-messengers/SkypeExport/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, cmake, boost }:
+{ stdenv, fetchFromGitHub, cmake, boost166 }:
 
 stdenv.mkDerivation rec {
   name = "SkypeExport-${version}";
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ cmake ];
-  buildInputs = [ boost ];
+  buildInputs = [ boost166 ];
 
   preConfigure = "cd src/SkypeExport/_gccbuild/linux";
   installPhase = "install -Dt $out/bin SkypeExport";
diff --git a/pkgs/applications/networking/instant-messengers/dino/default.nix b/pkgs/applications/networking/instant-messengers/dino/default.nix
index 3682097e302f..777057b327b0 100644
--- a/pkgs/applications/networking/instant-messengers/dino/default.nix
+++ b/pkgs/applications/networking/instant-messengers/dino/default.nix
@@ -13,13 +13,13 @@
  }:
 
 stdenv.mkDerivation rec {
-  name = "dino-unstable-2018-07-08";
+  name = "dino-unstable-2018-09-05";
 
   src = fetchFromGitHub {
     owner = "dino";
     repo = "dino";
-    rev = "df8b5fcb722c4a33ed18cbbaafecb206f127b849";
-    sha256 = "1r7h9pxix0sylnwab7a8lir9h5yssk98128x2bzva77id9id33vi";
+    rev = "79e0aee5fdb90830fad748fdfae717cb5fbf91f9";
+    sha256 = "1sfh729fg6c5ds3rcma13paqnvv58jln34s93j74jnca19wgn7k5";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/applications/networking/instant-messengers/linphone/default.nix b/pkgs/applications/networking/instant-messengers/linphone/default.nix
index 1b257ea61dce..4282e99a712e 100644
--- a/pkgs/applications/networking/instant-messengers/linphone/default.nix
+++ b/pkgs/applications/networking/instant-messengers/linphone/default.nix
@@ -4,6 +4,7 @@
 , mediastreamer-openh264, bctoolbox, makeWrapper, fetchFromGitHub, cmake
 , libmatroska, bcunit, doxygen, gdk_pixbuf, glib, cairo, pango, polarssl
 , python, graphviz, belcard
+, withGui ? true
 }:
 
 stdenv.mkDerivation rec {
@@ -18,6 +19,12 @@ stdenv.mkDerivation rec {
     sha256 = "0az2ywrpx11sqfb4s4r2v726avcjf4k15bvrqj7xvhz7hdndmh0j";
   };
 
+  cmakeFlags = stdenv.lib.optional withGui [ "-DENABLE_GTK_UI=ON" ];
+
+  postPatch = ''
+    touch coreapi/liblinphone_gitversion.h
+  '';
+
   buildInputs = [
     readline openldap cyrus_sasl libupnp zlib libxml2 gtk2 libnotify speex ffmpeg libX11
     polarssl libsoup udev ortp mediastreamer sqlite belle-sip libosip libexosip
diff --git a/pkgs/applications/networking/instant-messengers/matrique/default.nix b/pkgs/applications/networking/instant-messengers/matrique/default.nix
new file mode 100644
index 000000000000..91ba8e7175ce
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/matrique/default.nix
@@ -0,0 +1,55 @@
+{ stdenv, fetchFromGitLab, fetchFromGitHub, qmake
+, qtquickcontrols2, qtmultimedia, qtgraphicaleffects
+, libqmatrixclient
+}:
+
+let
+
+  libqmatrixclient_git = libqmatrixclient.overrideDerivation (oldAttrs: {
+    name = "libqmatrixclient-git-for-matrique";
+    src = fetchFromGitHub {
+      owner = "QMatrixClient";
+      repo = "libqmatrixclient";
+      rev = "d9ff200f";
+      sha256 = "0qxkffg1499wnn8rbndq6z51sz6hiij2pkp40cvs530sl0zg0c69";
+    };
+  });
+
+  SortFilterProxyModel = fetchFromGitLab {
+    owner = "b0";
+    repo = "SortFilterProxyModel";
+    rev = "3c2c125c";
+    sha256 = "1494dvq7kiq0ymf5f9hr47pw80zv3m3dncnaw1pnzs7mhkf2s5fr";
+  };
+
+in stdenv.mkDerivation rec {
+  name = "matrique-${version}";
+  version = "250";
+
+  src = fetchFromGitLab {
+    owner = "b0";
+    repo = "matrique";
+    rev = version;
+    sha256 = "0l7ag2q3l8ixczwc43igvkkl81g5s5j032gzizmgpzb1bjpdgry7";
+  };
+
+  postPatch = ''
+    rm -r include/*
+    ln -sf ${libqmatrixclient_git.src} include/libqmatrixclient
+    ln -sf ${SortFilterProxyModel} include/SortFilterProxyModel
+  '';
+
+  nativeBuildInputs = [ qmake ];
+  buildInputs = [
+    qtquickcontrols2 qtmultimedia qtgraphicaleffects
+    libqmatrixclient_git
+  ];
+
+  meta = with stdenv.lib; {
+    inherit (src.meta) homepage;
+    description = "A glossy client for Matrix";
+    maintainers = with maintainers; [ fpletz ];
+    license = licenses.gpl3;
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/networking/instant-messengers/nheko/default.nix b/pkgs/applications/networking/instant-messengers/nheko/default.nix
index cf9558b4b955..6716305df8b5 100644
--- a/pkgs/applications/networking/instant-messengers/nheko/default.nix
+++ b/pkgs/applications/networking/instant-messengers/nheko/default.nix
@@ -1,39 +1,9 @@
-{
-  lib, stdenv, fetchFromGitHub, fetchurl,
-  cmake, doxygen, lmdb, qt5, qtmacextras
+{ lib, stdenv, fetchFromGitHub, fetchurl
+, cmake, lmdb, qt5, qtmacextras, mtxclient
+, boost, spdlog, olm, pkgconfig
 }:
 
 let
-  json_hpp = fetchurl {
-    url = https://github.com/nlohmann/json/releases/download/v3.1.2/json.hpp;
-    sha256 = "fbdfec4b4cf63b3b565d09f87e6c3c183bdd45c5be1864d3fcb338f6f02c1733";
-  };
-
-  variant_hpp = fetchurl {
-    url = https://github.com/mpark/variant/releases/download/v1.3.0/variant.hpp;
-    sha256 = "1vjiz1x5l8ynqqyb5l9mlrzgps526v45hbmwjilv4brgyi5445fq";
-  };
-
-  matrix-structs = stdenv.mkDerivation rec {
-    name = "matrix-structs-git";
-
-    src = fetchFromGitHub {
-      owner = "mujx";
-      repo = "matrix-structs";
-      rev = "5e57c2385a79b6629d1998fec4a7c0baee23555e";
-      sha256 = "112b7gnvr04g1ak7fnc7ch7w2n825j4qkw0jb49xx06ag93nb6m6";
-    };
-
-    postUnpack = ''
-      cp ${json_hpp} "$sourceRoot/include/json.hpp"
-      cp ${variant_hpp} "$sourceRoot/include/variant.hpp"
-    '';
-
-    patches = [ ./fetchurls.patch ];
-
-    nativeBuildInputs = [ cmake doxygen ];
-  };
-
   tweeny = fetchFromGitHub {
     owner = "mobius3";
     repo = "tweeny";
@@ -50,19 +20,15 @@ let
 in
 stdenv.mkDerivation rec {
   name = "nheko-${version}";
-  version = "0.4.3";
+  version = "0.5.5";
 
   src = fetchFromGitHub {
     owner = "mujx";
     repo = "nheko";
     rev = "v${version}";
-    sha256 = "0qjia42nam3hj835k2jb5b6j6n56rdkb8rn67yqf45xdz8ypmbmv";
+    sha256 = "0k5gmfwmisfavliyz0nfsmwy317ps8a4r3l1d831giqp9pvqvi0i";
   };
 
-  # This patch is likely not strictly speaking needed, but will help detect when
-  # a dependency is updated, so that the fetches up there can be updated too
-  patches = [ ./external-deps.patch ];
-
   # If, on Darwin, you encounter the error
   #   error: must specify at least one argument for '...' parameter of variadic
   #   macro [-Werror,-Wgnu-zero-variadic-macro-arguments]
@@ -79,25 +45,30 @@ stdenv.mkDerivation rec {
   #  export CFLAGS=-Wno-error=gnu-zero-variadic-macro-arguments
   #'';
 
+  postPatch = ''
+    mkdir -p .deps/include/
+    ln -s ${tweeny}/include .deps/include/tweeny
+    ln -s ${spdlog} .deps/spdlog
+  '';
+
   cmakeFlags = [
-    "-DMATRIX_STRUCTS_LIBRARY=${matrix-structs}/lib/static/libmatrix_structs.a"
-    "-DMATRIX_STRUCTS_INCLUDE_DIR=${matrix-structs}/include/matrix_structs"
-    "-DTWEENY_INCLUDE_DIR=${tweeny}/include"
+    "-DTWEENY_INCLUDE_DIR=.deps/include"
     "-DLMDBXX_INCLUDE_DIR=${lmdbxx}"
   ];
 
-  nativeBuildInputs = [ cmake ];
+  nativeBuildInputs = [ cmake pkgconfig ];
 
   buildInputs = [
-    lmdb lmdbxx matrix-structs qt5.qtbase qt5.qtmultimedia qt5.qttools tweeny
+    mtxclient olm boost lmdb spdlog
+    qt5.qtbase qt5.qtmultimedia qt5.qttools
   ] ++ lib.optional stdenv.isDarwin qtmacextras;
 
   enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
     description = "Desktop client for the Matrix protocol";
-    maintainers = with maintainers; [ ekleog ];
-    platforms = platforms.all;
+    maintainers = with maintainers; [ ekleog fpletz ];
+    platforms = platforms.unix;
     license = licenses.gpl3Plus;
   };
 }
diff --git a/pkgs/applications/networking/instant-messengers/nheko/external-deps.patch b/pkgs/applications/networking/instant-messengers/nheko/external-deps.patch
deleted file mode 100644
index fa388edfb75a..000000000000
--- a/pkgs/applications/networking/instant-messengers/nheko/external-deps.patch
+++ /dev/null
@@ -1,94 +0,0 @@
-diff --git a/cmake/LMDBXX.cmake b/cmake/LMDBXX.cmake
-index 3b9817d..e69de29 100644
---- a/cmake/LMDBXX.cmake
-+++ b/cmake/LMDBXX.cmake
-@@ -1,23 +0,0 @@
--include(ExternalProject)
--
--#
--# Build lmdbxx.
--#
--
--set(THIRD_PARTY_ROOT ${CMAKE_SOURCE_DIR}/.third-party)
--set(LMDBXX_ROOT ${THIRD_PARTY_ROOT}/lmdbxx)
--
--set(LMDBXX_INCLUDE_DIR ${LMDBXX_ROOT})
--
--ExternalProject_Add(
--  lmdbxx
--
--  GIT_REPOSITORY https://github.com/bendiken/lmdbxx
--  GIT_TAG 0b43ca87d8cfabba392dfe884eb1edb83874de02
--
--  BUILD_IN_SOURCE 1
--  SOURCE_DIR ${LMDBXX_ROOT}
--  CONFIGURE_COMMAND ""
--  BUILD_COMMAND ""
--  INSTALL_COMMAND ""
--)
-diff --git a/cmake/MatrixStructs.cmake b/cmake/MatrixStructs.cmake
-index cef00f6..e69de29 100644
---- a/cmake/MatrixStructs.cmake
-+++ b/cmake/MatrixStructs.cmake
-@@ -1,33 +0,0 @@
--include(ExternalProject)
--
--#
--# Build matrix-structs.
--#
--
--set(THIRD_PARTY_ROOT ${CMAKE_SOURCE_DIR}/.third-party)
--set(MATRIX_STRUCTS_ROOT ${THIRD_PARTY_ROOT}/matrix_structs)
--set(MATRIX_STRUCTS_INCLUDE_DIR ${MATRIX_STRUCTS_ROOT}/include)
--set(MATRIX_STRUCTS_LIBRARY matrix_structs)
--
--link_directories(${MATRIX_STRUCTS_ROOT})
--
--set(WINDOWS_FLAGS "")
--
--if(MSVC)
--    set(WINDOWS_FLAGS "-DCMAKE_GENERATOR_PLATFORM=x64")
--endif()
--
--ExternalProject_Add(
--  MatrixStructs
--
--  GIT_REPOSITORY https://github.com/mujx/matrix-structs
--  GIT_TAG 5e57c2385a79b6629d1998fec4a7c0baee23555e
--
--  BUILD_IN_SOURCE 1
--  SOURCE_DIR ${MATRIX_STRUCTS_ROOT}
--  CONFIGURE_COMMAND ${CMAKE_COMMAND}
--    -DCMAKE_BUILD_TYPE=Release ${MATRIX_STRUCTS_ROOT}
--    ${WINDOWS_FLAGS}
--  BUILD_COMMAND ${CMAKE_COMMAND} --build ${MATRIX_STRUCTS_ROOT} --config Release
--  INSTALL_COMMAND ""
--)
-diff --git a/cmake/Tweeny.cmake b/cmake/Tweeny.cmake
-index 537ac92..e69de29 100644
---- a/cmake/Tweeny.cmake
-+++ b/cmake/Tweeny.cmake
-@@ -1,23 +0,0 @@
--include(ExternalProject)
--
--#
--# Build tweeny
--#
--
--set(THIRD_PARTY_ROOT ${CMAKE_SOURCE_DIR}/.third-party)
--set(TWEENY_ROOT ${THIRD_PARTY_ROOT}/tweeny)
--
--set(TWEENY_INCLUDE_DIR ${TWEENY_ROOT}/include)
--
--ExternalProject_Add(
--  Tweeny
--
--  GIT_REPOSITORY https://github.com/mobius3/tweeny
--  GIT_TAG b94ce07cfb02a0eb8ac8aaf66137dabdaea857cf
--
--  BUILD_IN_SOURCE 1
--  SOURCE_DIR ${TWEENY_ROOT}
--  CONFIGURE_COMMAND ""
--  BUILD_COMMAND ""
--  INSTALL_COMMAND ""
--)
diff --git a/pkgs/applications/networking/instant-messengers/nheko/fetchurls.patch b/pkgs/applications/networking/instant-messengers/nheko/fetchurls.patch
deleted file mode 100644
index e2f72f600ed8..000000000000
--- a/pkgs/applications/networking/instant-messengers/nheko/fetchurls.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 077ac37..c639d71 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -18,16 +18,6 @@ include(Doxygen)
- #
- include(CompilerFlags)
- 
--file(DOWNLOAD
--    "https://github.com/nlohmann/json/releases/download/v3.1.2/json.hpp"
--    ${PROJECT_SOURCE_DIR}/include/json.hpp
--    EXPECTED_HASH SHA256=fbdfec4b4cf63b3b565d09f87e6c3c183bdd45c5be1864d3fcb338f6f02c1733)
--
--file(DOWNLOAD
--    "https://github.com/mpark/variant/releases/download/v1.3.0/variant.hpp"
--    ${PROJECT_SOURCE_DIR}/include/variant.hpp
--    EXPECTED_MD5 "be0ce322cdd408e1b347b9f1d59ea67a")
--
- include_directories(include)
- 
- set(SRC
diff --git a/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-matrix/default.nix b/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-matrix/default.nix
index a6d893fd95a4..d4a26a266c30 100644
--- a/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-matrix/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-matrix/default.nix
@@ -1,30 +1,32 @@
-{ stdenv, fetchgit, pkgconfig, pidgin, json-glib, glib, http-parser } :
+{ stdenv, fetchgit, pkgconfig, pidgin, json-glib, glib, http-parser, sqlite, olm, libgcrypt } :
 
 let
-  version = "2016-07-11";
+  version = "2018-08-03";
 in
 stdenv.mkDerivation rec {
   name = "purple-matrix-unstable-${version}";
 
   src = fetchgit {
     url = "https://github.com/matrix-org/purple-matrix";
-    rev = "f9d36198a57de1cd1740a3ae11c2ad59b03b724a";
-    sha256 = "1mmyvc70gslniphmcpk8sfl6ylik6dnprqghx4n47gsj1sb1cy00";
+    rev = "5a7166a3f54f85793c6b60662f8d12196aeaaeb0";
+    sha256 = "0ph0s24b37d1c50p8zbzgf4q2xns43a8v6vk85iz633wdd72zsa0";
   };
 
   nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ pidgin json-glib glib http-parser ];
+  buildInputs = [ pidgin json-glib glib http-parser sqlite olm libgcrypt ];
 
-  installPhase = ''
-    install -Dm755 -t $out/lib/pidgin/ libmatrix.so
-    for size in 16 22 48; do
-      install -TDm644 matrix-"$size"px.png $out/pixmaps/pidgin/protocols/$size/matrix.png
-    done
-  '';
+  hardeningDisable = [ "fortify" ]; # upstream compiles with -O0
 
-  meta = {
+  makeFlags = [
+    "DESTDIR=$(out)"
+    "PLUGIN_DIR_PURPLE=/lib/pidgin/"
+    "DATA_ROOT_DIR_PURPLE=/share"
+  ];
+
+  meta = with stdenv.lib; {
     homepage = https://github.com/matrix-org/purple-matrix;
     description = "Matrix support for Pidgin / libpurple";
-    license = stdenv.lib.licenses.gpl2;
+    license = licenses.gpl2;
+    maintainers = with maintainers; [ symphorien ];
   };
 }
diff --git a/pkgs/applications/networking/instant-messengers/psi-plus/default.nix b/pkgs/applications/networking/instant-messengers/psi-plus/default.nix
index 7c6f33935dc0..0fdd8dfb4bd3 100644
--- a/pkgs/applications/networking/instant-messengers/psi-plus/default.nix
+++ b/pkgs/applications/networking/instant-messengers/psi-plus/default.nix
@@ -1,24 +1,24 @@
 { stdenv, fetchFromGitHub, cmake
 , qt5, libidn, qca2-qt5, libXScrnSaver, hunspell
-, libgcrypt, libotr, html-tidy, libgpgerror
+, libgcrypt, libotr, html-tidy, libgpgerror, libsignal-protocol-c
 }:
 
 stdenv.mkDerivation rec {
   name = "psi-plus-${version}";
-  version = "1.2.235";
+  version = "1.3.410";
 
   src = fetchFromGitHub {
     owner = "psi-plus";
     repo = "psi-plus-snapshots";
     rev = "${version}";
-    sha256 = "0rc65gs6m3jxg407r99kikdylvrar5mq7x5m66ma604yk5igwg47";
+    sha256 = "02m984z2dfmlx522q9x1z0aalvi2mi48s5ghhs80hr5afnfyc5w6";
   };
 
   resources = fetchFromGitHub {
     owner = "psi-plus";
     repo = "resources";
-    rev = "8f5038380e1be884b04b5a1ad3cc3385e793f668";
-    sha256 = "1b8a2aixg966fzjwp9hz51rc31imyvpx014mp2fsm47k8na4470d";
+    rev = "c0bfb8a025eeec82cd0a23a559e0aa3da15c3ec3";
+    sha256 = "1q7v01w085vk7ml6gwis7j409w6f5cplpm7c0ajs4i93c4j53xdf";
   };
 
   postUnpack = ''
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
   buildInputs = [
     qt5.qtbase qt5.qtmultimedia qt5.qtx11extras qt5.qttools qt5.qtwebkit
     libidn qca2-qt5 libXScrnSaver hunspell
-    libgcrypt libotr html-tidy libgpgerror
+    libgcrypt libotr html-tidy libgpgerror libsignal-protocol-c
   ];
 
   enableParallelBuilding = true;
@@ -42,6 +42,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "XMPP (Jabber) client";
     maintainers = with maintainers; [ orivej ];
+    license = licenses.gpl2;
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/networking/instant-messengers/psi/default.nix b/pkgs/applications/networking/instant-messengers/psi/default.nix
index 37d9de8794e5..daa9d04cfb53 100644
--- a/pkgs/applications/networking/instant-messengers/psi/default.nix
+++ b/pkgs/applications/networking/instant-messengers/psi/default.nix
@@ -22,9 +22,10 @@ stdenv.mkDerivation rec {
 
   enableParallelBuilding = true;
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "Psi, an XMPP (Jabber) client";
-    maintainers = [ stdenv.lib.maintainers.raskin ];
+    maintainers = [ maintainers.raskin ];
+    license = licenses.gpl2;
     platforms = stdenv.lib.platforms.linux;
   };
 }
diff --git a/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix b/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
index 516abb4c9c00..99cd8371aa94 100644
--- a/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
+++ b/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
@@ -55,11 +55,11 @@ let
 
 in stdenv.mkDerivation rec {
   name = "signal-desktop-${version}";
-  version = "1.15.5";
+  version = "1.16.0";
 
   src = fetchurl {
     url = "https://updates.signal.org/desktop/apt/pool/main/s/signal-desktop/signal-desktop_${version}_amd64.deb";
-    sha256 = "1a63kyxbhdaz6izprg8wryvscmvfjii50xi1v5pxlf74x2pkxs8k";
+    sha256 = "0hw5h1m8fijhqybx0xijrkifn5wl50qibaxkn2mxqf4mjwlvaw9a";
   };
 
   phases = [ "unpackPhase" "installPhase" ];
diff --git a/pkgs/applications/networking/instant-messengers/swift-im/default.nix b/pkgs/applications/networking/instant-messengers/swift-im/default.nix
index e3b3d7191892..8316c560b069 100644
--- a/pkgs/applications/networking/instant-messengers/swift-im/default.nix
+++ b/pkgs/applications/networking/instant-messengers/swift-im/default.nix
@@ -14,7 +14,7 @@ in stdenv.mkDerivation rec {
     sha256 = "0w0aiszjd58ynxpacwcgf052zpmbpcym4dhci64vbfgch6wryz0w";
   };
 
-  patches = [ ./scons.patch ];
+  patches = [ ./qt-5.11.patch ./scons.patch ];
 
   nativeBuildInputs = [ pkgconfig qttools scons ];
 
@@ -28,6 +28,8 @@ in stdenv.mkDerivation rec {
   NIX_CFLAGS_COMPILE = [
     "-I${libxml2.dev}/include/libxml2"
     "-I${miniupnpc}/include/miniupnpc"
+    "-I${qtwebkit.dev}/include/QtWebKit"
+    "-I${qtwebkit.dev}/include/QtWebKitWidgets"
   ];
 
   buildPhase = ''
diff --git a/pkgs/applications/networking/instant-messengers/swift-im/qt-5.11.patch b/pkgs/applications/networking/instant-messengers/swift-im/qt-5.11.patch
new file mode 100644
index 000000000000..911e7570427f
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/swift-im/qt-5.11.patch
@@ -0,0 +1,10 @@
+--- a/Swift/QtUI/UserSearch/QtUserSearchWindow.h
++++ b/Swift/QtUI/UserSearch/QtUserSearchWindow.h
+@@ -8,6 +8,7 @@
+
+ #include <set>
+
++#include <QAbstractItemModel>
+ #include <QWizard>
+
+ #include <Swiften/Base/Override.h>
diff --git a/pkgs/applications/networking/instant-messengers/zoom-us/default.nix b/pkgs/applications/networking/instant-messengers/zoom-us/default.nix
index 882215c50c5c..d271d5d48491 100644
--- a/pkgs/applications/networking/instant-messengers/zoom-us/default.nix
+++ b/pkgs/applications/networking/instant-messengers/zoom-us/default.nix
@@ -13,11 +13,11 @@ assert pulseaudioSupport -> libpulseaudio != null;
 let
   inherit (stdenv.lib) concatStringsSep makeBinPath optional;
 
-  version = "2.3.128305.0716";
+  version = "2.4.129780.0915";
   srcs = {
     x86_64-linux = fetchurl {
       url = "https://zoom.us/client/${version}/zoom_x86_64.tar.xz";
-      sha256 = "1jpw5sclr5bhif559hmnyiggjh6gkm1smiw34y3ad4k8xhag9dkh";
+      sha256 = "0s4014ymc92rwpagcwjhmwwfz0vq35wiq2nhh6nlxcrr6jl4wd78";
     };
   };
 
diff --git a/pkgs/applications/networking/ipfs-migrator/default.nix b/pkgs/applications/networking/ipfs-migrator/default.nix
index 6a4afdb1c17d..f070c5109376 100644
--- a/pkgs/applications/networking/ipfs-migrator/default.nix
+++ b/pkgs/applications/networking/ipfs-migrator/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   name = "ipfs-migrator-${version}";
-  version = "6";
+  version = "7";
 
   goPackagePath = "github.com/ipfs/fs-repo-migrations";
 
@@ -11,8 +11,8 @@ buildGoPackage rec {
   src = fetchFromGitHub {
     owner = "ipfs";
     repo = "fs-repo-migrations";
-    rev = "a89e9769b9cac25ad9ca31c7e9a4445c7966d35b";
-    sha256 = "0x4mbkx7wlqjmkg6852hljq947v9y9k3hjd5yfj7kka1hpvxd7bn";
+    rev = "4e8e0b41d7348646c719d572c678c3d0677e541a";
+    sha256 = "1i6izncgc3wgabppglnnrslffvwrv3cazbdhsk4vjfsd66hb4d37";
   };
 
   patches = [ ./lru-repo-path-fix.patch ];
diff --git a/pkgs/applications/networking/ipfs-migrator/deps.nix b/pkgs/applications/networking/ipfs-migrator/deps.nix
index 2d52ca0ef70a..1ad1c383c8c6 100644
--- a/pkgs/applications/networking/ipfs-migrator/deps.nix
+++ b/pkgs/applications/networking/ipfs-migrator/deps.nix
@@ -1,14 +1,5 @@
 [
   {
-    goPackagePath = "github.com/dustin/go-humanize";
-    fetch = {
-      type = "git";
-      url = https://github.com/dustin/go-humanize;
-      rev = "79e699ccd02f240a1f1fbbdcee7e64c1c12e41aa";
-      sha256 = "0awfqszgjw8qrdw31v74jnvj1jbp7czhd8aq59j57yyj4hy50fzj";
-    };
-  }
-  {
     goPackagePath = "github.com/jbenet/goprocess";
     fetch = {
       type = "git";
@@ -40,8 +31,8 @@
     fetch = {
       type = "git";
       url = https://github.com/hashicorp/golang-lru;
-      rev = "0a025b7e63adc15a622f29b0b2c4c3848243bbf6";
-      sha256 = "1iq7lbpsz7ks052mpznmkf8s4k43p51z4dik2n9ivrxk666q2wxi";
+      rev = "20f1fb78b0740ba8c3cb143a61e86ba5c8669768";
+      sha256 = "12k2cp2k615fjvfa5hyb9k2alian77wivds8s65diwshwv41939f";
     };
   }
   {
@@ -49,8 +40,8 @@
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/net";
-      rev = "71a035914f99bb58fe82eac0f1289f10963d876c";
-      sha256 = "06m16c9vkwc8m2mcxcxa7p8mb26ikc810lgzd5m8k1r6lp3hc8wm";
+      rev = "26e67e76b6c3f6ce91f7c52def5af501b4e0f3a2";
+      sha256 = "17bqkd64zksi1578lb10ls4qf5lbqs7shfjcc6bi97y1qz5k31c4";
     };
   }
 ]
diff --git a/pkgs/applications/networking/irc/weechat/aggregate-commands.patch b/pkgs/applications/networking/irc/weechat/aggregate-commands.patch
new file mode 100644
index 000000000000..41e3c54a2d57
--- /dev/null
+++ b/pkgs/applications/networking/irc/weechat/aggregate-commands.patch
@@ -0,0 +1,110 @@
+diff --git a/src/core/wee-command.c b/src/core/wee-command.c
+index 91c3c068d..8105e4171 100644
+--- a/src/core/wee-command.c
++++ b/src/core/wee-command.c
+@@ -8345,10 +8345,20 @@ command_exec_list (const char *command_list)
+ void
+ command_startup (int plugins_loaded)
+ {
++    int i;
++
+     if (plugins_loaded)
+     {
+         command_exec_list (CONFIG_STRING(config_startup_command_after_plugins));
+-        command_exec_list (weechat_startup_commands);
++        if (weechat_startup_commands)
++        {
++            for (i = 0; i < weelist_size (weechat_startup_commands); i++)
++            {
++                command_exec_list (
++                    weelist_string (
++                        weelist_get (weechat_startup_commands, i)));
++            }
++        }
+     }
+     else
+         command_exec_list (CONFIG_STRING(config_startup_command_before_plugins));
+diff --git a/src/core/weechat.c b/src/core/weechat.c
+index f74598ad5..ff2e539d1 100644
+--- a/src/core/weechat.c
++++ b/src/core/weechat.c
+@@ -60,6 +60,7 @@
+ #include "wee-eval.h"
+ #include "wee-hdata.h"
+ #include "wee-hook.h"
++#include "wee-list.h"
+ #include "wee-log.h"
+ #include "wee-network.h"
+ #include "wee-proxy.h"
+@@ -102,7 +103,8 @@ int weechat_no_gnutls = 0;             /* remove init/deinit of gnutls      */
+                                        /* (useful with valgrind/electric-f.)*/
+ int weechat_no_gcrypt = 0;             /* remove init/deinit of gcrypt      */
+                                        /* (useful with valgrind)            */
+-char *weechat_startup_commands = NULL; /* startup commands (-r flag)        */
++struct t_weelist *weechat_startup_commands = NULL; /* startup commands      */
++                                                   /* (option -r)           */
+ 
+ 
+ /*
+@@ -152,9 +154,13 @@ weechat_display_usage ()
+           "  -h, --help               display this help\n"
+           "  -l, --license            display WeeChat license\n"
+           "  -p, --no-plugin          don't load any plugin at startup\n"
+-          "  -r, --run-command <cmd>  run command(s) after startup\n"
+-          "                           (many commands can be separated by "
+-          "semicolons)\n"
++          "  -P, --plugins <plugins>  load only these plugins at startup\n"
++          "                           (see /help weechat.plugin.autoload)\n"
++          "  -r, --run-command <cmd>  run command(s) after startup;\n"
++          "                           many commands can be separated by "
++          "semicolons,\n"
++          "                           this option can be given multiple "
++          "times\n"
+           "  -s, --no-script          don't load any script at startup\n"
+           "      --upgrade            upgrade WeeChat using session files "
+           "(see /help upgrade in WeeChat)\n"
+@@ -276,9 +282,10 @@ weechat_parse_args (int argc, char *argv[])
+         {
+             if (i + 1 < argc)
+             {
+-                if (weechat_startup_commands)
+-                    free (weechat_startup_commands);
+-                weechat_startup_commands = strdup (argv[++i]);
++                if (!weechat_startup_commands)
++                    weechat_startup_commands = weelist_new ();
++                weelist_add (weechat_startup_commands, argv[++i],
++                             WEECHAT_LIST_POS_END, NULL);
+             }
+             else
+             {
+@@ -616,6 +623,8 @@ weechat_shutdown (int return_code, int crash)
+         free (weechat_home);
+     if (weechat_local_charset)
+         free (weechat_local_charset);
++    if (weechat_startup_commands)
++        weelist_free (weechat_startup_commands);
+ 
+     if (crash)
+         abort ();
+diff --git a/src/core/weechat.h b/src/core/weechat.h
+index 9420ff415..cbb565a03 100644
+--- a/src/core/weechat.h
++++ b/src/core/weechat.h
+@@ -96,6 +96,8 @@
+ /* name of environment variable with an extra lib dir */
+ #define WEECHAT_EXTRA_LIBDIR "WEECHAT_EXTRA_LIBDIR"
+ 
++struct t_weelist;
++
+ /* global variables and functions */
+ extern int weechat_headless;
+ extern int weechat_debug_core;
+@@ -112,7 +114,7 @@ extern char *weechat_local_charset;
+ extern int weechat_plugin_no_dlclose;
+ extern int weechat_no_gnutls;
+ extern int weechat_no_gcrypt;
+-extern char *weechat_startup_commands;
++extern struct t_weelist *weechat_startup_commands;
+ 
+ extern void weechat_term_check ();
+ extern void weechat_shutdown (int return_code, int crash);
diff --git a/pkgs/applications/networking/irc/weechat/default.nix b/pkgs/applications/networking/irc/weechat/default.nix
index 16162435e09a..a9de275559db 100644
--- a/pkgs/applications/networking/irc/weechat/default.nix
+++ b/pkgs/applications/networking/irc/weechat/default.nix
@@ -12,7 +12,8 @@
 , tclSupport ? true, tcl
 , extraBuildInputs ? []
 , configure ? { availablePlugins, ... }: { plugins = builtins.attrValues availablePlugins; }
-, runCommand }:
+, runCommand, buildEnv
+}:
 
 let
   inherit (pythonPackages) python;
@@ -29,12 +30,12 @@ let
   weechat =
     assert lib.all (p: p.enabled -> ! (builtins.elem null p.buildInputs)) plugins;
     stdenv.mkDerivation rec {
-      version = "2.1";
+      version = "2.2";
       name = "weechat-${version}";
 
       src = fetchurl {
         url = "http://weechat.org/files/src/weechat-${version}.tar.bz2";
-        sha256 = "0fq68wgynv2c3319gmzi0lz4ln4yrrk755y5mbrlr7fc1sx7ffd8";
+        sha256 = "0p4nhh7f7w4q77g7jm9i6fynndqlgjkc9dk5g1xb4gf9imiisqlg";
       };
 
       outputs = [ "out" "man" ] ++ map (p: p.name) enabledPlugins;
@@ -69,6 +70,13 @@ let
         done
       '';
 
+      # remove when bumping to the latest version.
+      # This patch basically rebases `fcf7469d7664f37e94d5f6d0b3fe6fce6413f88c`
+      # from weechat upstream to weechat-2.2.
+      patches = [
+        ./aggregate-commands.patch
+      ];
+
       meta = {
         homepage = http://www.weechat.org/;
         description = "A fast, light and extensible chat client";
@@ -78,38 +86,38 @@ let
           on https://nixos.org/nixpkgs/manual/#sec-weechat .
         '';
         license = stdenv.lib.licenses.gpl3;
-        maintainers = with stdenv.lib.maintainers; [ lovek323 garbas the-kenny lheckemann ];
+        maintainers = with stdenv.lib.maintainers; [ lovek323 garbas the-kenny lheckemann ma27 ];
         platforms = stdenv.lib.platforms.unix;
       };
     };
 in if configure == null then weechat else
   let
     perlInterpreter = perl;
-    config = configure {
-      availablePlugins = let
-          simplePlugin = name: {pluginFile = "${weechat.${name}}/lib/weechat/plugins/${name}.so";};
-        in rec {
-          python = {
-            pluginFile = "${weechat.python}/lib/weechat/plugins/python.so";
-            withPackages = pkgsFun: (python // {
-              extraEnv = ''
-                export PYTHONHOME="${pythonPackages.python.withPackages pkgsFun}"
-              '';
-            });
-          };
-          perl = (simplePlugin "perl") // {
+    availablePlugins = let
+        simplePlugin = name: {pluginFile = "${weechat.${name}}/lib/weechat/plugins/${name}.so";};
+      in rec {
+        python = {
+          pluginFile = "${weechat.python}/lib/weechat/plugins/python.so";
+          withPackages = pkgsFun: (python // {
             extraEnv = ''
-              export PATH="${perlInterpreter}/bin:$PATH"
+              export PYTHONHOME="${pythonPackages.python.withPackages pkgsFun}"
             '';
-          };
-          tcl = simplePlugin "tcl";
-          ruby = simplePlugin "ruby";
-          guile = simplePlugin "guile";
-          lua = simplePlugin "lua";
+          });
+        };
+        perl = (simplePlugin "perl") // {
+          extraEnv = ''
+            export PATH="${perlInterpreter}/bin:$PATH"
+          '';
         };
+        tcl = simplePlugin "tcl";
+        ruby = simplePlugin "ruby";
+        guile = simplePlugin "guile";
+        lua = simplePlugin "lua";
       };
 
-    inherit (config) plugins;
+    config = configure { inherit availablePlugins; };
+
+    plugins = config.plugins or (builtins.attrValues availablePlugins);
 
     pluginsDir = runCommand "weechat-plugins" {} ''
       mkdir -p $out/plugins
@@ -117,13 +125,29 @@ in if configure == null then weechat else
         ln -s $plugin $out/plugins
       done
     '';
-  in (writeScriptBin "weechat" ''
-    #!${stdenv.shell}
-    export WEECHAT_EXTRA_LIBDIR=${pluginsDir}
-    ${lib.concatMapStringsSep "\n" (p: lib.optionalString (p ? extraEnv) p.extraEnv) plugins}
-    exec ${weechat}/bin/weechat "$@"
-  '') // {
-    name = weechat.name;
-    unwrapped = weechat;
-    meta = weechat.meta;
+
+    init = let
+      init = builtins.replaceStrings [ "\n" ] [ ";" ] (config.init or "");
+
+      mkScript = drv: lib.flip map drv.scripts (script: "/script load ${drv}/share/${script}");
+
+      scripts = builtins.concatStringsSep ";" (lib.foldl (scripts: drv: scripts ++ mkScript drv)
+        [ ] (config.scripts or []));
+    in "${scripts};${init}";
+
+    mkWeechat = bin: (writeScriptBin bin ''
+      #!${stdenv.shell}
+      export WEECHAT_EXTRA_LIBDIR=${pluginsDir}
+      ${lib.concatMapStringsSep "\n" (p: lib.optionalString (p ? extraEnv) p.extraEnv) plugins}
+      exec ${weechat}/bin/${bin} "$@" --run-command ${lib.escapeShellArg init}
+    '') // {
+      inherit (weechat) name meta;
+      unwrapped = weechat;
+    };
+  in buildEnv {
+    name = "weechat-bin-env";
+    paths = [
+      (mkWeechat "weechat")
+      (mkWeechat "weechat-headless")
+    ];
   }
diff --git a/pkgs/applications/networking/irc/weechat/scripts/default.nix b/pkgs/applications/networking/irc/weechat/scripts/default.nix
new file mode 100644
index 000000000000..21038a2fa966
--- /dev/null
+++ b/pkgs/applications/networking/irc/weechat/scripts/default.nix
@@ -0,0 +1,13 @@
+{ callPackage, luaPackages, pythonPackages }:
+
+{
+  weechat-xmpp = callPackage ./weechat-xmpp {
+    inherit (pythonPackages) pydns;
+  };
+
+  weechat-matrix-bridge = callPackage ./weechat-matrix-bridge {
+    inherit (luaPackages) cjson;
+  };
+
+  wee-slack = callPackage ./wee-slack { };
+}
diff --git a/pkgs/applications/networking/irc/weechat/scripts/wee-slack/default.nix b/pkgs/applications/networking/irc/weechat/scripts/wee-slack/default.nix
new file mode 100644
index 000000000000..1b6e52157449
--- /dev/null
+++ b/pkgs/applications/networking/irc/weechat/scripts/wee-slack/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchFromGitHub }:
+
+stdenv.mkDerivation rec {
+  name = "wee-slack-${version}";
+  version = "2.1.1";
+
+  src = fetchFromGitHub {
+    repo = "wee-slack";
+    owner = "wee-slack";
+    rev = "v${version}";
+    sha256 = "05caackz645aw6kljmiihiy7xz9jld8b9blwpmh0cnaihavgj1wc";
+  };
+
+  passthru.scripts = [ "wee_slack.py" ];
+
+  installPhase = ''
+    mkdir -p $out/share
+    cp wee_slack.py $out/share/wee_slack.py
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/wee-slack/wee-slack;
+    license = licenses.mit;
+    maintainers = with maintainers; [ ma27 ];
+    description = ''
+      A WeeChat plugin for Slack.com. Synchronizes read markers, provides typing notification, search, etc..
+    '';
+  };
+}
diff --git a/pkgs/applications/networking/instant-messengers/weechat-matrix-bridge/default.nix b/pkgs/applications/networking/irc/weechat/scripts/weechat-matrix-bridge/default.nix
index 4a8ffaaa261a..d2960ae93a99 100644
--- a/pkgs/applications/networking/instant-messengers/weechat-matrix-bridge/default.nix
+++ b/pkgs/applications/networking/irc/weechat/scripts/weechat-matrix-bridge/default.nix
@@ -25,6 +25,8 @@ stdenv.mkDerivation {
       --replace "__NIX_LIB_PATH__" "$out/lib/?.so"
   '';
 
+  passthru.scripts = [ "matrix.lua" ];
+
   installPhase = ''
     mkdir -p $out/{share,lib}
 
diff --git a/pkgs/applications/networking/instant-messengers/weechat-matrix-bridge/library-path.patch b/pkgs/applications/networking/irc/weechat/scripts/weechat-matrix-bridge/library-path.patch
index d9945c2993b7..d9945c2993b7 100644
--- a/pkgs/applications/networking/instant-messengers/weechat-matrix-bridge/library-path.patch
+++ b/pkgs/applications/networking/irc/weechat/scripts/weechat-matrix-bridge/library-path.patch
diff --git a/pkgs/applications/networking/instant-messengers/weechat-xmpp/default.nix b/pkgs/applications/networking/irc/weechat/scripts/weechat-xmpp/default.nix
index 4b92d1212c55..dad5b9c5e02a 100644
--- a/pkgs/applications/networking/instant-messengers/weechat-xmpp/default.nix
+++ b/pkgs/applications/networking/irc/weechat/scripts/weechat-xmpp/default.nix
@@ -25,6 +25,8 @@ stdenv.mkDerivation {
     })
   ];
 
+  passthru.scripts = [ "jabber.py" ];
+
   meta = with stdenv.lib; {
     description = "A fork of the jabber plugin for weechat";
     homepage = "https://github.com/sleduc/weechat-xmpp";
diff --git a/pkgs/applications/networking/instant-messengers/weechat-xmpp/libpath.patch b/pkgs/applications/networking/irc/weechat/scripts/weechat-xmpp/libpath.patch
index 372c83944a27..372c83944a27 100644
--- a/pkgs/applications/networking/instant-messengers/weechat-xmpp/libpath.patch
+++ b/pkgs/applications/networking/irc/weechat/scripts/weechat-xmpp/libpath.patch
diff --git a/pkgs/applications/networking/mailreaders/afew/default.nix b/pkgs/applications/networking/mailreaders/afew/default.nix
index e2b3d073dd33..bdf39de0651c 100644
--- a/pkgs/applications/networking/mailreaders/afew/default.nix
+++ b/pkgs/applications/networking/mailreaders/afew/default.nix
@@ -9,12 +9,22 @@ pythonPackages.buildPythonApplication rec {
     sha256 = "0105glmlkpkjqbz350dxxasvlfx9dk0him9vwbl86andzi106ygz";
   };
 
-  buildInputs = with pythonPackages; [ setuptools_scm ];
+  nativeBuildInputs = with pythonPackages; [ sphinx setuptools_scm ];
 
   propagatedBuildInputs = with pythonPackages; [
     pythonPackages.notmuch chardet dkimpy
   ] ++ stdenv.lib.optional (!pythonPackages.isPy3k) subprocess32;
 
+  postBuild =  ''
+    make -C docs man
+  '';
+
+  postInstall = ''
+    mandir="$out/share/man/man1"
+    mkdir -p "$mandir"
+    cp docs/build/man/* "$mandir"
+  '';
+
   makeWrapperArgs = [
     ''--prefix PATH ':' "${notmuch}/bin"''
   ];
diff --git a/pkgs/applications/networking/mailreaders/inboxer/default.nix b/pkgs/applications/networking/mailreaders/inboxer/default.nix
index 390f68bd105f..4edf61ceaaed 100644
--- a/pkgs/applications/networking/mailreaders/inboxer/default.nix
+++ b/pkgs/applications/networking/mailreaders/inboxer/default.nix
@@ -4,7 +4,7 @@
 
 stdenv.mkDerivation rec {
   name = "inboxer-${version}";
-  version = "1.1.2";
+  version = "1.1.4";
 
   meta = with stdenv.lib; {
     description = "Unofficial, free and open-source Google Inbox Desktop App";
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://github.com/denysdovhan/inboxer/releases/download/v${version}/inboxer_${version}_amd64.deb";
-    sha256 = "100185j10dj044mg5p9xlq7fj7n7xki9qw5xn845dgq0dpj8rkrm";
+    sha256 = "1jhx7mghslk8s2h50g8avnspf2v2r8yj0i8hkhw3qy2sa91m3ck1";
   };
 
   unpackPhase = ''
diff --git a/pkgs/applications/networking/p2p/opentracker/default.nix b/pkgs/applications/networking/p2p/opentracker/default.nix
index abddc22c285c..46c482818f8b 100644
--- a/pkgs/applications/networking/p2p/opentracker/default.nix
+++ b/pkgs/applications/networking/p2p/opentracker/default.nix
@@ -1,20 +1,20 @@
 { stdenv, fetchgit, libowfat, zlib }:
 
 stdenv.mkDerivation {
-  name = "opentracker-2016-10-02";
+  name = "opentracker-2018-05-26";
 
   src = fetchgit {
-    url = "git://erdgeist.org/opentracker";
-    rev = "0ebc0ed6a3e3b7acc9f9e338cc23cea5f4f22f61";
-    sha256 = "0qi0a8fygjwgs3yacramfn53jdabfgrlzid7q597x9lr94anfpyl";
+    url = "https://erdgeist.org/gitweb/opentracker";
+    rev = "6411f1567f64248b0d145493c2e61004d2822623";
+    sha256 = "110nfb6n4clykwdzpk54iccsfjawq0krjfqhg114i1z0ri5dyl8j";
   };
 
   buildInputs = [ libowfat zlib ];
 
   installPhase = ''
-    mkdir -p $out/bin $out/share/doc
-    cp opentracker $out/bin
-    cp opentracker.conf.sample $out/share/doc
+    runHook preInstall
+    install -D opentracker $out/bin/opentracker
+    install -D opentracker.conf.sample $out/share/doc/opentracker.conf.sample
     runHook postInstall
   '';
 
diff --git a/pkgs/applications/networking/remote/remmina/default.nix b/pkgs/applications/networking/remote/remmina/default.nix
index 14ab36c78fd2..fb138a1e8d45 100644
--- a/pkgs/applications/networking/remote/remmina/default.nix
+++ b/pkgs/applications/networking/remote/remmina/default.nix
@@ -10,7 +10,7 @@
 }:
 
 let
-  version = "1.2.31.3";
+  version = "1.2.31.4";
 
   desktopItem = makeDesktopItem {
     name = "remmina";
@@ -29,7 +29,7 @@ in stdenv.mkDerivation {
     owner  = "Remmina";
     repo   = "Remmina";
     rev    = "v${version}";
-    sha256 = "0lvang4587wz292c3k3s8n4icc25cia1phmij34ndrl1f9lg34dp";
+    sha256 = "1jx704f5zjns3nqy0ffgyfaxfxcxp83mfm5k539xfnqjn5g5h1qr";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/applications/networking/sync/casync/default.nix b/pkgs/applications/networking/sync/casync/default.nix
index bea6a0780ed9..8d9b941e26e4 100644
--- a/pkgs/applications/networking/sync/casync/default.nix
+++ b/pkgs/applications/networking/sync/casync/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchFromGitHub
-, meson, ninja, pkgconfig, sphinx
+, meson, ninja, pkgconfig, python3, sphinx
 , acl, curl, fuse, libselinux, udev, xz, zstd
 , fuseSupport ? true
 , selinuxSupport ? true
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
                 ++ stdenv.lib.optionals (fuseSupport) [ fuse ]
                 ++ stdenv.lib.optionals (selinuxSupport) [ libselinux ]
                 ++ stdenv.lib.optionals (udevSupport) [ udev ];
-  nativeBuildInputs = [ meson ninja pkgconfig sphinx ];
+  nativeBuildInputs = [ meson ninja pkgconfig python3 sphinx ];
   checkInputs = [ glibcLocales rsync ];
 
   postPatch = ''
diff --git a/pkgs/applications/networking/sync/rclone/default.nix b/pkgs/applications/networking/sync/rclone/default.nix
index 337c166a79ac..13e69427aa48 100644
--- a/pkgs/applications/networking/sync/rclone/default.nix
+++ b/pkgs/applications/networking/sync/rclone/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   name = "rclone-${version}";
-  version = "1.42";
+  version = "1.43.1";
 
   goPackagePath = "github.com/ncw/rclone";
 
@@ -10,7 +10,7 @@ buildGoPackage rec {
     owner = "ncw";
     repo = "rclone";
     rev = "v${version}";
-    sha256 = "0r85d45q0jdfwcrblq1rd698cw3h6mc9h4dmlhzl982zpkncijqj";
+    sha256 = "0iz427gdm8cxx3kbjmhw7jsvi9j0ppb5aqcq4alwf72fvpvql3mx";
   };
 
   outputs = [ "bin" "out" "man" ];
diff --git a/pkgs/applications/networking/syncthing/default.nix b/pkgs/applications/networking/syncthing/default.nix
index 25d482fd9b06..b7bad13a30d8 100644
--- a/pkgs/applications/networking/syncthing/default.nix
+++ b/pkgs/applications/networking/syncthing/default.nix
@@ -3,14 +3,14 @@
 let
   common = { stname, target, patches ? [], postInstall ? "" }:
     stdenv.mkDerivation rec {
-      version = "0.14.48";
+      version = "0.14.50";
       name = "${stname}-${version}";
 
       src = fetchFromGitHub {
         owner  = "syncthing";
         repo   = "syncthing";
         rev    = "v${version}";
-        sha256 = "10jls0z3y081fq097xarplzv5sz076ibhawzm65bq695f6s5sdzw";
+        sha256 = "10lilw20mq1zshysb9zrszcpl4slyyxvnbxfqk04nhz0b1gmm9ri";
       };
 
       inherit patches;
diff --git a/pkgs/applications/networking/testssl/default.nix b/pkgs/applications/networking/testssl/default.nix
index 5a548d5ff65f..cc0cffb6e3b3 100644
--- a/pkgs/applications/networking/testssl/default.nix
+++ b/pkgs/applications/networking/testssl/default.nix
@@ -2,7 +2,7 @@
 , dnsutils, coreutils, openssl, nettools, utillinux, procps }:
 
 let
-  version = "2.9.5-5";
+  version = "2.9.5-6";
 
 in stdenv.mkDerivation rec {
   name = "testssl.sh-${version}";
@@ -11,7 +11,7 @@ in stdenv.mkDerivation rec {
     owner = "drwetter";
     repo = "testssl.sh";
     rev = "v${version}";
-    sha256 = "0zgj9vhd8fv3a1cn8dxqmjd8qmgryc867gq7zbvbr41lkqc06a1r";
+    sha256 = "0wn7lxz0ibv59v0acbsk5z3rsmr65zr1q7n4kxva1cw5xzq9ya6k";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/applications/networking/transporter/default.nix b/pkgs/applications/networking/transporter/default.nix
index d084461a9b2d..55abd22b605c 100644
--- a/pkgs/applications/networking/transporter/default.nix
+++ b/pkgs/applications/networking/transporter/default.nix
@@ -5,6 +5,7 @@
 , pkgconfig
 , granite
 , vala_0_40
+, python3
 , gnome3
 , libxml2
 , gettext
@@ -37,6 +38,7 @@ in stdenv.mkDerivation rec {
     ninja
     pkgconfig
     vala_0_40
+    python3
     wrapGAppsHook
   ];
 
diff --git a/pkgs/applications/networking/weather/meteo/default.nix b/pkgs/applications/networking/weather/meteo/default.nix
new file mode 100644
index 000000000000..6d431a436ada
--- /dev/null
+++ b/pkgs/applications/networking/weather/meteo/default.nix
@@ -0,0 +1,54 @@
+{ stdenv, fetchFromGitLab, vala, python3, pkgconfig, meson, ninja, granite, gtk3
+, gnome3, json-glib, libsoup, clutter, clutter-gtk, libchamplain, webkitgtk
+, libappindicator, desktop-file-utils, appstream, gobjectIntrospection, wrapGAppsHook }:
+
+stdenv.mkDerivation rec {
+  pname = "meteo";
+  version = "0.8.5";
+
+  name = "${pname}-${version}";
+
+  src = fetchFromGitLab {
+    owner = "bitseater";
+    repo = pname;
+    rev = version;
+    sha256 = "1mc2djhkg0nzcjmy87l1wqwni48vgpqh8s1flr90pipk12a1mh7n";
+  };
+
+  nativeBuildInputs = [
+    appstream
+    desktop-file-utils
+    gobjectIntrospection
+    meson
+    ninja
+    pkgconfig
+    python3
+    vala
+    wrapGAppsHook
+  ];
+
+  buildInputs = [
+    clutter
+    clutter-gtk
+    gnome3.geocode-glib
+    gtk3
+    json-glib
+    libappindicator
+    libchamplain
+    libsoup
+    webkitgtk
+  ];
+
+  postPatch = ''
+    chmod +x meson/post_install.py
+    patchShebangs meson/post_install.py
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Know the forecast of the next hours & days";
+    homepage    = https://gitlab.com/bitseater/meteo;
+    license     = licenses.gpl3Plus;
+    maintainers = with maintainers; [ worldofpeace ];
+    platforms   = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/office/aesop/default.nix b/pkgs/applications/office/aesop/default.nix
new file mode 100644
index 000000000000..cf816a281221
--- /dev/null
+++ b/pkgs/applications/office/aesop/default.nix
@@ -0,0 +1,49 @@
+{ stdenv, fetchFromGitHub, vala, pkgconfig, meson, ninja, python3, granite, gtk3, gnome3
+, desktop-file-utils, json-glib, libsoup, poppler, gobjectIntrospection, wrapGAppsHook }:
+
+stdenv.mkDerivation rec {
+  pname = "aesop";
+  version = "1.0.5";
+
+  name = "${pname}-${version}";
+
+  src = fetchFromGitHub {
+    owner = "lainsce";
+    repo = pname;
+    rev = version;
+    sha256 = "17hjg4qcy8q9xl170yapbhn9vdsn3jf537jsggq51pp0fnhvsnqs";
+  };
+
+  nativeBuildInputs = [
+    desktop-file-utils
+    gobjectIntrospection
+    meson
+    ninja
+    pkgconfig
+    python3
+    vala
+    wrapGAppsHook
+  ];
+
+  buildInputs = [
+    gnome3.libgee
+    granite
+    gtk3
+    json-glib
+    libsoup
+    poppler
+  ];
+
+  postPatch = ''
+    chmod +x meson/post_install.py
+    patchShebangs meson/post_install.py
+  '';
+
+  meta = with stdenv.lib; {
+    description = "The simplest PDF viewer around";
+    homepage    = https://github.com/lainsce/aesop;
+    license     = licenses.gpl2Plus;
+    maintainers = with maintainers; [ worldofpeace ];
+    platforms   = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/office/bookworm/default.nix b/pkgs/applications/office/bookworm/default.nix
new file mode 100644
index 000000000000..45c794c82ea5
--- /dev/null
+++ b/pkgs/applications/office/bookworm/default.nix
@@ -0,0 +1,53 @@
+{ stdenv, fetchFromGitHub, vala, pkgconfig, libxml2, cmake, ninja, gtk3, granite, gnome3
+, gobjectIntrospection, sqlite, poppler, poppler_utils, html2text, unzip, unar, wrapGAppsHook }:
+
+stdenv.mkDerivation rec {
+  pname = "bookworm";
+  version = "1.0.0";
+
+  name = "${pname}-${version}";
+
+  src = fetchFromGitHub {
+    owner = "babluboy";
+    repo = pname;
+    rev = version;
+    sha256 = "0nv1nxird0s0qfhh8fr82mkj4qimhklw1bwcjwmvjdsvsxxs9520";
+  };
+
+  nativeBuildInputs = [
+    cmake
+    gobjectIntrospection
+    libxml2
+    ninja
+    pkgconfig
+    vala
+    wrapGAppsHook
+  ];
+
+  buildInputs = with gnome3; [
+    glib
+    granite
+    gtk3
+    html2text
+    libgee
+    poppler
+    sqlite
+    webkitgtk
+  ];
+
+  preFixup = ''
+    gappsWrapperArgs+=(
+      --prefix PATH : "${stdenv.lib.makeBinPath [ unzip unar poppler_utils html2text ]}"
+    )
+  '';
+
+   meta = with stdenv.lib; {
+     description = "A simple, focused eBook reader";
+     longDescription = ''
+       Read the books you love without having to worry about different format complexities like epub, pdf, mobi, cbr, etc.
+     '';
+     homepage = https://babluboy.github.io/bookworm/;
+     license = licenses.gpl3Plus;
+     platforms = platforms.linux;
+   };
+ }
diff --git a/pkgs/applications/office/gnumeric/default.nix b/pkgs/applications/office/gnumeric/default.nix
index e196b1bd0d77..c155d696d39f 100644
--- a/pkgs/applications/office/gnumeric/default.nix
+++ b/pkgs/applications/office/gnumeric/default.nix
@@ -9,11 +9,11 @@ let
   isonum = fetchurl { url = http://www.oasis-open.org/docbook/xml/4.5/ent/isonum.ent; sha256 = "04b62dw2g3cj9i4vn9xyrsrlz8fpmmijq98dm0nrkky31bwbbrs3"; };
   isogrk1 = fetchurl { url = http://www.oasis-open.org/docbook/xml/4.5/ent/isogrk1.ent; sha256 = "04b23anhs5wr62n4rgsjirzvw7rpjcsf8smz4ffzaqh3b0vw90vm"; };
 in stdenv.mkDerivation rec {
-  name = "gnumeric-1.12.39";
+  name = "gnumeric-1.12.43";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnumeric/1.12/${name}.tar.xz";
-    sha256 = "26cceb7fa97dc7eee7181a79a6251a85b1f1464dcaaaf7624829f7439c5f7d3f";
+    sha256 = "87c9abd6260cf29401fa1e0fcce374e8c7bcd1986608e4049f6037c9d32b5fd5";
   };
 
   configureFlags = [ "--disable-component" ];
diff --git a/pkgs/applications/office/libreoffice/default-primary-src.nix b/pkgs/applications/office/libreoffice/default-primary-src.nix
index 87fe343613e5..446efe78d256 100644
--- a/pkgs/applications/office/libreoffice/default-primary-src.nix
+++ b/pkgs/applications/office/libreoffice/default-primary-src.nix
@@ -2,9 +2,9 @@
 
 rec {
   major = "6";
-  minor = "0";
-  patch = "5";
-  tweak = "2";
+  minor = "1";
+  patch = "0";
+  tweak = "3";
 
   subdir = "${major}.${minor}.${patch}";
 
@@ -12,6 +12,6 @@ rec {
 
   src = fetchurl {
     url = "https://download.documentfoundation.org/libreoffice/src/${subdir}/libreoffice-${version}.tar.xz";
-    sha256 = "16h60j7h9z48vfhhj22m64myksnrrgrnh0qc6i4bxgshmm8kkzdn";
+    sha256 = "54eccd268f75d62fa6ab78d25685719c109257e1c0f4d628eae92ec09632ebd8";
   };
 }
diff --git a/pkgs/applications/office/libreoffice/default.nix b/pkgs/applications/office/libreoffice/default.nix
index 22c044d199a3..2de1ed92dea8 100644
--- a/pkgs/applications/office/libreoffice/default.nix
+++ b/pkgs/applications/office/libreoffice/default.nix
@@ -6,7 +6,7 @@
 , openssl, gperf, cppunit, GConf, ORBit2, poppler, utillinux
 , librsvg, gnome_vfs, libGLU_combined, bsh, CoinMP, libwps, libabw
 , autoconf, automake, openldap, bash, hunspell, librdf_redland, nss, nspr
-, libwpg, dbus-glib, glibc, qt4, clucene_core, libcdr, lcms, vigra
+, libwpg, dbus-glib, qt4, clucene_core, libcdr, lcms, vigra
 , unixODBC, mdds, sane-backends, mythes, libexttextcat, libvisio
 , fontsConf, pkgconfig, bluez5, libtool, carlito
 , libatomic_ops, graphite2, harfbuzz, libodfgen, libzmf
@@ -34,22 +34,28 @@ let
   };
 
   srcs = {
-    third_party = [ (let md5 = "185d60944ea767075d27247c3162b3bc"; in fetchurl rec {
-        url = "https://dev-www.libreoffice.org/extern/${md5}-${name}";
-        sha256 = "1infwvv1p6i21scywrldsxs22f62x85mns4iq8h6vr6vlx3fdzga";
-        name = "unowinreg.dll";
-      }) ] ++ (map (x : ((fetchurl {inherit (x) url sha256 name;}) // {inherit (x) md5name md5;})) (import ./libreoffice-srcs.nix));
+    third_party =
+      map (x : ((fetchurl {inherit (x) url sha256 name;}) // {inherit (x) md5name md5;}))
+      ((import ./libreoffice-srcs.nix) ++ [
+        (rec {
+          name = "unowinreg.dll";
+          url = "https://dev-www.libreoffice.org/extern/${md5name}";
+          sha256 = "1infwvv1p6i21scywrldsxs22f62x85mns4iq8h6vr6vlx3fdzga";
+          md5 = "185d60944ea767075d27247c3162b3bc";
+          md5name = "${md5}-${name}";
+        })
+      ]);
 
     translations = fetchSrc {
       name = "translations";
-      sha256 = "1p8gb9jxv4n8ggksbfsqzdw5amxg575grxifsabhgjllpisjzrlr";
+      sha256 = "140i0q6nyi2l6nv2b3n7s7mggm2rb1ws3h9awa9y6m2iads54qm7";
     };
 
     # TODO: dictionaries
 
     help = fetchSrc {
       name = "help";
-      sha256 = "1dkzm766zi4msk6w35bvfk5b5bx1xyqg2wx58wklr5375kjv6ba9";
+      sha256 = "0ayssl5ivhyzxi3gz3h4yhp8hq7ihig6n6iijbks5f1sm7dwridv";
     };
 
   };
@@ -58,26 +64,18 @@ in stdenv.mkDerivation rec {
 
   inherit (primary-src) src;
 
-  # Openoffice will open libcups dynamically, so we link it directly
-  # to make its dlopen work.
-  # It also seems not to mention libdl explicitly in some places.
-  NIX_LDFLAGS = "-lcups -ldl";
-
   # For some reason librdf_redland sometimes refers to rasqal.h instead
   # of rasqal/rasqal.h
-  # And LO refers to gpgme++ by no-path name
-  NIX_CFLAGS_COMPILE="-I${librdf_rasqal}/include/rasqal -I${gpgme.dev}/include/gpgme++";
-
-  # If we call 'configure', 'make' will then call configure again without parameters.
-  # It's their system.
-  configureScript = "./autogen.sh";
-  dontUseCmakeConfigure = true;
+  NIX_CFLAGS_COMPILE = [ "-I${librdf_rasqal}/include/rasqal" ];
 
   patches = [ ./xdg-open-brief.patch ];
 
   postUnpack = ''
     mkdir -v $sourceRoot/src
-  '' + (stdenv.lib.concatMapStrings (f: "ln -sfv ${f} $sourceRoot/src/${f.md5 or f.outputHash}-${f.name}\nln -sfv ${f} $sourceRoot/src/${f.name}\n") srcs.third_party)
+  '' + (lib.flip lib.concatMapStrings srcs.third_party (f: ''
+      ln -sfv ${f} $sourceRoot/src/${f.md5name}
+      ln -sfv ${f} $sourceRoot/src/${f.name}
+    ''))
   + ''
     ln -sv ${srcs.help} $sourceRoot/src/${srcs.help.name}
     ln -svf ${srcs.translations} $sourceRoot/src/${srcs.translations.name}
@@ -85,14 +83,20 @@ in stdenv.mkDerivation rec {
 
   postPatch = ''
     sed -e 's@/usr/bin/xdg-open@xdg-open@g' -i shell/source/unix/exec/shellexec.cxx
+
+    # configure checks for header 'gpgme++/gpgmepp_version.h',
+    # and if it is found (no matter where) uses a hardcoded path
+    # in what presumably is an effort to make it possible to write
+    # '#include <context.h>' instead of '#include <gpgmepp/context.h>'.
+    #
+    # Fix this path to point to where the headers can actually be found instead.
+    substituteInPlace configure.ac --replace \
+      'GPGMEPP_CFLAGS=-I/usr/include/gpgme++' \
+      'GPGMEPP_CFLAGS=-I${gpgme.dev}/include/gpgme++'
   '';
 
   QT4DIR = qt4;
 
-  # Fix boost 1.59 compat
-  # Try removing in the next version
-  CPPFLAGS = "-DBOOST_ERROR_CODE_HEADER_ONLY -DBOOST_SYSTEM_NO_DEPRECATED";
-
   preConfigure = ''
     configureFlagsArray=(
       "--with-parallelism=$NIX_BUILD_CORES"
@@ -101,69 +105,72 @@ in stdenv.mkDerivation rec {
 
     chmod a+x ./bin/unpack-sources
     patchShebangs .
-    # It is used only as an indicator of the proper current directory
-    touch solenv/inc/target.mk
-
-    # BLFS patch for Glibc 2.23 renaming isnan
-    sed -ire "s@isnan@std::&@g" xmloff/source/draw/ximp3dscene.cxx
 
     # This is required as some cppunittests require fontconfig configured
     cp "${fontsConf}" fonts.conf
     sed -e '/include/i<include>${carlito}/etc/fonts/conf.d</include>' -i fonts.conf
     export FONTCONFIG_FILE="$PWD/fonts.conf"
-  '';
 
-  # fetch_Download_item tries to interpret the name as a variable name
-  # Let it do so…
-  postConfigure = ''
-    sed -e '1ilibreoffice-translations-${version}.tar.xz=libreoffice-translations-${version}.tar.xz' -i Makefile
-    sed -e '1ilibreoffice-help-${version}.tar.xz=libreoffice-help-${version}.tar.xz' -i Makefile
-
-    # unit test sd_tiledrendering seems to be fragile
-    # https://nabble.documentfoundation.org/libreoffice-5-0-failure-in-CUT-libreofficekit-tiledrendering-td4150319.html
-    echo > ./sd/CppunitTest_sd_tiledrendering.mk
-    sed -e /CppunitTest_sd_tiledrendering/d -i sd/Module_sd.mk
-    # one more fragile test?
-    sed -e '/CPPUNIT_TEST(testTdf96536);/d' -i sw/qa/extras/uiwriter/uiwriter.cxx
-    # this I actually hate, this should be a data consistency test!
-    sed -e '/CPPUNIT_TEST(testTdf115013);/d' -i sw/qa/extras/uiwriter/uiwriter.cxx
-    # rendering-dependent test
-    sed -e '/CPPUNIT_ASSERT_EQUAL(11148L, pOleObj->GetLogicRect().getWidth());/d ' -i sc/qa/unit/subsequent_filters-test.cxx
-    # tilde expansion in path processing checks the existence of $HOME
-    sed -e 's@OString sSysPath("~/tmp");@& return ; @' -i sal/qa/osl/file/osl_File.cxx
-    # rendering-dependent: on my computer the test table actually doesn't fit…
-    # interesting fact: test disabled on macOS by upstream
-    sed -re '/DECLARE_WW8EXPORT_TEST[(]testTableKeep, "tdf91083.odt"[)]/,+5d' -i ./sw/qa/extras/ww8export/ww8export.cxx
-    # Segfault on DB access — maybe temporarily acceptable for a new version of Fresh?
-    sed -e 's/CppunitTest_dbaccess_empty_stdlib_save//' -i ./dbaccess/Module_dbaccess.mk
-    # one more fragile test?
-    sed -e '/CPPUNIT_TEST(testTdf77014);/d' -i sw/qa/extras/uiwriter/uiwriter.cxx
-    # rendering-dependent tests
-    sed -e '/CPPUNIT_TEST(testCustomColumnWidthExportXLSX)/d' -i sc/qa/unit/subsequent_export-test.cxx
-    sed -e '/CPPUNIT_TEST(testColumnWidthExportFromODStoXLSX)/d' -i sc/qa/unit/subsequent_export-test.cxx
-    sed -e '/CPPUNIT_TEST(testChartImportXLS)/d' -i sc/qa/unit/subsequent_filters-test.cxx
-    sed -zre 's/DesktopLOKTest::testGetFontSubset[^{]*[{]/& return; /' -i desktop/qa/desktop_lib/test_desktop_lib.cxx
-    sed -z -r -e 's/DECLARE_OOXMLEXPORT_TEST[(]testFlipAndRotateCustomShape,[^)]*[)].[{]/& return;/' -i sw/qa/extras/ooxmlexport/ooxmlexport7.cxx
-    sed -z -r -e 's/DECLARE_OOXMLEXPORT_TEST[(]tdf105490_negativeMargins,[^)]*[)].[{]/& return;/' -i sw/qa/extras/ooxmlexport/ooxmlexport9.cxx
-    sed -z -r -e 's/DECLARE_OOXMLIMPORT_TEST[(]testTdf112443,[^)]*[)].[{]/& return;/' -i sw/qa/extras/ooxmlimport/ooxmlimport.cxx
-    sed -z -r -e 's/DECLARE_RTFIMPORT_TEST[(]testTdf108947,[^)]*[)].[{]/& return;/' -i sw/qa/extras/rtfimport/rtfimport.cxx
-    # not sure about this fragile test
-    sed -z -r -e 's/DECLARE_OOXMLEXPORT_TEST[(]testTDF87348,[^)]*[)].[{]/& return;/' -i sw/qa/extras/ooxmlexport/ooxmlexport7.cxx
+    NOCONFIGURE=1 ./autogen.sh
   '';
 
-  makeFlags = "SHELL=${bash}/bin/bash";
-
-  enableParallelBuilding = true;
-
-  buildPhase = ''
+  postConfigure =
+    # fetch_Download_item tries to interpret the name as a variable name, let it do so...
+    ''
+      sed -e '1ilibreoffice-translations-${version}.tar.xz=libreoffice-translations-${version}.tar.xz' -i Makefile
+      sed -e '1ilibreoffice-help-${version}.tar.xz=libreoffice-help-${version}.tar.xz' -i Makefile
+    ''
+    # Test fixups
+    # May need to be revisited/pruned, left alone for now.
+    + ''
+      # unit test sd_tiledrendering seems to be fragile
+      # https://nabble.documentfoundation.org/libreoffice-5-0-failure-in-CUT-libreofficekit-tiledrendering-td4150319.html
+      echo > ./sd/CppunitTest_sd_tiledrendering.mk
+      sed -e /CppunitTest_sd_tiledrendering/d -i sd/Module_sd.mk
+      # one more fragile test?
+      sed -e '/CPPUNIT_TEST(testTdf96536);/d' -i sw/qa/extras/uiwriter/uiwriter.cxx
+      # this I actually hate, this should be a data consistency test!
+      sed -e '/CPPUNIT_TEST(testTdf115013);/d' -i sw/qa/extras/uiwriter/uiwriter.cxx
+      # rendering-dependent test
+      sed -e '/CPPUNIT_ASSERT_EQUAL(11148L, pOleObj->GetLogicRect().getWidth());/d ' -i sc/qa/unit/subsequent_filters-test.cxx
+      # tilde expansion in path processing checks the existence of $HOME
+      sed -e 's@OString sSysPath("~/tmp");@& return ; @' -i sal/qa/osl/file/osl_File.cxx
+      # rendering-dependent: on my computer the test table actually doesn't fit…
+      # interesting fact: test disabled on macOS by upstream
+      sed -re '/DECLARE_WW8EXPORT_TEST[(]testTableKeep, "tdf91083.odt"[)]/,+5d' -i ./sw/qa/extras/ww8export/ww8export.cxx
+      # Segfault on DB access — maybe temporarily acceptable for a new version of Fresh?
+      sed -e 's/CppunitTest_dbaccess_empty_stdlib_save//' -i ./dbaccess/Module_dbaccess.mk
+      # one more fragile test?
+      sed -e '/CPPUNIT_TEST(testTdf77014);/d' -i sw/qa/extras/uiwriter/uiwriter.cxx
+      # rendering-dependent tests
+      sed -e '/CPPUNIT_TEST(testCustomColumnWidthExportXLSX)/d' -i sc/qa/unit/subsequent_export-test.cxx
+      sed -e '/CPPUNIT_TEST(testColumnWidthExportFromODStoXLSX)/d' -i sc/qa/unit/subsequent_export-test.cxx
+      sed -e '/CPPUNIT_TEST(testChartImportXLS)/d' -i sc/qa/unit/subsequent_filters-test.cxx
+      sed -zre 's/DesktopLOKTest::testGetFontSubset[^{]*[{]/& return; /' -i desktop/qa/desktop_lib/test_desktop_lib.cxx
+      sed -z -r -e 's/DECLARE_OOXMLEXPORT_TEST[(]testFlipAndRotateCustomShape,[^)]*[)].[{]/& return;/' -i sw/qa/extras/ooxmlexport/ooxmlexport7.cxx
+      sed -z -r -e 's/DECLARE_OOXMLEXPORT_TEST[(]tdf105490_negativeMargins,[^)]*[)].[{]/& return;/' -i sw/qa/extras/ooxmlexport/ooxmlexport9.cxx
+      sed -z -r -e 's/DECLARE_OOXMLIMPORT_TEST[(]testTdf112443,[^)]*[)].[{]/& return;/' -i sw/qa/extras/ooxmlimport/ooxmlimport.cxx
+      sed -z -r -e 's/DECLARE_RTFIMPORT_TEST[(]testTdf108947,[^)]*[)].[{]/& return;/' -i sw/qa/extras/rtfimport/rtfimport.cxx
+      # not sure about this fragile test
+      sed -z -r -e 's/DECLARE_OOXMLEXPORT_TEST[(]testTDF87348,[^)]*[)].[{]/& return;/' -i sw/qa/extras/ooxmlexport/ooxmlexport7.cxx
+    ''
     # This to avoid using /lib:/usr/lib at linking
+    + ''
     sed -i '/gb_LinkTarget_LDFLAGS/{ n; /rpath-link/d;}' solenv/gbuild/platform/unxgcc.mk
 
     find -name "*.cmd" -exec sed -i s,/lib:/usr/lib,, {} \;
+    '';
+
+  makeFlags = "SHELL=${bash}/bin/bash";
+
+  enableParallelBuilding = true;
 
-    make
+  buildPhase = ''
+    make build-nocheck
   '';
 
+  doCheck = true;
+
   # It installs only things to $out/lib/libreoffice
   postInstall = ''
     mkdir -p $out/bin $out/share/desktop
@@ -195,11 +202,11 @@ in stdenv.mkDerivation rec {
     "--with-vendor=NixOS"
     "--with-commons-logging-jar=${commonsLogging}/share/java/commons-logging-1.2.jar"
     "--disable-report-builder"
+    "--disable-online-update"
     "--enable-python=system"
     "--enable-dbus"
     "--enable-release-build"
     (lib.enableFeature kdeIntegration "kde4")
-    "--with-package-format=installed"
     "--enable-epm"
     "--with-jdk-home=${jdk.home}"
     "--with-ant-home=${ant}/lib/ant"
@@ -213,9 +220,13 @@ in stdenv.mkDerivation rec {
     "--with-system-openldap"
     "--with-system-coinmp"
 
+    "--with-alloc=system"
+
     # Without these, configure does not finish
     "--without-junit"
 
+    "--disable-libnumbertext" # system-libnumbertext"
+
     # I imagine this helps. Copied from go-oo.
     # Modified on every upgrade, though
     "--disable-odk"
@@ -260,7 +271,7 @@ in stdenv.mkDerivation rec {
       gst_all_1.gst-plugins-base glib
       neon nspr nss openldap openssl ORBit2 pam perl pkgconfig poppler
       python3 sablotron sane-backends unzip vigra which zip zlib
-      mdds bluez5 glibc libcmis libwps libabw libzmf libtool
+      mdds bluez5 libcmis libwps libabw libzmf libtool
       libxshmfence libatomic_ops graphite2 harfbuzz gpgme utillinux
       librevenge libe-book libmwaw glm glew ncurses epoxy
       libodfgen CoinMP librdf_rasqal defaultIconTheme gettext
diff --git a/pkgs/applications/office/libreoffice/libreoffice-srcs-still.nix b/pkgs/applications/office/libreoffice/libreoffice-srcs-still.nix
index 36500166dccf..94e2564d1133 100644
--- a/pkgs/applications/office/libreoffice/libreoffice-srcs-still.nix
+++ b/pkgs/applications/office/libreoffice/libreoffice-srcs-still.nix
@@ -1,10 +1,10 @@
 [
   {
-    name = "libabw-0.1.1.tar.bz2";
-    url = "http://dev-www.libreoffice.org/src/libabw-0.1.1.tar.bz2";
-    sha256 = "7a3d3415cf82ab9894f601d1b3057c4615060304d5279efdec6275e01b96a199";
+    name = "libabw-0.1.2.tar.xz";
+    url = "http://dev-www.libreoffice.org/src/libabw-0.1.2.tar.xz";
+    sha256 = "0b72944d5af81dda0a5c5803ee84cbac4b81441a4d767aa57029adc6744c2485";
     md5 = "";
-    md5name = "7a3d3415cf82ab9894f601d1b3057c4615060304d5279efdec6275e01b96a199-libabw-0.1.1.tar.bz2";
+    md5name = "0b72944d5af81dda0a5c5803ee84cbac4b81441a4d767aa57029adc6744c2485-libabw-0.1.2.tar.xz";
   }
   {
     name = "commons-logging-1.2-src.tar.gz";
@@ -28,11 +28,11 @@
     md5name = "976a12a59bc286d634a21d7be0841cc74289ea9077aa1af46be19d1a6e844c19-apr-util-1.5.4.tar.gz";
   }
   {
-    name = "boost_1_63_0.tar.bz2";
-    url = "http://dev-www.libreoffice.org/src/boost_1_63_0.tar.bz2";
-    sha256 = "beae2529f759f6b3bf3f4969a19c2e9d6f0c503edcb2de4a61d1428519fcb3b0";
+    name = "boost_1_65_1.tar.bz2";
+    url = "http://dev-www.libreoffice.org/src/boost_1_65_1.tar.bz2";
+    sha256 = "9807a5d16566c57fd74fb522764e0b134a8bbe6b6e8967b83afefd30dcd3be81";
     md5 = "";
-    md5name = "beae2529f759f6b3bf3f4969a19c2e9d6f0c503edcb2de4a61d1428519fcb3b0-boost_1_63_0.tar.bz2";
+    md5name = "9807a5d16566c57fd74fb522764e0b134a8bbe6b6e8967b83afefd30dcd3be81-boost_1_65_1.tar.bz2";
   }
   {
     name = "breakpad.zip";
@@ -56,18 +56,18 @@
     md5name = "00b516f4704d4a7cb50a1d97e6e8e15b-bzip2-1.0.6.tar.gz";
   }
   {
-    name = "cairo-1.14.8.tar.xz";
-    url = "http://dev-www.libreoffice.org/src/cairo-1.14.8.tar.xz";
-    sha256 = "d1f2d98ae9a4111564f6de4e013d639cf77155baf2556582295a0f00a9bc5e20";
+    name = "cairo-1.14.10.tar.xz";
+    url = "http://dev-www.libreoffice.org/src/cairo-1.14.10.tar.xz";
+    sha256 = "7e87878658f2c9951a14fc64114d4958c0e65ac47530b8ac3078b2ce41b66a09";
     md5 = "";
-    md5name = "d1f2d98ae9a4111564f6de4e013d639cf77155baf2556582295a0f00a9bc5e20-cairo-1.14.8.tar.xz";
+    md5name = "7e87878658f2c9951a14fc64114d4958c0e65ac47530b8ac3078b2ce41b66a09-cairo-1.14.10.tar.xz";
   }
   {
-    name = "libcdr-0.1.3.tar.bz2";
-    url = "http://dev-www.libreoffice.org/src/libcdr-0.1.3.tar.bz2";
-    sha256 = "5160bbbfefe52bd4880840fad2b07a512813e37bfaf8ccac062fca238f230f4d";
+    name = "libcdr-0.1.4.tar.xz";
+    url = "http://dev-www.libreoffice.org/src/libcdr-0.1.4.tar.xz";
+    sha256 = "e7a7e8b00a3df5798110024d7061fe9d1c3330277d2e4fa9213294f966a4a66d";
     md5 = "";
-    md5name = "5160bbbfefe52bd4880840fad2b07a512813e37bfaf8ccac062fca238f230f4d-libcdr-0.1.3.tar.bz2";
+    md5name = "e7a7e8b00a3df5798110024d7061fe9d1c3330277d2e4fa9213294f966a4a66d-libcdr-0.1.4.tar.xz";
   }
   {
     name = "clucene-core-2.3.3.4.tar.gz";
@@ -91,13 +91,6 @@
     md5name = "86c798780b9e1f5921fe4efe651a93cb420623b45aa1fdff57af8c37f116113f-CoinMP-1.7.6.tgz";
   }
   {
-    name = "collada2gltf-master-cb1d97788a.tar.bz2";
-    url = "http://dev-www.libreoffice.org/src/4b87018f7fff1d054939d19920b751a0-collada2gltf-master-cb1d97788a.tar.bz2";
-    sha256 = "b0adb8e71aef80751b999c9c055e419a625c4a05184e407aef2aee28752ad8cb";
-    md5 = "4b87018f7fff1d054939d19920b751a0";
-    md5name = "4b87018f7fff1d054939d19920b751a0-collada2gltf-master-cb1d97788a.tar.bz2";
-  }
-  {
     name = "cppunit-1.14.0.tar.gz";
     url = "http://dev-www.libreoffice.org/src/cppunit-1.14.0.tar.gz";
     sha256 = "3d569869d27b48860210c758c4f313082103a5e58219a7669b52bfd29d674780";
@@ -112,18 +105,18 @@
     md5name = "1f467e5bb703f12cbbb09d5cf67ecf4a-converttexttonumber-1-5-0.oxt";
   }
   {
-    name = "curl-7.52.1.tar.gz";
-    url = "http://dev-www.libreoffice.org/src/curl-7.52.1.tar.gz";
-    sha256 = "a8984e8b20880b621f61a62d95ff3c0763a3152093a9f9ce4287cfd614add6ae";
+    name = "curl-7.60.0.tar.gz";
+    url = "http://dev-www.libreoffice.org/src/curl-7.60.0.tar.gz";
+    sha256 = "e9c37986337743f37fd14fe8737f246e97aec94b39d1b71e8a5973f72a9fc4f5";
     md5 = "";
-    md5name = "a8984e8b20880b621f61a62d95ff3c0763a3152093a9f9ce4287cfd614add6ae-curl-7.52.1.tar.gz";
+    md5name = "e9c37986337743f37fd14fe8737f246e97aec94b39d1b71e8a5973f72a9fc4f5-curl-7.60.0.tar.gz";
   }
   {
-    name = "libe-book-0.1.2.tar.bz2";
-    url = "http://dev-www.libreoffice.org/src/libe-book-0.1.2.tar.bz2";
-    sha256 = "b710a57c633205b933015474d0ac0862253d1c52114d535dd09b20939a0d1850";
+    name = "libe-book-0.1.3.tar.xz";
+    url = "http://dev-www.libreoffice.org/src/libe-book-0.1.3.tar.xz";
+    sha256 = "7e8d8ff34f27831aca3bc6f9cc532c2f90d2057c778963b884ff3d1e34dfe1f9";
     md5 = "";
-    md5name = "b710a57c633205b933015474d0ac0862253d1c52114d535dd09b20939a0d1850-libe-book-0.1.2.tar.bz2";
+    md5name = "7e8d8ff34f27831aca3bc6f9cc532c2f90d2057c778963b884ff3d1e34dfe1f9-libe-book-0.1.3.tar.xz";
   }
   {
     name = "libepoxy-1.3.1.tar.bz2";
@@ -140,18 +133,25 @@
     md5name = "3ade8cfe7e59ca8e65052644fed9fca4-epm-3.7.tar.gz";
   }
   {
-    name = "libetonyek-0.1.6.tar.bz2";
-    url = "http://dev-www.libreoffice.org/src/libetonyek-0.1.6.tar.bz2";
-    sha256 = "032f53e8d7691e48a73ddbe74fa84c906ff6ff32a33e6ee2a935b6fdb6aecb78";
+    name = "libepubgen-0.1.0.tar.bz2";
+    url = "http://dev-www.libreoffice.org/src/libepubgen-0.1.0.tar.bz2";
+    sha256 = "730bd1cbeee166334faadbc06c953a67b145c3c4754a3b503482066dae4cd633";
     md5 = "";
-    md5name = "032f53e8d7691e48a73ddbe74fa84c906ff6ff32a33e6ee2a935b6fdb6aecb78-libetonyek-0.1.6.tar.bz2";
+    md5name = "730bd1cbeee166334faadbc06c953a67b145c3c4754a3b503482066dae4cd633-libepubgen-0.1.0.tar.bz2";
   }
   {
-    name = "expat-2.2.3.tar.bz2";
-    url = "http://dev-www.libreoffice.org/src/expat-2.2.3.tar.bz2";
-    sha256 = "b31890fb02f85c002a67491923f89bda5028a880fd6c374f707193ad81aace5f";
+    name = "libetonyek-0.1.7.tar.xz";
+    url = "http://dev-www.libreoffice.org/src/libetonyek-0.1.7.tar.xz";
+    sha256 = "69dbe10d4426d52f09060d489f8eb90dfa1df592e82eb0698d9dbaf38cc734ac";
     md5 = "";
-    md5name = "b31890fb02f85c002a67491923f89bda5028a880fd6c374f707193ad81aace5f-expat-2.2.3.tar.bz2";
+    md5name = "69dbe10d4426d52f09060d489f8eb90dfa1df592e82eb0698d9dbaf38cc734ac-libetonyek-0.1.7.tar.xz";
+  }
+  {
+    name = "expat-2.2.5.tar.bz2";
+    url = "http://dev-www.libreoffice.org/src/expat-2.2.5.tar.bz2";
+    sha256 = "d9dc32efba7e74f788fcc4f212a43216fc37cf5f23f4c2339664d473353aedf6";
+    md5 = "";
+    md5name = "d9dc32efba7e74f788fcc4f212a43216fc37cf5f23f4c2339664d473353aedf6-expat-2.2.5.tar.bz2";
   }
   {
     name = "Firebird-3.0.0.32483-0.tar.bz2";
@@ -161,11 +161,11 @@
     md5name = "6994be3555e23226630c587444be19d309b25b0fcf1f87df3b4e3f88943e5860-Firebird-3.0.0.32483-0.tar.bz2";
   }
   {
-    name = "fontconfig-2.12.1.tar.bz2";
-    url = "http://dev-www.libreoffice.org/src/fontconfig-2.12.1.tar.bz2";
-    sha256 = "b449a3e10c47e1d1c7a6ec6e2016cca73d3bd68fbbd4f0ae5cc6b573f7d6c7f3";
+    name = "fontconfig-2.12.6.tar.bz2";
+    url = "http://dev-www.libreoffice.org/src/fontconfig-2.12.6.tar.bz2";
+    sha256 = "cf0c30807d08f6a28ab46c61b8dbd55c97d2f292cf88f3a07d3384687f31f017";
     md5 = "";
-    md5name = "b449a3e10c47e1d1c7a6ec6e2016cca73d3bd68fbbd4f0ae5cc6b573f7d6c7f3-fontconfig-2.12.1.tar.bz2";
+    md5name = "cf0c30807d08f6a28ab46c61b8dbd55c97d2f292cf88f3a07d3384687f31f017-fontconfig-2.12.6.tar.bz2";
   }
   {
     name = "crosextrafonts-20130214.tar.gz";
@@ -217,20 +217,6 @@
     md5name = "e7a384790b13c29113e22e596ade9687-LinLibertineG-20120116.zip";
   }
   {
-    name = "open-sans-font-ttf-1.10.tar.gz";
-    url = "http://dev-www.libreoffice.org/src/7a15edea7d415ac5150ea403e27401fd-open-sans-font-ttf-1.10.tar.gz";
-    sha256 = "cc80fd415e57ecec067339beadd0eef9eaa45e65d3c51a922ba5f9172779bfb8";
-    md5 = "7a15edea7d415ac5150ea403e27401fd";
-    md5name = "7a15edea7d415ac5150ea403e27401fd-open-sans-font-ttf-1.10.tar.gz";
-  }
-  {
-    name = "pt-serif-font-1.0000W.tar.gz";
-    url = "http://dev-www.libreoffice.org/src/c3c1a8ba7452950636e871d25020ce0d-pt-serif-font-1.0000W.tar.gz";
-    sha256 = "6757feb23f889a82df59679d02b8ee1f907df0a0ac1c49cdb48ed737b60e5dfa";
-    md5 = "c3c1a8ba7452950636e871d25020ce0d";
-    md5name = "c3c1a8ba7452950636e871d25020ce0d-pt-serif-font-1.0000W.tar.gz";
-  }
-  {
     name = "source-code-pro-2.030R-ro-1.050R-it.tar.gz";
     url = "http://dev-www.libreoffice.org/src/907d6e99f241876695c19ff3db0b8923-source-code-pro-2.030R-ro-1.050R-it.tar.gz";
     sha256 = "09466dce87653333f189acd8358c60c6736dcd95f042dee0b644bdcf65b6ae2f";
@@ -252,18 +238,74 @@
     md5name = "d1a08f7c10589f22740231017694af0a7a270760c8dec33d8d1c038e2be0a0c7-EmojiOneColor-SVGinOT-1.3.tar.gz";
   }
   {
-    name = "libfreehand-0.1.1.tar.bz2";
-    url = "http://dev-www.libreoffice.org/src/libfreehand-0.1.1.tar.bz2";
-    sha256 = "45dab0e5d632eb51eeb00847972ca03835d6791149e9e714f093a9df2b445877";
+    name = "noto-fonts-20171024.tar.gz";
+    url = "http://dev-www.libreoffice.org/src/noto-fonts-20171024.tar.gz";
+    sha256 = "29acc15a4c4d6b51201ba5d60f303dfbc2e5acbfdb70413c9ae1ed34fa259994";
+    md5 = "";
+    md5name = "29acc15a4c4d6b51201ba5d60f303dfbc2e5acbfdb70413c9ae1ed34fa259994-noto-fonts-20171024.tar.gz";
+  }
+  {
+    name = "culmus-0.131.tar.gz";
+    url = "http://dev-www.libreoffice.org/src/culmus-0.131.tar.gz";
+    sha256 = "dcf112cfcccb76328dcfc095f4d7c7f4d2f7e48d0eed5e78b100d1d77ce2ed1b";
     md5 = "";
-    md5name = "45dab0e5d632eb51eeb00847972ca03835d6791149e9e714f093a9df2b445877-libfreehand-0.1.1.tar.bz2";
+    md5name = "dcf112cfcccb76328dcfc095f4d7c7f4d2f7e48d0eed5e78b100d1d77ce2ed1b-culmus-0.131.tar.gz";
   }
   {
-    name = "freetype-2.7.1.tar.bz2";
-    url = "http://dev-www.libreoffice.org/src/freetype-2.7.1.tar.bz2";
-    sha256 = "3a3bb2c4e15ffb433f2032f50a5b5a92558206822e22bfe8cbe339af4aa82f88";
+    name = "libre-hebrew-1.0.tar.gz";
+    url = "http://dev-www.libreoffice.org/src/libre-hebrew-1.0.tar.gz";
+    sha256 = "f596257c1db706ce35795b18d7f66a4db99d427725f20e9384914b534142579a";
     md5 = "";
-    md5name = "3a3bb2c4e15ffb433f2032f50a5b5a92558206822e22bfe8cbe339af4aa82f88-freetype-2.7.1.tar.bz2";
+    md5name = "f596257c1db706ce35795b18d7f66a4db99d427725f20e9384914b534142579a-libre-hebrew-1.0.tar.gz";
+  }
+  {
+    name = "alef-1.001.tar.gz";
+    url = "http://dev-www.libreoffice.org/src/alef-1.001.tar.gz";
+    sha256 = "b98b67602a2c8880a1770f0b9e37c190f29a7e2ade5616784f0b89fbdb75bf52";
+    md5 = "";
+    md5name = "b98b67602a2c8880a1770f0b9e37c190f29a7e2ade5616784f0b89fbdb75bf52-alef-1.001.tar.gz";
+  }
+  {
+    name = "amiri-0.109.zip";
+    url = "http://dev-www.libreoffice.org/src/amiri-0.109.zip";
+    sha256 = "97ee6e40d87f4b31de15d9a93bb30bf27bf308f0814f4ee9c47365b027402ad6";
+    md5 = "";
+    md5name = "97ee6e40d87f4b31de15d9a93bb30bf27bf308f0814f4ee9c47365b027402ad6-amiri-0.109.zip";
+  }
+  {
+    name = "ttf-kacst_2.01+mry.tar.gz";
+    url = "http://dev-www.libreoffice.org/src/ttf-kacst_2.01+mry.tar.gz";
+    sha256 = "dca00f5e655f2f217a766faa73a81f542c5c204aa3a47017c3c2be0b31d00a56";
+    md5 = "";
+    md5name = "dca00f5e655f2f217a766faa73a81f542c5c204aa3a47017c3c2be0b31d00a56-ttf-kacst_2.01+mry.tar.gz";
+  }
+  {
+    name = "ReemKufi-0.6.tar.gz";
+    url = "http://dev-www.libreoffice.org/src/ReemKufi-0.6.tar.gz";
+    sha256 = "4dfbd8b227ea062ca1742fb15d707f0b74398f9ddb231892554f0959048e809b";
+    md5 = "";
+    md5name = "4dfbd8b227ea062ca1742fb15d707f0b74398f9ddb231892554f0959048e809b-ReemKufi-0.6.tar.gz";
+  }
+  {
+    name = "Scheherazade-2.100.zip";
+    url = "http://dev-www.libreoffice.org/src/Scheherazade-2.100.zip";
+    sha256 = "251c8817ceb87d9b661ce1d5b49e732a0116add10abc046be4b8ba5196e149b5";
+    md5 = "";
+    md5name = "251c8817ceb87d9b661ce1d5b49e732a0116add10abc046be4b8ba5196e149b5-Scheherazade-2.100.zip";
+  }
+  {
+    name = "libfreehand-0.1.2.tar.xz";
+    url = "http://dev-www.libreoffice.org/src/libfreehand-0.1.2.tar.xz";
+    sha256 = "0e422d1564a6dbf22a9af598535425271e583514c0f7ba7d9091676420de34ac";
+    md5 = "";
+    md5name = "0e422d1564a6dbf22a9af598535425271e583514c0f7ba7d9091676420de34ac-libfreehand-0.1.2.tar.xz";
+  }
+  {
+    name = "freetype-2.8.1.tar.bz2";
+    url = "http://dev-www.libreoffice.org/src/freetype-2.8.1.tar.bz2";
+    sha256 = "e5435f02e02d2b87bb8e4efdcaa14b1f78c9cf3ab1ed80f94b6382fb6acc7d78";
+    md5 = "";
+    md5name = "e5435f02e02d2b87bb8e4efdcaa14b1f78c9cf3ab1ed80f94b6382fb6acc7d78-freetype-2.8.1.tar.bz2";
   }
   {
     name = "glm-0.9.4.6-libreoffice.zip";
@@ -273,11 +315,11 @@
     md5name = "bae83fa5dc7f081768daace6e199adc3-glm-0.9.4.6-libreoffice.zip";
   }
   {
-    name = "gpgme-1.8.0.tar.bz2";
-    url = "http://dev-www.libreoffice.org/src/gpgme-1.8.0.tar.bz2";
-    sha256 = "596097257c2ce22e747741f8ff3d7e24f6e26231fa198a41b2a072e62d1e5d33";
+    name = "gpgme-1.9.0.tar.bz2";
+    url = "http://dev-www.libreoffice.org/src/gpgme-1.9.0.tar.bz2";
+    sha256 = "1b29fedb8bfad775e70eafac5b0590621683b2d9869db994568e6401f4034ceb";
     md5 = "";
-    md5name = "596097257c2ce22e747741f8ff3d7e24f6e26231fa198a41b2a072e62d1e5d33-gpgme-1.8.0.tar.bz2";
+    md5name = "1b29fedb8bfad775e70eafac5b0590621683b2d9869db994568e6401f4034ceb-gpgme-1.9.0.tar.bz2";
   }
   {
     name = "graphite2-minimal-1.3.10.tgz";
@@ -287,11 +329,11 @@
     md5name = "aa5e58356cd084000609ebbd93fef456a1bc0ab9e46fea20e81552fb286232a9-graphite2-minimal-1.3.10.tgz";
   }
   {
-    name = "harfbuzz-1.4.8.tar.bz2";
-    url = "http://dev-www.libreoffice.org/src/harfbuzz-1.4.8.tar.bz2";
-    sha256 = "ccec4930ff0bb2d0c40aee203075447954b64a8c2695202413cc5e428c907131";
+    name = "harfbuzz-1.7.0.tar.bz2";
+    url = "http://dev-www.libreoffice.org/src/harfbuzz-1.7.0.tar.bz2";
+    sha256 = "042742d6ec67bc6719b69cf38a3fba24fbd120e207e3fdc18530dc730fb6a029";
     md5 = "";
-    md5name = "ccec4930ff0bb2d0c40aee203075447954b64a8c2695202413cc5e428c907131-harfbuzz-1.4.8.tar.bz2";
+    md5name = "042742d6ec67bc6719b69cf38a3fba24fbd120e207e3fdc18530dc730fb6a029-harfbuzz-1.7.0.tar.bz2";
   }
   {
     name = "hsqldb_1_8_0.zip";
@@ -301,11 +343,11 @@
     md5name = "17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip";
   }
   {
-    name = "hunspell-1.6.0.tar.gz";
-    url = "http://dev-www.libreoffice.org/src/047c3feb121261b76dc16cdb62f54483-hunspell-1.6.0.tar.gz";
-    sha256 = "512e7d2ee69dad0b35ca011076405e56e0f10963a02d4859dbcc4faf53ca68e2";
-    md5 = "047c3feb121261b76dc16cdb62f54483";
-    md5name = "047c3feb121261b76dc16cdb62f54483-hunspell-1.6.0.tar.gz";
+    name = "hunspell-1.6.2.tar.gz";
+    url = "http://dev-www.libreoffice.org/src/hunspell-1.6.2.tar.gz";
+    sha256 = "3cd9ceb062fe5814f668e4f22b2fa6e3ba0b339b921739541ce180cac4d6f4c4";
+    md5 = "";
+    md5name = "3cd9ceb062fe5814f668e4f22b2fa6e3ba0b339b921739541ce180cac4d6f4c4-hunspell-1.6.2.tar.gz";
   }
   {
     name = "hyphen-2.8.8.tar.gz";
@@ -315,11 +357,18 @@
     md5name = "5ade6ae2a99bc1e9e57031ca88d36dad-hyphen-2.8.8.tar.gz";
   }
   {
-    name = "icu4c-58_1-src.tgz";
-    url = "http://dev-www.libreoffice.org/src/1901302aaff1c1633ef81862663d2917-icu4c-58_1-src.tgz";
-    sha256 = "0eb46ba3746a9c2092c8ad347a29b1a1b4941144772d13a88667a7b11ea30309";
-    md5 = "1901302aaff1c1633ef81862663d2917";
-    md5name = "1901302aaff1c1633ef81862663d2917-icu4c-58_1-src.tgz";
+    name = "icu4c-60_2-src.tgz";
+    url = "http://dev-www.libreoffice.org/src/icu4c-60_2-src.tgz";
+    sha256 = "f073ea8f35b926d70bb33e6577508aa642a8b316a803f11be20af384811db418";
+    md5 = "";
+    md5name = "f073ea8f35b926d70bb33e6577508aa642a8b316a803f11be20af384811db418-icu4c-60_2-src.tgz";
+  }
+  {
+    name = "icu4c-60_2-data.zip";
+    url = "http://dev-www.libreoffice.org/src/icu4c-60_2-data.zip";
+    sha256 = "68f42ad0c9e0a5a5af8eba0577ba100833912288bad6e4d1f42ff480bbcfd4a9";
+    md5 = "";
+    md5name = "68f42ad0c9e0a5a5af8eba0577ba100833912288bad6e4d1f42ff480bbcfd4a9-icu4c-60_2-data.zip";
   }
   {
     name = "flow-engine-0.9.4.zip";
@@ -399,18 +448,18 @@
     md5name = "39bb3fcea1514f1369fcfc87542390fd-sacjava-1.3.zip";
   }
   {
-    name = "libjpeg-turbo-1.5.1.tar.gz";
-    url = "http://dev-www.libreoffice.org/src/libjpeg-turbo-1.5.1.tar.gz";
-    sha256 = "41429d3d253017433f66e3d472b8c7d998491d2f41caa7306b8d9a6f2a2c666c";
+    name = "libjpeg-turbo-1.5.2.tar.gz";
+    url = "http://dev-www.libreoffice.org/src/libjpeg-turbo-1.5.2.tar.gz";
+    sha256 = "9098943b270388727ae61de82adec73cf9f0dbb240b3bc8b172595ebf405b528";
     md5 = "";
-    md5name = "41429d3d253017433f66e3d472b8c7d998491d2f41caa7306b8d9a6f2a2c666c-libjpeg-turbo-1.5.1.tar.gz";
+    md5name = "9098943b270388727ae61de82adec73cf9f0dbb240b3bc8b172595ebf405b528-libjpeg-turbo-1.5.2.tar.gz";
   }
   {
-    name = "language-subtag-registry-2017-12-14.tar.bz2";
-    url = "http://dev-www.libreoffice.org/src/language-subtag-registry-2017-12-14.tar.bz2";
-    sha256 = "0f87b9428cbc2d96d8e4f54a07e3858b4a428e5fec9396bc3b52fb9f248be362";
+    name = "language-subtag-registry-2018-03-30.tar.bz2";
+    url = "http://dev-www.libreoffice.org/src/language-subtag-registry-2018-03-30.tar.bz2";
+    sha256 = "b7ad618b7db518155f00490a11b861496864f18b23b4b537eb80bfe84ca6f854";
     md5 = "";
-    md5name = "0f87b9428cbc2d96d8e4f54a07e3858b4a428e5fec9396bc3b52fb9f248be362-language-subtag-registry-2017-12-14.tar.bz2";
+    md5name = "b7ad618b7db518155f00490a11b861496864f18b23b4b537eb80bfe84ca6f854-language-subtag-registry-2018-03-30.tar.bz2";
   }
   {
     name = "JLanguageTool-1.7.0.tar.bz2";
@@ -448,25 +497,18 @@
     md5name = "cf5091fa8e7dcdbe667335eb90a2cfdd0a3fe8f8c7c8d1ece44d9d055736a06a-libeot-0.01.tar.bz2";
   }
   {
-    name = "libexttextcat-3.4.4.tar.bz2";
-    url = "http://dev-www.libreoffice.org/src/10d61fbaa6a06348823651b1bd7940fe-libexttextcat-3.4.4.tar.bz2";
-    sha256 = "9595601c41051356d03d0a7d5dcad334fe1b420d221f6885d143c14bb8d62163";
-    md5 = "10d61fbaa6a06348823651b1bd7940fe";
-    md5name = "10d61fbaa6a06348823651b1bd7940fe-libexttextcat-3.4.4.tar.bz2";
-  }
-  {
-    name = "libgltf-0.1.0.tar.gz";
-    url = "http://dev-www.libreoffice.org/src/libgltf/libgltf-0.1.0.tar.gz";
-    sha256 = "119e730fbf002dd0eaafa4930167267d7d910aa17f29979ca9ca8b66625fd2da";
+    name = "libexttextcat-3.4.5.tar.xz";
+    url = "http://dev-www.libreoffice.org/src/libexttextcat-3.4.5.tar.xz";
+    sha256 = "13fdbc9d4c489a4d0519e51933a1aa21fe3fb9eb7da191b87f7a63e82797dac8";
     md5 = "";
-    md5name = "119e730fbf002dd0eaafa4930167267d7d910aa17f29979ca9ca8b66625fd2da-libgltf-0.1.0.tar.gz";
+    md5name = "13fdbc9d4c489a4d0519e51933a1aa21fe3fb9eb7da191b87f7a63e82797dac8-libexttextcat-3.4.5.tar.xz";
   }
   {
-    name = "libgpg-error-1.26.tar.bz2";
-    url = "http://dev-www.libreoffice.org/src/libgpg-error-1.26.tar.bz2";
-    sha256 = "4c4bcbc90116932e3acd37b37812d8653b1b189c1904985898e860af818aee69";
+    name = "libgpg-error-1.27.tar.bz2";
+    url = "http://dev-www.libreoffice.org/src/libgpg-error-1.27.tar.bz2";
+    sha256 = "4f93aac6fecb7da2b92871bb9ee33032be6a87b174f54abf8ddf0911a22d29d2";
     md5 = "";
-    md5name = "4c4bcbc90116932e3acd37b37812d8653b1b189c1904985898e860af818aee69-libgpg-error-1.26.tar.bz2";
+    md5name = "4f93aac6fecb7da2b92871bb9ee33032be6a87b174f54abf8ddf0911a22d29d2-libgpg-error-1.27.tar.bz2";
   }
   {
     name = "liblangtag-0.6.2.tar.bz2";
@@ -483,25 +525,25 @@
     md5name = "083daa92d8ee6f4af96a6143b12d7fc8fe1a547e14f862304f7281f8f7347483-ltm-1.0.zip";
   }
   {
-    name = "xmlsec1-1.2.24.tar.gz";
-    url = "http://dev-www.libreoffice.org/src/xmlsec1-1.2.24.tar.gz";
-    sha256 = "99a8643f118bb1261a72162f83e2deba0f4f690893b4b90e1be4f708e8d481cc";
+    name = "xmlsec1-1.2.25.tar.gz";
+    url = "http://dev-www.libreoffice.org/src/xmlsec1-1.2.25.tar.gz";
+    sha256 = "967ca83edf25ccb5b48a3c4a09ad3405a63365576503bf34290a42de1b92fcd2";
     md5 = "";
-    md5name = "99a8643f118bb1261a72162f83e2deba0f4f690893b4b90e1be4f708e8d481cc-xmlsec1-1.2.24.tar.gz";
+    md5name = "967ca83edf25ccb5b48a3c4a09ad3405a63365576503bf34290a42de1b92fcd2-xmlsec1-1.2.25.tar.gz";
   }
   {
-    name = "libxml2-2.9.4.tar.gz";
-    url = "http://dev-www.libreoffice.org/src/ae249165c173b1ff386ee8ad676815f5-libxml2-2.9.4.tar.gz";
-    sha256 = "ffb911191e509b966deb55de705387f14156e1a56b21824357cdf0053233633c";
-    md5 = "ae249165c173b1ff386ee8ad676815f5";
-    md5name = "ae249165c173b1ff386ee8ad676815f5-libxml2-2.9.4.tar.gz";
+    name = "libxml2-2.9.8.tar.gz";
+    url = "http://dev-www.libreoffice.org/src/libxml2-2.9.8.tar.gz";
+    sha256 = "0b74e51595654f958148759cfef0993114ddccccbb6f31aee018f3558e8e2732";
+    md5 = "";
+    md5name = "0b74e51595654f958148759cfef0993114ddccccbb6f31aee018f3558e8e2732-libxml2-2.9.8.tar.gz";
   }
   {
-    name = "libxslt-1.1.29.tar.gz";
-    url = "http://dev-www.libreoffice.org/src/a129d3c44c022de3b9dcf6d6f288d72e-libxslt-1.1.29.tar.gz";
-    sha256 = "b5976e3857837e7617b29f2249ebb5eeac34e249208d31f1fbf7a6ba7a4090ce";
-    md5 = "a129d3c44c022de3b9dcf6d6f288d72e";
-    md5name = "a129d3c44c022de3b9dcf6d6f288d72e-libxslt-1.1.29.tar.gz";
+    name = "libxslt-1.1.32.tar.gz";
+    url = "http://dev-www.libreoffice.org/src/libxslt-1.1.32.tar.gz";
+    sha256 = "526ecd0abaf4a7789041622c3950c0e7f2c4c8835471515fd77eec684a355460";
+    md5 = "";
+    md5name = "526ecd0abaf4a7789041622c3950c0e7f2c4c8835471515fd77eec684a355460-libxslt-1.1.32.tar.gz";
   }
   {
     name = "lp_solve_5.5.tar.gz";
@@ -518,11 +560,11 @@
     md5name = "a233181e03d3c307668b4c722d881661-mariadb_client-2.0.0-src.tar.gz";
   }
   {
-    name = "mdds-1.2.2.tar.bz2";
-    url = "http://dev-www.libreoffice.org/src/mdds-1.2.2.tar.bz2";
-    sha256 = "141e730b39110434b02cd844c5ad3442103f7c35f7e9a4d6a9f8af813594cc9d";
+    name = "mdds-1.3.1.tar.bz2";
+    url = "http://dev-www.libreoffice.org/src/mdds-1.3.1.tar.bz2";
+    sha256 = "dcb8cd2425567a5a5ec164afea475bce57784bca3e352ad4cbdd3d1a7e08e5a1";
     md5 = "";
-    md5name = "141e730b39110434b02cd844c5ad3442103f7c35f7e9a4d6a9f8af813594cc9d-mdds-1.2.2.tar.bz2";
+    md5name = "dcb8cd2425567a5a5ec164afea475bce57784bca3e352ad4cbdd3d1a7e08e5a1-mdds-1.3.1.tar.bz2";
   }
   {
     name = "mDNSResponder-576.30.4.tar.gz";
@@ -532,18 +574,18 @@
     md5name = "4737cb51378377e11d0edb7bcdd1bec79cbdaa7b27ea09c13e3006e58f8d92c0-mDNSResponder-576.30.4.tar.gz";
   }
   {
-    name = "libmspub-0.1.2.tar.bz2";
-    url = "http://dev-www.libreoffice.org/src/libmspub-0.1.2.tar.bz2";
-    sha256 = "26d488527ffbb0b41686d4bab756e3e6aaeb99f88adeb169d0c16d2cde96859a";
+    name = "libmspub-0.1.3.tar.xz";
+    url = "http://dev-www.libreoffice.org/src/libmspub-0.1.3.tar.xz";
+    sha256 = "f0225f0ff03f6bec4847d7c2d8719a36cafc4b97a09e504b610372cc5b981c97";
     md5 = "";
-    md5name = "26d488527ffbb0b41686d4bab756e3e6aaeb99f88adeb169d0c16d2cde96859a-libmspub-0.1.2.tar.bz2";
+    md5name = "f0225f0ff03f6bec4847d7c2d8719a36cafc4b97a09e504b610372cc5b981c97-libmspub-0.1.3.tar.xz";
   }
   {
-    name = "libmwaw-0.3.11.tar.xz";
-    url = "http://dev-www.libreoffice.org/src/libmwaw-0.3.11.tar.xz";
-    sha256 = "4b483a196bbe82bc0f7cb4cdf70ef1cedb91139bd2e037eabaed4a4d6ed2299a";
+    name = "libmwaw-0.3.13.tar.xz";
+    url = "http://dev-www.libreoffice.org/src/libmwaw-0.3.13.tar.xz";
+    sha256 = "db55c728448f9c795cd71a0bb6043f6d4744e3e001b955a018a2c634981d5aea";
     md5 = "";
-    md5name = "4b483a196bbe82bc0f7cb4cdf70ef1cedb91139bd2e037eabaed4a4d6ed2299a-libmwaw-0.3.11.tar.xz";
+    md5name = "db55c728448f9c795cd71a0bb6043f6d4744e3e001b955a018a2c634981d5aea-libmwaw-0.3.13.tar.xz";
   }
   {
     name = "mysql-connector-c++-1.1.4.tar.gz";
@@ -560,18 +602,18 @@
     md5name = "a8c2c5b8f09e7ede322d5c602ff6a4b6-mythes-1.2.4.tar.gz";
   }
   {
-    name = "neon-0.30.1.tar.gz";
-    url = "http://dev-www.libreoffice.org/src/231adebe5c2f78fded3e3df6e958878e-neon-0.30.1.tar.gz";
-    sha256 = "00c626c0dc18d094ab374dbd9a354915bfe4776433289386ed489c2ec0845cdd";
-    md5 = "231adebe5c2f78fded3e3df6e958878e";
-    md5name = "231adebe5c2f78fded3e3df6e958878e-neon-0.30.1.tar.gz";
+    name = "neon-0.30.2.tar.gz";
+    url = "http://dev-www.libreoffice.org/src/neon-0.30.2.tar.gz";
+    sha256 = "db0bd8cdec329b48f53a6f00199c92d5ba40b0f015b153718d1b15d3d967fbca";
+    md5 = "";
+    md5name = "db0bd8cdec329b48f53a6f00199c92d5ba40b0f015b153718d1b15d3d967fbca-neon-0.30.2.tar.gz";
   }
   {
-    name = "nss-3.29.5-with-nspr-4.13.1.tar.gz";
-    url = "http://dev-www.libreoffice.org/src/nss-3.29.5-with-nspr-4.13.1.tar.gz";
-    sha256 = "8cb8624147737d1b4587c50bf058afbb6effc0f3c205d69b5ef4077b3bfed0e4";
+    name = "nss-3.33-with-nspr-4.17.tar.gz";
+    url = "http://dev-www.libreoffice.org/src/nss-3.33-with-nspr-4.17.tar.gz";
+    sha256 = "878d505ec0be577c45990c57eb5d2e5c8696bfa3412bd0fae193b275297bf5c4";
     md5 = "";
-    md5name = "8cb8624147737d1b4587c50bf058afbb6effc0f3c205d69b5ef4077b3bfed0e4-nss-3.29.5-with-nspr-4.13.1.tar.gz";
+    md5name = "878d505ec0be577c45990c57eb5d2e5c8696bfa3412bd0fae193b275297bf5c4-nss-3.33-with-nspr-4.17.tar.gz";
   }
   {
     name = "libodfgen-0.1.6.tar.bz2";
@@ -595,32 +637,25 @@
     md5name = "8249374c274932a21846fa7629c2aa9b-officeotron-0.7.4-master.jar";
   }
   {
-    name = "OpenCOLLADA-master-6509aa13af.tar.bz2";
-    url = "http://dev-www.libreoffice.org/src/OpenCOLLADA-master-6509aa13af.tar.bz2";
-    sha256 = "8f25d429237cde289a448c82a0a830791354ccce5ee40d77535642e46367d6c4";
+    name = "openldap-2.4.45.tgz";
+    url = "http://dev-www.libreoffice.org/src/openldap-2.4.45.tgz";
+    sha256 = "cdd6cffdebcd95161a73305ec13fc7a78e9707b46ca9f84fb897cd5626df3824";
     md5 = "";
-    md5name = "8f25d429237cde289a448c82a0a830791354ccce5ee40d77535642e46367d6c4-OpenCOLLADA-master-6509aa13af.tar.bz2";
+    md5name = "cdd6cffdebcd95161a73305ec13fc7a78e9707b46ca9f84fb897cd5626df3824-openldap-2.4.45.tgz";
   }
   {
-    name = "openldap-2.4.44.tgz";
-    url = "http://dev-www.libreoffice.org/src/openldap-2.4.44.tgz";
-    sha256 = "d7de6bf3c67009c95525dde3a0212cc110d0a70b92af2af8e3ee800e81b88400";
+    name = "openssl-1.0.2m.tar.gz";
+    url = "http://dev-www.libreoffice.org/src/openssl-1.0.2m.tar.gz";
+    sha256 = "8c6ff15ec6b319b50788f42c7abc2890c08ba5a1cdcd3810eb9092deada37b0f";
     md5 = "";
-    md5name = "d7de6bf3c67009c95525dde3a0212cc110d0a70b92af2af8e3ee800e81b88400-openldap-2.4.44.tgz";
+    md5name = "8c6ff15ec6b319b50788f42c7abc2890c08ba5a1cdcd3810eb9092deada37b0f-openssl-1.0.2m.tar.gz";
   }
   {
-    name = "openssl-1.0.2k.tar.gz";
-    url = "http://dev-www.libreoffice.org/src/openssl-1.0.2k.tar.gz";
-    sha256 = "6b3977c61f2aedf0f96367dcfb5c6e578cf37e7b8d913b4ecb6643c3cb88d8c0";
+    name = "liborcus-0.13.3.tar.gz";
+    url = "http://dev-www.libreoffice.org/src/liborcus-0.13.3.tar.gz";
+    sha256 = "62e76de1fd3101e77118732b860354121b40a87bbb1ebfeb8203477fffac16e9";
     md5 = "";
-    md5name = "6b3977c61f2aedf0f96367dcfb5c6e578cf37e7b8d913b4ecb6643c3cb88d8c0-openssl-1.0.2k.tar.gz";
-  }
-  {
-    name = "liborcus-0.12.1.tar.gz";
-    url = "http://dev-www.libreoffice.org/src/liborcus-0.12.1.tar.gz";
-    sha256 = "676b1fedd721f64489650f5e76d7f98b750439914d87cae505b8163d08447908";
-    md5 = "";
-    md5name = "676b1fedd721f64489650f5e76d7f98b750439914d87cae505b8163d08447908-liborcus-0.12.1.tar.gz";
+    md5name = "62e76de1fd3101e77118732b860354121b40a87bbb1ebfeb8203477fffac16e9-liborcus-0.13.3.tar.gz";
   }
   {
     name = "owncloud-android-library-0.9.4-no-binary-deps.tar.gz";
@@ -630,18 +665,18 @@
     md5name = "b18b3e3ef7fae6a79b62f2bb43cc47a5346b6330f6a383dc4be34439aca5e9fb-owncloud-android-library-0.9.4-no-binary-deps.tar.gz";
   }
   {
-    name = "libpagemaker-0.0.3.tar.bz2";
-    url = "http://dev-www.libreoffice.org/src/libpagemaker-0.0.3.tar.bz2";
-    sha256 = "3b5de037692f8e156777a75e162f6b110fa24c01749e4a66d7eb83f364e52a33";
+    name = "libpagemaker-0.0.4.tar.xz";
+    url = "http://dev-www.libreoffice.org/src/libpagemaker-0.0.4.tar.xz";
+    sha256 = "66adacd705a7d19895e08eac46d1e851332adf2e736c566bef1164e7a442519d";
     md5 = "";
-    md5name = "3b5de037692f8e156777a75e162f6b110fa24c01749e4a66d7eb83f364e52a33-libpagemaker-0.0.3.tar.bz2";
+    md5name = "66adacd705a7d19895e08eac46d1e851332adf2e736c566bef1164e7a442519d-libpagemaker-0.0.4.tar.xz";
   }
   {
-    name = "pdfium-3064.tar.bz2";
-    url = "http://dev-www.libreoffice.org/src/pdfium-3064.tar.bz2";
-    sha256 = "ded806dc9e2a4005d8c0a6b7fcb232ab36221d72d9ff5b815e8244987299d883";
+    name = "pdfium-3235.tar.bz2";
+    url = "http://dev-www.libreoffice.org/src/pdfium-3235.tar.bz2";
+    sha256 = "7dc0d33fc24b1612865f5e173d48800ba3f2db891c57e3f92b9d2ce56ffeb72f";
     md5 = "";
-    md5name = "ded806dc9e2a4005d8c0a6b7fcb232ab36221d72d9ff5b815e8244987299d883-pdfium-3064.tar.bz2";
+    md5name = "7dc0d33fc24b1612865f5e173d48800ba3f2db891c57e3f92b9d2ce56ffeb72f-pdfium-3235.tar.bz2";
   }
   {
     name = "pixman-0.34.0.tar.gz";
@@ -651,18 +686,18 @@
     md5name = "e80ebae4da01e77f68744319f01d52a3-pixman-0.34.0.tar.gz";
   }
   {
-    name = "libpng-1.6.28.tar.gz";
-    url = "http://dev-www.libreoffice.org/src/libpng-1.6.28.tar.gz";
-    sha256 = "b6cec903e74e9fdd7b5bbcde0ab2415dd12f2f9e84d9e4d9ddd2ba26a41623b2";
+    name = "libpng-1.6.34.tar.xz";
+    url = "http://dev-www.libreoffice.org/src/libpng-1.6.34.tar.xz";
+    sha256 = "2f1e960d92ce3b3abd03d06dfec9637dfbd22febf107a536b44f7a47c60659f6";
     md5 = "";
-    md5name = "b6cec903e74e9fdd7b5bbcde0ab2415dd12f2f9e84d9e4d9ddd2ba26a41623b2-libpng-1.6.28.tar.gz";
+    md5name = "2f1e960d92ce3b3abd03d06dfec9637dfbd22febf107a536b44f7a47c60659f6-libpng-1.6.34.tar.xz";
   }
   {
-    name = "poppler-0.56.0.tar.xz";
-    url = "http://dev-www.libreoffice.org/src/poppler-0.56.0.tar.xz";
-    sha256 = "869dbadf99ed882e776acbdbc06689d8a81872a2963440b1e8516cd7a2577173";
+    name = "poppler-0.66.0.tar.xz";
+    url = "http://dev-www.libreoffice.org/src/poppler-0.66.0.tar.xz";
+    sha256 = "2c096431adfb74bc2f53be466889b7646e1b599f28fa036094f3f7235cc9eae7";
     md5 = "";
-    md5name = "869dbadf99ed882e776acbdbc06689d8a81872a2963440b1e8516cd7a2577173-poppler-0.56.0.tar.xz";
+    md5name = "2c096431adfb74bc2f53be466889b7646e1b599f28fa036094f3f7235cc9eae7-poppler-0.66.0.tar.xz";
   }
   {
     name = "postgresql-9.2.1.tar.bz2";
@@ -672,11 +707,18 @@
     md5name = "c0b4799ea9850eae3ead14f0a60e9418-postgresql-9.2.1.tar.bz2";
   }
   {
-    name = "Python-3.5.4.tgz";
-    url = "http://dev-www.libreoffice.org/src/Python-3.5.4.tgz";
-    sha256 = "6ed87a8b6c758cc3299a8b433e8a9a9122054ad5bc8aad43299cff3a53d8ca44";
+    name = "Python-3.5.5.tar.xz";
+    url = "http://dev-www.libreoffice.org/src/Python-3.5.5.tar.xz";
+    sha256 = "063d2c3b0402d6191b90731e0f735c64830e7522348aeb7ed382a83165d45009";
+    md5 = "";
+    md5name = "063d2c3b0402d6191b90731e0f735c64830e7522348aeb7ed382a83165d45009-Python-3.5.5.tar.xz";
+  }
+  {
+    name = "libqxp-0.0.1.tar.xz";
+    url = "http://dev-www.libreoffice.org/src/libqxp-0.0.1.tar.xz";
+    sha256 = "8c257f6184ff94aefa7c9fa1cfae82083d55a49247266905c71c53e013f95c73";
     md5 = "";
-    md5name = "6ed87a8b6c758cc3299a8b433e8a9a9122054ad5bc8aad43299cff3a53d8ca44-Python-3.5.4.tgz";
+    md5name = "8c257f6184ff94aefa7c9fa1cfae82083d55a49247266905c71c53e013f95c73-libqxp-0.0.1.tar.xz";
   }
   {
     name = "raptor2-2.0.15.tar.gz";
@@ -721,11 +763,11 @@
     md5name = "6988d394b62c3494635b6f0760bc3079f9a0cd380baf0f6b075af1eb9fa5e700-serf-1.2.1.tar.bz2";
   }
   {
-    name = "libstaroffice-0.0.3.tar.xz";
-    url = "http://dev-www.libreoffice.org/src/libstaroffice-0.0.3.tar.xz";
-    sha256 = "bedeec104b4cc3896b3dfd1976dda5ce7392d1942bf8f5d2f7d796cc47e422c6";
+    name = "libstaroffice-0.0.5.tar.xz";
+    url = "http://dev-www.libreoffice.org/src/libstaroffice-0.0.5.tar.xz";
+    sha256 = "315507add58068aa6d5c437e7c2a6fd1abe684515915152c6cf338fc588da982";
     md5 = "";
-    md5name = "bedeec104b4cc3896b3dfd1976dda5ce7392d1942bf8f5d2f7d796cc47e422c6-libstaroffice-0.0.3.tar.xz";
+    md5name = "315507add58068aa6d5c437e7c2a6fd1abe684515915152c6cf338fc588da982-libstaroffice-0.0.5.tar.xz";
   }
   {
     name = "swingExSrc.zip";
@@ -742,32 +784,32 @@
     md5name = "0168229624cfac409e766913506961a8-ucpp-1.3.2.tar.gz";
   }
   {
-    name = "libvisio-0.1.5.tar.bz2";
-    url = "http://dev-www.libreoffice.org/src/libvisio-0.1.5.tar.bz2";
-    sha256 = "b83b7991a40b4e7f07d0cac7bb46ddfac84dece705fd18e21bfd119a09be458e";
+    name = "libvisio-0.1.6.tar.xz";
+    url = "http://dev-www.libreoffice.org/src/libvisio-0.1.6.tar.xz";
+    sha256 = "fe1002d3671d53c09bc65e47ec948ec7b67e6fb112ed1cd10966e211a8bb50f9";
     md5 = "";
-    md5name = "b83b7991a40b4e7f07d0cac7bb46ddfac84dece705fd18e21bfd119a09be458e-libvisio-0.1.5.tar.bz2";
+    md5name = "fe1002d3671d53c09bc65e47ec948ec7b67e6fb112ed1cd10966e211a8bb50f9-libvisio-0.1.6.tar.xz";
   }
   {
-    name = "libwpd-0.10.1.tar.bz2";
-    url = "http://dev-www.libreoffice.org/src/libwpd-0.10.1.tar.bz2";
-    sha256 = "efc20361d6e43f9ff74de5f4d86c2ce9c677693f5da08b0a88d603b7475a508d";
+    name = "libwpd-0.10.2.tar.xz";
+    url = "http://dev-www.libreoffice.org/src/libwpd-0.10.2.tar.xz";
+    sha256 = "323f68beaf4f35e5a4d7daffb4703d0566698280109210fa4eaa90dea27d6610";
     md5 = "";
-    md5name = "efc20361d6e43f9ff74de5f4d86c2ce9c677693f5da08b0a88d603b7475a508d-libwpd-0.10.1.tar.bz2";
+    md5name = "323f68beaf4f35e5a4d7daffb4703d0566698280109210fa4eaa90dea27d6610-libwpd-0.10.2.tar.xz";
   }
   {
-    name = "libwpg-0.3.1.tar.bz2";
-    url = "http://dev-www.libreoffice.org/src/libwpg-0.3.1.tar.bz2";
-    sha256 = "29049b95895914e680390717a243b291448e76e0f82fb4d2479adee5330fbb59";
+    name = "libwpg-0.3.2.tar.xz";
+    url = "http://dev-www.libreoffice.org/src/libwpg-0.3.2.tar.xz";
+    sha256 = "57faf1ab97d63d57383ac5d7875e992a3d190436732f4083310c0471e72f8c33";
     md5 = "";
-    md5name = "29049b95895914e680390717a243b291448e76e0f82fb4d2479adee5330fbb59-libwpg-0.3.1.tar.bz2";
+    md5name = "57faf1ab97d63d57383ac5d7875e992a3d190436732f4083310c0471e72f8c33-libwpg-0.3.2.tar.xz";
   }
   {
-    name = "libwps-0.4.6.tar.xz";
-    url = "http://dev-www.libreoffice.org/src/libwps-0.4.6.tar.xz";
-    sha256 = "e48a7c2fd20048a0a8eaf69bad972575f8b9f06e7497c787463f127d332fccd0";
+    name = "libwps-0.4.8.tar.xz";
+    url = "http://dev-www.libreoffice.org/src/libwps-0.4.8.tar.xz";
+    sha256 = "e478e825ef33f6a434a19ff902c5469c9da7acc866ea0d8ab610a8b2aa94177e";
     md5 = "";
-    md5name = "e48a7c2fd20048a0a8eaf69bad972575f8b9f06e7497c787463f127d332fccd0-libwps-0.4.6.tar.xz";
+    md5name = "e478e825ef33f6a434a19ff902c5469c9da7acc866ea0d8ab610a8b2aa94177e-libwps-0.4.8.tar.xz";
   }
   {
     name = "xsltml_2.1.2.zip";
@@ -784,10 +826,10 @@
     md5name = "4ff941449631ace0d4d203e3483be9dbc9da454084111f97ea0a2114e19bf066-zlib-1.2.11.tar.xz";
   }
   {
-    name = "libzmf-0.0.1.tar.bz2";
-    url = "http://dev-www.libreoffice.org/src/libzmf-0.0.1.tar.bz2";
-    sha256 = "b69f7f6e94cf695c4b672ca65def4825490a1e7dee34c2126309b96d21a19e6b";
+    name = "libzmf-0.0.2.tar.xz";
+    url = "http://dev-www.libreoffice.org/src/libzmf-0.0.2.tar.xz";
+    sha256 = "27051a30cb057fdb5d5de65a1f165c7153dc76e27fe62251cbb86639eb2caf22";
     md5 = "";
-    md5name = "b69f7f6e94cf695c4b672ca65def4825490a1e7dee34c2126309b96d21a19e6b-libzmf-0.0.1.tar.bz2";
+    md5name = "27051a30cb057fdb5d5de65a1f165c7153dc76e27fe62251cbb86639eb2caf22-libzmf-0.0.2.tar.xz";
   }
 ]
diff --git a/pkgs/applications/office/libreoffice/libreoffice-srcs.nix b/pkgs/applications/office/libreoffice/libreoffice-srcs.nix
index 66d1baed2dae..57495404eb97 100644
--- a/pkgs/applications/office/libreoffice/libreoffice-srcs.nix
+++ b/pkgs/applications/office/libreoffice/libreoffice-srcs.nix
@@ -28,11 +28,11 @@
     md5name = "976a12a59bc286d634a21d7be0841cc74289ea9077aa1af46be19d1a6e844c19-apr-util-1.5.4.tar.gz";
   }
   {
-    name = "boost_1_65_1.tar.bz2";
-    url = "http://dev-www.libreoffice.org/src/boost_1_65_1.tar.bz2";
-    sha256 = "9807a5d16566c57fd74fb522764e0b134a8bbe6b6e8967b83afefd30dcd3be81";
+    name = "boost_1_66_0.tar.bz2";
+    url = "http://dev-www.libreoffice.org/src/boost_1_66_0.tar.bz2";
+    sha256 = "5721818253e6a0989583192f96782c4a98eb6204965316df9f5ad75819225ca9";
     md5 = "";
-    md5name = "9807a5d16566c57fd74fb522764e0b134a8bbe6b6e8967b83afefd30dcd3be81-boost_1_65_1.tar.bz2";
+    md5name = "5721818253e6a0989583192f96782c4a98eb6204965316df9f5ad75819225ca9-boost_1_66_0.tar.bz2";
   }
   {
     name = "breakpad.zip";
@@ -133,18 +133,18 @@
     md5name = "3ade8cfe7e59ca8e65052644fed9fca4-epm-3.7.tar.gz";
   }
   {
-    name = "libepubgen-0.1.0.tar.bz2";
-    url = "http://dev-www.libreoffice.org/src/libepubgen-0.1.0.tar.bz2";
-    sha256 = "730bd1cbeee166334faadbc06c953a67b145c3c4754a3b503482066dae4cd633";
+    name = "libepubgen-0.1.1.tar.xz";
+    url = "http://dev-www.libreoffice.org/src/libepubgen-0.1.1.tar.xz";
+    sha256 = "03e084b994cbeffc8c3dd13303b2cb805f44d8f2c3b79f7690d7e3fc7f6215ad";
     md5 = "";
-    md5name = "730bd1cbeee166334faadbc06c953a67b145c3c4754a3b503482066dae4cd633-libepubgen-0.1.0.tar.bz2";
+    md5name = "03e084b994cbeffc8c3dd13303b2cb805f44d8f2c3b79f7690d7e3fc7f6215ad-libepubgen-0.1.1.tar.xz";
   }
   {
-    name = "libetonyek-0.1.7.tar.xz";
-    url = "http://dev-www.libreoffice.org/src/libetonyek-0.1.7.tar.xz";
-    sha256 = "69dbe10d4426d52f09060d489f8eb90dfa1df592e82eb0698d9dbaf38cc734ac";
+    name = "libetonyek-0.1.8.tar.xz";
+    url = "http://dev-www.libreoffice.org/src/libetonyek-0.1.8.tar.xz";
+    sha256 = "9dc92347aee0cc9ed57b175a3e21f9d96ebe55d30fecb10e841d1050794ed82d";
     md5 = "";
-    md5name = "69dbe10d4426d52f09060d489f8eb90dfa1df592e82eb0698d9dbaf38cc734ac-libetonyek-0.1.7.tar.xz";
+    md5name = "9dc92347aee0cc9ed57b175a3e21f9d96ebe55d30fecb10e841d1050794ed82d-libetonyek-0.1.8.tar.xz";
   }
   {
     name = "expat-2.2.5.tar.bz2";
@@ -266,11 +266,11 @@
     md5name = "b98b67602a2c8880a1770f0b9e37c190f29a7e2ade5616784f0b89fbdb75bf52-alef-1.001.tar.gz";
   }
   {
-    name = "amiri-0.109.zip";
-    url = "http://dev-www.libreoffice.org/src/amiri-0.109.zip";
-    sha256 = "97ee6e40d87f4b31de15d9a93bb30bf27bf308f0814f4ee9c47365b027402ad6";
+    name = "Amiri-0.111.zip";
+    url = "http://dev-www.libreoffice.org/src/Amiri-0.111.zip";
+    sha256 = "1fbfccced6348b5db2c1c21d5b319cd488e14d055702fa817a0f6cb83d882166";
     md5 = "";
-    md5name = "97ee6e40d87f4b31de15d9a93bb30bf27bf308f0814f4ee9c47365b027402ad6-amiri-0.109.zip";
+    md5name = "1fbfccced6348b5db2c1c21d5b319cd488e14d055702fa817a0f6cb83d882166-Amiri-0.111.zip";
   }
   {
     name = "ttf-kacst_2.01+mry.tar.gz";
@@ -280,11 +280,11 @@
     md5name = "dca00f5e655f2f217a766faa73a81f542c5c204aa3a47017c3c2be0b31d00a56-ttf-kacst_2.01+mry.tar.gz";
   }
   {
-    name = "ReemKufi-0.6.tar.gz";
-    url = "http://dev-www.libreoffice.org/src/ReemKufi-0.6.tar.gz";
-    sha256 = "4dfbd8b227ea062ca1742fb15d707f0b74398f9ddb231892554f0959048e809b";
+    name = "ReemKufi-0.7.zip";
+    url = "http://dev-www.libreoffice.org/src/ReemKufi-0.7.zip";
+    sha256 = "f60c6508d209ce4236d2d7324256c2ffddd480be7e3d6023770b93dc391a605f";
     md5 = "";
-    md5name = "4dfbd8b227ea062ca1742fb15d707f0b74398f9ddb231892554f0959048e809b-ReemKufi-0.6.tar.gz";
+    md5name = "f60c6508d209ce4236d2d7324256c2ffddd480be7e3d6023770b93dc391a605f-ReemKufi-0.7.zip";
   }
   {
     name = "Scheherazade-2.100.zip";
@@ -329,11 +329,11 @@
     md5name = "aa5e58356cd084000609ebbd93fef456a1bc0ab9e46fea20e81552fb286232a9-graphite2-minimal-1.3.10.tgz";
   }
   {
-    name = "harfbuzz-1.7.0.tar.bz2";
-    url = "http://dev-www.libreoffice.org/src/harfbuzz-1.7.0.tar.bz2";
-    sha256 = "042742d6ec67bc6719b69cf38a3fba24fbd120e207e3fdc18530dc730fb6a029";
+    name = "harfbuzz-1.7.4.tar.bz2";
+    url = "http://dev-www.libreoffice.org/src/harfbuzz-1.7.4.tar.bz2";
+    sha256 = "b5d6ac8415f97f3540d73f3f91c41c5c10f8a4d76350f11a7184062aae88ac0b";
     md5 = "";
-    md5name = "042742d6ec67bc6719b69cf38a3fba24fbd120e207e3fdc18530dc730fb6a029-harfbuzz-1.7.0.tar.bz2";
+    md5name = "b5d6ac8415f97f3540d73f3f91c41c5c10f8a4d76350f11a7184062aae88ac0b-harfbuzz-1.7.4.tar.bz2";
   }
   {
     name = "hsqldb_1_8_0.zip";
@@ -357,18 +357,18 @@
     md5name = "5ade6ae2a99bc1e9e57031ca88d36dad-hyphen-2.8.8.tar.gz";
   }
   {
-    name = "icu4c-60_2-src.tgz";
-    url = "http://dev-www.libreoffice.org/src/icu4c-60_2-src.tgz";
-    sha256 = "f073ea8f35b926d70bb33e6577508aa642a8b316a803f11be20af384811db418";
+    name = "icu4c-61_1-src.tgz";
+    url = "http://dev-www.libreoffice.org/src/icu4c-61_1-src.tgz";
+    sha256 = "d007f89ae8a2543a53525c74359b65b36412fa84b3349f1400be6dcf409fafef";
     md5 = "";
-    md5name = "f073ea8f35b926d70bb33e6577508aa642a8b316a803f11be20af384811db418-icu4c-60_2-src.tgz";
+    md5name = "d007f89ae8a2543a53525c74359b65b36412fa84b3349f1400be6dcf409fafef-icu4c-61_1-src.tgz";
   }
   {
-    name = "icu4c-60_2-data.zip";
-    url = "http://dev-www.libreoffice.org/src/icu4c-60_2-data.zip";
-    sha256 = "68f42ad0c9e0a5a5af8eba0577ba100833912288bad6e4d1f42ff480bbcfd4a9";
+    name = "icu4c-61_1-data.zip";
+    url = "http://dev-www.libreoffice.org/src/icu4c-61_1-data.zip";
+    sha256 = "d149ed0985b5a6e16a9d8ed66f105dd58fd334c276779f74241cfa656ed2830a";
     md5 = "";
-    md5name = "68f42ad0c9e0a5a5af8eba0577ba100833912288bad6e4d1f42ff480bbcfd4a9-icu4c-60_2-data.zip";
+    md5name = "d149ed0985b5a6e16a9d8ed66f105dd58fd334c276779f74241cfa656ed2830a-icu4c-61_1-data.zip";
   }
   {
     name = "flow-engine-0.9.4.zip";
@@ -455,11 +455,11 @@
     md5name = "9098943b270388727ae61de82adec73cf9f0dbb240b3bc8b172595ebf405b528-libjpeg-turbo-1.5.2.tar.gz";
   }
   {
-    name = "language-subtag-registry-2018-03-30.tar.bz2";
-    url = "http://dev-www.libreoffice.org/src/language-subtag-registry-2018-03-30.tar.bz2";
-    sha256 = "b7ad618b7db518155f00490a11b861496864f18b23b4b537eb80bfe84ca6f854";
+    name = "language-subtag-registry-2018-04-23.tar.bz2";
+    url = "http://dev-www.libreoffice.org/src/language-subtag-registry-2018-04-23.tar.bz2";
+    sha256 = "14c21f4533ca74e3af9e09184d6756a750d0cd46099015ba8c595e48499aa878";
     md5 = "";
-    md5name = "b7ad618b7db518155f00490a11b861496864f18b23b4b537eb80bfe84ca6f854-language-subtag-registry-2018-03-30.tar.bz2";
+    md5name = "14c21f4533ca74e3af9e09184d6756a750d0cd46099015ba8c595e48499aa878-language-subtag-registry-2018-04-23.tar.bz2";
   }
   {
     name = "JLanguageTool-1.7.0.tar.bz2";
@@ -476,11 +476,11 @@
     md5name = "66d02b229d2ea9474e62c2b6cd6720fde946155cd1d0d2bffdab829790a0fb22-lcms2-2.8.tar.gz";
   }
   {
-    name = "libassuan-2.4.3.tar.bz2";
-    url = "http://dev-www.libreoffice.org/src/libassuan-2.4.3.tar.bz2";
-    sha256 = "22843a3bdb256f59be49842abf24da76700354293a066d82ade8134bb5aa2b71";
+    name = "libassuan-2.5.1.tar.bz2";
+    url = "http://dev-www.libreoffice.org/src/libassuan-2.5.1.tar.bz2";
+    sha256 = "47f96c37b4f2aac289f0bc1bacfa8bd8b4b209a488d3d15e2229cb6cc9b26449";
     md5 = "";
-    md5name = "22843a3bdb256f59be49842abf24da76700354293a066d82ade8134bb5aa2b71-libassuan-2.4.3.tar.bz2";
+    md5name = "47f96c37b4f2aac289f0bc1bacfa8bd8b4b209a488d3d15e2229cb6cc9b26449-libassuan-2.5.1.tar.bz2";
   }
   {
     name = "libatomic_ops-7_2d.zip";
@@ -518,6 +518,13 @@
     md5name = "d6242790324f1432fb0a6fae71b6851f520b2c5a87675497cf8ea14c2924d52e-liblangtag-0.6.2.tar.bz2";
   }
   {
+    name = "libnumbertext-1.0.4.tar.xz";
+    url = "http://dev-www.libreoffice.org/src/libnumbertext-1.0.4.tar.xz";
+    sha256 = "349258f4c3a8b090893e847b978b22e8dc1343d4ada3bfba811b97144f1dd67b";
+    md5 = "";
+    md5name = "349258f4c3a8b090893e847b978b22e8dc1343d4ada3bfba811b97144f1dd67b-libnumbertext-1.0.4.tar.xz";
+  }
+  {
     name = "ltm-1.0.zip";
     url = "http://dev-www.libreoffice.org/src/ltm-1.0.zip";
     sha256 = "083daa92d8ee6f4af96a6143b12d7fc8fe1a547e14f862304f7281f8f7347483";
@@ -553,6 +560,13 @@
     md5name = "26b3e95ddf3d9c077c480ea45874b3b8-lp_solve_5.5.tar.gz";
   }
   {
+    name = "lxml-4.1.1.tgz";
+    url = "http://dev-www.libreoffice.org/src/lxml-4.1.1.tgz";
+    sha256 = "940caef1ec7c78e0c34b0f6b94fe42d0f2022915ffc78643d28538a5cfd0f40e";
+    md5 = "";
+    md5name = "940caef1ec7c78e0c34b0f6b94fe42d0f2022915ffc78643d28538a5cfd0f40e-lxml-4.1.1.tgz";
+  }
+  {
     name = "mariadb_client-2.0.0-src.tar.gz";
     url = "http://dev-www.libreoffice.org/src/a233181e03d3c307668b4c722d881661-mariadb_client-2.0.0-src.tar.gz";
     sha256 = "fd2f751dea049c1907735eb236aeace1d811d6a8218118b00bbaa9b84dc5cd60";
@@ -574,18 +588,18 @@
     md5name = "4737cb51378377e11d0edb7bcdd1bec79cbdaa7b27ea09c13e3006e58f8d92c0-mDNSResponder-576.30.4.tar.gz";
   }
   {
-    name = "libmspub-0.1.3.tar.xz";
-    url = "http://dev-www.libreoffice.org/src/libmspub-0.1.3.tar.xz";
-    sha256 = "f0225f0ff03f6bec4847d7c2d8719a36cafc4b97a09e504b610372cc5b981c97";
+    name = "libmspub-0.1.4.tar.xz";
+    url = "http://dev-www.libreoffice.org/src/libmspub-0.1.4.tar.xz";
+    sha256 = "ef36c1a1aabb2ba3b0bedaaafe717bf4480be2ba8de6f3894be5fd3702b013ba";
     md5 = "";
-    md5name = "f0225f0ff03f6bec4847d7c2d8719a36cafc4b97a09e504b610372cc5b981c97-libmspub-0.1.3.tar.xz";
+    md5name = "ef36c1a1aabb2ba3b0bedaaafe717bf4480be2ba8de6f3894be5fd3702b013ba-libmspub-0.1.4.tar.xz";
   }
   {
-    name = "libmwaw-0.3.13.tar.xz";
-    url = "http://dev-www.libreoffice.org/src/libmwaw-0.3.13.tar.xz";
-    sha256 = "db55c728448f9c795cd71a0bb6043f6d4744e3e001b955a018a2c634981d5aea";
+    name = "libmwaw-0.3.14.tar.xz";
+    url = "http://dev-www.libreoffice.org/src/libmwaw-0.3.14.tar.xz";
+    sha256 = "aca8bf1ce55ed83adbea82c70d4c8bebe8139f334b3481bf5a6e407f91f33ce9";
     md5 = "";
-    md5name = "db55c728448f9c795cd71a0bb6043f6d4744e3e001b955a018a2c634981d5aea-libmwaw-0.3.13.tar.xz";
+    md5name = "aca8bf1ce55ed83adbea82c70d4c8bebe8139f334b3481bf5a6e407f91f33ce9-libmwaw-0.3.14.tar.xz";
   }
   {
     name = "mysql-connector-c++-1.1.4.tar.gz";
@@ -644,18 +658,18 @@
     md5name = "cdd6cffdebcd95161a73305ec13fc7a78e9707b46ca9f84fb897cd5626df3824-openldap-2.4.45.tgz";
   }
   {
-    name = "openssl-1.0.2m.tar.gz";
-    url = "http://dev-www.libreoffice.org/src/openssl-1.0.2m.tar.gz";
-    sha256 = "8c6ff15ec6b319b50788f42c7abc2890c08ba5a1cdcd3810eb9092deada37b0f";
+    name = "openssl-1.0.2o.tar.gz";
+    url = "http://dev-www.libreoffice.org/src/openssl-1.0.2o.tar.gz";
+    sha256 = "ec3f5c9714ba0fd45cb4e087301eb1336c317e0d20b575a125050470e8089e4d";
     md5 = "";
-    md5name = "8c6ff15ec6b319b50788f42c7abc2890c08ba5a1cdcd3810eb9092deada37b0f-openssl-1.0.2m.tar.gz";
+    md5name = "ec3f5c9714ba0fd45cb4e087301eb1336c317e0d20b575a125050470e8089e4d-openssl-1.0.2o.tar.gz";
   }
   {
-    name = "liborcus-0.13.3.tar.gz";
-    url = "http://dev-www.libreoffice.org/src/liborcus-0.13.3.tar.gz";
-    sha256 = "62e76de1fd3101e77118732b860354121b40a87bbb1ebfeb8203477fffac16e9";
+    name = "liborcus-0.13.4.tar.gz";
+    url = "http://dev-www.libreoffice.org/src/liborcus-0.13.4.tar.gz";
+    sha256 = "bc01b1b3e9091416f498840d3c19a1aa2704b448100e7f6b80eefe88aab06d5b";
     md5 = "";
-    md5name = "62e76de1fd3101e77118732b860354121b40a87bbb1ebfeb8203477fffac16e9-liborcus-0.13.3.tar.gz";
+    md5name = "bc01b1b3e9091416f498840d3c19a1aa2704b448100e7f6b80eefe88aab06d5b-liborcus-0.13.4.tar.gz";
   }
   {
     name = "owncloud-android-library-0.9.4-no-binary-deps.tar.gz";
@@ -672,11 +686,11 @@
     md5name = "66adacd705a7d19895e08eac46d1e851332adf2e736c566bef1164e7a442519d-libpagemaker-0.0.4.tar.xz";
   }
   {
-    name = "pdfium-3235.tar.bz2";
-    url = "http://dev-www.libreoffice.org/src/pdfium-3235.tar.bz2";
-    sha256 = "7dc0d33fc24b1612865f5e173d48800ba3f2db891c57e3f92b9d2ce56ffeb72f";
+    name = "pdfium-3426.tar.bz2";
+    url = "http://dev-www.libreoffice.org/src/pdfium-3426.tar.bz2";
+    sha256 = "80331b48166501a192d65476932f17044eeb5f10faa6ea50f4f175169475c957";
     md5 = "";
-    md5name = "7dc0d33fc24b1612865f5e173d48800ba3f2db891c57e3f92b9d2ce56ffeb72f-pdfium-3235.tar.bz2";
+    md5name = "80331b48166501a192d65476932f17044eeb5f10faa6ea50f4f175169475c957-pdfium-3426.tar.bz2";
   }
   {
     name = "pixman-0.34.0.tar.gz";
@@ -693,11 +707,11 @@
     md5name = "2f1e960d92ce3b3abd03d06dfec9637dfbd22febf107a536b44f7a47c60659f6-libpng-1.6.34.tar.xz";
   }
   {
-    name = "poppler-0.59.0.tar.xz";
-    url = "http://dev-www.libreoffice.org/src/poppler-0.59.0.tar.xz";
-    sha256 = "a3d626b24cd14efa9864e12584b22c9c32f51c46417d7c10ca17651f297c9641";
+    name = "poppler-0.66.0.tar.xz";
+    url = "http://dev-www.libreoffice.org/src/poppler-0.66.0.tar.xz";
+    sha256 = "2c096431adfb74bc2f53be466889b7646e1b599f28fa036094f3f7235cc9eae7";
     md5 = "";
-    md5name = "a3d626b24cd14efa9864e12584b22c9c32f51c46417d7c10ca17651f297c9641-poppler-0.59.0.tar.xz";
+    md5name = "2c096431adfb74bc2f53be466889b7646e1b599f28fa036094f3f7235cc9eae7-poppler-0.66.0.tar.xz";
   }
   {
     name = "postgresql-9.2.1.tar.bz2";
@@ -707,11 +721,11 @@
     md5name = "c0b4799ea9850eae3ead14f0a60e9418-postgresql-9.2.1.tar.bz2";
   }
   {
-    name = "Python-3.5.4.tgz";
-    url = "http://dev-www.libreoffice.org/src/Python-3.5.4.tgz";
-    sha256 = "6ed87a8b6c758cc3299a8b433e8a9a9122054ad5bc8aad43299cff3a53d8ca44";
+    name = "Python-3.5.5.tar.xz";
+    url = "http://dev-www.libreoffice.org/src/Python-3.5.5.tar.xz";
+    sha256 = "063d2c3b0402d6191b90731e0f735c64830e7522348aeb7ed382a83165d45009";
     md5 = "";
-    md5name = "6ed87a8b6c758cc3299a8b433e8a9a9122054ad5bc8aad43299cff3a53d8ca44-Python-3.5.4.tgz";
+    md5name = "063d2c3b0402d6191b90731e0f735c64830e7522348aeb7ed382a83165d45009-Python-3.5.5.tar.xz";
   }
   {
     name = "libqxp-0.0.1.tar.xz";
@@ -763,11 +777,11 @@
     md5name = "6988d394b62c3494635b6f0760bc3079f9a0cd380baf0f6b075af1eb9fa5e700-serf-1.2.1.tar.bz2";
   }
   {
-    name = "libstaroffice-0.0.5.tar.xz";
-    url = "http://dev-www.libreoffice.org/src/libstaroffice-0.0.5.tar.xz";
-    sha256 = "315507add58068aa6d5c437e7c2a6fd1abe684515915152c6cf338fc588da982";
+    name = "libstaroffice-0.0.6.tar.xz";
+    url = "http://dev-www.libreoffice.org/src/libstaroffice-0.0.6.tar.xz";
+    sha256 = "6b00e1ed8194e6072be4441025d1b888e39365727ed5b23e0e8c92c4009d1ec4";
     md5 = "";
-    md5name = "315507add58068aa6d5c437e7c2a6fd1abe684515915152c6cf338fc588da982-libstaroffice-0.0.5.tar.xz";
+    md5name = "6b00e1ed8194e6072be4441025d1b888e39365727ed5b23e0e8c92c4009d1ec4-libstaroffice-0.0.6.tar.xz";
   }
   {
     name = "swingExSrc.zip";
@@ -777,6 +791,13 @@
     md5name = "35c94d2df8893241173de1d16b6034c0-swingExSrc.zip";
   }
   {
+    name = "twaindsm_2.4.1.orig.tar.gz";
+    url = "http://dev-www.libreoffice.org/src/twaindsm_2.4.1.orig.tar.gz";
+    sha256 = "82c818be771f242388457aa8c807e4b52aa84dc22b21c6c56184a6b4cbb085e6";
+    md5 = "";
+    md5name = "82c818be771f242388457aa8c807e4b52aa84dc22b21c6c56184a6b4cbb085e6-twaindsm_2.4.1.orig.tar.gz";
+  }
+  {
     name = "ucpp-1.3.2.tar.gz";
     url = "http://dev-www.libreoffice.org/src/0168229624cfac409e766913506961a8-ucpp-1.3.2.tar.gz";
     sha256 = "983941d31ee8d366085cadf28db75eb1f5cb03ba1e5853b98f12f7f51c63b776";
@@ -805,11 +826,11 @@
     md5name = "57faf1ab97d63d57383ac5d7875e992a3d190436732f4083310c0471e72f8c33-libwpg-0.3.2.tar.xz";
   }
   {
-    name = "libwps-0.4.8.tar.xz";
-    url = "http://dev-www.libreoffice.org/src/libwps-0.4.8.tar.xz";
-    sha256 = "e478e825ef33f6a434a19ff902c5469c9da7acc866ea0d8ab610a8b2aa94177e";
+    name = "libwps-0.4.9.tar.xz";
+    url = "http://dev-www.libreoffice.org/src/libwps-0.4.9.tar.xz";
+    sha256 = "13beb0c733bb1544a542b6ab1d9d205f218e9a2202d1d4cac056f79f6db74922";
     md5 = "";
-    md5name = "e478e825ef33f6a434a19ff902c5469c9da7acc866ea0d8ab610a8b2aa94177e-libwps-0.4.8.tar.xz";
+    md5name = "13beb0c733bb1544a542b6ab1d9d205f218e9a2202d1d4cac056f79f6db74922-libwps-0.4.9.tar.xz";
   }
   {
     name = "xsltml_2.1.2.zip";
diff --git a/pkgs/applications/office/libreoffice/still-primary-src.nix b/pkgs/applications/office/libreoffice/still-primary-src.nix
index 22216af3723c..6719b953ad16 100644
--- a/pkgs/applications/office/libreoffice/still-primary-src.nix
+++ b/pkgs/applications/office/libreoffice/still-primary-src.nix
@@ -1,9 +1,9 @@
 { fetchurl }:
 
 rec {
-  major = "5";
-  minor = "4";
-  patch = "7";
+  major = "6";
+  minor = "0";
+  patch = "6";
   tweak = "2";
 
   subdir = "${major}.${minor}.${patch}";
@@ -12,6 +12,6 @@ rec {
 
   src = fetchurl {
     url = "https://download.documentfoundation.org/libreoffice/src/${subdir}/libreoffice-${version}.tar.xz";
-    sha256 = "0s9s4nhp2whwxis54jbxrf1dwpnpl95b9781d1pdj4xk5z9v90fv";
+    sha256 = "f1666430abf616a3813e4c886b51f157366f592102ae0e874abc17f3d58c6a8e";
   };
 }
diff --git a/pkgs/applications/office/libreoffice/still.nix b/pkgs/applications/office/libreoffice/still.nix
index 1808eec8c2b1..aff0817a865e 100644
--- a/pkgs/applications/office/libreoffice/still.nix
+++ b/pkgs/applications/office/libreoffice/still.nix
@@ -1,14 +1,14 @@
-{ stdenv, fetchurl, pam, python3, libxslt, perl, ArchiveZip
+{ stdenv, fetchurl, pam, python3, libxslt, perl, ArchiveZip, gettext
 , IOCompress, zlib, libjpeg, expat, freetype, libwpd
 , libxml2, db, sablotron, curl, fontconfig, libsndfile, neon
 , bison, flex, zip, unzip, gtk3, gtk2, libmspack, getopt, file, cairo, which
-, icu, boost, jdk, ant, cups, xorg, libcmis, carlito
-, openssl, gperf, cppunit, GConf, ORBit2, poppler
+, icu, boost, jdk, ant, cups, xorg, libcmis
+, openssl, gperf, cppunit, GConf, ORBit2, poppler, utillinux
 , librsvg, gnome_vfs, libGLU_combined, bsh, CoinMP, libwps, libabw
 , autoconf, automake, openldap, bash, hunspell, librdf_redland, nss, nspr
-, libwpg, dbus-glib, glibc, qt4, clucene_core, libcdr, lcms, vigra
+, libwpg, dbus-glib, qt4, clucene_core, libcdr, lcms, vigra
 , unixODBC, mdds, sane-backends, mythes, libexttextcat, libvisio
-, fontsConf, pkgconfig, bluez5, libtool
+, fontsConf, pkgconfig, bluez5, libtool, carlito
 , libatomic_ops, graphite2, harfbuzz, libodfgen, libzmf
 , librevenge, libe-book, libmwaw, glm, glew, gst_all_1
 , gdb, commonsLogging, librdf_rasqal, wrapGAppsHook
@@ -34,22 +34,28 @@ let
   };
 
   srcs = {
-    third_party = [ (let md5 = "185d60944ea767075d27247c3162b3bc"; in fetchurl rec {
-        url = "https://dev-www.libreoffice.org/extern/${md5}-${name}";
-        sha256 = "1infwvv1p6i21scywrldsxs22f62x85mns4iq8h6vr6vlx3fdzga";
-        name = "unowinreg.dll";
-      }) ] ++ (map (x : ((fetchurl {inherit (x) url sha256 name;}) // {inherit (x) md5name md5;})) (import ./libreoffice-srcs-still.nix));
+    third_party =
+      map (x : ((fetchurl {inherit (x) url sha256 name;}) // {inherit (x) md5name md5;}))
+      ((import ./libreoffice-srcs-still.nix) ++ [
+        (rec {
+          name = "unowinreg.dll";
+          url = "https://dev-www.libreoffice.org/extern/${md5name}";
+          sha256 = "1infwvv1p6i21scywrldsxs22f62x85mns4iq8h6vr6vlx3fdzga";
+          md5 = "185d60944ea767075d27247c3162b3bc";
+          md5name = "${md5}-${name}";
+        })
+      ]);
 
     translations = fetchSrc {
       name = "translations";
-      sha256 = "05ixmqbs3pkdpyqcwadz9i3wg797vimsm75rmfby7z71wc3frcyk";
+      sha256 = "0hi7m5y9gxwqn5i2nsyqyz1vdiz2bxn26sd3i0958ghhwv3zqmdb";
     };
 
     # TODO: dictionaries
 
     help = fetchSrc {
       name = "help";
-      sha256 = "0ifyh4m8mwpkb16g6883ivk2s2qybr4s4s7pdjzp4cpx1nalzibl";
+      sha256 = "0pp8xs3mqna6fh1jd4h1xjyr4v0fsrik10rri5if5n3z1vfg0jby";
     };
 
   };
@@ -58,26 +64,18 @@ in stdenv.mkDerivation rec {
 
   inherit (primary-src) src;
 
-  # Openoffice will open libcups dynamically, so we link it directly
-  # to make its dlopen work.
-  # It also seems not to mention libdl explicitly in some places.
-  NIX_LDFLAGS = "-lcups -ldl";
-
   # For some reason librdf_redland sometimes refers to rasqal.h instead
   # of rasqal/rasqal.h
-  # And LO refers to gpgme++ by no-path name
-  NIX_CFLAGS_COMPILE="-I${librdf_rasqal}/include/rasqal -I${gpgme.dev}/include/gpgme++";
-
-  # If we call 'configure', 'make' will then call configure again without parameters.
-  # It's their system.
-  configureScript = "./autogen.sh";
-  dontUseCmakeConfigure = true;
+  NIX_CFLAGS_COMPILE = [ "-I${librdf_rasqal}/include/rasqal" ];
 
   patches = [ ./xdg-open-brief.patch ];
 
   postUnpack = ''
     mkdir -v $sourceRoot/src
-  '' + (stdenv.lib.concatMapStrings (f: "ln -sfv ${f} $sourceRoot/src/${f.md5 or f.outputHash}-${f.name}\nln -sfv ${f} $sourceRoot/src/${f.name}\n") srcs.third_party)
+  '' + (lib.flip lib.concatMapStrings srcs.third_party (f: ''
+      ln -sfv ${f} $sourceRoot/src/${f.md5name}
+      ln -sfv ${f} $sourceRoot/src/${f.name}
+    ''))
   + ''
     ln -sv ${srcs.help} $sourceRoot/src/${srcs.help.name}
     ln -svf ${srcs.translations} $sourceRoot/src/${srcs.translations.name}
@@ -85,14 +83,20 @@ in stdenv.mkDerivation rec {
 
   postPatch = ''
     sed -e 's@/usr/bin/xdg-open@xdg-open@g' -i shell/source/unix/exec/shellexec.cxx
+
+    # configure checks for header 'gpgme++/gpgmepp_version.h',
+    # and if it is found (no matter where) uses a hardcoded path
+    # in what presumably is an effort to make it possible to write
+    # '#include <context.h>' instead of '#include <gpgmepp/context.h>'.
+    #
+    # Fix this path to point to where the headers can actually be found instead.
+    substituteInPlace configure.ac --replace \
+      'GPGMEPP_CFLAGS=-I/usr/include/gpgme++' \
+      'GPGMEPP_CFLAGS=-I${gpgme.dev}/include/gpgme++'
   '';
 
   QT4DIR = qt4;
 
-  # Fix boost 1.59 compat
-  # Try removing in the next version
-  CPPFLAGS = "-DBOOST_ERROR_CODE_HEADER_ONLY -DBOOST_SYSTEM_NO_DEPRECATED";
-
   preConfigure = ''
     configureFlagsArray=(
       "--with-parallelism=$NIX_BUILD_CORES"
@@ -101,68 +105,72 @@ in stdenv.mkDerivation rec {
 
     chmod a+x ./bin/unpack-sources
     patchShebangs .
-    # It is used only as an indicator of the proper current directory
-    touch solenv/inc/target.mk
-
-    # BLFS patch for Glibc 2.23 renaming isnan
-    sed -ire "s@isnan@std::&@g" xmloff/source/draw/ximp3dscene.cxx
 
     # This is required as some cppunittests require fontconfig configured
     cp "${fontsConf}" fonts.conf
     sed -e '/include/i<include>${carlito}/etc/fonts/conf.d</include>' -i fonts.conf
     export FONTCONFIG_FILE="$PWD/fonts.conf"
-  '';
 
-  # fetch_Download_item tries to interpret the name as a variable name
-  # Let it do so…
-  postConfigure = ''
-    sed -e '1ilibreoffice-translations-${version}.tar.xz=libreoffice-translations-${version}.tar.xz' -i Makefile
-    sed -e '1ilibreoffice-help-${version}.tar.xz=libreoffice-help-${version}.tar.xz' -i Makefile
-
-    # unit test sd_tiledrendering seems to be fragile
-    # https://nabble.documentfoundation.org/libreoffice-5-0-failure-in-CUT-libreofficekit-tiledrendering-td4150319.html
-    echo > ./sd/CppunitTest_sd_tiledrendering.mk
-    sed -e /CppunitTest_sd_tiledrendering/d -i sd/Module_sd.mk
-    # one more fragile test?
-    sed -e '/CPPUNIT_TEST(testTdf96536);/d' -i sw/qa/extras/uiwriter/uiwriter.cxx
-    # rendering-dependent test
-    sed -e '/CPPUNIT_ASSERT_EQUAL(11148L, pOleObj->GetLogicRect().getWidth());/d ' -i sc/qa/unit/subsequent_filters-test.cxx
-    # tilde expansion in path processing checks the existence of $HOME
-    sed -e 's@OString sSysPath("~/tmp");@& return ; @' -i sal/qa/osl/file/osl_File.cxx
-    # rendering-dependent: on my computer the test table actually doesn't fit…
-    # interesting fact: test disabled on macOS by upstream
-    sed -re '/DECLARE_WW8EXPORT_TEST[(]testTableKeep, "tdf91083.odt"[)]/,+5d' -i ./sw/qa/extras/ww8export/ww8export.cxx
-    # Segfault on DB access — maybe temporarily acceptable for a new version of Fresh?
-    sed -e 's/CppunitTest_dbaccess_empty_stdlib_save//' -i ./dbaccess/Module_dbaccess.mk
-    # one more fragile test?
-    sed -e '/CPPUNIT_TEST(testTdf77014);/d' -i sw/qa/extras/uiwriter/uiwriter.cxx
-    # rendering-dependent tests
-    sed -e '/CPPUNIT_TEST(testCustomColumnWidthExportXLSX)/d' -i sc/qa/unit/subsequent_export-test.cxx
-    sed -e '/CPPUNIT_TEST(testColumnWidthExportFromODStoXLSX)/d' -i sc/qa/unit/subsequent_export-test.cxx
-    sed -e '/CPPUNIT_TEST(testChartImportXLS)/d' -i sc/qa/unit/subsequent_filters-test.cxx
-    sed -zre 's/DesktopLOKTest::testGetFontSubset[^{]*[{]/& return; /' -i desktop/qa/desktop_lib/test_desktop_lib.cxx
-    sed -z -r -e 's/DECLARE_OOXMLEXPORT_TEST[(]testFlipAndRotateCustomShape,[^)]*[)].[{]/& return;/' -i sw/qa/extras/ooxmlexport/ooxmlexport7.cxx
-    sed -z -r -e 's/DECLARE_OOXMLEXPORT_TEST[(]tdf105490_negativeMargins,[^)]*[)].[{]/& return;/' -i sw/qa/extras/ooxmlexport/ooxmlexport9.cxx
-    # not sure about this fragile test
-    sed -z -r -e 's/DECLARE_OOXMLEXPORT_TEST[(]testTDF87348,[^)]*[)].[{]/& return;/' -i sw/qa/extras/ooxmlexport/ooxmlexport7.cxx
+    NOCONFIGURE=1 ./autogen.sh
   '';
 
-  makeFlags = "SHELL=${bash}/bin/bash";
-
-  enableParallelBuilding = true;
-
-  buildPhase = ''
-    # This is required as some cppunittests require fontconfig configured
-    export FONTCONFIG_FILE=${fontsConf}
-
+  postConfigure =
+    # fetch_Download_item tries to interpret the name as a variable name, let it do so...
+    ''
+      sed -e '1ilibreoffice-translations-${version}.tar.xz=libreoffice-translations-${version}.tar.xz' -i Makefile
+      sed -e '1ilibreoffice-help-${version}.tar.xz=libreoffice-help-${version}.tar.xz' -i Makefile
+    ''
+    # Test fixups
+    # May need to be revisited/pruned, left alone for now.
+    + ''
+      # unit test sd_tiledrendering seems to be fragile
+      # https://nabble.documentfoundation.org/libreoffice-5-0-failure-in-CUT-libreofficekit-tiledrendering-td4150319.html
+      echo > ./sd/CppunitTest_sd_tiledrendering.mk
+      sed -e /CppunitTest_sd_tiledrendering/d -i sd/Module_sd.mk
+      # one more fragile test?
+      sed -e '/CPPUNIT_TEST(testTdf96536);/d' -i sw/qa/extras/uiwriter/uiwriter.cxx
+      # this I actually hate, this should be a data consistency test!
+      sed -e '/CPPUNIT_TEST(testTdf115013);/d' -i sw/qa/extras/uiwriter/uiwriter.cxx
+      # rendering-dependent test
+      sed -e '/CPPUNIT_ASSERT_EQUAL(11148L, pOleObj->GetLogicRect().getWidth());/d ' -i sc/qa/unit/subsequent_filters-test.cxx
+      # tilde expansion in path processing checks the existence of $HOME
+      sed -e 's@OString sSysPath("~/tmp");@& return ; @' -i sal/qa/osl/file/osl_File.cxx
+      # rendering-dependent: on my computer the test table actually doesn't fit…
+      # interesting fact: test disabled on macOS by upstream
+      sed -re '/DECLARE_WW8EXPORT_TEST[(]testTableKeep, "tdf91083.odt"[)]/,+5d' -i ./sw/qa/extras/ww8export/ww8export.cxx
+      # Segfault on DB access — maybe temporarily acceptable for a new version of Fresh?
+      sed -e 's/CppunitTest_dbaccess_empty_stdlib_save//' -i ./dbaccess/Module_dbaccess.mk
+      # one more fragile test?
+      sed -e '/CPPUNIT_TEST(testTdf77014);/d' -i sw/qa/extras/uiwriter/uiwriter.cxx
+      # rendering-dependent tests
+      sed -e '/CPPUNIT_TEST(testCustomColumnWidthExportXLSX)/d' -i sc/qa/unit/subsequent_export-test.cxx
+      sed -e '/CPPUNIT_TEST(testColumnWidthExportFromODStoXLSX)/d' -i sc/qa/unit/subsequent_export-test.cxx
+      sed -e '/CPPUNIT_TEST(testChartImportXLS)/d' -i sc/qa/unit/subsequent_filters-test.cxx
+      sed -zre 's/DesktopLOKTest::testGetFontSubset[^{]*[{]/& return; /' -i desktop/qa/desktop_lib/test_desktop_lib.cxx
+      sed -z -r -e 's/DECLARE_OOXMLEXPORT_TEST[(]testFlipAndRotateCustomShape,[^)]*[)].[{]/& return;/' -i sw/qa/extras/ooxmlexport/ooxmlexport7.cxx
+      sed -z -r -e 's/DECLARE_OOXMLEXPORT_TEST[(]tdf105490_negativeMargins,[^)]*[)].[{]/& return;/' -i sw/qa/extras/ooxmlexport/ooxmlexport9.cxx
+      sed -z -r -e 's/DECLARE_OOXMLIMPORT_TEST[(]testTdf112443,[^)]*[)].[{]/& return;/' -i sw/qa/extras/ooxmlimport/ooxmlimport.cxx
+      sed -z -r -e 's/DECLARE_RTFIMPORT_TEST[(]testTdf108947,[^)]*[)].[{]/& return;/' -i sw/qa/extras/rtfimport/rtfimport.cxx
+      # not sure about this fragile test
+      sed -z -r -e 's/DECLARE_OOXMLEXPORT_TEST[(]testTDF87348,[^)]*[)].[{]/& return;/' -i sw/qa/extras/ooxmlexport/ooxmlexport7.cxx
+    ''
     # This to avoid using /lib:/usr/lib at linking
+    + ''
     sed -i '/gb_LinkTarget_LDFLAGS/{ n; /rpath-link/d;}' solenv/gbuild/platform/unxgcc.mk
 
     find -name "*.cmd" -exec sed -i s,/lib:/usr/lib,, {} \;
+    '';
+
+  makeFlags = "SHELL=${bash}/bin/bash";
 
-    make
+  enableParallelBuilding = true;
+
+  buildPhase = ''
+    make build-nocheck
   '';
 
+  doCheck = true;
+
   # It installs only things to $out/lib/libreoffice
   postInstall = ''
     mkdir -p $out/bin $out/share/desktop
@@ -194,11 +202,11 @@ in stdenv.mkDerivation rec {
     "--with-vendor=NixOS"
     "--with-commons-logging-jar=${commonsLogging}/share/java/commons-logging-1.2.jar"
     "--disable-report-builder"
+    "--disable-online-update"
     "--enable-python=system"
     "--enable-dbus"
     "--enable-release-build"
     (lib.enableFeature kdeIntegration "kde4")
-    "--with-package-format=installed"
     "--enable-epm"
     "--with-jdk-home=${jdk.home}"
     "--with-ant-home=${ant}/lib/ant"
@@ -212,6 +220,8 @@ in stdenv.mkDerivation rec {
     "--with-system-openldap"
     "--with-system-coinmp"
 
+    "--with-alloc=system"
+
     # Without these, configure does not finish
     "--without-junit"
 
@@ -234,8 +244,10 @@ in stdenv.mkDerivation rec {
     "--without-system-liblangtag"
     "--without-system-libmspub"
     "--without-system-libpagemaker"
-    "--without-system-libgltf"
     "--without-system-libstaroffice"
+    "--without-system-libepubgen"
+    "--without-system-libqxp"
+    "--without-system-mdds"
     # https://github.com/NixOS/nixpkgs/commit/5c5362427a3fa9aefccfca9e531492a8735d4e6f
     "--without-system-orcus"
     "--without-system-xmlsec"
@@ -257,10 +269,10 @@ in stdenv.mkDerivation rec {
       gst_all_1.gst-plugins-base glib
       neon nspr nss openldap openssl ORBit2 pam perl pkgconfig poppler
       python3 sablotron sane-backends unzip vigra which zip zlib
-      mdds bluez5 glibc libcmis libwps libabw libzmf libtool
-      libxshmfence libatomic_ops graphite2 harfbuzz gpgme
+      mdds bluez5 libcmis libwps libabw libzmf libtool
+      libxshmfence libatomic_ops graphite2 harfbuzz gpgme utillinux
       librevenge libe-book libmwaw glm glew ncurses epoxy
-      libodfgen CoinMP librdf_rasqal defaultIconTheme
+      libodfgen CoinMP librdf_rasqal defaultIconTheme gettext
     ]
     ++ lib.optional kdeIntegration kdelibs4;
   nativeBuildInputs = [ wrapGAppsHook gdb ];
diff --git a/pkgs/applications/science/astronomy/gildas/default.nix b/pkgs/applications/science/astronomy/gildas/default.nix
index ee19077065e0..82575d9c6ff0 100644
--- a/pkgs/applications/science/astronomy/gildas/default.nix
+++ b/pkgs/applications/science/astronomy/gildas/default.nix
@@ -12,7 +12,10 @@ stdenv.mkDerivation rec {
   name = "gildas-${version}";
 
   src = fetchurl {
-    url = "http://www.iram.fr/~gildas/dist/gildas-src-${srcVersion}.tar.gz";
+    # For each new release, the upstream developers of Gildas move the
+    # source code of the previous release to a different directory
+    urls = [ "http://www.iram.fr/~gildas/dist/gildas-src-${srcVersion}.tar.gz"
+      "http://www.iram.fr/~gildas/dist/archive/gildas/gildas-src-${srcVersion}.tar.gz" ];
     sha256 = "0mg3wijrj8x1p912vkgrhxbypjx7aj9b1492yxvq2y3fxban6bj1";
   };
 
@@ -22,7 +25,9 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ gtk2-x11 lesstif cfitsio python27Env ];
 
-  patches = [ ./wrapper.patch ./return-error-code.patch ./clang.patch ./aarch64.patch ];
+  patches = [ ./wrapper.patch ./return-error-code.patch ./clang.patch ./aarch64.patch ./gag-font-bin-rule.patch ];
+
+  NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.cc.isClang "-Wno-unused-command-line-argument";
 
   configurePhase=''
     substituteInPlace admin/wrapper.sh --replace '%%OUT%%' $out
diff --git a/pkgs/applications/science/astronomy/gildas/gag-font-bin-rule.patch b/pkgs/applications/science/astronomy/gildas/gag-font-bin-rule.patch
new file mode 100644
index 000000000000..61ddc37c7fd4
--- /dev/null
+++ b/pkgs/applications/science/astronomy/gildas/gag-font-bin-rule.patch
@@ -0,0 +1,13 @@
+diff -ruN gildas-src-aug18a/kernel/etc/Makefile gildas-src-aug18a.gag-font-bin-rule/kernel/etc/Makefile
+--- gildas-src-aug18a/kernel/etc/Makefile	2016-09-09 09:39:37.000000000 +0200
++++ gildas-src-aug18a.gag-font-bin-rule/kernel/etc/Makefile	2018-09-04 12:03:11.000000000 +0200
+@@ -29,7 +29,8 @@
+ 
+ SEDEXE=sed -e 's?source tree?executable tree?g'
+ 
+-$(datadir)/gag-font.bin: hershey-font.dat $(bindir)/hershey
++$(datadir)/gag-font.bin: hershey-font.dat $(bindir)/hershey \
++	$(gagintdir)/etc/gag.dico.gbl $(gagintdir)/etc/gag.dico.lcl
+ ifeq ($(GAG_ENV_KIND)-$(GAG_TARGET_KIND),cygwin-mingw)
+ 	$(bindir)/hershey `cygpath -w $(datadir)`/gag-font.bin
+ else
diff --git a/pkgs/applications/science/biology/hisat2/default.nix b/pkgs/applications/science/biology/hisat2/default.nix
new file mode 100644
index 000000000000..9ccf54a81133
--- /dev/null
+++ b/pkgs/applications/science/biology/hisat2/default.nix
@@ -0,0 +1,49 @@
+{stdenv, fetchurl, unzip, which, python}:
+
+stdenv.mkDerivation rec {
+  name = "hisat2-${version}";
+  version = "2.1.0";
+
+  src = fetchurl {
+    url = "ftp://ftp.ccb.jhu.edu/pub/infphilo/hisat2/downloads/hisat2-${version}-source.zip";
+    sha256 = "10g73sdf6vqqfhhd92hliw7bbpkb8v4pp5012r5l21zws7p7d8l9";
+  };
+
+  buildInputs = [ unzip  which python ];
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp hisat2 \
+       hisat2-inspect-l \
+       hisat2-build-s \
+       hisat2-align-l \
+       hisat2-inspect \
+       hisat2-align-s \
+       hisat2-inspect-s \
+       hisat2-build-l \
+       hisat2-build \
+       extract_exons.py \
+       extract_splice_sites.py \
+       hisat2_extract_exons.py \
+       hisat2_extract_snps_haplotypes_UCSC.py \
+       hisat2_extract_snps_haplotypes_VCF.py \
+       hisat2_extract_splice_sites.py \
+       hisat2_simulate_reads.py \
+       hisatgenotype_build_genome.py \
+       hisatgenotype_extract_reads.py \
+       hisatgenotype_extract_vars.py \
+       hisatgenotype_hla_cyp.py \
+       hisatgenotype_locus.py \
+       hisatgenotype.py \
+       $out/bin
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Graph based aligner";
+    license = licenses.gpl3;
+    homepage = https://ccb.jhu.edu/software/hisat2/index.shtml;
+    maintainers = with maintainers; [ jbedo ];
+    platforms = [ "x86_64-linux" "i686-linux" ];
+  };
+
+}
diff --git a/pkgs/applications/science/biology/picard-tools/default.nix b/pkgs/applications/science/biology/picard-tools/default.nix
index 0ddbdab4c1b1..c141e6087bfc 100644
--- a/pkgs/applications/science/biology/picard-tools/default.nix
+++ b/pkgs/applications/science/biology/picard-tools/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "picard-tools-${version}";
-  version = "2.18.11";
+  version = "2.18.12";
 
   src = fetchurl {
     url = "https://github.com/broadinstitute/picard/releases/download/${version}/picard.jar";
-    sha256 = "03wkyz3bjx3n8bwambhz9lr09271r1wxycmx4p7m2naqs4afxb89";
+    sha256 = "0r5w71fcji4j3xjdhip9jlvmqi66x52af8b7mfxp4nz6xxl9ilxm";
   };
 
   buildInputs = [ jre makeWrapper ];
diff --git a/pkgs/applications/science/biology/seaview/default.nix b/pkgs/applications/science/biology/seaview/default.nix
new file mode 100644
index 000000000000..17cf903ae49c
--- /dev/null
+++ b/pkgs/applications/science/biology/seaview/default.nix
@@ -0,0 +1,41 @@
+{ stdenv, fetchurl, coreutils, fltk, libjpeg }:
+
+stdenv.mkDerivation rec {
+  version = "4.7";
+  name = "seaview-${version}";
+
+  src = fetchurl {
+    url = "ftp://pbil.univ-lyon1.fr/pub/mol_phylogeny/seaview/archive/seaview_${version}.tar.gz";
+    sha256 = "0fhyq7dcn0izhwcfin9ajsr7kmmsqm9f1np1rmhzg4digfwqb29n";
+  };
+
+  buildInputs = [ fltk libjpeg ];
+
+  patchPhase = "sed -i 's#PATH=/bin:/usr/bin rm#'${coreutils}/bin/rm'#' seaview.cxx";
+  installPhase = "mkdir -p $out/bin; cp seaview $out/bin";
+
+  meta = with stdenv.lib; {
+    description = "GUI for molecular phylogeny";
+    longDescription = ''
+      SeaView is a multiplatform, graphical user interface for multiple sequence alignment and molecular phylogeny.
+        - SeaView reads and writes various file formats (NEXUS, MSF, CLUSTAL, FASTA, PHYLIP, MASE, Newick) of DNA and protein sequences and of phylogenetic trees.
+        - SeaView drives programs muscle or Clustal Omega for multiple sequence alignment, and also allows to use any external alignment algorithm able to read and write FASTA-formatted files.
+        - Seaview drives the Gblocks program to select blocks of evolutionarily conserved sites.
+        - SeaView computes phylogenetic trees by
+          + parsimony, using PHYLIP's dnapars/protpars algorithm,
+          + distance, with NJ or BioNJ algorithms on a variety of evolutionary distances,
+          + maximum likelihood, driving program PhyML 3.1.
+        - Seaview can use the Transfer Bootstrap Expectation method to compute the bootstrap support of PhyML and distance trees.
+        - SeaView prints and draws phylogenetic trees on screen, SVG, PDF or PostScript files.
+        - SeaView allows to download sequences from EMBL/GenBank/UniProt using the Internet.
+
+      Seaview is published in:
+
+          Gouy M., Guindon S. & Gascuel O. (2010) SeaView version 4 : a multiplatform graphical user interface for sequence alignment and phylogenetic tree building. Molecular Biology and Evolution 27(2):221-224.
+    '';
+    homepage = http://doua.prabi.fr/software/seaview;
+    license = licenses.gpl3;
+    maintainers = [ maintainers.iimog ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/science/biology/star/default.nix b/pkgs/applications/science/biology/star/default.nix
index f52df902db6a..c552d9f9de35 100644
--- a/pkgs/applications/science/biology/star/default.nix
+++ b/pkgs/applications/science/biology/star/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "star-${version}";
-  version = "2.6.0c";
+  version = "2.6.1a";
 
   src = fetchFromGitHub {
     repo = "STAR";
     owner = "alexdobin";
     rev = version;
-    sha256 = "04cj6jw8d9q6lk9c78wa4fky6jdlicf1d13plq7182h8vqiz8p59";
+    sha256 = "11zs32d96gpjldrylz3nr5r2qrshf0nmzh5nmcy4wrk7y5lz81xc";
   };
 
   sourceRoot = "source/source";
diff --git a/pkgs/applications/science/chemistry/jmol/default.nix b/pkgs/applications/science/chemistry/jmol/default.nix
index d5dae364cc3d..80415189d457 100644
--- a/pkgs/applications/science/chemistry/jmol/default.nix
+++ b/pkgs/applications/science/chemistry/jmol/default.nix
@@ -17,7 +17,7 @@ let
   };
 in
 stdenv.mkDerivation rec {
-  version = "14.29.17";
+  version = "14.29.19";
   pname = "jmol";
   name = "${pname}-${version}";
 
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
     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 = "1dnxbvi8ha9z2ldymkjpxydd216afv6k7fdp3j70sql10zgy0isk";
+    sha256 = "0sfbbi6mgj9hqzvcz19cr5s96rna2f2b1nc1d4j28xvva7qaqjm5";
   };
 
   patchPhase = ''
diff --git a/pkgs/applications/science/chemistry/quantum-espresso/default.nix b/pkgs/applications/science/chemistry/quantum-espresso/default.nix
new file mode 100644
index 000000000000..7a7f1b3596d3
--- /dev/null
+++ b/pkgs/applications/science/chemistry/quantum-espresso/default.nix
@@ -0,0 +1,49 @@
+{ stdenv, fetchurl
+, gfortran, fftw, openblas
+, mpi ? null
+}:
+
+stdenv.mkDerivation rec {
+  version = "6.3";
+  name = "quantum-espresso-${version}";
+
+  src = fetchurl {
+    url = "https://gitlab.com/QEF/q-e/-/archive/qe-${version}/q-e-qe-${version}.tar.gz";
+    sha256 = "1738z3nhkzcrgnhnfg1r4lipbwvcrcprwhzjbjysnylmzbzwhrs0";
+  };
+
+  passthru = {
+    inherit mpi;
+  };
+
+  preConfigure = ''
+    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 ]);
+
+configureFlags = if (mpi != null) then [ "LD=${mpi}/bin/mpif90" ] else [ "LD=${gfortran}/bin/gfortran" ];
+
+  makeFlags = [ "all" ];
+
+  meta = with stdenv.lib; {
+    description = "Electronic-structure calculations and materials modeling at the nanoscale";
+    longDescription = ''
+        Quantum ESPRESSO is an integrated suite of Open-Source computer codes for
+        electronic-structure calculations and materials modeling at the
+        nanoscale. It is based on density-functional theory, plane waves, and
+        pseudopotentials.
+      '';
+    homepage = https://www.quantum-espresso.org/;
+    license = licenses.gpl2;
+    platforms = [ "x86_64-linux" ];
+    maintainers = [ maintainers.costrouc ];
+  };
+}
diff --git a/pkgs/applications/science/chemistry/siesta/default.nix b/pkgs/applications/science/chemistry/siesta/default.nix
new file mode 100644
index 000000000000..eb17a68b8aae
--- /dev/null
+++ b/pkgs/applications/science/chemistry/siesta/default.nix
@@ -0,0 +1,69 @@
+{ stdenv, fetchurl
+, gfortran, openblas
+, mpi ? null, scalapack
+}:
+
+stdenv.mkDerivation rec {
+  version = "4.1-b3";
+  name = "siesta-${version}";
+
+  src = fetchurl {
+    url = "https://launchpad.net/siesta/4.1/4.1-b3/+download/siesta-4.1-b3.tar.gz";
+    sha256 = "1450jsxj5aifa0b5fcg7mxxq242fvqnp4zxpgzgbkdp99vrp06gm";
+  };
+
+  passthru = {
+    inherit mpi;
+  };
+
+  buildInputs = [ openblas gfortran ]
+    ++ (stdenv.lib.optionals (mpi != null) [ mpi scalapack ]);
+
+  enableParallelBuilding = true;
+
+  # Must do manualy becuase siesta does not do the regular
+  # ./configure; make; make install
+  configurePhase = ''
+    cd Obj
+    sh ../Src/obj_setup.sh
+    cp gfortran.make arch.make
+  '';
+
+  preBuild = if (mpi != null) then ''
+    makeFlagsArray=(
+        CC="mpicc" FC="mpifort"
+        FPPFLAGS="-DMPI" MPI_INTERFACE="libmpi_f90.a" MPI_INCLUDE="."
+        COMP_LIBS="" LIBS="-lopenblas -lscalapack"
+    );
+  '' else ''
+    makeFlagsArray=(
+      COMP_LIBS="" LIBS="-lopenblas"
+    );
+  '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp -a siesta $out/bin
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A first-principles materials simulation code using DFT";
+    longDescription = ''
+         SIESTA is both a method and its computer program
+         implementation, to perform efficient electronic structure
+         calculations and ab initio molecular dynamics simulations of
+         molecules and solids. SIESTA's efficiency stems from the use
+         of strictly localized basis sets and from the implementation
+         of linear-scaling algorithms which can be applied to suitable
+         systems. A very important feature of the code is that its
+         accuracy and cost can be tuned in a wide range, from quick
+         exploratory calculations to highly accurate simulations
+         matching the quality of other approaches, such as plane-wave
+         and all-electron methods.
+      '';
+    homepage = https://www.quantum-espresso.org/;
+    license = licenses.gpl2;
+    platforms = [ "x86_64-linux" ];
+    maintainers = [ maintainers.costrouc ];
+  };
+}
diff --git a/pkgs/applications/science/geometry/drgeo/default.nix b/pkgs/applications/science/geometry/drgeo/default.nix
index 8db1beedebbb..e233b91bbc91 100644
--- a/pkgs/applications/science/geometry/drgeo/default.nix
+++ b/pkgs/applications/science/geometry/drgeo/default.nix
@@ -20,8 +20,10 @@ stdenv.mkDerivation rec {
     cp drgeo.desktop.in drgeo.desktop
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "Interactive geometry program";
-    platforms = stdenv.lib.platforms.linux;
+    homepage = https://sourceforge.net/projects/ofset;
+    license = licenses.gpl2;
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/science/logic/prooftree/default.nix b/pkgs/applications/science/logic/prooftree/default.nix
index 01dfc35f6e0d..2d5fcfd2d261 100644
--- a/pkgs/applications/science/logic/prooftree/default.nix
+++ b/pkgs/applications/science/logic/prooftree/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation (rec {
   dontAddPrefix = true;
   configureFlags = [ "--prefix" "$(out)" ];
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "A program for proof-tree visualization";
     longDescription = ''
       Prooftree is a program for proof-tree visualization during interactive
@@ -35,7 +35,8 @@ stdenv.mkDerivation (rec {
       shift-click).
     '';
     homepage = http://askra.de/software/prooftree;
-    platforms = stdenv.lib.platforms.unix;
-    maintainers = [ stdenv.lib.maintainers.jwiegley ];
+    platforms = platforms.unix;
+    maintainers = [ maintainers.jwiegley ];
+    license = licenses.gpl3;
   };
 })
diff --git a/pkgs/applications/science/logic/tamarin-prover/default.nix b/pkgs/applications/science/logic/tamarin-prover/default.nix
index 4efc384ed227..9056eab71ea3 100644
--- a/pkgs/applications/science/logic/tamarin-prover/default.nix
+++ b/pkgs/applications/science/logic/tamarin-prover/default.nix
@@ -31,7 +31,8 @@ let
   '';
 
   tamarin-prover-utils = mkDerivation (common "tamarin-prover-utils" (src + "/lib/utils") // {
-    patchPhase = replaceSymlinks;
+    postPatch = replaceSymlinks;
+    patches = [ ./ghc-8.4-support-utils.patch ];
     libraryHaskellDepends = with haskellPackages; [
       base base64-bytestring binary blaze-builder bytestring containers
       deepseq dlist fclabels mtl pretty safe SHA syb time transformers
@@ -39,7 +40,8 @@ let
   });
 
   tamarin-prover-term = mkDerivation (common "tamarin-prover-term" (src + "/lib/term") // {
-    patchPhase = replaceSymlinks;
+    postPatch = replaceSymlinks;
+    patches = [ ./ghc-8.4-support-term.patch ];
     libraryHaskellDepends = (with haskellPackages; [
       attoparsec base binary bytestring containers deepseq dlist HUnit
       mtl process safe
@@ -47,7 +49,8 @@ let
   });
 
   tamarin-prover-theory = mkDerivation (common "tamarin-prover-theory" (src + "/lib/theory") // {
-    patchPhase = replaceSymlinks;
+    postPatch = replaceSymlinks;
+    patches = [ ./ghc-8.4-support-theory.patch ];
     doHaddock = false; # broken
     libraryHaskellDepends = (with haskellPackages; [
       aeson aeson-pretty base binary bytestring containers deepseq dlist
diff --git a/pkgs/applications/science/logic/tamarin-prover/ghc-8.4-support-term.patch b/pkgs/applications/science/logic/tamarin-prover/ghc-8.4-support-term.patch
new file mode 100644
index 000000000000..f93919faf54e
--- /dev/null
+++ b/pkgs/applications/science/logic/tamarin-prover/ghc-8.4-support-term.patch
@@ -0,0 +1,109 @@
+From a08f6e400772899b9b0fc16befc50391cd70696b Mon Sep 17 00:00:00 2001
+From: Felix Yan <felixonmars@archlinux.org>
+Date: Fri, 18 May 2018 16:24:41 +0800
+Subject: [PATCH] GHC 8.4 support
+
+---
+ src/Term/Maude/Signature.hs          |  8 ++--
+ src/Term/Rewriting/Definitions.hs    | 23 ++++++----
+ src/Term/Unification.hs              |  4 +-
+ 11 files changed, 79 insertions(+), 48 deletions(-)
+
+diff --git a/src/Term/Maude/Signature.hs b/src/Term/Maude/Signature.hs
+index 98c25d9f..1a4ce82f 100644
+--- a/src/Term/Maude/Signature.hs
++++ b/src/Term/Maude/Signature.hs
+@@ -104,9 +104,9 @@ maudeSig msig@(MaudeSig {enableDH,enableBP,enableMSet,enableXor,enableDiff=_,stF
+           `S.union` dhReducibleFunSig `S.union` bpReducibleFunSig `S.union` xorReducibleFunSig
+ 
+ -- | A monoid instance to combine maude signatures.
+-instance Monoid MaudeSig where
+-    (MaudeSig dh1 bp1 mset1 xor1 diff1 stFunSyms1 stRules1 _ _) `mappend`
+-      (MaudeSig dh2 bp2 mset2 xor2 diff2 stFunSyms2 stRules2 _ _) =
++instance Semigroup MaudeSig where
++    MaudeSig dh1 bp1 mset1 xor1 diff1 stFunSyms1 stRules1 _ _ <>
++      MaudeSig dh2 bp2 mset2 xor2 diff2 stFunSyms2 stRules2 _ _ =
+           maudeSig (mempty {enableDH=dh1||dh2
+                            ,enableBP=bp1||bp2
+                            ,enableMSet=mset1||mset2
+@@ -114,6 +114,8 @@ instance Monoid MaudeSig where
+                            ,enableDiff=diff1||diff2
+                            ,stFunSyms=S.union stFunSyms1 stFunSyms2
+                            ,stRules=S.union stRules1 stRules2})
++
++instance Monoid MaudeSig where
+     mempty = MaudeSig False False False False False S.empty S.empty S.empty S.empty
+ 
+ -- | Non-AC function symbols.
+diff --git a/src/Term/Rewriting/Definitions.hs b/src/Term/Rewriting/Definitions.hs
+index bd942b6a..18562e4e 100644
+--- a/src/Term/Rewriting/Definitions.hs
++++ b/src/Term/Rewriting/Definitions.hs
+@@ -44,10 +44,12 @@ evalEqual (Equal l r) = l == r
+ instance Functor Equal where
+     fmap f (Equal lhs rhs) = Equal (f lhs) (f rhs)
+ 
++instance Semigroup a => Semigroup (Equal a) where
++    (Equal l1 r1) <> (Equal l2 r2) =
++        Equal (l1 <> l2) (r1 <> r2)
++
+ instance Monoid a => Monoid (Equal a) where
+     mempty                                = Equal mempty mempty
+-    (Equal l1 r1) `mappend` (Equal l2 r2) =
+-        Equal (l1 `mappend` l2) (r1 `mappend` r2)
+ 
+ instance Foldable Equal where
+     foldMap f (Equal l r) = f l `mappend` f r
+@@ -104,14 +106,15 @@ instance Functor Match where
+     fmap _ NoMatch             = NoMatch
+     fmap f (DelayedMatches ms) = DelayedMatches (fmap (f *** f) ms)
+ 
++instance Semigroup (Match a) where
++    NoMatch            <> _                  = NoMatch
++    _                  <> NoMatch            = NoMatch
++    DelayedMatches ms1 <> DelayedMatches ms2 =
++        DelayedMatches (ms1 <> ms2)
++
+ instance Monoid (Match a) where
+     mempty = DelayedMatches []
+ 
+-    NoMatch            `mappend` _                  = NoMatch
+-    _                  `mappend` NoMatch            = NoMatch
+-    DelayedMatches ms1 `mappend` DelayedMatches ms2 =
+-        DelayedMatches (ms1 `mappend` ms2)
+-
+ 
+ instance Foldable Match where
+     foldMap _ NoMatch             = mempty
+@@ -136,10 +139,12 @@ data RRule a = RRule a a
+ instance Functor RRule where
+     fmap f (RRule lhs rhs) = RRule (f lhs) (f rhs)
+ 
++instance Monoid a => Semigroup (RRule a) where
++    (RRule l1 r1) <> (RRule l2 r2) =
++        RRule (l1 <> l2) (r1 <> r2)
++
+ instance Monoid a => Monoid (RRule a) where
+     mempty                                = RRule mempty mempty
+-    (RRule l1 r1) `mappend` (RRule l2 r2) =
+-        RRule (l1 `mappend` l2) (r1 `mappend` r2)
+ 
+ instance Foldable RRule where
+     foldMap f (RRule l r) = f l `mappend` f r
+diff --git a/src/Term/Unification.hs b/src/Term/Unification.hs
+index e1de0163..7ce6bb41 100644
+--- a/src/Term/Unification.hs
++++ b/src/Term/Unification.hs
+@@ -265,9 +265,11 @@ unifyRaw l0 r0 = do
+ 
+ data MatchFailure = NoMatcher | ACProblem
+ 
++instance Semigroup MatchFailure where
++  _ <> _ = NoMatcher
++
+ instance Monoid MatchFailure where
+   mempty = NoMatcher
+-  mappend _ _ = NoMatcher
+ 
+ -- | Ensure that the computed substitution @sigma@ satisfies
+ -- @t ==_AC apply sigma p@ after the delayed equations are solved.
diff --git a/pkgs/applications/science/logic/tamarin-prover/ghc-8.4-support-theory.patch b/pkgs/applications/science/logic/tamarin-prover/ghc-8.4-support-theory.patch
new file mode 100644
index 000000000000..f7393e37f1b2
--- /dev/null
+++ b/pkgs/applications/science/logic/tamarin-prover/ghc-8.4-support-theory.patch
@@ -0,0 +1,130 @@
+From a08f6e400772899b9b0fc16befc50391cd70696b Mon Sep 17 00:00:00 2001
+From: Felix Yan <felixonmars@archlinux.org>
+Date: Fri, 18 May 2018 16:24:41 +0800
+Subject: [PATCH] GHC 8.4 support
+
+---
+ src/Theory/Proof.hs                | 43 +++++++++++--------
+ 11 files changed, 79 insertions(+), 48 deletions(-)
+
+diff --git a/src/Theory/Constraint/Solver/Reduction.hs b/src/Theory/Constraint/Solver/Reduction.hs
+index ddbc965a..6daadd0d 100644
+--- a/src/Theory/Constraint/Solver/Reduction.hs
++++ b/src/Theory/Constraint/Solver/Reduction.hs
+@@ -139,13 +139,14 @@ execReduction m ctxt se fs =
+ data ChangeIndicator = Unchanged | Changed
+        deriving( Eq, Ord, Show )
+ 
++instance Semigroup ChangeIndicator where
++    Changed   <> _         = Changed
++    _         <> Changed   = Changed
++    Unchanged <> Unchanged = Unchanged
++
+ instance Monoid ChangeIndicator where
+     mempty = Unchanged
+ 
+-    Changed   `mappend` _         = Changed
+-    _         `mappend` Changed   = Changed
+-    Unchanged `mappend` Unchanged = Unchanged
+-
+ -- | Return 'True' iff there was a change.
+ wasChanged :: ChangeIndicator -> Bool
+ wasChanged Changed   = True
+diff --git a/src/Theory/Constraint/System/Guarded.hs b/src/Theory/Constraint/System/Guarded.hs
+index f98fc7c2..2aac8ce2 100644
+--- a/src/Theory/Constraint/System/Guarded.hs
++++ b/src/Theory/Constraint/System/Guarded.hs
+@@ -435,7 +435,7 @@ gall ss atos gf               = GGuarded All ss atos gf
+ 
+ -- | Local newtype to avoid orphan instance.
+ newtype ErrorDoc d = ErrorDoc { unErrorDoc :: d }
+-    deriving( Monoid, NFData, Document, HighlightDocument )
++    deriving( Monoid, Semigroup, NFData, Document, HighlightDocument )
+ 
+ -- | @formulaToGuarded fm@ returns a guarded formula @gf@ that is
+ -- equivalent to @fm@ under the assumption that this is possible.
+diff --git a/src/Theory/Proof.hs b/src/Theory/Proof.hs
+index 74fb77b1..7971b9fc 100644
+--- a/src/Theory/Proof.hs
++++ b/src/Theory/Proof.hs
+@@ -388,17 +388,19 @@ data ProofStatus =
+        | TraceFound         -- ^ There is an annotated solved step
+     deriving ( Show, Generic, NFData, Binary )
+ 
++instance Semigroup ProofStatus where
++    TraceFound <> _                        = TraceFound
++    _ <> TraceFound                        = TraceFound
++    IncompleteProof <> _                   = IncompleteProof
++    _ <> IncompleteProof                   = IncompleteProof
++    _ <> CompleteProof                     = CompleteProof
++    CompleteProof <> _                     = CompleteProof
++    UndeterminedProof <> UndeterminedProof = UndeterminedProof
++
++
+ instance Monoid ProofStatus where
+     mempty = CompleteProof
+ 
+-    mappend TraceFound _                        = TraceFound
+-    mappend _ TraceFound                        = TraceFound
+-    mappend IncompleteProof _                   = IncompleteProof
+-    mappend _ IncompleteProof                   = IncompleteProof
+-    mappend _ CompleteProof                     = CompleteProof
+-    mappend CompleteProof _                     = CompleteProof
+-    mappend UndeterminedProof UndeterminedProof = UndeterminedProof
+-
+ -- | The status of a 'ProofStep'.
+ proofStepStatus :: ProofStep (Maybe a) -> ProofStatus
+ proofStepStatus (ProofStep _         Nothing ) = UndeterminedProof
+@@ -560,10 +562,12 @@ newtype Prover =  Prover
+               -> Maybe IncrementalProof    -- resulting proof
+           }
+ 
++instance Semigroup Prover where
++    p1 <> p2 = Prover $ \ctxt d se ->
++        runProver p1 ctxt d se >=> runProver p2 ctxt d se
++
+ instance Monoid Prover where
+     mempty          = Prover $ \_  _ _ -> Just
+-    p1 `mappend` p2 = Prover $ \ctxt d se ->
+-        runProver p1 ctxt d se >=> runProver p2 ctxt d se
+ 
+ -- | Provers whose sequencing is handled via the 'Monoid' instance.
+ --
+@@ -579,10 +583,12 @@ newtype DiffProver =  DiffProver
+               -> Maybe IncrementalDiffProof    -- resulting proof
+           }
+ 
++instance Semigroup DiffProver where
++    p1 <> p2 = DiffProver $ \ctxt d se ->
++        runDiffProver p1 ctxt d se >=> runDiffProver p2 ctxt d se
++
+ instance Monoid DiffProver where
+     mempty          = DiffProver $ \_  _ _ -> Just
+-    p1 `mappend` p2 = DiffProver $ \ctxt d se ->
+-        runDiffProver p1 ctxt d se >=> runDiffProver p2 ctxt d se
+ 
+ -- | Map the proof generated by the prover.
+ mapProverProof :: (IncrementalProof -> IncrementalProof) -> Prover -> Prover
+@@ -784,15 +790,16 @@ runAutoDiffProver (AutoProver heuristic bound cut) =
+ -- | The result of one pass of iterative deepening.
+ data IterDeepRes = NoSolution | MaybeNoSolution | Solution ProofPath
+ 
++instance Semigroup IterDeepRes where
++    x@(Solution _)   <> _                = x
++    _                <> y@(Solution _)   = y
++    MaybeNoSolution  <> _                = MaybeNoSolution
++    _                <> MaybeNoSolution  = MaybeNoSolution
++    NoSolution       <> NoSolution       = NoSolution
++
+ instance Monoid IterDeepRes where
+     mempty = NoSolution
+ 
+-    x@(Solution _)   `mappend` _                = x
+-    _                `mappend` y@(Solution _)   = y
+-    MaybeNoSolution  `mappend` _                = MaybeNoSolution
+-    _                `mappend` MaybeNoSolution  = MaybeNoSolution
+-    NoSolution       `mappend` NoSolution       = NoSolution
+-
+ -- | @cutOnSolvedDFS prf@ removes all other cases if an attack is found. The
+ -- attack search is performed using a parallel DFS traversal with iterative
+ -- deepening.
diff --git a/pkgs/applications/science/logic/tamarin-prover/ghc-8.4-support-utils.patch b/pkgs/applications/science/logic/tamarin-prover/ghc-8.4-support-utils.patch
new file mode 100644
index 000000000000..d6cd6d73f99e
--- /dev/null
+++ b/pkgs/applications/science/logic/tamarin-prover/ghc-8.4-support-utils.patch
@@ -0,0 +1,140 @@
+From a08f6e400772899b9b0fc16befc50391cd70696b Mon Sep 17 00:00:00 2001
+From: Felix Yan <felixonmars@archlinux.org>
+Date: Fri, 18 May 2018 16:24:41 +0800
+Subject: [PATCH] GHC 8.4 support
+
+---
+ src/Extension/Data/Bounded.hs       | 10 ++++-
+ src/Extension/Data/Monoid.hs        | 14 +++---
+ src/Logic/Connectives.hs            |  4 +-
+ src/Text/PrettyPrint/Class.hs       |  4 +-
+ src/Text/PrettyPrint/Html.hs        |  6 ++-
+ 11 files changed, 79 insertions(+), 48 deletions(-)
+
+
+diff --git a/src/Extension/Data/Bounded.hs b/src/Extension/Data/Bounded.hs
+index 5f166006..f416a44c 100644
+--- a/src/Extension/Data/Bounded.hs
++++ b/src/Extension/Data/Bounded.hs
+@@ -11,19 +11,25 @@ module Extension.Data.Bounded (
+   ) where
+ 
+ -- import Data.Monoid
++import Data.Semigroup
+ 
+ -- | A newtype wrapper for a monoid of the maximum of a bounded type.
+ newtype BoundedMax a = BoundedMax {getBoundedMax :: a}
+     deriving( Eq, Ord, Show )
+ 
++instance (Ord a, Bounded a) => Semigroup (BoundedMax a) where
++    BoundedMax x <> BoundedMax y = BoundedMax (max x y)
++
+ instance (Ord a, Bounded a) => Monoid (BoundedMax a) where
+     mempty                                  = BoundedMax minBound
+-    (BoundedMax x) `mappend` (BoundedMax y) = BoundedMax (max x y)
++    mappend = (<>)
+ 
+ -- | A newtype wrapper for a monoid of the minimum of a bounded type.
+ newtype BoundedMin a = BoundedMin {getBoundedMin :: a}
+     deriving( Eq, Ord, Show )
+ 
++instance (Ord a, Bounded a) => Semigroup (BoundedMin a) where
++    BoundedMin x <> BoundedMin y = BoundedMin (min x y)
++
+ instance (Ord a, Bounded a) => Monoid (BoundedMin a) where
+     mempty                                  = BoundedMin maxBound
+-    (BoundedMin x) `mappend` (BoundedMin y) = BoundedMin (min x y)
+\ No newline at end of file
+diff --git a/src/Extension/Data/Monoid.hs b/src/Extension/Data/Monoid.hs
+index 83655c34..9ce2f91b 100644
+--- a/src/Extension/Data/Monoid.hs
++++ b/src/Extension/Data/Monoid.hs
+@@ -18,6 +18,7 @@ module Extension.Data.Monoid (
+   ) where
+ 
+ import Data.Monoid
++import Data.Semigroup
+ 
+ #if __GLASGOW_HASKELL__ < 704
+ 
+@@ -38,10 +39,13 @@ newtype MinMax a = MinMax { getMinMax :: Maybe (a, a) }
+ minMaxSingleton :: a -> MinMax a
+ minMaxSingleton x = MinMax (Just (x, x))
+ 
++instance Ord a => Semigroup (MinMax a) where
++    MinMax Nothing             <> y                          = y
++    x                          <> MinMax Nothing             = x
++    MinMax (Just (xMin, xMax)) <> MinMax (Just (yMin, yMax)) =
++       MinMax (Just (min xMin yMin, max xMax yMax))
++
++
+ instance Ord a => Monoid (MinMax a) where
+     mempty = MinMax Nothing
+-
+-    MinMax Nothing             `mappend` y                          = y
+-    x                          `mappend` MinMax Nothing             = x
+-    MinMax (Just (xMin, xMax)) `mappend` MinMax (Just (yMin, yMax)) =
+-       MinMax (Just (min xMin yMin, max xMax yMax))
++    mappend = (<>)
+diff --git a/src/Logic/Connectives.hs b/src/Logic/Connectives.hs
+index 2e441172..7206cc2c 100644
+--- a/src/Logic/Connectives.hs
++++ b/src/Logic/Connectives.hs
+@@ -23,12 +23,12 @@ import Control.DeepSeq
+ 
+ -- | A conjunction of atoms of type a.
+ newtype Conj a = Conj { getConj :: [a] }
+-  deriving (Monoid, Foldable, Traversable, Eq, Ord, Show, Binary,
++  deriving (Monoid, Semigroup, Foldable, Traversable, Eq, Ord, Show, Binary,
+             Functor, Applicative, Monad, Alternative, MonadPlus, Typeable, Data, NFData)
+ 
+ -- | A disjunction of atoms of type a.
+ newtype Disj a = Disj { getDisj :: [a] }
+-  deriving (Monoid, Foldable, Traversable, Eq, Ord, Show, Binary,
++  deriving (Monoid, Semigroup, Foldable, Traversable, Eq, Ord, Show, Binary,
+             Functor, Applicative, Monad, Alternative, MonadPlus, Typeable, Data, NFData)
+ 
+ instance MonadDisj Disj where
+diff --git a/src/Text/PrettyPrint/Class.hs b/src/Text/PrettyPrint/Class.hs
+index f5eb42fe..13be6515 100644
+--- a/src/Text/PrettyPrint/Class.hs
++++ b/src/Text/PrettyPrint/Class.hs
+@@ -187,9 +187,11 @@ instance Document Doc where
+   nest i (Doc d) = Doc $ P.nest i d
+   caseEmptyDoc yes no (Doc d) = if P.isEmpty d then yes else no
+ 
++instance Semigroup Doc where
++    Doc d1 <> Doc d2 = Doc $ (P.<>) d1 d2
++
+ instance Monoid Doc where
+     mempty = Doc $ P.empty
+-    mappend (Doc d1) (Doc d2) = Doc $ (P.<>) d1 d2
+   
+ ------------------------------------------------------------------------------
+ -- Additional combinators
+diff --git a/src/Text/PrettyPrint/Html.hs b/src/Text/PrettyPrint/Html.hs
+index 3de5e307..10103eb7 100644
+--- a/src/Text/PrettyPrint/Html.hs
++++ b/src/Text/PrettyPrint/Html.hs
+@@ -90,7 +90,7 @@ attribute (key,value) = " " ++ key ++ "=\"" ++ escapeHtmlEntities value ++ "\""
+ 
+ -- | A 'Document' transformer that adds proper HTML escaping.
+ newtype HtmlDoc d = HtmlDoc { getHtmlDoc :: d }
+-    deriving( Monoid )
++    deriving( Monoid, Semigroup )
+ 
+ -- | Wrap a document such that HTML markup can be added without disturbing the
+ -- layout.
+@@ -182,9 +182,11 @@ getNoHtmlDoc = runIdentity . unNoHtmlDoc
+ instance NFData d => NFData (NoHtmlDoc d) where
+     rnf = rnf . getNoHtmlDoc
+ 
++instance Semigroup d => Semigroup (NoHtmlDoc d) where
++  (<>) = liftA2 (<>)
++
+ instance Monoid d => Monoid (NoHtmlDoc d) where
+   mempty = pure mempty
+-  mappend = liftA2 mappend
+ 
+ instance Document d => Document (NoHtmlDoc d) where
+   char = pure . char
diff --git a/pkgs/applications/science/math/almonds/default.nix b/pkgs/applications/science/math/almonds/default.nix
index 96613f4e38a6..b5d9632c551d 100644
--- a/pkgs/applications/science/math/almonds/default.nix
+++ b/pkgs/applications/science/math/almonds/default.nix
@@ -20,8 +20,7 @@ with python3.pkgs; buildPythonApplication rec {
   meta = with stdenv.lib; {
     description = "Terminal Mandelbrot fractal viewer";
     homepage = https://github.com/Tenchi2xh/Almonds;
-    # No license has been specified
-    license = licenses.unfree;
+    license = licenses.mit;
     maintainers = with maintainers; [ infinisil ];
   };
 }
diff --git a/pkgs/applications/science/math/mxnet/default.nix b/pkgs/applications/science/math/mxnet/default.nix
index ce9c214b3f0c..990d3f1a5d59 100644
--- a/pkgs/applications/science/math/mxnet/default.nix
+++ b/pkgs/applications/science/math/mxnet/default.nix
@@ -1,5 +1,5 @@
-{ stdenv, lib, fetchgit, cmake
-, opencv, gtest, openblas, liblapack
+{ stdenv, lib, fetchurl, bash, cmake
+, opencv, gtest, openblas, liblapack, perl
 , cudaSupport ? false, cudatoolkit, nvidia_x11
 , cudnnSupport ? false, cudnn
 }:
@@ -8,16 +8,17 @@ assert cudnnSupport -> cudaSupport;
 
 stdenv.mkDerivation rec {
   name = "mxnet-${version}";
-  version = "1.1.0";
-
-  # Submodules needed
-  src = fetchgit {
-    url = "https://github.com/apache/incubator-mxnet";
-    rev = "refs/tags/${version}";
-    sha256 = "1qgns0c70a1gfyil96h17ms736nwdkp9kv496gvs9pkzqzvr6cpz";
+  version = "1.2.1";
+
+  # Fetching from git does not work at the time (1.2.1) due to an
+  # incorrect hash in one of the submodules. The provided tarballs
+  # contain all necessary sources.
+  src = fetchurl {
+    url = "https://github.com/apache/incubator-mxnet/releases/download/${version}/apache-mxnet-src-${version}-incubating.tar.gz";
+    sha256 = "053zbdgs4j8l79ipdz461zc7wyfbfcflmi5bw7lj2q08zm1glnb2";
   };
 
-  nativeBuildInputs = [ cmake ];
+  nativeBuildInputs = [ cmake perl ];
 
   buildInputs = [ opencv gtest openblas liblapack ]
               ++ lib.optionals cudaSupport [ cudatoolkit nvidia_x11 ]
@@ -30,9 +31,17 @@ stdenv.mkDerivation rec {
     ] else [ "-DUSE_CUDA=OFF" ])
     ++ lib.optional (!cudnnSupport) "-DUSE_CUDNN=OFF";
 
-  installPhase = ''
-    install -Dm755 libmxnet.so $out/lib/libmxnet.so
-    cp -r ../include $out
+  postPatch = ''
+    substituteInPlace 3rdparty/mkldnn/tests/CMakeLists.txt \
+      --replace "/bin/bash" "${bash}/bin/bash"
+
+    # Build against the system version of OpenMP. 
+    # https://github.com/apache/incubator-mxnet/pull/12160
+    rm -rf 3rdparty/openmp
+  '';
+
+  postInstall = ''
+    rm "$out"/lib/*.a
   '';
 
   enableParallelBuilding = true;
diff --git a/pkgs/applications/science/math/pynac/default.nix b/pkgs/applications/science/math/pynac/default.nix
index 1a059aeb1670..9bbb695a331b 100644
--- a/pkgs/applications/science/math/pynac/default.nix
+++ b/pkgs/applications/science/math/pynac/default.nix
@@ -41,6 +41,7 @@ stdenv.mkDerivation rec {
       of the full GiNaC, and it is *only* meant to be used as a Python library.
     '';
     homepage    = http://pynac.org;
+    license = licenses.gpl3;
     maintainers = with maintainers; [ timokau ];
     platforms   = platforms.linux;
   };
diff --git a/pkgs/applications/science/math/ripser/default.nix b/pkgs/applications/science/math/ripser/default.nix
index 21948a279d07..5e0b7fc300ba 100644
--- a/pkgs/applications/science/math/ripser/default.nix
+++ b/pkgs/applications/science/math/ripser/default.nix
@@ -8,7 +8,8 @@
 
 with stdenv.lib;
 
-assert elem fileFormat ["lowerTriangularCsv" "upperTriangularCsv" "dipha"];
+assert assertOneOf "fileFormat" fileFormat
+  ["lowerTriangularCsv" "upperTriangularCsv" "dipha"];
 assert useGoogleHashmap -> sparsehash != null;
 
 let
diff --git a/pkgs/applications/science/math/sage/default.nix b/pkgs/applications/science/math/sage/default.nix
index 08e3a752b8b6..7e62f0cf75ee 100644
--- a/pkgs/applications/science/math/sage/default.nix
+++ b/pkgs/applications/science/math/sage/default.nix
@@ -21,7 +21,7 @@ let
 
       sagelib = self.callPackage ./sagelib.nix {
         inherit flint ecl arb;
-        inherit sage-src pynac singular;
+        inherit sage-src openblas-blas-pc openblas-cblas-pc openblas-lapack-pc pynac singular;
         linbox = nixpkgs.linbox.override { withSage = true; };
       };
 
@@ -41,13 +41,13 @@ let
       };
 
       sage-env = self.callPackage ./sage-env.nix {
-        inherit sage-src python rWrapper ecl singular palp flint pynac pythonEnv;
+        inherit sage-src python rWrapper openblas-cblas-pc ecl singular palp flint pynac pythonEnv;
         pkg-config = nixpkgs.pkgconfig; # not to confuse with pythonPackages.pkgconfig
       };
 
       sage-with-env = self.callPackage ./sage-with-env.nix {
         inherit pythonEnv;
-        inherit sage-src pynac singular;
+        inherit sage-src openblas-blas-pc openblas-cblas-pc openblas-lapack-pc pynac singular;
         pkg-config = nixpkgs.pkgconfig; # not to confuse with pythonPackages.pkgconfig
         three = nodePackages_8_x.three;
       };
@@ -60,6 +60,10 @@ let
     };
   };
 
+  openblas-blas-pc = callPackage ./openblas-pc.nix { name = "blas"; };
+  openblas-cblas-pc = callPackage ./openblas-pc.nix { name = "cblas"; };
+  openblas-lapack-pc = callPackage ./openblas-pc.nix { name = "lapack"; };
+
   sage-src = callPackage ./sage-src.nix {};
 
   pythonRuntimeDeps = with python.pkgs; [
diff --git a/pkgs/applications/science/math/sage/openblas-pc.nix b/pkgs/applications/science/math/sage/openblas-pc.nix
new file mode 100644
index 000000000000..f4669a6557e9
--- /dev/null
+++ b/pkgs/applications/science/math/sage/openblas-pc.nix
@@ -0,0 +1,17 @@
+{ openblasCompat
+, writeTextFile
+, name
+}:
+
+writeTextFile {
+  name = "openblas-${name}-pc-${openblasCompat.version}";
+  destination = "/lib/pkgconfig/${name}.pc";
+  text = ''
+    Name: ${name}
+    Version: ${openblasCompat.version}
+
+    Description: ${name} for SageMath, provided by the OpenBLAS package.
+    Cflags: -I${openblasCompat}/include
+    Libs: -L${openblasCompat}/lib -lopenblas
+  '';
+}
diff --git a/pkgs/applications/science/math/sage/patches/numpy-1.14.3.patch b/pkgs/applications/science/math/sage/patches/numpy-1.15.1.patch
index 5927bc116096..9e855ba4ad94 100644
--- a/pkgs/applications/science/math/sage/patches/numpy-1.14.3.patch
+++ b/pkgs/applications/science/math/sage/patches/numpy-1.15.1.patch
@@ -1,5 +1,5 @@
 diff --git a/src/doc/en/faq/faq-usage.rst b/src/doc/en/faq/faq-usage.rst
-index 79b4205fd3..9a89bd2136 100644
+index 2347a1190d..f5b0fe71a4 100644
 --- a/src/doc/en/faq/faq-usage.rst
 +++ b/src/doc/en/faq/faq-usage.rst
 @@ -338,7 +338,7 @@ ints. For example::
@@ -174,7 +174,7 @@ index 5b89cd75ee..e50b2ea5d4 100644
  This creates a random 5x5 matrix ``A``, and solves `Ax=b` where
  ``b=[0.0,1.0,2.0,3.0,4.0]``. There are many other routines in the :mod:`numpy.linalg`
 diff --git a/src/sage/calculus/riemann.pyx b/src/sage/calculus/riemann.pyx
-index df85cce43d..34ea164be0 100644
+index 60f37f7557..4ac3dedf1d 100644
 --- a/src/sage/calculus/riemann.pyx
 +++ b/src/sage/calculus/riemann.pyx
 @@ -1191,30 +1191,30 @@ cpdef complex_to_spiderweb(np.ndarray[COMPLEX_T, ndim = 2] z_values,
@@ -248,7 +248,7 @@ index df85cce43d..34ea164be0 100644
  
      TESTS::
 diff --git a/src/sage/combinat/fully_packed_loop.py b/src/sage/combinat/fully_packed_loop.py
-index 61b1003002..4baee9cbbd 100644
+index 0a9bd61267..d2193cc2d6 100644
 --- a/src/sage/combinat/fully_packed_loop.py
 +++ b/src/sage/combinat/fully_packed_loop.py
 @@ -72,11 +72,11 @@ def _make_color_list(n, colors=None,  color_map=None, randomize=False):
@@ -269,10 +269,10 @@ index 61b1003002..4baee9cbbd 100644
          ['blue', 'blue', 'red', 'blue', 'red', 'red', 'red', 'blue']
      """
 diff --git a/src/sage/finance/time_series.pyx b/src/sage/finance/time_series.pyx
-index c37700d14e..49b7298d0b 100644
+index 28779365df..3ab0282861 100644
 --- a/src/sage/finance/time_series.pyx
 +++ b/src/sage/finance/time_series.pyx
-@@ -109,8 +109,8 @@ cdef class TimeSeries:
+@@ -111,8 +111,8 @@ cdef class TimeSeries:
  
              sage: import numpy
              sage: v = numpy.array([[1,2], [3,4]], dtype=float); v
@@ -283,7 +283,7 @@ index c37700d14e..49b7298d0b 100644
              sage: finance.TimeSeries(v)
              [1.0000, 2.0000, 3.0000, 4.0000]
              sage: finance.TimeSeries(v[:,0])
-@@ -2098,14 +2098,14 @@ cdef class TimeSeries:
+@@ -2100,14 +2100,14 @@ cdef class TimeSeries:
  
              sage: w[0] = 20
              sage: w
@@ -301,7 +301,7 @@ index c37700d14e..49b7298d0b 100644
              sage: v
              [20.0000, -3.0000, 4.5000, -2.0000]
 diff --git a/src/sage/functions/hyperbolic.py b/src/sage/functions/hyperbolic.py
-index 931a4b41e4..bf33fc483d 100644
+index aff552f450..7a6df931e7 100644
 --- a/src/sage/functions/hyperbolic.py
 +++ b/src/sage/functions/hyperbolic.py
 @@ -214,7 +214,7 @@ class Function_coth(GinacFunction):
@@ -341,7 +341,7 @@ index 931a4b41e4..bf33fc483d 100644
          return arctanh(1.0 / x)
  
 diff --git a/src/sage/functions/orthogonal_polys.py b/src/sage/functions/orthogonal_polys.py
-index 017c85a96f..33fbb499c5 100644
+index ed6365bef4..99b8b04dad 100644
 --- a/src/sage/functions/orthogonal_polys.py
 +++ b/src/sage/functions/orthogonal_polys.py
 @@ -810,12 +810,12 @@ class Func_chebyshev_T(ChebyshevFunction):
@@ -379,10 +379,10 @@ index 017c85a96f..33fbb499c5 100644
              array([ 0.2 , -0.96])
          """
 diff --git a/src/sage/functions/other.py b/src/sage/functions/other.py
-index 679384c907..d63b295a4c 100644
+index 1883daa3e6..9885222817 100644
 --- a/src/sage/functions/other.py
 +++ b/src/sage/functions/other.py
-@@ -390,7 +390,7 @@ class Function_ceil(BuiltinFunction):
+@@ -389,7 +389,7 @@ class Function_ceil(BuiltinFunction):
              sage: import numpy
              sage: a = numpy.linspace(0,2,6)
              sage: ceil(a)
@@ -391,7 +391,7 @@ index 679384c907..d63b295a4c 100644
  
          Test pickling::
  
-@@ -539,7 +539,7 @@ class Function_floor(BuiltinFunction):
+@@ -553,7 +553,7 @@ class Function_floor(BuiltinFunction):
              sage: import numpy
              sage: a = numpy.linspace(0,2,6)
              sage: floor(a)
@@ -400,7 +400,7 @@ index 679384c907..d63b295a4c 100644
              sage: floor(x)._sympy_()
              floor(x)
  
-@@ -840,7 +840,7 @@ def sqrt(x, *args, **kwds):
+@@ -869,7 +869,7 @@ def sqrt(x, *args, **kwds):
              sage: import numpy
              sage: a = numpy.arange(2,5)
              sage: sqrt(a)
@@ -409,11 +409,35 @@ index 679384c907..d63b295a4c 100644
          """
          if isinstance(x, float):
              return math.sqrt(x)
+diff --git a/src/sage/functions/spike_function.py b/src/sage/functions/spike_function.py
+index 1e021de3fe..56635ca98f 100644
+--- a/src/sage/functions/spike_function.py
++++ b/src/sage/functions/spike_function.py
+@@ -157,7 +157,7 @@ class SpikeFunction:
+             sage: S = spike_function([(-3,4),(-1,1),(2,3)]); S
+             A spike function with spikes at [-3.0, -1.0, 2.0]
+             sage: P = S.plot_fft_abs(8)
+-            sage: p = P[0]; p.ydata
++            sage: p = P[0]; p.ydata  # abs tol 1e-8
+             [5.0, 5.0, 3.367958691924177, 3.367958691924177, 4.123105625617661, 4.123105625617661, 4.759921664218055, 4.759921664218055]
+         """
+         w = self.vector(samples = samples, xmin=xmin, xmax=xmax)
+@@ -176,8 +176,8 @@ class SpikeFunction:
+             sage: S = spike_function([(-3,4),(-1,1),(2,3)]); S
+             A spike function with spikes at [-3.0, -1.0, 2.0]
+             sage: P = S.plot_fft_arg(8)
+-            sage: p = P[0]; p.ydata
+-            [0.0, 0.0, -0.211524990023434..., -0.211524990023434..., 0.244978663126864..., 0.244978663126864..., -0.149106180027477..., -0.149106180027477...]
++            sage: p = P[0]; p.ydata  # abs tol 1e-8
++            [0.0, 0.0, -0.211524990023434, -0.211524990023434, 0.244978663126864, 0.244978663126864, -0.149106180027477, -0.149106180027477]
+         """
+         w = self.vector(samples = samples, xmin=xmin, xmax=xmax)
+         xmin, xmax = self._ranges(xmin, xmax)
 diff --git a/src/sage/functions/trig.py b/src/sage/functions/trig.py
-index e7e7a311cd..e7ff78a9de 100644
+index 501e7ff6b6..5f760912f0 100644
 --- a/src/sage/functions/trig.py
 +++ b/src/sage/functions/trig.py
-@@ -731,7 +731,7 @@ class Function_arccot(GinacFunction):
+@@ -724,7 +724,7 @@ class Function_arccot(GinacFunction):
              sage: import numpy
              sage: a = numpy.arange(2, 5)
              sage: arccot(a)
@@ -422,7 +446,7 @@ index e7e7a311cd..e7ff78a9de 100644
          """
          return math.pi/2 - arctan(x)
  
-@@ -787,7 +787,7 @@ class Function_arccsc(GinacFunction):
+@@ -780,7 +780,7 @@ class Function_arccsc(GinacFunction):
              sage: import numpy
              sage: a = numpy.arange(2, 5)
              sage: arccsc(a)
@@ -431,7 +455,7 @@ index e7e7a311cd..e7ff78a9de 100644
          """
          return arcsin(1.0/x)
  
-@@ -845,7 +845,7 @@ class Function_arcsec(GinacFunction):
+@@ -838,7 +838,7 @@ class Function_arcsec(GinacFunction):
              sage: import numpy
              sage: a = numpy.arange(2, 5)
              sage: arcsec(a)
@@ -440,7 +464,7 @@ index e7e7a311cd..e7ff78a9de 100644
          """
          return arccos(1.0/x)
  
-@@ -920,13 +920,13 @@ class Function_arctan2(GinacFunction):
+@@ -913,13 +913,13 @@ class Function_arctan2(GinacFunction):
              sage: a = numpy.linspace(1, 3, 3)
              sage: b = numpy.linspace(3, 6, 3)
              sage: atan2(a, b)
@@ -458,10 +482,10 @@ index e7e7a311cd..e7ff78a9de 100644
          TESTS::
  
 diff --git a/src/sage/matrix/constructor.pyx b/src/sage/matrix/constructor.pyx
-index 19a1d37df0..5780dfae1c 100644
+index 12136f1773..491bf22e62 100644
 --- a/src/sage/matrix/constructor.pyx
 +++ b/src/sage/matrix/constructor.pyx
-@@ -494,8 +494,8 @@ class MatrixFactory(object):
+@@ -503,8 +503,8 @@ def matrix(*args, **kwds):
          [7 8 9]
          Full MatrixSpace of 3 by 3 dense matrices over Integer Ring
          sage: n = matrix(QQ, 2, 2, [1, 1/2, 1/3, 1/4]).numpy(); n
@@ -473,10 +497,31 @@ index 19a1d37df0..5780dfae1c 100644
          [  1 1/2]
          [1/3 1/4]
 diff --git a/src/sage/matrix/matrix_double_dense.pyx b/src/sage/matrix/matrix_double_dense.pyx
-index 48e0a8a97f..1be5d35b19 100644
+index 66e54a79a4..0498334f4b 100644
 --- a/src/sage/matrix/matrix_double_dense.pyx
 +++ b/src/sage/matrix/matrix_double_dense.pyx
-@@ -2546,7 +2546,7 @@ cdef class Matrix_double_dense(Matrix_dense):
+@@ -606,6 +606,9 @@ cdef class Matrix_double_dense(Matrix_dense):
+             [ 3.0 + 9.0*I 4.0 + 16.0*I 5.0 + 25.0*I]
+             [6.0 + 36.0*I 7.0 + 49.0*I 8.0 + 64.0*I]
+             sage: B.condition()
++            doctest:warning
++            ...
++            ComplexWarning: Casting complex values to real discards the imaginary part
+             203.851798...
+             sage: B.condition(p='frob')
+             203.851798...
+@@ -654,9 +657,7 @@ cdef class Matrix_double_dense(Matrix_dense):
+             True
+             sage: B = A.change_ring(CDF)
+             sage: B.condition()
+-            Traceback (most recent call last):
+-            ...
+-            LinAlgError: Singular matrix
++            +Infinity
+ 
+         Improper values of ``p`` are caught.  ::
+ 
+@@ -2519,7 +2520,7 @@ cdef class Matrix_double_dense(Matrix_dense):
              sage: P.is_unitary(algorithm='orthonormal')
              Traceback (most recent call last):
              ...
@@ -485,7 +530,7 @@ index 48e0a8a97f..1be5d35b19 100644
  
          TESTS::
  
-@@ -3662,8 +3662,8 @@ cdef class Matrix_double_dense(Matrix_dense):
+@@ -3635,8 +3636,8 @@ cdef class Matrix_double_dense(Matrix_dense):
              [0.0 1.0 2.0]
              [3.0 4.0 5.0]
              sage: m.numpy()
@@ -496,7 +541,7 @@ index 48e0a8a97f..1be5d35b19 100644
  
          Alternatively, numpy automatically calls this function (via
          the magic :meth:`__array__` method) to convert Sage matrices
-@@ -3674,16 +3674,16 @@ cdef class Matrix_double_dense(Matrix_dense):
+@@ -3647,16 +3648,16 @@ cdef class Matrix_double_dense(Matrix_dense):
              [0.0 1.0 2.0]
              [3.0 4.0 5.0]
              sage: numpy.array(m)
@@ -518,10 +563,10 @@ index 48e0a8a97f..1be5d35b19 100644
              dtype('complex128')
  
 diff --git a/src/sage/matrix/special.py b/src/sage/matrix/special.py
-index c698ba5e97..b743bab354 100644
+index ccbd208810..c3f9a65093 100644
 --- a/src/sage/matrix/special.py
 +++ b/src/sage/matrix/special.py
-@@ -705,7 +705,7 @@ def diagonal_matrix(arg0=None, arg1=None, arg2=None, sparse=True):
+@@ -706,7 +706,7 @@ def diagonal_matrix(arg0=None, arg1=None, arg2=None, sparse=True):
  
          sage: import numpy
          sage: entries = numpy.array([1.2, 5.6]); entries
@@ -530,7 +575,7 @@ index c698ba5e97..b743bab354 100644
          sage: A = diagonal_matrix(3, entries); A
          [1.2 0.0 0.0]
          [0.0 5.6 0.0]
-@@ -715,7 +715,7 @@ def diagonal_matrix(arg0=None, arg1=None, arg2=None, sparse=True):
+@@ -716,7 +716,7 @@ def diagonal_matrix(arg0=None, arg1=None, arg2=None, sparse=True):
  
          sage: j = numpy.complex(0,1)
          sage: entries = numpy.array([2.0+j, 8.1, 3.4+2.6*j]); entries
@@ -540,10 +585,10 @@ index c698ba5e97..b743bab354 100644
          [2.0 + 1.0*I         0.0         0.0]
          [        0.0         8.1         0.0]
 diff --git a/src/sage/modules/free_module_element.pyx b/src/sage/modules/free_module_element.pyx
-index 230f142117..2ab1c0ae68 100644
+index 37d92c1282..955d083b34 100644
 --- a/src/sage/modules/free_module_element.pyx
 +++ b/src/sage/modules/free_module_element.pyx
-@@ -982,7 +982,7 @@ cdef class FreeModuleElement(Vector):   # abstract base class
+@@ -988,7 +988,7 @@ cdef class FreeModuleElement(Vector):   # abstract base class
              sage: v.numpy()
              array([1, 2, 5/6], dtype=object)
              sage: v.numpy(dtype=float)
@@ -552,7 +597,7 @@ index 230f142117..2ab1c0ae68 100644
              sage: v.numpy(dtype=int)
              array([1, 2, 0])
              sage: import numpy
-@@ -993,7 +993,7 @@ cdef class FreeModuleElement(Vector):   # abstract base class
+@@ -999,7 +999,7 @@ cdef class FreeModuleElement(Vector):   # abstract base class
          be more efficient but may have unintended consequences::
  
              sage: v.numpy(dtype=None)
@@ -596,22 +641,6 @@ index 39fc2970de..2badf98284 100644
          """
          if dtype is None or dtype is self._vector_numpy.dtype:
              from copy import copy
-diff --git a/src/sage/numerical/optimize.py b/src/sage/numerical/optimize.py
-index 17b5ebb84b..92ce35c502 100644
---- a/src/sage/numerical/optimize.py
-+++ b/src/sage/numerical/optimize.py
-@@ -486,9 +486,9 @@ def minimize_constrained(func,cons,x0,gradient=None,algorithm='default', **args)
-                 else:
-                     min = optimize.fmin_tnc(f, x0, approx_grad=True, bounds=cons, messages=0, **args)[0]
-         elif isinstance(cons[0], function_type) or isinstance(cons[0], Expression):
--            min = optimize.fmin_cobyla(f, x0, cons, iprint=0, **args)
-+            min = optimize.fmin_cobyla(f, x0, cons, disp=0, **args)
-     elif isinstance(cons, function_type) or isinstance(cons, Expression):
--        min = optimize.fmin_cobyla(f, x0, cons, iprint=0, **args)
-+        min = optimize.fmin_cobyla(f, x0, cons, disp=0, **args)
-     return vector(RDF, min)
- 
- 
 diff --git a/src/sage/plot/complex_plot.pyx b/src/sage/plot/complex_plot.pyx
 index ad9693da62..758fb709b7 100644
 --- a/src/sage/plot/complex_plot.pyx
@@ -649,6 +678,76 @@ index ad9693da62..758fb709b7 100644
      """
      import numpy
      cdef unsigned int i, j, imax, jmax
+diff --git a/src/sage/plot/histogram.py b/src/sage/plot/histogram.py
+index 5d28473731..fc4b2046c0 100644
+--- a/src/sage/plot/histogram.py
++++ b/src/sage/plot/histogram.py
+@@ -53,10 +53,17 @@ class Histogram(GraphicPrimitive):
+         """
+         import numpy as np
+         self.datalist=np.asarray(datalist,dtype=float)
++        if 'normed' in options:
++            from sage.misc.superseded import deprecation
++            deprecation(25260, "the 'normed' option is deprecated. Use 'density' instead.")
+         if 'linestyle' in options:
+             from sage.plot.misc import get_matplotlib_linestyle
+             options['linestyle'] = get_matplotlib_linestyle(
+                     options['linestyle'], return_type='long')
++        if options.get('range', None):
++            # numpy.histogram performs type checks on "range" so this must be
++            # actual floats
++            options['range'] = [float(x) for x in options['range']]
+         GraphicPrimitive.__init__(self, options)
+ 
+     def get_minmax_data(self):
+@@ -80,10 +87,14 @@ class Histogram(GraphicPrimitive):
+             {'xmax': 4.0, 'xmin': 0, 'ymax': 2, 'ymin': 0}
+ 
+         TESTS::
+-
+             sage: h = histogram([10,3,5], normed=True)[0]
+-            sage: h.get_minmax_data()  # rel tol 1e-15
+-            {'xmax': 10.0, 'xmin': 3.0, 'ymax': 0.4761904761904765, 'ymin': 0}
++            doctest:warning...:
++            DeprecationWarning: the 'normed' option is deprecated. Use 'density' instead.
++            See https://trac.sagemath.org/25260 for details.
++            sage: h.get_minmax_data()
++            doctest:warning ...:
++            VisibleDeprecationWarning: Passing `normed=True` on non-uniform bins has always been broken, and computes neither the probability density function nor the probability mass function. The result is only correct if the bins are uniform, when density=True will produce the same result anyway. The argument will be removed in a future version of numpy.
++            {'xmax': 10.0, 'xmin': 3.0, 'ymax': 0.476190476190..., 'ymin': 0}
+         """
+         import numpy
+ 
+@@ -152,7 +163,7 @@ class Histogram(GraphicPrimitive):
+                 'rwidth': 'The relative width of the bars as a fraction of the bin width',
+                 'cumulative': '(True or False) If True, then a histogram is computed in which each bin gives the counts in that bin plus all bins for smaller values.  Negative values give a reversed direction of accumulation.',
+                 'range': 'A list [min, max] which define the range of the histogram. Values outside of this range are treated as outliers and omitted from counts.',
+-                'normed': 'Deprecated alias for density',
++                'normed': 'Deprecated. Use density instead.',
+                 'density': '(True or False) If True, the counts are normalized to form a probability density. (n/(len(x)*dbin)',
+                 'weights': 'A sequence of weights the same length as the data list. If supplied, then each value contributes its associated weight to the bin count.',
+                 'stacked': '(True or False) If True, multiple data are stacked on top of each other.',
+@@ -199,7 +210,7 @@ class Histogram(GraphicPrimitive):
+             subplot.hist(self.datalist.transpose(), **options)
+ 
+ 
+-@options(aspect_ratio='automatic',align='mid', weights=None, range=None, bins=10, edgecolor='black')
++@options(aspect_ratio='automatic', align='mid', weights=None, range=None, bins=10, edgecolor='black')
+ def histogram(datalist, **options):
+     """
+     Computes and draws the histogram for list(s) of numerical data.
+@@ -231,8 +242,9 @@ def histogram(datalist, **options):
+     - ``linewidth`` -- (float) width of the lines defining the bars
+     - ``linestyle`` -- (default: 'solid') Style of the line. One of 'solid'
+       or '-', 'dashed' or '--', 'dotted' or ':', 'dashdot' or '-.'
+-    - ``density`` -- (boolean - default: False) If True, the counts are
+-      normalized to form a probability density.
++    - ``density`` -- (boolean - default: False) If True, the result is the
++      value of the probability density function at the bin, normalized such
++      that the integral over the range is 1.
+     - ``range`` -- A list [min, max] which define the range of the
+       histogram. Values outside of this range are treated as outliers and
+       omitted from counts
 diff --git a/src/sage/plot/line.py b/src/sage/plot/line.py
 index 23f5e61446..3b1b51d7cf 100644
 --- a/src/sage/plot/line.py
@@ -718,7 +817,7 @@ index f3da57c370..3806f4b32f 100644
          TESTS:
  
 diff --git a/src/sage/probability/probability_distribution.pyx b/src/sage/probability/probability_distribution.pyx
-index f66cd898b9..35995886d5 100644
+index 1b119e323f..3290b00695 100644
 --- a/src/sage/probability/probability_distribution.pyx
 +++ b/src/sage/probability/probability_distribution.pyx
 @@ -130,7 +130,17 @@ cdef class ProbabilityDistribution:
@@ -741,10 +840,10 @@ index f66cd898b9..35995886d5 100644
          import pylab
          l = [float(self.get_random_element()) for _ in range(num_samples)]
 diff --git a/src/sage/rings/rational.pyx b/src/sage/rings/rational.pyx
-index a0bfe080f5..7d95e7a1a8 100644
+index 12ca1b222b..9bad7dae0c 100644
 --- a/src/sage/rings/rational.pyx
 +++ b/src/sage/rings/rational.pyx
-@@ -1056,7 +1056,7 @@ cdef class Rational(sage.structure.element.FieldElement):
+@@ -1041,7 +1041,7 @@ cdef class Rational(sage.structure.element.FieldElement):
              dtype('O')
  
              sage: numpy.array([1, 1/2, 3/4])
@@ -754,10 +853,10 @@ index a0bfe080f5..7d95e7a1a8 100644
          if mpz_cmp_ui(mpq_denref(self.value), 1) == 0:
              if mpz_fits_slong_p(mpq_numref(self.value)):
 diff --git a/src/sage/rings/real_mpfr.pyx b/src/sage/rings/real_mpfr.pyx
-index 4c630867a4..64e2187f5b 100644
+index 9b90c8833e..1ce05b937d 100644
 --- a/src/sage/rings/real_mpfr.pyx
 +++ b/src/sage/rings/real_mpfr.pyx
-@@ -1438,7 +1438,7 @@ cdef class RealNumber(sage.structure.element.RingElement):
+@@ -1439,7 +1439,7 @@ cdef class RealNumber(sage.structure.element.RingElement):
  
              sage: import numpy
              sage: numpy.arange(10.0)
@@ -767,10 +866,10 @@ index 4c630867a4..64e2187f5b 100644
              dtype('float64')
              sage: numpy.array([1.000000000000000000000000000000000000]).dtype
 diff --git a/src/sage/schemes/elliptic_curves/height.py b/src/sage/schemes/elliptic_curves/height.py
-index 3d270ebf9d..1144f168e3 100644
+index de31fe9883..7a33ea6f5b 100644
 --- a/src/sage/schemes/elliptic_curves/height.py
 +++ b/src/sage/schemes/elliptic_curves/height.py
-@@ -1623,18 +1623,18 @@ class EllipticCurveCanonicalHeight:
+@@ -1627,18 +1627,18 @@ class EllipticCurveCanonicalHeight:
          even::
  
              sage: H.wp_on_grid(v,4)
@@ -798,10 +897,10 @@ index 3d270ebf9d..1144f168e3 100644
          tau = self.tau(v)
          fk, err = self.fk_intervals(v, 15, CDF)
 diff --git a/src/sage/symbolic/ring.pyx b/src/sage/symbolic/ring.pyx
-index 2dcb0492b9..2b1a06385c 100644
+index 9da38002e8..d61e74bf82 100644
 --- a/src/sage/symbolic/ring.pyx
 +++ b/src/sage/symbolic/ring.pyx
-@@ -1135,7 +1135,7 @@ cdef class NumpyToSRMorphism(Morphism):
+@@ -1136,7 +1136,7 @@ cdef class NumpyToSRMorphism(Morphism):
          sage: cos(numpy.int('2'))
          cos(2)
          sage: numpy.cos(numpy.int('2'))
diff --git a/pkgs/applications/science/math/sage/sage-env.nix b/pkgs/applications/science/math/sage/sage-env.nix
index 74c2e0aa0360..317eb6e16c49 100644
--- a/pkgs/applications/science/math/sage/sage-env.nix
+++ b/pkgs/applications/science/math/sage/sage-env.nix
@@ -37,7 +37,7 @@
 , lcalc
 , rubiks
 , flintqs
-, openblasCompat
+, openblas-cblas-pc
 , flint
 , gmp
 , mpfr
@@ -98,9 +98,9 @@ writeTextFile rec {
     export PKG_CONFIG_PATH='${lib.concatStringsSep ":" (map (pkg: "${pkg}/lib/pkgconfig") [
         # This is only needed in the src/sage/misc/cython.py test and I'm not sure if there's really a use-case
         # for it outside of the tests. However since singular and openblas are runtime dependencies anyways
-        # it doesn't really hurt to include.
+        # and openblas-cblas-pc is tiny, it doesn't really hurt to include.
         singular
-        openblasCompat
+        openblas-cblas-pc
       ])
     }'
     export SAGE_ROOT='${sage-src}'
diff --git a/pkgs/applications/science/math/sage/sage-src.nix b/pkgs/applications/science/math/sage/sage-src.nix
index 7fd49fe205cc..f74da33f4026 100644
--- a/pkgs/applications/science/math/sage/sage-src.nix
+++ b/pkgs/applications/science/math/sage/sage-src.nix
@@ -94,9 +94,20 @@ stdenv.mkDerivation rec {
       stripLen = 1;
     })
 
-    # Only formatting changes.
+    (fetchpatch {
+      name = "matplotlib-2.2.2";
+      url = "https://git.sagemath.org/sage.git/patch?id=0d6244ed53b71aba861ce3d683d33e542c0bf0b0";
+      sha256 = "15x4cadxxlsdfh2sblgagqjj6ir13fgdzixxnwnvzln60saahb34";
+    })
+
+    (fetchpatch {
+      name = "scipy-1.1.0";
+      url = "https://git.sagemath.org/sage.git/patch?id=e0db968a51678b34ebd8d34906c7042900272378";
+      sha256 = "0kq5zxqphhrmavrmg830wdr7hwp1bkzdqlf3jfqfr8r8xq12qwf7";
+    })
+
     # https://trac.sagemath.org/ticket/25260
-    ./patches/numpy-1.14.3.patch
+    ./patches/numpy-1.15.1.patch
 
     # https://trac.sagemath.org/ticket/25862
     ./patches/eclib-20180710.patch
diff --git a/pkgs/applications/science/math/sage/sage-with-env.nix b/pkgs/applications/science/math/sage/sage-with-env.nix
index 8ccf8b5a4938..63b9772b8231 100644
--- a/pkgs/applications/science/math/sage/sage-with-env.nix
+++ b/pkgs/applications/science/math/sage/sage-with-env.nix
@@ -4,6 +4,9 @@
 , sage-env
 , sage-src
 , openblasCompat
+, openblas-blas-pc
+, openblas-cblas-pc
+, openblas-lapack-pc
 , pkg-config
 , three
 , singular
@@ -29,6 +32,9 @@ let
     makeWrapper
     pkg-config
     openblasCompat # lots of segfaults with regular (64 bit) openblas
+    openblas-blas-pc
+    openblas-cblas-pc
+    openblas-lapack-pc
     singular
     three
     pynac
diff --git a/pkgs/applications/science/math/sage/sagelib.nix b/pkgs/applications/science/math/sage/sagelib.nix
index c1dbcf38304e..abcefba5e260 100644
--- a/pkgs/applications/science/math/sage/sagelib.nix
+++ b/pkgs/applications/science/math/sage/sagelib.nix
@@ -3,6 +3,9 @@
 , buildPythonPackage
 , arb
 , openblasCompat
+, openblas-blas-pc
+, openblas-cblas-pc
+, openblas-lapack-pc
 , brial
 , cliquer
 , cypari2
@@ -56,7 +59,9 @@ buildPythonPackage rec {
   nativeBuildInputs = [
     iml
     perl
-    openblasCompat
+    openblas-blas-pc
+    openblas-cblas-pc
+    openblas-lapack-pc
     jupyter_core
   ];
 
diff --git a/pkgs/applications/science/misc/root/default.nix b/pkgs/applications/science/misc/root/default.nix
index e966e798ae6d..2ec1ded68a26 100644
--- a/pkgs/applications/science/misc/root/default.nix
+++ b/pkgs/applications/science/misc/root/default.nix
@@ -67,10 +67,11 @@ stdenv.mkDerivation rec {
 
   setupHook = ./setup-hook.sh;
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = https://root.cern.ch/;
     description = "A data analysis framework";
-    platforms = stdenv.lib.platforms.unix;
-    maintainers = with stdenv.lib.maintainers; [ veprbl ];
+    platforms = platforms.unix;
+    maintainers = [ maintainers.veprbl ];
+    license = licenses.lgpl21;
   };
 }
diff --git a/pkgs/applications/science/misc/snakemake/default.nix b/pkgs/applications/science/misc/snakemake/default.nix
index 6b0570814f2b..6f04d436877f 100644
--- a/pkgs/applications/science/misc/snakemake/default.nix
+++ b/pkgs/applications/science/misc/snakemake/default.nix
@@ -37,5 +37,6 @@ python.buildPythonPackage rec {
       workflows are essentially Python scripts extended by declarative code to define
       rules. Rules describe how to create output files from input files.
     '';
+    maintainers = with maintainers; [ helkafen renatoGarcia ];
   };
 }
diff --git a/pkgs/applications/science/molecular-dynamics/gromacs/default.nix b/pkgs/applications/science/molecular-dynamics/gromacs/default.nix
index 295e726c679d..1caa84a69334 100644
--- a/pkgs/applications/science/molecular-dynamics/gromacs/default.nix
+++ b/pkgs/applications/science/molecular-dynamics/gromacs/default.nix
@@ -8,11 +8,11 @@
 
 
 stdenv.mkDerivation {
-  name = "gromacs-2018.2";
+  name = "gromacs-2018.3";
 
   src = fetchurl {
-    url = "ftp://ftp.gromacs.org/pub/gromacs/gromacs-2018.2.tar.gz";
-    sha256 = "0mvqsg2j4h529a0vvvgpa4cb3p8zan18zcdlmx1na2si1h9fipab";
+    url = "ftp://ftp.gromacs.org/pub/gromacs/gromacs-2018.3.tar.gz";
+    sha256 = "14d219987h98mv5xgn2846snmslwax8z3cgp5b2njacp4j9a88s4";
   };
 
   buildInputs = [cmake fftw]
diff --git a/pkgs/applications/version-management/bazaar/default.nix b/pkgs/applications/version-management/bazaar/default.nix
index fea6fb358303..097c1e86a897 100644
--- a/pkgs/applications/version-management/bazaar/default.nix
+++ b/pkgs/applications/version-management/bazaar/default.nix
@@ -27,9 +27,10 @@ python2Packages.buildPythonApplication rec {
       --subst-var-by certPath /etc/ssl/certs/ca-certificates.crt
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = http://bazaar-vcs.org/;
     description = "A distributed version control system that Just Works";
-    platforms = stdenv.lib.platforms.unix;
+    platforms = platforms.unix;
+    license = licenses.gpl2Plus;
   };
 }
diff --git a/pkgs/applications/version-management/bazaar/tools.nix b/pkgs/applications/version-management/bazaar/tools.nix
index 0ad3c6079acd..82c87f30b711 100644
--- a/pkgs/applications/version-management/bazaar/tools.nix
+++ b/pkgs/applications/version-management/bazaar/tools.nix
@@ -3,7 +3,7 @@
 python2Packages.buildPythonApplication rec {
   name = "bzr-tools-${version}";
   version = "2.6.0";
-  
+
   src = fetchurl {
     url = "http://launchpad.net/bzrtools/stable/${version}/+download/bzrtools-${version}.tar.gz";
     sha256 = "0n3zzc6jf5866kfhmrnya1vdr2ja137a45qrzsz8vz6sc6xgn5wb";
@@ -11,9 +11,10 @@ python2Packages.buildPythonApplication rec {
 
   doCheck = false;
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "Bazaar plugins";
     homepage = http://wiki.bazaar.canonical.com/BzrTools;
-    platforms = stdenv.lib.platforms.unix;
+    platforms = platforms.unix;
+    license = licenses.gpl2;
   };
 }
diff --git a/pkgs/applications/version-management/cvs2svn/default.nix b/pkgs/applications/version-management/cvs2svn/default.nix
index 90a9f26045f3..5dc0c48b0f78 100644
--- a/pkgs/applications/version-management/cvs2svn/default.nix
+++ b/pkgs/applications/version-management/cvs2svn/default.nix
@@ -23,10 +23,11 @@ stdenv.mkDerivation rec {
   /* !!! maybe we should absolutise the program names in
      $out/lib/python2.4/site-packages/cvs2svn_lib/config.py. */
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "A tool to convert CVS repositories to Subversion repositories";
     homepage = http://cvs2svn.tigris.org/;
-    maintainers = [ lib.maintainers.makefu ];
-    platforms = stdenv.lib.platforms.unix;
+    maintainers = [ maintainers.makefu ];
+    platforms = platforms.unix;
+    license = licenses.asl20;
   };
 }
diff --git a/pkgs/applications/version-management/git-and-tools/cgit/default.nix b/pkgs/applications/version-management/git-and-tools/cgit/default.nix
index 3fb227909040..5bfd74344e8c 100644
--- a/pkgs/applications/version-management/git-and-tools/cgit/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/cgit/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, openssl, zlib, asciidoc, libxml2, libxslt
 , docbook_xsl, pkgconfig, luajit
-, gzip, bzip2, xz
+, groff, gzip, bzip2, xz
 , python, wrapPython, pygments, markdown
 }:
 
@@ -32,6 +32,9 @@ stdenv.mkDerivation rec {
         -e 's|"bzip2"|"${bzip2.bin}/bin/bzip2"|' \
         -e 's|"xz"|"${xz.bin}/bin/xz"|' \
         -i ui-snapshot.c
+
+    substituteInPlace filters/html-converters/man2html \
+      --replace 'groff' '${groff}/bin/groff'
   '';
 
   # Give cgit a git source tree and pass configuration parameters (as make
diff --git a/pkgs/applications/version-management/git-and-tools/git-imerge/default.nix b/pkgs/applications/version-management/git-and-tools/git-imerge/default.nix
index 49856552aa3b..10e786222710 100644
--- a/pkgs/applications/version-management/git-and-tools/git-imerge/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-imerge/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "git-imerge-${version}";
-  version = "1.0.0";
+  version = "1.1.0";
 
   src = fetchFromGitHub {
     owner = "mhagger";
     repo = "git-imerge";
     rev = "v${version}";
-    sha256 = "1ylzxmbjfrzzxmcrbqzy1wv21npqj1r6cgl77a9n2zvsrz8zdb74";
+    sha256 = "0vi1w3f0yk4gqhxj2hzqafqq28rihyhyfnp8x7xzib96j2si14a4";
   };
 
   buildInputs = [ pythonPackages.python pythonPackages.wrapPython ];
diff --git a/pkgs/applications/version-management/git-and-tools/grv/default.nix b/pkgs/applications/version-management/git-and-tools/grv/default.nix
index cfb028004c70..3b4e3a452111 100644
--- a/pkgs/applications/version-management/git-and-tools/grv/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/grv/default.nix
@@ -1,8 +1,8 @@
-{ stdenv, buildGoPackage, fetchFromGitHub, curl, libgit2_0_27, ncurses, pkgconfig, readline }:
+{ stdenv, buildGo19Package, fetchFromGitHub, curl, libgit2_0_27, ncurses, pkgconfig, readline }:
 let
   version = "0.2.0";
 in
-buildGoPackage {
+buildGo19Package {
   name = "grv-${version}";
 
   buildInputs = [ ncurses readline curl libgit2_0_27 ];
diff --git a/pkgs/applications/version-management/git-and-tools/svn-all-fast-export/default.nix b/pkgs/applications/version-management/git-and-tools/svn-all-fast-export/default.nix
index 17fb74945dc4..35c6d33d74da 100644
--- a/pkgs/applications/version-management/git-and-tools/svn-all-fast-export/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/svn-all-fast-export/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchFromGitHub, qmake, qtbase, qttools, subversion, apr }:
 
 let
-  version = "1.0.12";
+  version = "1.0.13";
 in
 stdenv.mkDerivation {
   name = "svn-all-fast-export-${version}";
@@ -10,7 +10,7 @@ stdenv.mkDerivation {
     owner = "svn-all-fast-export";
     repo = "svn2git";
     rev = version;
-    sha256 = "158w2ynz16dlp992g8nfk7v2f5962z88b4xyv5dyjvbl4l1v7r0v";
+    sha256 = "0f1qj0c4cdq46mz54wcy17g7rq1fy2q0bq3sswhr7r5a2s433x4f";
   };
 
   nativeBuildInputs = [ qmake qttools ];
diff --git a/pkgs/applications/version-management/gitea/default.nix b/pkgs/applications/version-management/gitea/default.nix
index 592b348d03fd..c6eb563155f6 100644
--- a/pkgs/applications/version-management/gitea/default.nix
+++ b/pkgs/applications/version-management/gitea/default.nix
@@ -7,13 +7,13 @@ with stdenv.lib;
 
 buildGoPackage rec {
   name = "gitea-${version}";
-  version = "1.5.0";
+  version = "1.5.1";
 
   src = fetchFromGitHub {
     owner = "go-gitea";
     repo = "gitea";
     rev = "v${version}";
-    sha256 = "0gp777x8yjbqvz9i79qv3bn3hrlp1bn7ib57r7w5a7jmr9rd0nca";
+    sha256 = "06h6v9py35mm0xk9l8xrq02vvr5vzl15gfbw9qqvpn8kiamkn53r";
   };
 
   patches = [ ./static-root-path.patch ];
diff --git a/pkgs/applications/version-management/guitone/default.nix b/pkgs/applications/version-management/guitone/default.nix
index 88074a0862c1..33d2eb89ad08 100644
--- a/pkgs/applications/version-management/guitone/default.nix
+++ b/pkgs/applications/version-management/guitone/default.nix
@@ -25,8 +25,9 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Qt4 based GUI for monotone";
-    homepage = http://guitone.thomaskeller.biz;
+    homepage = https://guitone.thomaskeller.biz;
     downloadPage = https://code.monotone.ca/p/guitone/;
+    license = stdenv.lib.licenses.gpl3;
     inherit (qt4.meta) platforms;
   };
 }
diff --git a/pkgs/applications/version-management/mercurial/default.nix b/pkgs/applications/version-management/mercurial/default.nix
index 73cf4d74e182..41809e83b457 100644
--- a/pkgs/applications/version-management/mercurial/default.nix
+++ b/pkgs/applications/version-management/mercurial/default.nix
@@ -4,7 +4,7 @@
 
 let
   # if you bump version, update pkgs.tortoisehg too or ping maintainer
-  version = "4.7";
+  version = "4.7.1";
   name = "mercurial-${version}";
   inherit (python2Packages) docutils hg-git dulwich python;
 in python2Packages.buildPythonApplication {
@@ -13,7 +13,7 @@ in python2Packages.buildPythonApplication {
 
   src = fetchurl {
     url = "https://mercurial-scm.org/release/${name}.tar.gz";
-    sha256 = "17rl1lyvr3qa5x73xyiwnv09wwiwjd18f01gvispzyvpgx1v3309";
+    sha256 = "03217dk8jh2ckrqqhqyahw44f5j2aq3kv03ba5v2b11i3hy3h0w5";
   };
 
   inherit python; # pass it so that the same version can be used in hg2git
diff --git a/pkgs/applications/version-management/monotone/default.nix b/pkgs/applications/version-management/monotone/default.nix
index 4282f48654e6..0606c58c09d5 100644
--- a/pkgs/applications/version-management/monotone/default.nix
+++ b/pkgs/applications/version-management/monotone/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   patches = [ ./monotone-1.1-Adapt-to-changes-in-pcre-8.42.patch ];
 
   nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ boost zlib botan libidn lua pcre sqlite expect 
+  buildInputs = [ boost zlib botan libidn lua pcre sqlite expect
     openssl gmp bzip2 ];
 
   postInstall = ''
@@ -33,9 +33,10 @@ stdenv.mkDerivation rec {
 
   #doCheck = true; # some tests fail (and they take VERY long)
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "A free distributed version control system";
-    maintainers = [stdenv.lib.maintainers.raskin];
-    platforms = stdenv.lib.platforms.unix;
+    maintainers = [ maintainers.raskin ];
+    platforms = platforms.unix;
+    license = licenses.gpl2;
   };
 }
diff --git a/pkgs/applications/version-management/tortoisehg/default.nix b/pkgs/applications/version-management/tortoisehg/default.nix
index 5a37857fa479..71369709b5da 100644
--- a/pkgs/applications/version-management/tortoisehg/default.nix
+++ b/pkgs/applications/version-management/tortoisehg/default.nix
@@ -2,11 +2,11 @@
 
 python2Packages.buildPythonApplication rec {
     name = "tortoisehg-${version}";
-    version = "4.6.1";
+    version = "4.7";
 
     src = fetchurl {
       url = "https://bitbucket.org/tortoisehg/targz/downloads/${name}.tar.gz";
-      sha256 = "1argpi5h0fv4ilahi52c98xgvsvz27lvqi41hzw1f81mhjgyhqik";
+      sha256 = "1s99dmz8izsyj5mpnqlx9dasw8ar2lr68r3m1wyafzbqlqmbjbqm";
     };
 
     pythonPath = with python2Packages; [ pyqt4 mercurial qscintilla iniparse ];
diff --git a/pkgs/applications/version-management/vcprompt/default.nix b/pkgs/applications/version-management/vcprompt/default.nix
index 4afb1b20e32c..c2bf0a4183c1 100644
--- a/pkgs/applications/version-management/vcprompt/default.nix
+++ b/pkgs/applications/version-management/vcprompt/default.nix
@@ -25,5 +25,6 @@ stdenv.mkDerivation rec {
     homepage    = http://hg.gerg.ca/vcprompt;
     maintainers = with maintainers; [ cstrahan ];
     platforms   = with platforms; linux ++ darwin;
+    license = licenses.gpl2Plus;
   };
 }
diff --git a/pkgs/applications/video/gnome-mpv/default.nix b/pkgs/applications/video/gnome-mpv/default.nix
index 1bb77ffc4a80..75a299d46c7d 100644
--- a/pkgs/applications/video/gnome-mpv/default.nix
+++ b/pkgs/applications/video/gnome-mpv/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, meson, ninja
+{ stdenv, fetchFromGitHub, meson, ninja, python3
 , gettext, pkgconfig, desktop-file-utils, wrapGAppsHook
 , appstream-glib, epoxy, glib, gtk3, mpv
 }:
@@ -15,13 +15,14 @@ stdenv.mkDerivation rec {
     sha256 = "1cjhw3kz163iwj2japhnv354i1lr112xyyfkxw82cwy2554cfim4";
   };
 
-  nativeBuildInputs = [ meson ninja appstream-glib gettext pkgconfig desktop-file-utils wrapGAppsHook ];
+  nativeBuildInputs = [ meson ninja python3 appstream-glib gettext pkgconfig desktop-file-utils wrapGAppsHook ];
   buildInputs = [ epoxy glib gtk3 mpv ];
 
   enableParallelBuilding = true;
 
   postPatch = ''
-    patchShebangs .
+    patchShebangs meson_post_install.py
+    patchShebangs src/generate_authors.py
     sed -i '/gtk-update-icon-cache/s/^/#/' meson_post_install.py
   '';
 
diff --git a/pkgs/applications/video/kodi/commons.nix b/pkgs/applications/video/kodi/commons.nix
deleted file mode 100644
index eff9b7871069..000000000000
--- a/pkgs/applications/video/kodi/commons.nix
+++ /dev/null
@@ -1,83 +0,0 @@
-{ stdenv, fetchFromGitHub
-, cmake, kodiPlain, libcec_platform, tinyxml }:
-
-rec {
-
-  pluginDir = "/share/kodi/addons";
-
-  kodi-platform = stdenv.mkDerivation rec {
-    project = "kodi-platform";
-    version = "17.1";
-    name = "${project}-${version}";
-
-    src = fetchFromGitHub {
-      owner = "xbmc";
-      repo = project;
-      rev = "c8188d82678fec6b784597db69a68e74ff4986b5";
-      sha256 = "1r3gs3c6zczmm66qcxh9mr306clwb3p7ykzb70r3jv5jqggiz199";
-    };
-
-    buildInputs = [ cmake kodiPlain libcec_platform tinyxml ];
-
-  };
-
-  mkKodiAPIPlugin = { plugin, namespace, version, src, meta, sourceDir ? null, ... }:
-  stdenv.lib.makeOverridable stdenv.mkDerivation rec {
-
-    inherit src meta sourceDir;
-
-    name = "kodi-plugin-${plugin}-${version}";
-
-    passthru = {
-      kodiPlugin = pluginDir;
-      namespace = namespace;
-    };
-
-    dontStrip = true;
-
-    installPhase = ''
-      ${if isNull sourceDir then "" else "cd $src/$sourceDir"}
-      d=$out${pluginDir}/${namespace}
-      mkdir -p $d
-      sauce="."
-      [ -d ${namespace} ] && sauce=${namespace}
-      cp -R "$sauce/"* $d
-    '';
-
-  };
-
-  mkKodiPlugin = mkKodiAPIPlugin;
-
-  mkKodiABIPlugin = { plugin, namespace, version, src, meta
-                    , extraBuildInputs ? [], sourceDir ? null, ... }:
-  stdenv.lib.makeOverridable stdenv.mkDerivation rec {
-
-    inherit src meta sourceDir;
-
-    name = "kodi-plugin-${plugin}-${version}";
-
-    passthru = {
-      kodiPlugin = pluginDir;
-      namespace = namespace;
-    };
-
-    dontStrip = true;
-
-    buildInputs = [ cmake kodiPlain kodi-platform libcec_platform ]
-               ++ extraBuildInputs;
-
-    # disables check ensuring install prefix is that of kodi
-    cmakeFlags = [
-      "-DOVERRIDE_PATHS=1"
-    ];
-
-    # kodi checks for plugin .so libs existance in the addon folder (share/...)
-    # and the non-wrapped kodi lib/... folder before even trying to dlopen
-    # them. Symlinking .so, as setting LD_LIBRARY_PATH is of no use
-    installPhase = let n = namespace; in ''
-      make install
-      ln -s $out/lib/addons/${n}/${n}.so.${version} $out/${pluginDir}/${n}/${n}.so.${version}
-    '';
-
-  };
-}
diff --git a/pkgs/applications/video/kodi/default.nix b/pkgs/applications/video/kodi/default.nix
index 5ca678a2e175..9272d3c8e269 100644
--- a/pkgs/applications/video/kodi/default.nix
+++ b/pkgs/applications/video/kodi/default.nix
@@ -1,5 +1,5 @@
 { stdenv, lib, fetchFromGitHub, autoconf, automake, libtool, makeWrapper
-, pkgconfig, cmake, gnumake, yasm, python2
+, pkgconfig, cmake, gnumake, yasm, python2Packages
 , libgcrypt, libgpgerror, libunistring
 , boost, avahi, lame, autoreconfHook
 , gettext, pcre-cpp, yajl, fribidi, which
@@ -119,7 +119,7 @@ in stdenv.mkDerivation rec {
 
     buildInputs = [
       gnutls libidn libtasn1 nasm p11-kit
-      libxml2 yasm python2
+      libxml2 yasm python2Packages.python
       boost libmicrohttpd
       gettext pcre-cpp yajl fribidi libva libdrm
       openssl gperf tinyxml2 taglib libssh swig jre
@@ -187,9 +187,9 @@ in stdenv.mkDerivation rec {
     postInstall = ''
       for p in $(ls $out/bin/) ; do
         wrapProgram $out/bin/$p \
-          --prefix PATH            ":" "${lib.makeBinPath [ python2 glxinfo xdpyinfo ]}" \
+          --prefix PATH            ":" "${lib.makeBinPath [ python2Packages.python glxinfo xdpyinfo ]}" \
           --prefix LD_LIBRARY_PATH ":" "${lib.makeLibraryPath
-              [ curl systemd libmad libvdpau libcec libcec_platform rtmpdump libass ]}"
+              ([ curl systemd libmad libvdpau libcec libcec_platform rtmpdump libass ] ++ lib.optional nfsSupport libnfs)}"
       done
 
       substituteInPlace $out/share/xsessions/kodi.desktop \
@@ -200,6 +200,10 @@ in stdenv.mkDerivation rec {
 
     installCheckPhase = "$out/bin/kodi --version";
 
+    passthru = {
+      pythonPackages = python2Packages;
+    };
+
     meta = with stdenv.lib; {
       description = "Media center";
       homepage    = https://kodi.tv/;
diff --git a/pkgs/applications/video/kodi/plugins.nix b/pkgs/applications/video/kodi/plugins.nix
index 5a0583202e6d..f2ceacdd799f 100644
--- a/pkgs/applications/video/kodi/plugins.nix
+++ b/pkgs/applications/video/kodi/plugins.nix
@@ -1,9 +1,90 @@
 { stdenv, callPackage, fetchurl, fetchFromGitHub, unzip
+, cmake, kodiPlain, libcec_platform, tinyxml
 , steam, libusb, pcre-cpp, jsoncpp, libhdhomerun, zlib }:
 
-with (callPackage ./commons.nix {});
+with stdenv.lib;
 
-rec {
+let self = rec {
+
+  pluginDir = "/share/kodi/addons";
+
+  kodi = kodiPlain;
+
+  # Convert derivation to a kodi module. Stolen from ../../../top-level/python-packages.nix
+  toKodiPlugin = drv: drv.overrideAttrs(oldAttrs: {
+    # Use passthru in order to prevent rebuilds when possible.
+    passthru = (oldAttrs.passthru or {})// {
+      kodiPluginFor = kodi;
+      requiredKodiPlugins = requiredKodiPlugins drv.propagatedBuildInputs;
+    };
+  });
+
+  # Check whether a derivation provides a Kodi plugin.
+  hasKodiPlugin = drv: drv ? kodiPluginFor && drv.kodiPluginFor == kodi;
+
+  # Get list of required Kodi plugins given a list of derivations.
+  requiredKodiPlugins = drvs: let
+      modules = filter hasKodiPlugin drvs;
+    in unique (modules ++ concatLists (catAttrs "requiredKodiPlugins" modules));
+
+  kodiWithPlugins = func: callPackage ./wrapper.nix {
+    inherit kodi;
+    plugins = requiredKodiPlugins (func self);
+  };
+
+  kodi-platform = stdenv.mkDerivation rec {
+    project = "kodi-platform";
+    version = "17.1";
+    name = "${project}-${version}";
+
+    src = fetchFromGitHub {
+      owner = "xbmc";
+      repo = project;
+      rev = "c8188d82678fec6b784597db69a68e74ff4986b5";
+      sha256 = "1r3gs3c6zczmm66qcxh9mr306clwb3p7ykzb70r3jv5jqggiz199";
+    };
+
+    buildInputs = [ cmake kodiPlain libcec_platform tinyxml ];
+  };
+
+  mkKodiPlugin = { plugin, namespace, version, sourceDir ? null, ... }@args:
+  toKodiPlugin (stdenv.mkDerivation (rec {
+    name = "kodi-plugin-${plugin}-${version}";
+
+    dontStrip = true;
+
+    installPhase = ''
+      ${if isNull sourceDir then "" else "cd $src/$sourceDir"}
+      d=$out${pluginDir}/${namespace}
+      mkdir -p $d
+      sauce="."
+      [ -d ${namespace} ] && sauce=${namespace}
+      cp -R "$sauce/"* $d
+    '';
+  } // args));
+
+  mkKodiABIPlugin = { plugin, namespace, version, extraBuildInputs ? [], ... }@args:
+  toKodiPlugin (stdenv.mkDerivation (rec {
+    name = "kodi-plugin-${plugin}-${version}";
+
+    dontStrip = true;
+
+    buildInputs = [ cmake kodiPlain kodi-platform libcec_platform ]
+               ++ extraBuildInputs;
+
+    # disables check ensuring install prefix is that of kodi
+    cmakeFlags = [
+      "-DOVERRIDE_PATHS=1"
+    ];
+
+    # kodi checks for plugin .so libs existance in the addon folder (share/...)
+    # and the non-wrapped kodi lib/... folder before even trying to dlopen
+    # them. Symlinking .so, as setting LD_LIBRARY_PATH is of no use
+    installPhase = let n = namespace; in ''
+      make install
+      ln -s $out/lib/addons/${n}/${n}.so.${version} $out${pluginDir}/${n}/${n}.so.${version}
+    '';
+  } // args));
 
   advanced-launcher = mkKodiPlugin rec {
 
@@ -18,7 +99,7 @@ rec {
       sha256 = "142vvgs37asq5m54xqhjzqvgmb0xlirvm0kz6lxaqynp0vvgrkx2";
     };
 
-    meta = with stdenv.lib; {
+    meta = {
       homepage = https://forum.kodi.tv/showthread.php?tid=85724;
       description = "A program launcher for Kodi";
       longDescription = ''
@@ -48,7 +129,7 @@ rec {
       sha256 = "1sv9z77jj6bam6llcnd9b3dgkbvhwad2m1v541rv3acrackms2z2";
     };
 
-    meta = with stdenv.lib; {
+    meta = {
       homepage = https://forum.kodi.tv/showthread.php?tid=287826;
       description = "A program launcher for Kodi";
       longDescription = ''
@@ -75,7 +156,7 @@ rec {
       sha256 = "0sbc0w0fwbp7rbmbgb6a1kglhnn5g85hijcbbvf5x6jdq9v3f1qb";
     };
 
-    meta = with stdenv.lib; {
+    meta = {
       description = "Add support for different gaming controllers.";
       platforms = platforms.all;
       maintainers = with maintainers; [ edwtjo ];
@@ -99,7 +180,7 @@ rec {
     // (mkController "ps")
     // (mkController "snes");
 
-  exodus = (mkKodiPlugin rec {
+  exodus = mkKodiPlugin rec {
 
     plugin = "exodus";
     namespace = "plugin.video.exodus";
@@ -110,13 +191,14 @@ rec {
       sha256 = "1zyay7cinljxmpzngzlrr4pnk2a7z9wwfdcsk6a4p416iglyggdj";
     };
 
-    meta = with stdenv.lib; {
+    buildInputs = [ unzip ];
+
+    meta = {
       description = "A streaming plugin for Kodi";
       platforms = platforms.all;
       maintainers = with maintainers; [ edwtjo ];
     };
-
-  }).override { buildInputs = [ unzip ]; };
+  };
 
   hyper-launcher = let
     pname = "hyper-launcher";
@@ -128,7 +210,7 @@ rec {
       rev = "f958ba93fe85b9c9025b1745d89c2db2e7dd9bf6";
       sha256 = "1dvff24fbas25k5kvca4ssks9l1g5rfa3hl8lqxczkaqi3pp41j5";
     };
-    meta = with stdenv.lib; {
+    meta = {
       homepage = https://forum.kodi.tv/showthread.php?tid=258159;
       description = "A ROM launcher for Kodi that uses HyperSpin assets.";
       maintainers = with maintainers; [ edwtjo ];
@@ -159,7 +241,7 @@ rec {
       sha256 = "18m61v8z9fbh4imvzhh4g9629r9df49g2yk9ycaczirg131dhfbh";
     };
 
-    meta = with stdenv.lib; {
+    meta = {
       description = "Binary addon for raw joystick input.";
       platforms = platforms.all;
       maintainers = with maintainers; [ edwtjo ];
@@ -183,7 +265,7 @@ rec {
       sha256 = "0klk1jpjc243ak306k94mag4b4s17w68v69yb8lzzydszqkaqa7x";
     };
 
-    meta = with stdenv.lib; {
+    meta = {
       homepage = https://forum.kodi.tv/showthread.php?tid=67110;
       description = "Watch content from SVT Play";
       longDescription = ''
@@ -212,7 +294,7 @@ rec {
 
     extraBuildInputs = [ libusb ];
 
-    meta = with stdenv.lib; {
+    meta = {
       description = "Binary addon for steam controller.";
       platforms = platforms.all;
       maintainers = with maintainers; [ edwtjo ];
@@ -220,7 +302,7 @@ rec {
 
   };
 
-  steam-launcher = (mkKodiPlugin rec {
+  steam-launcher = mkKodiPlugin rec {
 
     plugin = "steam-launcher";
     namespace = "script.steam.launcher";
@@ -233,7 +315,9 @@ rec {
       sha256 = "001a7zs3a4jfzj8ylxv2klc33mipmqsd5aqax7q81fbgwdlndvbm";
     };
 
-    meta = with stdenv.lib; {
+    propagatedBuildInputs = [ steam ];
+
+    meta = {
       homepage = https://forum.kodi.tv/showthread.php?tid=157499;
       description = "Launch Steam in Big Picture Mode from Kodi";
       longDescription = ''
@@ -245,8 +329,6 @@ rec {
       '';
       maintainers = with maintainers; [ edwtjo ];
     };
-  }).override {
-    propagatedBuildinputs = [ steam ];
   };
 
   pdfreader = mkKodiPlugin rec {
@@ -262,7 +344,7 @@ rec {
       sha256 = "1iv7d030z3xvlflvp4p5v3riqnwg9g0yvzxszy63v1a6x5kpjkqa";
     };
 
-    meta = with stdenv.lib; {
+    meta = {
       homepage = https://forum.kodi.tv/showthread.php?tid=187421;
       description = "A comic book reader";
       maintainers = with maintainers; [ edwtjo ];
@@ -282,7 +364,7 @@ rec {
       sha256 = "0pmlgqr4kd0gvckz77mj6v42kcx6lb23anm8jnf2fbn877snnijx";
     };
 
-    meta = with stdenv.lib; {
+    meta = {
       homepage = https://github.com/kodi-pvr/pvr.hts;
       description = "Kodi's Tvheadend HTSP client addon";
       platforms = platforms.all;
@@ -304,7 +386,7 @@ rec {
       sha256 = "0dvdv0vk2q12nj0i5h51iaypy3i7jfsxjyxwwpxfy82y8260ragy";
     };
 
-    meta = with stdenv.lib; {
+    meta = {
       homepage = https://github.com/kodi-pvr/pvr.hdhomerun;
       description = "Kodi's HDHomeRun PVR client addon";
       platforms = platforms.all;
@@ -328,7 +410,7 @@ rec {
       sha256 = "1f1im2gachrxnr3z96h5cg2c13vapgkvkdwvrbl4hxlnyp1a6jyz";
     };
 
-    meta = with stdenv.lib; {
+    meta = {
       homepage = https://github.com/kodi-pvr/pvr.iptvsimple;
       description = "Kodi's IPTV Simple client addon";
       platforms = platforms.all;
@@ -352,7 +434,7 @@ rec {
       sha256 = "1b3fm02annsq58pcfc985glrmh21rmqksdj3q8wn6gyza06jdf3v";
     };
 
-    meta = with stdenv.lib; {
+    meta = {
       homepage = https://github.com/osmc/skin.osmc;
       description = "The default skin for OSMC";
       platforms = platforms.all;
@@ -360,4 +442,5 @@ rec {
       license = licenses.cc-by-nc-sa-30;
     };
   };
-}
+
+}; in self
diff --git a/pkgs/applications/video/kodi/wrapper.nix b/pkgs/applications/video/kodi/wrapper.nix
index e6d3fbb090fc..d0dc9274a105 100644
--- a/pkgs/applications/video/kodi/wrapper.nix
+++ b/pkgs/applications/video/kodi/wrapper.nix
@@ -1,54 +1,25 @@
-{ stdenv, lib, makeWrapper, kodi, plugins }:
+{ stdenv, lib, makeWrapper, buildEnv, kodi, plugins }:
 
-let
+buildEnv {
+  name = "kodi-with-plugins-${(builtins.parseDrvName kodi.name).version}";
 
-  p = builtins.parseDrvName kodi.name;
-
-in
-
-stdenv.mkDerivation {
-
-  name = "kodi-" + p.version;
-  version = p.version;
+  paths = [ kodi ] ++ plugins;
+  pathsToLink = [ "/share" ];
 
   buildInputs = [ makeWrapper ];
 
-  buildCommand = ''
-    mkdir -p $out/share/kodi/addons
-    ${stdenv.lib.concatMapStrings
-        (plugin: "ln -s ${plugin.out
-                            + plugin.kodiPlugin
-                            + "/" + plugin.namespace
-                          } $out/share/kodi/addons/.;") plugins}
-    $(for plugin in ${kodi}/share/kodi/addons/*
-    do
-      $(ln -s $plugin/ $out/share/kodi/addons/.)
-    done)
-    $(for share in ${kodi}/share/kodi/*
-    do
-      $(ln -s $share $out/share/kodi/.)
-    done)
-    $(for passthrough in icons xsessions applications
+  postBuild = ''
+    mkdir $out/bin
+    for exe in kodi{,-standalone}
     do
-      ln -s ${kodi}/share/$passthrough $out/share/
-    done)
-    $(for exe in kodi{,-standalone}
-    do
-    makeWrapper ${kodi}/bin/$exe $out/bin/$exe \
-      --prefix KODI_HOME : $out/share/kodi;
-    done)
+      makeWrapper ${kodi}/bin/$exe $out/bin/$exe \
+        --prefix PYTHONPATH : ${kodi.pythonPackages.makePythonPath plugins} \
+        --prefix KODI_HOME : $out/share/kodi
+    done
   '';
 
-  preferLocalBuild = true;
-
-  meta = with kodi.meta; {
-    inherit license homepage;
-    description = description
-                + " (with plugins: "
-                + lib.concatStrings (lib.intersperse ", " (map (x: ""+x.name) plugins))
-                + ")";
-
-    platforms = stdenv.lib.platforms.linux;
+  meta = kodi.meta // {
+    description = kodi.meta.description
+                + " (with plugins: ${lib.concatMapStringsSep ", " (x: x.name) plugins})";
   };
-
 }
diff --git a/pkgs/applications/video/mkvtoolnix/default.nix b/pkgs/applications/video/mkvtoolnix/default.nix
index ef01ac4cdae3..3f0fb0e8022c 100644
--- a/pkgs/applications/video/mkvtoolnix/default.nix
+++ b/pkgs/applications/video/mkvtoolnix/default.nix
@@ -12,13 +12,13 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   name = "mkvtoolnix-${version}";
-  version = "25.0.0";
+  version = "26.0.0";
 
   src = fetchFromGitLab {
     owner  = "mbunkus";
     repo   = "mkvtoolnix";
     rev    = "release-${version}";
-    sha256 = "04m57719q7q0h0gcj1b2bh8xbdcl5bijic4hw71xf9xd19a95k78";
+    sha256 = "0dq0lbr6kzj455mv4z6a851n7ff3xlmsxklijiyp4drn1jf0q1pb";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/video/mpv/default.nix b/pkgs/applications/video/mpv/default.nix
index c384455d6722..9d843a3bfefb 100644
--- a/pkgs/applications/video/mpv/default.nix
+++ b/pkgs/applications/video/mpv/default.nix
@@ -3,42 +3,46 @@
 , freefont_ttf, freetype, libass, libpthreadstubs
 , lua, luasocket, libuchardet, libiconv ? null, darwin
 
-, x11Support ? stdenv.isLinux,
-    libGLU_combined       ? null,
-    libX11     ? null,
-    libXext    ? null,
-    libXxf86vm ? null,
-    libXrandr  ? null
-
 , waylandSupport ? false
   , wayland           ? null
   , wayland-protocols ? null
   , libxkbcommon      ? null
 
-, rubberbandSupport  ? true,  rubberband    ? null
-, xineramaSupport    ? true,  libXinerama   ? null
-, xvSupport          ? true,  libXv         ? null
-, sdl2Support        ? true,  SDL2          ? null
+, x11Support ? stdenv.isLinux
+  , libGLU_combined ? null
+  , libX11          ? null
+  , libXext         ? null
+  , libXxf86vm      ? null
+  , libXrandr       ? null
+
+, cddaSupport ? false
+  , libcdio          ? null
+  , libcdio-paranoia ? null
+
 , alsaSupport        ? true,  alsaLib       ? null
-, screenSaverSupport ? true,  libXScrnSaver ? null
-, cmsSupport         ? true,  lcms2         ? null
-, vdpauSupport       ? true,  libvdpau      ? null
-, dvdreadSupport     ? true,  libdvdread    ? null
-, dvdnavSupport      ? true,  libdvdnav     ? null
 , bluraySupport      ? true,  libbluray     ? null
-, speexSupport       ? true,  speex         ? null
-, theoraSupport      ? true,  libtheora     ? null
-, pulseSupport       ? true,  libpulseaudio ? null
 , bs2bSupport        ? true,  libbs2b       ? null
 , cacaSupport        ? true,  libcaca       ? null
+, cmsSupport         ? true,  lcms2         ? null
+, drmSupport         ? true,  libdrm        ? null
+, dvdnavSupport      ? true,  libdvdnav     ? null
+, dvdreadSupport     ? true,  libdvdread    ? null
 , libpngSupport      ? true,  libpng        ? null
-, youtubeSupport     ? true,  youtube-dl    ? null
+, pulseSupport       ? true,  libpulseaudio ? null
+, rubberbandSupport  ? true,  rubberband    ? null
+, screenSaverSupport ? true,  libXScrnSaver ? null
+, sdl2Support        ? true,  SDL2          ? null
+, speexSupport       ? true,  speex         ? null
+, theoraSupport      ? true,  libtheora     ? null
 , vaapiSupport       ? true,  libva         ? null
-, drmSupport         ? true,  libdrm        ? null
-, openalSupport      ? false, openalSoft    ? null
-, vapoursynthSupport ? false, vapoursynth   ? null
+, vdpauSupport       ? true,  libvdpau      ? null
+, xineramaSupport    ? true,  libXinerama   ? null
+, xvSupport          ? true,  libXv         ? null
+, youtubeSupport     ? true,  youtube-dl    ? null
 , archiveSupport     ? false, libarchive    ? null
 , jackaudioSupport   ? false, libjack2      ? null
+, openalSupport      ? false, openalSoft    ? null
+, vapoursynthSupport ? false, vapoursynth   ? null
 }:
 
 with stdenv.lib;
@@ -46,32 +50,33 @@ with stdenv.lib;
 let
   available = x: x != null;
 in
-assert x11Support         -> all available [libGLU_combined libX11 libXext libXxf86vm libXrandr];
-assert waylandSupport     -> all available [wayland wayland-protocols libxkbcommon];
-assert rubberbandSupport  -> available rubberband;
-assert xineramaSupport    -> x11Support && available libXinerama;
-assert xvSupport          -> x11Support && available libXv;
-assert sdl2Support        -> available SDL2;
 assert alsaSupport        -> available alsaLib;
-assert screenSaverSupport -> available libXScrnSaver;
-assert cmsSupport         -> available lcms2;
-assert vdpauSupport       -> available libvdpau;
-assert dvdreadSupport     -> available libdvdread;
-assert dvdnavSupport      -> available libdvdnav;
+assert archiveSupport     -> available libarchive;
 assert bluraySupport      -> available libbluray;
-assert speexSupport       -> available speex;
-assert theoraSupport      -> available libtheora;
-assert openalSupport      -> available openalSoft;
-assert pulseSupport       -> available libpulseaudio;
 assert bs2bSupport        -> available libbs2b;
 assert cacaSupport        -> available libcaca;
-assert libpngSupport      -> available libpng;
-assert youtubeSupport     -> available youtube-dl;
-assert vapoursynthSupport -> available vapoursynth;
+assert cddaSupport        -> all available [libcdio libcdio-paranoia];
+assert cmsSupport         -> available lcms2;
+assert drmSupport         -> available libdrm;
+assert dvdnavSupport      -> available libdvdnav;
+assert dvdreadSupport     -> available libdvdread;
 assert jackaudioSupport   -> available libjack2;
-assert archiveSupport     -> available libarchive;
+assert libpngSupport      -> available libpng;
+assert openalSupport      -> available openalSoft;
+assert pulseSupport       -> available libpulseaudio;
+assert rubberbandSupport  -> available rubberband;
+assert screenSaverSupport -> available libXScrnSaver;
+assert sdl2Support        -> available SDL2;
+assert speexSupport       -> available speex;
+assert theoraSupport      -> available libtheora;
 assert vaapiSupport       -> available libva;
-assert drmSupport         -> available libdrm;
+assert vapoursynthSupport -> available vapoursynth;
+assert vdpauSupport       -> available libvdpau;
+assert waylandSupport     -> all available [ wayland wayland-protocols libxkbcommon ];
+assert x11Support         -> all available [ libGLU_combined libX11 libXext libXxf86vm libXrandr ];
+assert xineramaSupport    -> x11Support && available libXinerama;
+assert xvSupport          -> x11Support && available libXv;
+assert youtubeSupport     -> available youtube-dl;
 
 let
   # Purity: Waf is normally downloaded by bootstrap.py, but
@@ -115,13 +120,14 @@ in stdenv.mkDerivation rec {
     "--disable-static-build"
     "--disable-build-date" # Purity
     "--disable-macos-cocoa-cb" # Disable whilst Swift isn't supported
-    (enableFeature archiveSupport "libarchive")
-    (enableFeature dvdreadSupport "dvdread")
-    (enableFeature dvdnavSupport "dvdnav")
-    (enableFeature openalSupport "openal")
-    (enableFeature vaapiSupport "vaapi")
-    (enableFeature waylandSupport "wayland")
-    (enableFeature stdenv.isLinux "dvbin")
+    (enableFeature archiveSupport  "libarchive")
+    (enableFeature cddaSupport     "cdda")
+    (enableFeature dvdnavSupport   "dvdnav")
+    (enableFeature dvdreadSupport  "dvdread")
+    (enableFeature openalSupport   "openal")
+    (enableFeature vaapiSupport    "vaapi")
+    (enableFeature waylandSupport  "wayland")
+    (enableFeature stdenv.isLinux  "dvbin")
   ];
 
   configurePhase = ''
@@ -137,32 +143,33 @@ in stdenv.mkDerivation rec {
     ffmpeg_4 freetype libass libpthreadstubs
     lua luasocket libuchardet
   ] ++ optional alsaSupport        alsaLib
-    ++ optional xvSupport          libXv
-    ++ optional theoraSupport      libtheora
-    ++ optional xineramaSupport    libXinerama
-    ++ optional dvdreadSupport     libdvdread
+    ++ optional archiveSupport     libarchive
     ++ optional bluraySupport      libbluray
+    ++ optional bs2bSupport        libbs2b
+    ++ optional cacaSupport        libcaca
+    ++ optional cmsSupport         lcms2
+    ++ optional drmSupport         libdrm
+    ++ optional dvdreadSupport     libdvdread
     ++ optional jackaudioSupport   libjack2
+    ++ optional libpngSupport      libpng
+    ++ optional openalSupport      openalSoft
     ++ optional pulseSupport       libpulseaudio
     ++ optional rubberbandSupport  rubberband
     ++ optional screenSaverSupport libXScrnSaver
-    ++ optional cmsSupport        lcms2
-    ++ optional vdpauSupport       libvdpau
-    ++ optional speexSupport       speex
-    ++ optional bs2bSupport        libbs2b
-    ++ optional openalSupport      openalSoft
-    ++ optional libpngSupport      libpng
-    ++ optional youtubeSupport     youtube-dl
     ++ optional sdl2Support        SDL2
-    ++ optional cacaSupport        libcaca
+    ++ optional speexSupport       speex
+    ++ optional theoraSupport      libtheora
     ++ optional vaapiSupport       libva
-    ++ optional drmSupport         libdrm
     ++ optional vapoursynthSupport vapoursynth
-    ++ optional archiveSupport     libarchive
+    ++ optional vdpauSupport       libvdpau
+    ++ optional xineramaSupport    libXinerama
+    ++ optional xvSupport          libXv
+    ++ optional youtubeSupport     youtube-dl
     ++ optional stdenv.isDarwin    libiconv
+    ++ optionals cddaSupport       [ libcdio libcdio-paranoia ]
     ++ optionals dvdnavSupport     [ libdvdnav libdvdnav.libdvdread ]
-    ++ optionals x11Support        [ libX11 libXext libGLU_combined libXxf86vm libXrandr ]
     ++ optionals waylandSupport    [ wayland wayland-protocols libxkbcommon ]
+    ++ optionals x11Support        [ libX11 libXext libGLU_combined libXxf86vm libXrandr ]
     ++ optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [
       CoreFoundation Cocoa CoreAudio
     ]);
diff --git a/pkgs/applications/video/pitivi/default.nix b/pkgs/applications/video/pitivi/default.nix
index cea85f553b5f..adb5d237f54f 100644
--- a/pkgs/applications/video/pitivi/default.nix
+++ b/pkgs/applications/video/pitivi/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, intltool, itstool, wrapGAppsHook
+{ stdenv, fetchurl, pkgconfig, intltool, itstool, python3, wrapGAppsHook
 , python3Packages, gst, gtk3
 , gobjectIntrospection, librsvg, gnome3, libnotify
 , meson, ninja
@@ -43,7 +43,7 @@ in python3Packages.buildPythonApplication rec {
     patchShebangs ./getenvvar.py
   '';
 
-  nativeBuildInputs = [ meson ninja pkgconfig intltool itstool wrapGAppsHook ];
+  nativeBuildInputs = [ meson ninja pkgconfig intltool itstool python3 wrapGAppsHook ];
 
   buildInputs = [
     gobjectIntrospection gtk3 librsvg gnome3.gnome-desktop gnome3.gsound
diff --git a/pkgs/applications/video/tivodecode/default.nix b/pkgs/applications/video/tivodecode/default.nix
index b158bc924605..83ca41e201c9 100644
--- a/pkgs/applications/video/tivodecode/default.nix
+++ b/pkgs/applications/video/tivodecode/default.nix
@@ -13,9 +13,10 @@ stdenv.mkDerivation {
     sha256 = "1pww5r2iygscqn20a1cz9xbfh18p84a6a5ifg4h5nvyn9b63k23q";
   };
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "Converts a .TiVo file (produced by TiVoToGo) to a normal MPEG file";
     homepage = http://tivodecode.sourceforge.net;
-    platforms = stdenv.lib.platforms.unix;
+    platforms = platforms.unix;
+    license = licenses.bsd3;
   };
 }
diff --git a/pkgs/applications/video/xine-ui/default.nix b/pkgs/applications/video/xine-ui/default.nix
index 69fc68a69deb..4dfc3fd052a2 100644
--- a/pkgs/applications/video/xine-ui/default.nix
+++ b/pkgs/applications/video/xine-ui/default.nix
@@ -3,12 +3,12 @@
 
 stdenv.mkDerivation rec {
   name = "xine-ui-0.99.10";
-  
+
   src = fetchurl {
     url = "mirror://sourceforge/xine/${name}.tar.xz";
     sha256 = "0i3jzhiipfs5p1jbxviwh42zcfzag6iqc6yycaan0vrqm90an86a";
   };
-  
+
   nativeBuildInputs = [ pkgconfig shared-mime-info ];
 
   buildInputs =
@@ -20,14 +20,15 @@ stdenv.mkDerivation rec {
   patchPhase = ''sed -e '/curl\/types\.h/d' -i src/xitk/download.c'';
 
   configureFlags = [ "--with-readline=${readline.dev}" ];
-  
+
   LIRC_CFLAGS="-I${lirc}/include";
   LIRC_LIBS="-L ${lirc}/lib -llirc_client";
 #NIX_LDFLAGS = "-lXext -lgcc_s";
 
-  meta = { 
+  meta = with stdenv.lib; {
     homepage = http://www.xine-project.org/;
     description = "Xlib-based interface to Xine, a video player";
-    platforms = stdenv.lib.platforms.linux;
+    platforms = platforms.linux;
+    license = licenses.gpl2;
   };
 }
diff --git a/pkgs/applications/virtualization/driver/win-virtio/default.nix b/pkgs/applications/virtualization/driver/win-virtio/default.nix
index f7a2f6e6f308..946014e5cc9a 100644
--- a/pkgs/applications/virtualization/driver/win-virtio/default.nix
+++ b/pkgs/applications/virtualization/driver/win-virtio/default.nix
@@ -1,14 +1,13 @@
 { stdenv, fetchurl, p7zip }:
-
-stdenv.mkDerivation  {
-  name = "win-virtio-0.1.105-1";
-  version = "0.1.105-1";
+stdenv.mkDerivation rec {
+  name = "win-virtio-${version}";
+  version = "0.1.141-1";
 
   phases = [ "buildPhase" "installPhase" ];
 
   src = fetchurl {
-    url = "https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/virtio-win-0.1.105-1/virtio-win.iso";
-    sha256 = "065gz7s77y0q9kfqbr27451sr28rm9azpi88sqjkfph8c6r8q3wc";
+    url = "https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/virtio-win-${version}/virtio-win.iso";
+    sha256 = "0mn5gcgb9dk59nrw9scdza628yiji4vdkxmixikn9v02kgwnkja3";
   };
 
   buildPhase = ''
diff --git a/pkgs/applications/virtualization/qemu/default.nix b/pkgs/applications/virtualization/qemu/default.nix
index bbb2a099666b..596bc9dd9e09 100644
--- a/pkgs/applications/virtualization/qemu/default.nix
+++ b/pkgs/applications/virtualization/qemu/default.nix
@@ -84,10 +84,7 @@ stdenv.mkDerivation rec {
       url = https://raw.githubusercontent.com/alpinelinux/aports/2bb133986e8fa90e2e76d53369f03861a87a74ef/main/qemu/musl-F_SHLCK-and-F_EXLCK.patch;
       sha256 = "1gm67v41gw6apzgz7jr3zv9z80wvkv0jaxd2w4d16hmipa8bhs0k";
     })
-    (fetchpatch {
-      url = https://raw.githubusercontent.com/alpinelinux/aports/61a7a1b77a868e3b940c0b25e6c2b2a6c32caf20/main/qemu/0006-linux-user-signal.c-define-__SIGRTMIN-MAX-for-non-GN.patch;
-      sha256 = "1ar6r1vpmhnbs72v6mhgyahcjcf7b9b4xi7asx17sy68m171d2g6";
-    })
+    ./sigrtminmax.patch
     (fetchpatch {
       url = https://raw.githubusercontent.com/alpinelinux/aports/2bb133986e8fa90e2e76d53369f03861a87a74ef/main/qemu/fix-sigevent-and-sigval_t.patch;
       sha256 = "0wk0rrcqywhrw9hygy6ap0lfg314m9z1wr2hn8338r5gfcw75mav";
diff --git a/pkgs/applications/virtualization/qemu/sigrtminmax.patch b/pkgs/applications/virtualization/qemu/sigrtminmax.patch
new file mode 100644
index 000000000000..41050447ac64
--- /dev/null
+++ b/pkgs/applications/virtualization/qemu/sigrtminmax.patch
@@ -0,0 +1,30 @@
+From 2697fcc42546e814a2d2617671cb8398b15256fb Mon Sep 17 00:00:00 2001
+From: Will Dietz <w@wdtz.org>
+Date: Fri, 17 Aug 2018 00:22:35 -0500
+Subject: [PATCH] quick port __SIGRTMIN/__SIGRTMAX patch for qemu 3.0
+
+---
+ linux-user/signal.c | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/linux-user/signal.c b/linux-user/signal.c
+index 602b631b92..87f9240134 100644
+--- a/linux-user/signal.c
++++ b/linux-user/signal.c
+@@ -26,6 +26,13 @@
+ #include "trace.h"
+ #include "signal-common.h"
+ 
++#ifndef __SIGRTMIN
++#define __SIGRTMIN 32
++#endif
++#ifndef __SIGRTMAX
++#define __SIGRTMAX (NSIG-1)
++#endif
++
+ struct target_sigaltstack target_sigaltstack_used = {
+     .ss_sp = 0,
+     .ss_size = 0,
+-- 
+2.18.0
+
diff --git a/pkgs/applications/window-managers/fbpanel/default.nix b/pkgs/applications/window-managers/fbpanel/default.nix
index b521240b48f5..0c13691a36ac 100644
--- a/pkgs/applications/window-managers/fbpanel/default.nix
+++ b/pkgs/applications/window-managers/fbpanel/default.nix
@@ -20,6 +20,7 @@ stdenv.mkDerivation rec {
     description = "A stand-alone panel";
     maintainers = with maintainers; [ raskin ];
     platforms = platforms.linux;
+    license = licenses.mit;
   };
 
   passthru = {
diff --git a/pkgs/applications/window-managers/xmonad/log-applet/default.nix b/pkgs/applications/window-managers/xmonad/log-applet/default.nix
index 96f742df3105..57f00887103f 100644
--- a/pkgs/applications/window-managers/xmonad/log-applet/default.nix
+++ b/pkgs/applications/window-managers/xmonad/log-applet/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchFromGitHub, pkgconfig, autoreconfHook, glib, dbus-glib
-, desktopSupport, xlibs
+, desktopSupport, xorg
 , gtk2
 , gtk3, gnome3, mate
 , libxfce4util, xfce4-panel
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
     sha256 = "042307grf4zvn61gnflhsj5xsjykrk9sjjsprprm4iij0qpybxcw";
   };
 
-  buildInputs = [ glib dbus-glib xlibs.xcbutilwm ]
+  buildInputs = [ glib dbus-glib xorg.xcbutilwm ]
     ++ stdenv.lib.optionals (desktopSupport == "gnomeflashback") [ gtk3 gnome3.gnome-panel ]
     ++ stdenv.lib.optionals (desktopSupport == "mate") [ gtk3 mate.mate-panel ]
     ++ stdenv.lib.optionals (desktopSupport == "xfce4") [ gtk2 libxfce4util xfce4-panel ]
diff --git a/pkgs/build-support/cc-wrapper/default.nix b/pkgs/build-support/cc-wrapper/default.nix
index a981ffea7081..301bc2694c4f 100644
--- a/pkgs/build-support/cc-wrapper/default.nix
+++ b/pkgs/build-support/cc-wrapper/default.nix
@@ -75,7 +75,7 @@ stdenv.mkDerivation {
   preferLocalBuild = true;
 
   inherit cc libc_bin libc_dev libc_lib bintools coreutils_bin;
-  shell = getBin shell + stdenv.lib.optionalString (stdenv ? shellPath) stdenv.shellPath;
+  shell = getBin shell + shell.shellPath or "";
   gnugrep_bin = if nativeTools then "" else gnugrep;
 
   inherit targetPrefix infixSalt;
diff --git a/pkgs/build-support/fetchdocker/default.nix b/pkgs/build-support/fetchdocker/default.nix
index 3556df32d926..bbd2bae46df5 100644
--- a/pkgs/build-support/fetchdocker/default.nix
+++ b/pkgs/build-support/fetchdocker/default.nix
@@ -22,8 +22,8 @@ assert null == lib.findFirst (c: "/"==c) null (lib.stringToCharacters repository
 assert null == lib.findFirst (c: "/"==c) null (lib.stringToCharacters imageName);
 
 let
-  # Abuse `builtins.toPath` to collapse possible double slashes
-  repoTag0 = builtins.toString (builtins.toPath "/${stripScheme registry}/${repository}/${imageName}");
+  # Abuse paths to collapse possible double slashes
+  repoTag0 = builtins.toString (/. + "/${stripScheme registry}/${repository}/${imageName}");
   repoTag1 = lib.removePrefix "/" repoTag0;
 
   layers = builtins.map stripNixStore imageLayers;
diff --git a/pkgs/build-support/rust/build-rust-crate.nix b/pkgs/build-support/rust/build-rust-crate.nix
deleted file mode 100644
index 6605aa27b21e..000000000000
--- a/pkgs/build-support/rust/build-rust-crate.nix
+++ /dev/null
@@ -1,461 +0,0 @@
-# Code for buildRustCrate, a Nix function that builds Rust code, just
-# like Cargo, but using Nix instead.
-#
-# This can be useful for deploying packages with NixOps, and to share
-# binary dependencies between projects.
-
-{ lib, stdenv, defaultCrateOverrides, fetchCrate, ncurses, rustc  }:
-
-let makeDeps = dependencies:
-      (lib.concatMapStringsSep " " (dep:
-        let extern = lib.strings.replaceStrings ["-"] ["_"] dep.libName; in
-        (if dep.crateType == "lib" then
-           " --extern ${extern}=${dep.out}/lib/lib${extern}-${dep.metadata}.rlib"
-         else
-           " --extern ${extern}=${dep.out}/lib/lib${extern}-${dep.metadata}${stdenv.hostPlatform.extensions.sharedLibrary}")
-      ) dependencies);
-
-    # This doesn't appear to be officially documented anywhere yet.
-    # See https://github.com/rust-lang-nursery/rust-forge/issues/101.
-    target_os = if stdenv.hostPlatform.isDarwin
-      then "macos"
-      else stdenv.hostPlatform.parsed.kernel.name;
-
-    echo_build_heading = colors: ''
-      echo_build_heading() {
-       start=""
-       end=""
-       if [[ "${colors}" == "always" ]]; then
-         start="$(printf '\033[0;1;32m')" #set bold, and set green.
-         end="$(printf '\033[0m')" #returns to "normal"
-       fi
-       if (( $# == 1 )); then
-         echo "$start""Building $1""$end"
-       else
-         echo "$start""Building $1 ($2)""$end"
-       fi
-      }
-    '';
-    noisily = colors: verbose: ''
-      noisily() {
-        start=""
-        end=""
-        if [[ "${colors}" == "always" ]]; then
-          start="$(printf '\033[0;1;32m')" #set bold, and set green.
-          end="$(printf '\033[0m')" #returns to "normal"
-        fi
-	${lib.optionalString verbose ''
-            echo -n "$start"Running "$end"
-            echo $@
-	''}
-	$@
-      }
-    '';
-
-    configureCrate =
-      { crateName, crateVersion, crateAuthors, build, libName, crateFeatures, colors, libPath, release, buildDependencies, completeDeps, completeBuildDeps, verbose, workspace_member, extraLinkFlags }:
-      let version_ = lib.splitString "-" crateVersion;
-          versionPre = if lib.tail version_ == [] then "" else builtins.elemAt version_ 1;
-          version = lib.splitString "." (lib.head version_);
-          rustcOpts = (if release then "-C opt-level=3" else "-C debuginfo=2");
-          buildDeps = makeDeps buildDependencies;
-          authors = lib.concatStringsSep ":" crateAuthors;
-          optLevel = if release then 3 else 0;
-          completeDepsDir = lib.concatStringsSep " " completeDeps;
-          completeBuildDepsDir = lib.concatStringsSep " " completeBuildDeps;
-      in ''
-      cd ${workspace_member}
-      runHook preConfigure
-      ${echo_build_heading colors}
-      ${noisily colors verbose}
-      symlink_dependency() {
-        # $1 is the nix-store path of a dependency
-        # $2 is the target path
-        i=$1
-        ln -s -f $i/lib/*.rlib $2 #*/
-        ln -s -f $i/lib/*.so $i/lib/*.dylib $2 #*/
-        if [ -e "$i/lib/link" ]; then
-            cat $i/lib/link >> target/link
-            cat $i/lib/link >> target/link.final
-        fi
-        if [ -e $i/env ]; then
-            source $i/env
-        fi
-      }
-
-      mkdir -p target/{deps,lib,build,buildDeps}
-      chmod uga+w target -R
-      echo ${extraLinkFlags} > target/link
-      echo ${extraLinkFlags} > target/link.final
-      for i in ${completeDepsDir}; do
-        symlink_dependency $i target/deps
-      done
-      for i in ${completeBuildDepsDir}; do
-         symlink_dependency $i target/buildDeps
-      done
-      if [[ -e target/link ]]; then
-        sort -u target/link > target/link.sorted
-        mv target/link.sorted target/link
-        sort -u target/link.final > target/link.final.sorted
-        mv target/link.final.sorted target/link.final
-        tr '\n' ' ' < target/link > target/link_
-      fi
-      EXTRA_BUILD=""
-      BUILD_OUT_DIR=""
-      export CARGO_PKG_NAME=${crateName}
-      export CARGO_PKG_VERSION=${crateVersion}
-      export CARGO_PKG_AUTHORS="${authors}"
-
-      export CARGO_CFG_TARGET_ARCH=${stdenv.hostPlatform.parsed.cpu.name}
-      export CARGO_CFG_TARGET_OS=${target_os}
-      export CARGO_CFG_TARGET_FAMILY="unix"
-      export CARGO_CFG_UNIX=1
-      export CARGO_CFG_TARGET_ENV="gnu"
-      export CARGO_CFG_TARGET_ENDIAN=${if stdenv.hostPlatform.parsed.cpu.significantByte.name == "littleEndian" then "little" else "big"}
-      export CARGO_CFG_TARGET_POINTER_WIDTH=${toString stdenv.hostPlatform.parsed.cpu.bits}
-      export CARGO_CFG_TARGET_VENDOR=${stdenv.hostPlatform.parsed.vendor.name}
-
-      export CARGO_MANIFEST_DIR="."
-      export DEBUG="${toString (!release)}"
-      export OPT_LEVEL="${toString optLevel}"
-      export TARGET="${stdenv.hostPlatform.config}"
-      export HOST="${stdenv.hostPlatform.config}"
-      export PROFILE=${if release then "release" else "debug"}
-      export OUT_DIR=$(pwd)/target/build/${crateName}.out
-      export CARGO_PKG_VERSION_MAJOR=${builtins.elemAt version 0}
-      export CARGO_PKG_VERSION_MINOR=${builtins.elemAt version 1}
-      export CARGO_PKG_VERSION_PATCH=${builtins.elemAt version 2}
-      if [[ -n "${versionPre}" ]]; then
-        export CARGO_PKG_VERSION_PRE="${versionPre}"
-      fi
-
-      BUILD=""
-      if [[ ! -z "${build}" ]] ; then
-         BUILD=${build}
-      elif [[ -e "build.rs" ]]; then
-         BUILD="build.rs"
-      fi
-      if [[ ! -z "$BUILD" ]] ; then
-         echo_build_heading "$BUILD" ${libName}
-         mkdir -p target/build/${crateName}
-         EXTRA_BUILD_FLAGS=""
-         if [ -e target/link_ ]; then
-           EXTRA_BUILD_FLAGS=$(cat target/link_)
-         fi
-         if [ -e target/link.build ]; then
-           EXTRA_BUILD_FLAGS="$EXTRA_BUILD_FLAGS $(cat target/link.build)"
-         fi
-         noisily rustc --crate-name build_script_build $BUILD --crate-type bin ${rustcOpts} \
-           ${crateFeatures} --out-dir target/build/${crateName} --emit=dep-info,link \
-           -L dependency=target/buildDeps ${buildDeps} --cap-lints allow $EXTRA_BUILD_FLAGS --color ${colors}
-
-         mkdir -p target/build/${crateName}.out
-         export RUST_BACKTRACE=1
-         BUILD_OUT_DIR="-L $OUT_DIR"
-         mkdir -p $OUT_DIR
-         target/build/${crateName}/build_script_build > target/build/${crateName}.opt
-         set +e
-         EXTRA_BUILD=$(sed -n "s/^cargo:rustc-flags=\(.*\)/\1/p" target/build/${crateName}.opt | tr '\n' ' ' | sort -u)
-         EXTRA_FEATURES=$(sed -n "s/^cargo:rustc-cfg=\(.*\)/--cfg \1/p" target/build/${crateName}.opt | tr '\n' ' ')
-         EXTRA_LINK=$(sed -n "s/^cargo:rustc-link-lib=\(.*\)/\1/p" target/build/${crateName}.opt | tr '\n' ' ' | sort -u)
-         EXTRA_LINK_SEARCH=$(sed -n "s/^cargo:rustc-link-search=\(.*\)/\1/p" target/build/${crateName}.opt | tr '\n' ' ' | sort -u)
-
-         for env in $(sed -n "s/^cargo:rustc-env=\(.*\)/\1/p" target/build/${crateName}.opt); do
-           export $env
-         done
-
-         CRATENAME=$(echo ${crateName} | sed -e "s/\(.*\)-sys$/\U\1/")
-         grep -P "^cargo:(?!(rustc-|warning=|rerun-if-changed=|rerun-if-env-changed))" target/build/${crateName}.opt \
-           | sed -e "s/cargo:\([^=]*\)=\(.*\)/export DEP_$(echo $CRATENAME)_\U\1\E=\2/" > target/env
-
-         set -e
-         if [[ -n "$(ls target/build/${crateName}.out)" ]]; then
-
-            if [[ -e "${libPath}" ]]; then
-               cp -r target/build/${crateName}.out/* $(dirname ${libPath}) #*/
-            else
-               cp -r target/build/${crateName}.out/* src #*/
-            fi
-         fi
-      fi
-      runHook postConfigure
-    '';
-
-    buildCrate = { crateName,
-                   dependencies,
-                   crateFeatures, libName, release, libPath,
-                   crateType, metadata, crateBin, finalBins,
-                   extraRustcOpts, verbose, colors }:
-
-      let deps = makeDeps dependencies;
-          rustcOpts =
-            lib.lists.foldl' (opts: opt: opts + " " + opt)
-              (if release then "-C opt-level=3" else "-C debuginfo=2")
-              (["-C codegen-units=1"] ++ extraRustcOpts);
-          rustcMeta = "-C metadata=${metadata} -C extra-filename=-${metadata}";
-      in ''
-      runHook preBuild
-      norm=""
-      bold=""
-      green=""
-      boldgreen=""
-      if [[ "${colors}" == "always" ]]; then
-        norm="$(printf '\033[0m')" #returns to "normal"
-        bold="$(printf '\033[0;1m')" #set bold
-        green="$(printf '\033[0;32m')" #set green
-        boldgreen="$(printf '\033[0;1;32m')" #set bold, and set green.
-      fi
-      ${echo_build_heading colors}
-      ${noisily colors verbose}
-
-      build_lib() {
-         lib_src=$1
-         echo_build_heading $lib_src ${libName}
-
-         noisily rustc --crate-name $CRATE_NAME $lib_src --crate-type ${crateType} \
-           ${rustcOpts} ${rustcMeta} ${crateFeatures} --out-dir target/lib \
-           --emit=dep-info,link -L dependency=target/deps ${deps} --cap-lints allow \
-           $BUILD_OUT_DIR $EXTRA_BUILD $EXTRA_FEATURES --color ${colors}
-
-         EXTRA_LIB=" --extern $CRATE_NAME=target/lib/lib$CRATE_NAME-${metadata}.rlib"
-         if [ -e target/deps/lib$CRATE_NAME-${metadata}${stdenv.hostPlatform.extensions.sharedLibrary} ]; then
-            EXTRA_LIB="$EXTRA_LIB --extern $CRATE_NAME=target/lib/lib$CRATE_NAME-${metadata}${stdenv.hostPlatform.extensions.sharedLibrary}"
-         fi
-      }
-
-      build_bin() {
-        crate_name=$1
-        crate_name_=$(echo $crate_name | sed -e "s/-/_/g")
-        main_file=""
-        if [[ ! -z $2 ]]; then
-          main_file=$2
-        fi
-        echo_build_heading $@
-        noisily rustc --crate-name $crate_name_ $main_file --crate-type bin ${rustcOpts}\
-          ${crateFeatures} --out-dir target/bin --emit=dep-info,link -L dependency=target/deps \
-          $LINK ${deps}$EXTRA_LIB --cap-lints allow \
-          $BUILD_OUT_DIR $EXTRA_BUILD $EXTRA_FEATURES --color ${colors}
-        if [ "$crate_name_" != "$crate_name" ]; then
-          mv target/bin/$crate_name_ target/bin/$crate_name
-        fi
-      }
-
-
-      EXTRA_LIB=""
-      CRATE_NAME=$(echo ${libName} | sed -e "s/-/_/g")
-
-      if [[ -e target/link_ ]]; then
-        EXTRA_BUILD="$(cat target/link_) $EXTRA_BUILD"
-      fi
-
-      if [[ -e "${libPath}" ]]; then
-         build_lib ${libPath}
-      elif [[ -e src/lib.rs ]]; then
-         build_lib src/lib.rs
-      elif [[ -e src/${libName}.rs ]]; then
-         build_lib src/${libName}.rs
-      fi
-
-      echo "$EXTRA_LINK_SEARCH" | while read i; do
-         if [[ ! -z "$i" ]]; then
-           for lib in $i; do
-             echo "-L $lib" >> target/link
-             L=$(echo $lib | sed -e "s#$(pwd)/target/build#$out/lib#")
-             echo "-L $L" >> target/link.final
-           done
-         fi
-      done
-      echo "$EXTRA_LINK" | while read i; do
-         if [[ ! -z "$i" ]]; then
-           for lib in $i; do
-             echo "-l $lib" >> target/link
-             echo "-l $lib" >> target/link.final
-           done
-         fi
-      done
-
-      if [[ -e target/link ]]; then
-         sort -u target/link.final > target/link.final.sorted
-         mv target/link.final.sorted target/link.final
-         sort -u target/link > target/link.sorted
-         mv target/link.sorted target/link
-
-         tr '\n' ' ' < target/link > target/link_
-         LINK=$(cat target/link_)
-       fi
-
-      mkdir -p target/bin
-      echo "${crateBin}" | sed -n 1'p' | tr ',' '\n' | while read BIN; do
-         if [[ ! -z "$BIN" ]]; then
-           build_bin $BIN
-         fi
-      done
-      ${lib.optionalString (crateBin == "") ''
-        if [[ -e src/main.rs ]]; then
-          build_bin ${crateName} src/main.rs
-        fi
-        for i in src/bin/*.rs; do #*/
-          build_bin "$(basename $i .rs)" "$i"
-        done
-      ''}
-      # Remove object files to avoid "wrong ELF type"
-      find target -type f -name "*.o" -print0 | xargs -0 rm -f
-    '' + finalBins + ''
-      runHook postBuild
-    '';
-
-    installCrate = crateName: metadata: ''
-      runHook preInstall
-      mkdir -p $out
-      if [[ -s target/env ]]; then
-        cp target/env $out/env
-      fi
-      if [[ -s target/link.final ]]; then
-        mkdir -p $out/lib
-        cp target/link.final $out/lib/link
-      fi
-      if [[ "$(ls -A target/lib)" ]]; then
-        mkdir -p $out/lib
-        cp target/lib/* $out/lib #*/
-        for lib in $out/lib/*.so $out/lib/*.dylib; do #*/
-          ln -s $lib $(echo $lib | sed -e "s/-${metadata}//")
-        done
-      fi
-      if [[ "$(ls -A target/build)" ]]; then # */
-        mkdir -p $out/lib
-        cp -r target/build/* $out/lib # */
-      fi
-      if [[ "$(ls -A target/bin)" ]]; then
-        mkdir -p $out/bin
-        cp -P target/bin/* $out/bin # */
-      fi
-      runHook postInstall
-    '';
-in
-
-crate_: lib.makeOverridable ({ rust, release, verbose, features, buildInputs, crateOverrides,
-  dependencies, buildDependencies,
-  extraRustcOpts,
-  preUnpack, postUnpack, prePatch, patches, postPatch,
-  preConfigure, postConfigure, preBuild, postBuild, preInstall, postInstall }:
-
-let crate = crate_ // (lib.attrByPath [ crate_.crateName ] (attr: {}) crateOverrides crate_);
-    dependencies_ = dependencies;
-    buildDependencies_ = buildDependencies;
-    processedAttrs = [
-      "src" "buildInputs" "crateBin" "crateLib" "libName" "libPath"
-      "buildDependencies" "dependencies" "features"
-      "crateName" "version" "build" "authors" "colors"
-    ];
-    extraDerivationAttrs = lib.filterAttrs (n: v: ! lib.elem n processedAttrs) crate;
-    buildInputs_ = buildInputs;
-in
-stdenv.mkDerivation (rec {
-
-    inherit (crate) crateName;
-    inherit preUnpack postUnpack prePatch patches postPatch preConfigure postConfigure preBuild postBuild preInstall postInstall;
-
-    src = if lib.hasAttr "src" crate then
-        crate.src
-      else
-        fetchCrate { inherit (crate) crateName version sha256; };
-    name = "rust_${crate.crateName}-${crate.version}";
-    buildInputs = [ rust ncurses ] ++ (crate.buildInputs or []) ++ buildInputs_;
-    dependencies =
-      builtins.map
-        (dep: dep.override { rust = rust; release = release; verbose = verbose; crateOverrides = crateOverrides; })
-        dependencies_;
-
-    buildDependencies =
-      builtins.map
-        (dep: dep.override { rust = rust; release = release; verbose = verbose; crateOverrides = crateOverrides; })
-        buildDependencies_;
-
-    completeDeps = lib.lists.unique (dependencies ++ lib.lists.concatMap (dep: dep.completeDeps) dependencies);
-    completeBuildDeps = lib.lists.unique (
-      buildDependencies
-      ++ lib.lists.concatMap (dep: dep.completeBuildDeps ++ dep.completeDeps) buildDependencies
-    );
-
-    crateFeatures = if crate ? features then
-        lib.concatMapStringsSep " " (f: "--cfg feature=\\\"${f}\\\"") (crate.features ++ features) #"
-      else "";
-
-    libName = if crate ? libName then crate.libName else crate.crateName;
-    libPath = if crate ? libPath then crate.libPath else "";
-
-    depsMetadata = builtins.foldl' (str: dep: str + dep.metadata) "" (dependencies ++ buildDependencies);
-    metadata = builtins.substring 0 10 (builtins.hashString "sha256" (crateName + "-" + crateVersion + "___" + toString crateFeatures + "___" + depsMetadata ));
-
-    crateBin = if crate ? crateBin then
-       builtins.foldl' (bins: bin:
-          let name =
-              lib.strings.replaceStrings ["-"] ["_"]
-                 (if bin ? name then bin.name else crateName);
-              path = if bin ? path then bin.path else "src/main.rs";
-          in
-          bins + (if bin == "" then "" else ",") + "${name} ${path}"
-
-       ) "" crate.crateBin
-    else "";
-
-    finalBins = if crate ? crateBin then
-       builtins.foldl' (bins: bin:
-          let name = lib.strings.replaceStrings ["-"] ["_"]
-                      (if bin ? name then bin.name else crateName);
-              new_name = if bin ? name then bin.name else crateName;
-          in
-          if name == new_name then bins else
-          (bins + "mv target/bin/${name} target/bin/${new_name};")
-
-       ) "" crate.crateBin
-    else "";
-
-    build = crate.build or "";
-    workspace_member = crate.workspace_member or ".";
-    crateVersion = crate.version;
-    crateAuthors = if crate ? authors && lib.isList crate.authors then crate.authors else [];
-    crateType =
-      if lib.attrByPath ["procMacro"] false crate then "proc-macro" else
-      if lib.attrByPath ["plugin"] false crate then "dylib" else
-      (crate.type or "lib");
-    colors = lib.attrByPath [ "colors" ] "always" crate;
-    extraLinkFlags = builtins.concatStringsSep " " (crate.extraLinkFlags or []);
-    configurePhase = configureCrate {
-      inherit crateName buildDependencies completeDeps completeBuildDeps
-              crateFeatures libName build workspace_member release libPath crateVersion
-              extraLinkFlags
-              crateAuthors verbose colors;
-    };
-    extraRustcOpts = if crate ? extraRustcOpts then crate.extraRustcOpts else [];
-    buildPhase = buildCrate {
-      inherit crateName dependencies
-              crateFeatures libName release libPath crateType
-              metadata crateBin finalBins verbose colors
-              extraRustcOpts;
-    };
-    installPhase = installCrate crateName metadata;
-
-} // extraDerivationAttrs
-)) {
-  rust = rustc;
-  release = crate_.release or true;
-  verbose = crate_.verbose or true;
-  extraRustcOpts = [];
-  features = [];
-  buildInputs = [];
-  crateOverrides = defaultCrateOverrides;
-  preUnpack = crate_.preUnpack or "";
-  postUnpack = crate_.postUnpack or "";
-  prePatch = crate_.prePatch or "";
-  patches = crate_.patches or [];
-  postPatch = crate_.postPatch or "";
-  preConfigure = crate_.preConfigure or "";
-  postConfigure = crate_.postConfigure or "";
-  preBuild = crate_.preBuild or "";
-  postBuild = crate_.postBuild or "";
-  preInstall = crate_.preInstall or "";
-  postInstall = crate_.postInstall or "";
-  dependencies = crate_.dependencies or [];
-  buildDependencies = crate_.buildDependencies or [];
-}
diff --git a/pkgs/build-support/rust/build-rust-crate/build-crate.nix b/pkgs/build-support/rust/build-rust-crate/build-crate.nix
new file mode 100644
index 000000000000..f65118ba4a64
--- /dev/null
+++ b/pkgs/build-support/rust/build-rust-crate/build-crate.nix
@@ -0,0 +1,157 @@
+{ lib, stdenv, echo_build_heading, noisily, makeDeps }:
+{ crateName,
+  dependencies,
+  crateFeatures, libName, release, libPath,
+  crateType, metadata, crateBin,
+  extraRustcOpts, verbose, colors }:
+
+  let
+
+    deps = makeDeps dependencies;
+        rustcOpts =
+          lib.lists.foldl' (opts: opt: opts + " " + opt)
+            (if release then "-C opt-level=3" else "-C debuginfo=2")
+            (["-C codegen-units=1"] ++ extraRustcOpts);
+        rustcMeta = "-C metadata=${metadata} -C extra-filename=-${metadata}";
+  in ''
+    runHook preBuild
+    norm=""
+    bold=""
+    green=""
+    boldgreen=""
+    if [[ "${colors}" == "always" ]]; then
+      norm="$(printf '\033[0m')" #returns to "normal"
+      bold="$(printf '\033[0;1m')" #set bold
+      green="$(printf '\033[0;32m')" #set green
+      boldgreen="$(printf '\033[0;1;32m')" #set bold, and set green.
+    fi
+    ${echo_build_heading colors}
+    ${noisily colors verbose}
+
+    build_lib() {
+       lib_src=$1
+       echo_build_heading $lib_src ${libName}
+
+       noisily rustc --crate-name $CRATE_NAME $lib_src --crate-type ${crateType} \
+         ${rustcOpts} ${rustcMeta} ${crateFeatures} --out-dir target/lib \
+         --emit=dep-info,link -L dependency=target/deps ${deps} --cap-lints allow \
+         $BUILD_OUT_DIR $EXTRA_BUILD $EXTRA_FEATURES --color ${colors}
+
+       EXTRA_LIB=" --extern $CRATE_NAME=target/lib/lib$CRATE_NAME-${metadata}.rlib"
+       if [ -e target/deps/lib$CRATE_NAME-${metadata}${stdenv.hostPlatform.extensions.sharedLibrary} ]; then
+          EXTRA_LIB="$EXTRA_LIB --extern $CRATE_NAME=target/lib/lib$CRATE_NAME-${metadata}${stdenv.hostPlatform.extensions.sharedLibrary}"
+       fi
+    }
+
+    build_bin() {
+      crate_name=$1
+      crate_name_=$(echo $crate_name | sed -e "s/-/_/g")
+      main_file=""
+      if [[ ! -z $2 ]]; then
+        main_file=$2
+      fi
+      echo_build_heading $@
+      noisily rustc --crate-name $crate_name_ $main_file --crate-type bin ${rustcOpts}\
+        ${crateFeatures} --out-dir target/bin --emit=dep-info,link -L dependency=target/deps \
+        $LINK ${deps}$EXTRA_LIB --cap-lints allow \
+        $BUILD_OUT_DIR $EXTRA_BUILD $EXTRA_FEATURES --color ${colors}
+      if [ "$crate_name_" != "$crate_name" ]; then
+        mv target/bin/$crate_name_ target/bin/$crate_name
+      fi
+    }
+
+
+    EXTRA_LIB=""
+    CRATE_NAME=$(echo ${libName} | sed -e "s/-/_/g")
+
+    if [[ -e target/link_ ]]; then
+      EXTRA_BUILD="$(cat target/link_) $EXTRA_BUILD"
+    fi
+
+    if [[ -e "${libPath}" ]]; then
+       build_lib ${libPath}
+    elif [[ -e src/lib.rs ]]; then
+       build_lib src/lib.rs
+    elif [[ -e src/${libName}.rs ]]; then
+       build_lib src/${libName}.rs
+    fi
+
+    echo "$EXTRA_LINK_SEARCH" | while read i; do
+       if [[ ! -z "$i" ]]; then
+         for lib in $i; do
+           echo "-L $lib" >> target/link
+           L=$(echo $lib | sed -e "s#$(pwd)/target/build#$out/lib#")
+           echo "-L $L" >> target/link.final
+         done
+       fi
+    done
+    echo "$EXTRA_LINK" | while read i; do
+       if [[ ! -z "$i" ]]; then
+         for lib in $i; do
+           echo "-l $lib" >> target/link
+           echo "-l $lib" >> target/link.final
+         done
+       fi
+    done
+
+    if [[ -e target/link ]]; then
+       sort -u target/link.final > target/link.final.sorted
+       mv target/link.final.sorted target/link.final
+       sort -u target/link > target/link.sorted
+       mv target/link.sorted target/link
+
+       tr '\n' ' ' < target/link > target/link_
+       LINK=$(cat target/link_)
+    fi
+
+    mkdir -p target/bin
+    printf "%s\n" "${crateBin}" | head -n1 | tr -s ',' '\n' | while read -r BIN_NAME BIN_PATH; do
+      # filter empty entries / empty "lines"
+      if [[ -z "$BIN_NAME" ]]; then
+           continue
+      fi
+
+      if [[ -z "$BIN_PATH" ]]; then
+        # heuristic to "guess" the correct source file as found in cargo:
+        # https://github.com/rust-lang/cargo/blob/90fc9f620190d5fa3c80b0c8c65a1e1361e6b8ae/src/cargo/util/toml/targets.rs#L308-L325
+
+        # the first two cases are the "new" default IIRC
+        BIN_NAME_=$(echo $BIN_NAME | sed -e 's/-/_/g')
+        FILES=( "src/bin/$BIN_NAME.rs" "src/bin/$BIN_NAME/main.rs" "src/bin/$BIN_NAME_.rs" "src/bin/$BIN_NAME_/main.rs" "src/bin/main.rs" "src/main.rs" )
+
+        if ! [ -e "${libPath}" -o -e src/lib.rs -o -e "src/${libName}.rs" ]; then
+          # if this is not a library the following path is also valid
+          FILES=( "src/$BIN_NAME.rs" "src/$BIN_NAME_.rs" "''${FILES[@]}" )
+        fi
+
+        for file in "''${FILES[@]}";
+        do
+          echo "checking file $file"
+          # first file that exists wins
+          if [[ -e "$file" ]]; then
+                  BIN_PATH="$file"
+                  break
+          fi
+        done
+
+        if [[ -z "$BIN_PATH" ]]; then
+          echo "failed to find file for binary target: $BIN_NAME" >&2
+          exit 1
+        fi
+      fi
+      build_bin "$BIN_NAME" "$BIN_PATH"
+    done
+
+
+    ${lib.optionalString (crateBin == "") ''
+      if [[ -e src/main.rs ]]; then
+        build_bin ${crateName} src/main.rs
+      fi
+      for i in src/bin/*.rs; do #*/
+        build_bin "$(basename $i .rs)" "$i"
+      done
+    ''}
+    # Remove object files to avoid "wrong ELF type"
+    find target -type f -name "*.o" -print0 | xargs -0 rm -f
+    runHook postBuild
+  ''
diff --git a/pkgs/build-support/rust/build-rust-crate/configure-crate.nix b/pkgs/build-support/rust/build-rust-crate/configure-crate.nix
new file mode 100644
index 000000000000..37fef2abd774
--- /dev/null
+++ b/pkgs/build-support/rust/build-rust-crate/configure-crate.nix
@@ -0,0 +1,129 @@
+{ lib, stdenv, echo_build_heading, noisily, makeDeps }:
+{ build, buildDependencies, colors, completeBuildDeps, completeDeps, crateAuthors, crateFeatures, crateName, crateVersion, extraLinkFlags, libName, libPath, release, target_os, verbose, workspace_member }:
+let version_ = lib.splitString "-" crateVersion;
+    versionPre = if lib.tail version_ == [] then "" else builtins.elemAt version_ 1;
+    version = lib.splitString "." (lib.head version_);
+    rustcOpts = (if release then "-C opt-level=3" else "-C debuginfo=2");
+    buildDeps = makeDeps buildDependencies;
+    authors = lib.concatStringsSep ":" crateAuthors;
+    optLevel = if release then 3 else 0;
+    completeDepsDir = lib.concatStringsSep " " completeDeps;
+    completeBuildDepsDir = lib.concatStringsSep " " completeBuildDeps;
+in ''
+  cd ${workspace_member}
+  runHook preConfigure
+  ${echo_build_heading colors}
+  ${noisily colors verbose}
+  symlink_dependency() {
+    # $1 is the nix-store path of a dependency
+    # $2 is the target path
+    i=$1
+    ln -s -f $i/lib/*.rlib $2 #*/
+    ln -s -f $i/lib/*.so $i/lib/*.dylib $2 #*/
+    if [ -e "$i/lib/link" ]; then
+        cat $i/lib/link >> target/link
+        cat $i/lib/link >> target/link.final
+    fi
+    if [ -e $i/env ]; then
+        source $i/env
+    fi
+  }
+
+  mkdir -p target/{deps,lib,build,buildDeps}
+  chmod uga+w target -R
+  echo ${extraLinkFlags} > target/link
+  echo ${extraLinkFlags} > target/link.final
+  for i in ${completeDepsDir}; do
+    symlink_dependency $i target/deps
+  done
+  for i in ${completeBuildDepsDir}; do
+     symlink_dependency $i target/buildDeps
+  done
+  if [[ -e target/link ]]; then
+    sort -u target/link > target/link.sorted
+    mv target/link.sorted target/link
+    sort -u target/link.final > target/link.final.sorted
+    mv target/link.final.sorted target/link.final
+    tr '\n' ' ' < target/link > target/link_
+  fi
+  EXTRA_BUILD=""
+  BUILD_OUT_DIR=""
+  export CARGO_PKG_NAME=${crateName}
+  export CARGO_PKG_VERSION=${crateVersion}
+  export CARGO_PKG_AUTHORS="${authors}"
+
+  export CARGO_CFG_TARGET_ARCH=${stdenv.hostPlatform.parsed.cpu.name}
+  export CARGO_CFG_TARGET_OS=${target_os}
+  export CARGO_CFG_TARGET_FAMILY="unix"
+  export CARGO_CFG_UNIX=1
+  export CARGO_CFG_TARGET_ENV="gnu"
+  export CARGO_CFG_TARGET_ENDIAN=${if stdenv.hostPlatform.parsed.cpu.significantByte.name == "littleEndian" then "little" else "big"}
+  export CARGO_CFG_TARGET_POINTER_WIDTH=${toString stdenv.hostPlatform.parsed.cpu.bits}
+  export CARGO_CFG_TARGET_VENDOR=${stdenv.hostPlatform.parsed.vendor.name}
+
+  export CARGO_MANIFEST_DIR="."
+  export DEBUG="${toString (!release)}"
+  export OPT_LEVEL="${toString optLevel}"
+  export TARGET="${stdenv.hostPlatform.config}"
+  export HOST="${stdenv.hostPlatform.config}"
+  export PROFILE=${if release then "release" else "debug"}
+  export OUT_DIR=$(pwd)/target/build/${crateName}.out
+  export CARGO_PKG_VERSION_MAJOR=${builtins.elemAt version 0}
+  export CARGO_PKG_VERSION_MINOR=${builtins.elemAt version 1}
+  export CARGO_PKG_VERSION_PATCH=${builtins.elemAt version 2}
+  if [[ -n "${versionPre}" ]]; then
+    export CARGO_PKG_VERSION_PRE="${versionPre}"
+  fi
+
+  BUILD=""
+  if [[ ! -z "${build}" ]] ; then
+     BUILD=${build}
+  elif [[ -e "build.rs" ]]; then
+     BUILD="build.rs"
+  fi
+  if [[ ! -z "$BUILD" ]] ; then
+     echo_build_heading "$BUILD" ${libName}
+     mkdir -p target/build/${crateName}
+     EXTRA_BUILD_FLAGS=""
+     if [ -e target/link_ ]; then
+       EXTRA_BUILD_FLAGS=$(cat target/link_)
+     fi
+     if [ -e target/link.build ]; then
+       EXTRA_BUILD_FLAGS="$EXTRA_BUILD_FLAGS $(cat target/link.build)"
+     fi
+     noisily rustc --crate-name build_script_build $BUILD --crate-type bin ${rustcOpts} \
+       ${crateFeatures} --out-dir target/build/${crateName} --emit=dep-info,link \
+       -L dependency=target/buildDeps ${buildDeps} --cap-lints allow $EXTRA_BUILD_FLAGS --color ${colors}
+
+     mkdir -p target/build/${crateName}.out
+     export RUST_BACKTRACE=1
+     BUILD_OUT_DIR="-L $OUT_DIR"
+     mkdir -p $OUT_DIR
+     target/build/${crateName}/build_script_build > target/build/${crateName}.opt
+     set +e
+     EXTRA_BUILD=$(sed -n "s/^cargo:rustc-flags=\(.*\)/\1/p" target/build/${crateName}.opt | tr '\n' ' ' | sort -u)
+     EXTRA_FEATURES=$(sed -n "s/^cargo:rustc-cfg=\(.*\)/--cfg \1/p" target/build/${crateName}.opt | tr '\n' ' ')
+     EXTRA_LINK=$(sed -n "s/^cargo:rustc-link-lib=\(.*\)/\1/p" target/build/${crateName}.opt | tr '\n' ' ' | sort -u)
+     EXTRA_LINK_SEARCH=$(sed -n "s/^cargo:rustc-link-search=\(.*\)/\1/p" target/build/${crateName}.opt | tr '\n' ' ' | sort -u)
+
+     for env in $(sed -n "s/^cargo:rustc-env=\(.*\)/\1/p" target/build/${crateName}.opt); do
+       export $env
+     done
+
+     CRATENAME=$(echo ${crateName} | sed -e "s/\(.*\)-sys$/\U\1/")
+     grep -P "^cargo:(?!(rustc-|warning=|rerun-if-changed=|rerun-if-env-changed))" target/build/${crateName}.opt \
+       | sed -e "s/cargo:\([^=]*\)=\(.*\)/export DEP_$(echo $CRATENAME)_\U\1\E=\2/" > target/env
+
+     set -e
+     if [[ -n "$(ls target/build/${crateName}.out)" ]]; then
+
+        if [[ -e "${libPath}" ]]; then
+           cp -r target/build/${crateName}.out/* $(dirname ${libPath}) #*/
+        else
+           cp -r target/build/${crateName}.out/* src #*/
+        fi
+     fi
+  fi
+  runHook postConfigure
+''
+
diff --git a/pkgs/build-support/rust/build-rust-crate/default.nix b/pkgs/build-support/rust/build-rust-crate/default.nix
new file mode 100644
index 000000000000..a11cef9f1f46
--- /dev/null
+++ b/pkgs/build-support/rust/build-rust-crate/default.nix
@@ -0,0 +1,173 @@
+# Code for buildRustCrate, a Nix function that builds Rust code, just
+# like Cargo, but using Nix instead.
+#
+# This can be useful for deploying packages with NixOps, and to share
+# binary dependencies between projects.
+
+{ lib, stdenv, defaultCrateOverrides, fetchCrate, ncurses, rustc  }:
+
+let
+    # This doesn't appear to be officially documented anywhere yet.
+    # See https://github.com/rust-lang-nursery/rust-forge/issues/101.
+    target_os = if stdenv.hostPlatform.isDarwin
+      then "macos"
+      else stdenv.hostPlatform.parsed.kernel.name;
+
+    makeDeps = dependencies:
+      (lib.concatMapStringsSep " " (dep:
+        let extern = lib.strings.replaceStrings ["-"] ["_"] dep.libName; in
+        (if dep.crateType == "lib" then
+           " --extern ${extern}=${dep.out}/lib/lib${extern}-${dep.metadata}.rlib"
+         else
+           " --extern ${extern}=${dep.out}/lib/lib${extern}-${dep.metadata}${stdenv.hostPlatform.extensions.sharedLibrary}")
+      ) dependencies);
+
+    echo_build_heading = colors: ''
+      echo_build_heading() {
+       start=""
+       end=""
+       if [[ "${colors}" == "always" ]]; then
+         start="$(printf '\033[0;1;32m')" #set bold, and set green.
+         end="$(printf '\033[0m')" #returns to "normal"
+       fi
+       if (( $# == 1 )); then
+         echo "$start""Building $1""$end"
+       else
+         echo "$start""Building $1 ($2)""$end"
+       fi
+      }
+    '';
+    noisily = colors: verbose: ''
+      noisily() {
+        start=""
+        end=""
+        if [[ "${colors}" == "always" ]]; then
+          start="$(printf '\033[0;1;32m')" #set bold, and set green.
+          end="$(printf '\033[0m')" #returns to "normal"
+        fi
+	${lib.optionalString verbose ''
+            echo -n "$start"Running "$end"
+            echo $@
+	''}
+	$@
+      }
+    '';
+
+    configureCrate = import ./configure-crate.nix { inherit lib stdenv echo_build_heading noisily makeDeps; };
+    buildCrate = import ./build-crate.nix { inherit lib stdenv echo_build_heading noisily makeDeps; };
+    installCrate = import ./install-crate.nix;
+
+    in
+
+crate_: lib.makeOverridable ({ rust, release, verbose, features, buildInputs, crateOverrides,
+  dependencies, buildDependencies,
+  extraRustcOpts,
+  preUnpack, postUnpack, prePatch, patches, postPatch,
+  preConfigure, postConfigure, preBuild, postBuild, preInstall, postInstall }:
+
+let crate = crate_ // (lib.attrByPath [ crate_.crateName ] (attr: {}) crateOverrides crate_);
+    dependencies_ = dependencies;
+    buildDependencies_ = buildDependencies;
+    processedAttrs = [
+      "src" "buildInputs" "crateBin" "crateLib" "libName" "libPath"
+      "buildDependencies" "dependencies" "features"
+      "crateName" "version" "build" "authors" "colors"
+    ];
+    extraDerivationAttrs = lib.filterAttrs (n: v: ! lib.elem n processedAttrs) crate;
+    buildInputs_ = buildInputs;
+in
+stdenv.mkDerivation (rec {
+
+    inherit (crate) crateName;
+    inherit preUnpack postUnpack prePatch patches postPatch preConfigure postConfigure preBuild postBuild preInstall postInstall;
+
+    src = if lib.hasAttr "src" crate then
+        crate.src
+      else
+        fetchCrate { inherit (crate) crateName version sha256; };
+    name = "rust_${crate.crateName}-${crate.version}";
+    buildInputs = [ rust ncurses ] ++ (crate.buildInputs or []) ++ buildInputs_;
+    dependencies =
+      builtins.map
+        (dep: dep.override { rust = rust; release = release; verbose = verbose; crateOverrides = crateOverrides; })
+        dependencies_;
+
+    buildDependencies =
+      builtins.map
+        (dep: dep.override { rust = rust; release = release; verbose = verbose; crateOverrides = crateOverrides; })
+        buildDependencies_;
+
+    completeDeps = lib.lists.unique (dependencies ++ lib.lists.concatMap (dep: dep.completeDeps) dependencies);
+    completeBuildDeps = lib.lists.unique (
+      buildDependencies
+      ++ lib.lists.concatMap (dep: dep.completeBuildDeps ++ dep.completeDeps) buildDependencies
+    );
+
+    crateFeatures = if crate ? features then
+        lib.concatMapStringsSep " " (f: "--cfg feature=\\\"${f}\\\"") (crate.features ++ features) #"
+      else "";
+
+    libName = if crate ? libName then crate.libName else crate.crateName;
+    libPath = if crate ? libPath then crate.libPath else "";
+
+    depsMetadata = builtins.foldl' (str: dep: str + dep.metadata) "" (dependencies ++ buildDependencies);
+    metadata = builtins.substring 0 10 (builtins.hashString "sha256" (crateName + "-" + crateVersion + "___" + toString crateFeatures + "___" + depsMetadata ));
+
+    crateBin = if crate ? crateBin then
+       builtins.foldl' (bins: bin: let
+            name = (if bin ? name then bin.name else crateName);
+            path = if bin ? path then bin.path else "";
+          in
+          bins + (if bin == "" then "" else ",") + "${name} ${path}"
+
+       ) "" crate.crateBin
+    else "";
+
+    build = crate.build or "";
+    workspace_member = crate.workspace_member or ".";
+    crateVersion = crate.version;
+    crateAuthors = if crate ? authors && lib.isList crate.authors then crate.authors else [];
+    crateType =
+      if lib.attrByPath ["procMacro"] false crate then "proc-macro" else
+      if lib.attrByPath ["plugin"] false crate then "dylib" else
+      (crate.type or "lib");
+    colors = lib.attrByPath [ "colors" ] "always" crate;
+    extraLinkFlags = builtins.concatStringsSep " " (crate.extraLinkFlags or []);
+    configurePhase = configureCrate {
+      inherit crateName buildDependencies completeDeps completeBuildDeps
+              crateFeatures libName build workspace_member release libPath crateVersion
+              extraLinkFlags
+              crateAuthors verbose colors target_os;
+    };
+    extraRustcOpts = if crate ? extraRustcOpts then crate.extraRustcOpts else [];
+    buildPhase = buildCrate {
+      inherit crateName dependencies
+              crateFeatures libName release libPath crateType
+              metadata crateBin verbose colors
+              extraRustcOpts;
+    };
+    installPhase = installCrate crateName metadata;
+
+} // extraDerivationAttrs
+)) {
+  rust = rustc;
+  release = crate_.release or true;
+  verbose = crate_.verbose or true;
+  extraRustcOpts = [];
+  features = [];
+  buildInputs = [];
+  crateOverrides = defaultCrateOverrides;
+  preUnpack = crate_.preUnpack or "";
+  postUnpack = crate_.postUnpack or "";
+  prePatch = crate_.prePatch or "";
+  patches = crate_.patches or [];
+  postPatch = crate_.postPatch or "";
+  preConfigure = crate_.preConfigure or "";
+  postConfigure = crate_.postConfigure or "";
+  preBuild = crate_.preBuild or "";
+  postBuild = crate_.postBuild or "";
+  preInstall = crate_.preInstall or "";
+  postInstall = crate_.postInstall or "";
+  dependencies = crate_.dependencies or [];
+  buildDependencies = crate_.buildDependencies or [];
+}
diff --git a/pkgs/build-support/rust/build-rust-crate/install-crate.nix b/pkgs/build-support/rust/build-rust-crate/install-crate.nix
new file mode 100644
index 000000000000..c41df34ca39b
--- /dev/null
+++ b/pkgs/build-support/rust/build-rust-crate/install-crate.nix
@@ -0,0 +1,28 @@
+crateName: metadata:
+''
+  runHook preInstall
+  mkdir -p $out
+  if [[ -s target/env ]]; then
+    cp target/env $out/env
+  fi
+  if [[ -s target/link.final ]]; then
+    mkdir -p $out/lib
+    cp target/link.final $out/lib/link
+  fi
+  if [[ "$(ls -A target/lib)" ]]; then
+    mkdir -p $out/lib
+    cp target/lib/* $out/lib #*/
+    for lib in $out/lib/*.so $out/lib/*.dylib; do #*/
+      ln -s $lib $(echo $lib | sed -e "s/-${metadata}//")
+    done
+  fi
+  if [[ "$(ls -A target/build)" ]]; then # */
+    mkdir -p $out/lib
+    cp -r target/build/* $out/lib # */
+  fi
+  if [[ "$(ls -A target/bin)" ]]; then
+    mkdir -p $out/bin
+    cp -P target/bin/* $out/bin # */
+  fi
+  runHook postInstall
+''
diff --git a/pkgs/build-support/rust/build-rust-crate/test/brotli-crates.nix b/pkgs/build-support/rust/build-rust-crate/test/brotli-crates.nix
new file mode 100644
index 000000000000..068cc5a98843
--- /dev/null
+++ b/pkgs/build-support/rust/build-rust-crate/test/brotli-crates.nix
@@ -0,0 +1,95 @@
+{ lib, buildPlatform, buildRustCrate, fetchgit }:
+let kernel = buildPlatform.parsed.kernel.name;
+    abi = buildPlatform.parsed.abi.name;
+    include = includedFiles: src: builtins.filterSource (path: type:
+      lib.lists.any (f:
+        let p = toString (src + ("/" + f)); in
+        (path == p) || (type == "directory" && lib.strings.hasPrefix path p)
+      ) includedFiles
+    ) src;
+    updateFeatures = f: up: functions: builtins.deepSeq f (lib.lists.foldl' (features: fun: fun features) (lib.attrsets.recursiveUpdate f up) functions);
+    mapFeatures = features: map (fun: fun { features = features; });
+    mkFeatures = feat: lib.lists.foldl (features: featureName:
+      if feat.${featureName} or false then
+        [ featureName ] ++ features
+      else
+        features
+    ) [] (builtins.attrNames feat);
+in
+rec {
+    alloc_no_stdlib_1_3_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "alloc-no-stdlib";
+    version = "1.3.0";
+    authors = [ "Daniel Reiter Horn <danielrh@dropbox.com>" ];
+    sha256 = "1jcp27pzmqdszgp80y484g4kwbjbg7x8a589drcwbxg0i8xwkir9";
+    crateBin = [ {  name = "example"; } ];
+    inherit dependencies buildDependencies features;
+  };
+  brotli_2_5_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "brotli";
+    version = "2.5.0";
+    authors = [ "Daniel Reiter Horn <danielrh@dropbox.com>" "The Brotli Authors" ];
+    sha256 = "1ynw4hkdwnp0kj30p86ls44ahv4s99258s019bqrq4mya8hlsb5b";
+    crateBin = [ {  name = "brotli"; } ];
+    inherit dependencies buildDependencies features;
+  };
+  brotli_decompressor_1_3_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "brotli-decompressor";
+    version = "1.3.1";
+    authors = [ "Daniel Reiter Horn <danielrh@dropbox.com>" "The Brotli Authors" ];
+    sha256 = "022g69q1xzwdj0130qm3fa4qwpn4q1jx3lc8yz0v0v201p7bm8fb";
+    crateBin = [ {  name = "brotli-decompressor"; } ];
+    inherit dependencies buildDependencies features;
+  };
+  alloc_no_stdlib_1_3_0 = { features?(alloc_no_stdlib_1_3_0_features {}) }: alloc_no_stdlib_1_3_0_ {
+    features = mkFeatures (features.alloc_no_stdlib_1_3_0 or {});
+  };
+  alloc_no_stdlib_1_3_0_features = f: updateFeatures f (rec {
+    alloc_no_stdlib_1_3_0.default = (f.alloc_no_stdlib_1_3_0.default or true);
+  }) [];
+  brotli_2_5_0 = { features?(brotli_2_5_0_features {}) }: brotli_2_5_0_ {
+    dependencies = mapFeatures features ([ alloc_no_stdlib_1_3_0 brotli_decompressor_1_3_1 ]);
+    features = mkFeatures (features.brotli_2_5_0 or {});
+  };
+  brotli_2_5_0_features = f: updateFeatures f (rec {
+    alloc_no_stdlib_1_3_0."no-stdlib" =
+      (f.alloc_no_stdlib_1_3_0."no-stdlib" or false) ||
+      (brotli_2_5_0."no-stdlib" or false) ||
+      (f.brotli_2_5_0."no-stdlib" or false);
+    alloc_no_stdlib_1_3_0.default = true;
+    brotli_2_5_0.default = (f.brotli_2_5_0.default or true);
+    brotli_decompressor_1_3_1."disable-timer" =
+      (f.brotli_decompressor_1_3_1."disable-timer" or false) ||
+      (brotli_2_5_0."disable-timer" or false) ||
+      (f.brotli_2_5_0."disable-timer" or false);
+    brotli_decompressor_1_3_1."no-stdlib" =
+      (f.brotli_decompressor_1_3_1."no-stdlib" or false) ||
+      (brotli_2_5_0."no-stdlib" or false) ||
+      (f.brotli_2_5_0."no-stdlib" or false);
+    brotli_decompressor_1_3_1.benchmark =
+      (f.brotli_decompressor_1_3_1.benchmark or false) ||
+      (brotli_2_5_0.benchmark or false) ||
+      (f.brotli_2_5_0.benchmark or false);
+    brotli_decompressor_1_3_1.default = true;
+    brotli_decompressor_1_3_1.seccomp =
+      (f.brotli_decompressor_1_3_1.seccomp or false) ||
+      (brotli_2_5_0.seccomp or false) ||
+      (f.brotli_2_5_0.seccomp or false);
+  }) [ alloc_no_stdlib_1_3_0_features brotli_decompressor_1_3_1_features ];
+  brotli_decompressor_1_3_1 = { features?(brotli_decompressor_1_3_1_features {}) }: brotli_decompressor_1_3_1_ {
+    dependencies = mapFeatures features ([ alloc_no_stdlib_1_3_0 ]);
+    features = mkFeatures (features.brotli_decompressor_1_3_1 or {});
+  };
+  brotli_decompressor_1_3_1_features = f: updateFeatures f (rec {
+    alloc_no_stdlib_1_3_0."no-stdlib" =
+      (f.alloc_no_stdlib_1_3_0."no-stdlib" or false) ||
+      (brotli_decompressor_1_3_1."no-stdlib" or false) ||
+      (f.brotli_decompressor_1_3_1."no-stdlib" or false);
+    alloc_no_stdlib_1_3_0.default = true;
+    alloc_no_stdlib_1_3_0.unsafe =
+      (f.alloc_no_stdlib_1_3_0.unsafe or false) ||
+      (brotli_decompressor_1_3_1.unsafe or false) ||
+      (f.brotli_decompressor_1_3_1.unsafe or false);
+    brotli_decompressor_1_3_1.default = (f.brotli_decompressor_1_3_1.default or true);
+  }) [ alloc_no_stdlib_1_3_0_features ];
+}
diff --git a/pkgs/build-support/rust/build-rust-crate/test/default.nix b/pkgs/build-support/rust/build-rust-crate/test/default.nix
new file mode 100644
index 000000000000..08f7238c1fda
--- /dev/null
+++ b/pkgs/build-support/rust/build-rust-crate/test/default.nix
@@ -0,0 +1,104 @@
+{ lib, stdenv, buildRustCrate, runCommand, writeTextFile, symlinkJoin, callPackage }:
+let
+  mkCrate = args: let
+      p = {
+        crateName = "nixtestcrate";
+        version = "0.1.0";
+        authors = [ "Test <test@example.com>" ];
+      } // args;
+    in buildRustCrate p;
+
+    mkFile = destination: text: writeTextFile {
+      name = "src";
+      destination = "/${destination}";
+      inherit text;
+  };
+
+  mkBin = name: mkFile name ''
+    use std::env;
+    fn main() {
+      let name: String = env::args().nth(0).unwrap();
+      println!("executed {}", name);
+    }
+  '';
+
+  mkLib = name: mkFile name "pub fn test() -> i32 { return 23; }";
+
+  mkTest = crateArgs: let
+    crate = mkCrate crateArgs;
+    binaries = map (v: ''"${v.name}"'') (crateArgs.crateBin or []);
+    isLib = crateArgs ? libName || crateArgs ? libPath;
+    crateName = crateArgs.crateName or "nixtestcrate";
+    libName = crateArgs.libName or crateName;
+
+    libTestBinary = if !isLib then null else mkCrate {
+      crateName = "run-test-${crateName}";
+      dependencies = [ crate ];
+      src = mkFile "src/main.rs" ''
+        extern crate ${libName};
+        fn main() {
+          assert_eq!(${libName}::test(), 23);
+        }
+      '';
+    };
+
+    in runCommand "run-buildRustCrate-${crateName}-test" {
+      nativeBuildInputs = [ crate ];
+    } ''
+      ${lib.concatStringsSep "\n" binaries}
+      ${lib.optionalString isLib ''
+          test -e ${crate}/lib/*.rlib || exit 1
+          ${libTestBinary}/bin/run-test-${crateName}
+      ''}
+      touch $out
+  '';
+  in rec {
+
+  tests = let
+    cases = {
+      libPath =  { libPath = "src/my_lib.rs"; src = mkLib "src/my_lib.rs"; };
+      srcLib =  { src = mkLib "src/lib.rs"; };
+      customLibName =  { libName = "test_lib"; src = mkLib "src/test_lib.rs"; };
+      customLibNameAndLibPath =  { libName = "test_lib"; libPath = "src/best-lib.rs"; src = mkLib "src/best-lib.rs"; };
+      crateBinWithPath =  { crateBin = [{ name = "test_binary1"; path = "src/foobar.rs"; }]; src = mkBin "src/foobar.rs"; };
+      crateBinNoPath1 =  { crateBin = [{ name = "my-binary2"; }]; src = mkBin "src/my_binary2.rs"; };
+      crateBinNoPath2 =  {
+        crateBin = [{ name = "my-binary3"; } { name = "my-binary4"; }];
+        src = symlinkJoin {
+          name = "buildRustCrateMultipleBinariesCase";
+          paths = [ (mkBin "src/bin/my_binary3.rs") (mkBin "src/bin/my_binary4.rs") ];
+        };
+      };
+      crateBinNoPath3 =  { crateBin = [{ name = "my-binary5"; }]; src = mkBin "src/bin/main.rs"; };
+      crateBinNoPath4 =  { crateBin = [{ name = "my-binary6"; }]; src = mkBin "src/main.rs";};
+    };
+    brotliCrates = (callPackage ./brotli-crates.nix {});
+  in lib.mapAttrs (key: value: mkTest (value // lib.optionalAttrs (!value?crateName) { crateName = key; })) cases // {
+    brotliTest = let
+      pkg = brotliCrates.brotli_2_5_0 {};
+    in runCommand "run-brotli-test-cmd" {
+      nativeBuildInputs = [ pkg ];
+    } ''
+      ${pkg}/bin/brotli -c ${pkg}/bin/brotli > /dev/null && touch $out
+    '';
+    allocNoStdLibTest = let
+      pkg = brotliCrates.alloc_no_stdlib_1_3_0 {};
+    in runCommand "run-alloc-no-stdlib-test-cmd" {
+      nativeBuildInputs = [ pkg ];
+    } ''
+      test -e ${pkg}/bin/example && touch $out
+    '';
+    brotliDecompressorTest = let
+      pkg = brotliCrates.brotli_decompressor_1_3_1 {};
+    in runCommand "run-brotli-decompressor-test-cmd" {
+      nativeBuildInputs = [ pkg ];
+    } ''
+      test -e ${pkg}/bin/brotli-decompressor && touch $out
+    '';
+  };
+  test = runCommand "run-buildRustCrate-tests" {
+    nativeBuildInputs = builtins.attrValues tests;
+  } "
+    touch $out
+  ";
+}
diff --git a/pkgs/build-support/skaware/build-skaware-package.nix b/pkgs/build-support/skaware/build-skaware-package.nix
new file mode 100644
index 000000000000..51921fdfbdc7
--- /dev/null
+++ b/pkgs/build-support/skaware/build-skaware-package.nix
@@ -0,0 +1,127 @@
+{ stdenv, fetchurl, writeScript, file }:
+let lib = stdenv.lib;
+in {
+  # : string
+  pname
+  # : string
+, version
+  # : string
+, sha256
+  # : string
+, description
+  # : list Platform
+, platforms ? lib.platforms.all
+  # : list string
+, outputs ? [ "bin" "lib" "dev" "doc" "out" ]
+  # TODO(Profpatsch): automatically infer most of these
+  # : list string
+, configureFlags
+  # mostly for moving and deleting files from the build directory
+  # : lines
+, postInstall
+  # : list Maintainer
+, maintainers ? []
+
+
+}:
+
+let
+
+  # File globs that can always be deleted
+  commonNoiseFiles = [
+    ".gitignore"
+    "Makefile"
+    "INSTALL"
+    "configure"
+    "patch-for-solaris"
+    "src/**/*"
+    "tools/**/*"
+    "package/**/*"
+    "config.mak"
+  ];
+
+  # File globs that should be moved to $doc
+  commonMetaFiles = [
+    "COPYING"
+    "AUTHORS"
+    "NEWS"
+    "CHANGELOG"
+    "README"
+    "README.*"
+  ];
+
+  globWith = stdenv.lib.concatMapStringsSep "\n";
+  rmNoise = globWith (f:
+    ''rm -rf ${f}'') commonNoiseFiles;
+  mvMeta = globWith
+    (f: ''mv ${f} "$DOCDIR" 2>/dev/null || true'')
+    commonMetaFiles;
+
+  # Move & remove actions, taking the package doc directory
+  commonFileActions = writeScript "common-file-actions.sh" ''
+    #!${stdenv.shell}
+    set -e
+    DOCDIR="$1"
+    shopt -s globstar extglob nullglob
+    ${rmNoise}
+    mkdir -p "$DOCDIR"
+    ${mvMeta}
+  '';
+
+
+in stdenv.mkDerivation {
+  name = "${pname}-${version}";
+
+  src = fetchurl {
+    url = "https://skarnet.org/software/${pname}/${pname}-${version}.tar.gz";
+    inherit sha256;
+  };
+
+  inherit outputs;
+
+  dontDisableStatic = true;
+  enableParallelBuilding = true;
+
+  configureFlags = configureFlags ++ [
+    "--enable-absolute-paths"
+    (if stdenv.isDarwin
+      then "--disable-shared"
+      else "--enable-shared")
+  ]
+    # On darwin, the target triplet from -dumpmachine includes version number,
+    # but skarnet.org software uses the triplet to test binary compatibility.
+    # Explicitly setting target ensures code can be compiled against a skalibs
+    # binary built on a different version of darwin.
+    # http://www.skarnet.org/cgi-bin/archive.cgi?1:mss:623:heiodchokfjdkonfhdph
+    ++ (lib.optional stdenv.isDarwin
+         "--build=${stdenv.hostPlatform.system}");
+
+  # TODO(Profpatsch): ensure that there is always a $doc output!
+  postInstall = ''
+    echo "Cleaning & moving common files"
+    mkdir -p $doc/share/doc/${pname}
+    ${commonFileActions} $doc/share/doc/${pname}
+
+    ${postInstall}
+  '';
+
+  postFixup = ''
+    echo "Checking for remaining source files"
+    rem=$(find -mindepth 1 -xtype f -print0 \
+           | tee $TMP/remaining-files)
+    if [[ "$rem" != "" ]]; then
+      echo "ERROR: These files should be either moved or deleted:"
+      cat $TMP/remaining-files | xargs -0 ${file}/bin/file
+      exit 1
+    fi
+  '';
+
+  meta = {
+    homepage = "https://skarnet.org/software/${pname}/";
+    inherit description platforms;
+    license = stdenv.lib.licenses.isc;
+    maintainers = with lib.maintainers;
+      [ pmahoney Profpatsch ] ++ maintainers;
+  };
+
+}
diff --git a/pkgs/build-support/vm/default.nix b/pkgs/build-support/vm/default.nix
index 67c67c881776..03b3fb1f9f27 100644
--- a/pkgs/build-support/vm/default.nix
+++ b/pkgs/build-support/vm/default.nix
@@ -990,8 +990,8 @@ rec {
       name = "debian-9.4-stretch-i386";
       fullName = "Debian 9.4 Stretch (i386)";
       packagesList = fetchurl {
-        url = mirror://debian/dists/stretch/main/binary-i386/Packages.xz;
-        sha256 = "05z5ccg4ysbrgallhai53sh83i0364w7a3fdq84dpv1li059jf10";
+        url = https://web.archive.org/web/20180912163509/http://ftp.debian.org/debian/dists/stretch/main/binary-i386/Packages.xz;
+        sha256 = "0flvn8zn7vk04p10ndf3aq0mdr8k2ic01g51aq4lsllkv8lmwzyh";
       };
       urlPrefix = mirror://debian;
       packages = commonDebianPackages;
@@ -1001,8 +1001,8 @@ rec {
       name = "debian-9.4-stretch-amd64";
       fullName = "Debian 9.4 Stretch (amd64)";
       packagesList = fetchurl {
-        url = mirror://debian/dists/stretch/main/binary-amd64/Packages.xz;
-        sha256 = "19j0c54b1b9lbk9fv2c2aswdh0s2c3klf97zrlmsz4hs8wm9jylq";
+        url = https://web.archive.org/web/20180912163152/http://ftp.debian.org/debian/dists/stretch/main/binary-amd64/Packages.xz;
+        sha256 = "11vnn9bba2jabixvabfbw9zparl326c88xn99di7pbr5xsnl15jm";
       };
       urlPrefix = mirror://debian;
       packages = commonDebianPackages;
diff --git a/pkgs/data/fonts/et-book/default.nix b/pkgs/data/fonts/et-book/default.nix
new file mode 100644
index 000000000000..58586ba7db65
--- /dev/null
+++ b/pkgs/data/fonts/et-book/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, fetchFromGitHub }:
+
+fetchFromGitHub rec {
+  rev = "7e8f02dadcc23ba42b491b39e5bdf16e7b383031";
+  name = "et-book-${builtins.substring 0 6 rev}";
+  owner = "edwardtufte";
+  repo = "et-book";
+  sha256 = "1bfb1l8k7fzgk2l8cikiyfn5x9m0fiwrnsbc1483p8w3qp58s5n2";
+
+  postFetch = ''
+    tar -xzf $downloadedFile
+    mkdir -p $out/share/fonts/truetype
+    cp -t $out/share/fonts/truetype et-book-${rev}/source/4-ttf/*.ttf
+  '';
+
+  meta = with stdenv.lib; {
+    description = "The typeface used in Edward Tufte’s books.";
+    license = licenses.mit;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ jethro ];
+  };
+}
diff --git a/pkgs/data/fonts/ibm-plex/default.nix b/pkgs/data/fonts/ibm-plex/default.nix
index fec45bf7bf26..ba214dd35fd0 100644
--- a/pkgs/data/fonts/ibm-plex/default.nix
+++ b/pkgs/data/fonts/ibm-plex/default.nix
@@ -1,7 +1,7 @@
 { lib, fetchzip }:
 
 let
-  version = "1.0.2";
+  version = "1.1.6";
 in fetchzip rec {
   name = "ibm-plex-${version}";
   url = "https://github.com/IBM/plex/releases/download/v${version}/OpenType.zip";
@@ -9,7 +9,7 @@ in fetchzip rec {
     mkdir -p $out/share/fonts
     unzip -j $downloadedFile \*.otf -d $out/share/fonts/opentype
   '';
-  sha256 = "1ixxm47lwsrc136z6cxkk5dm3svmvcvq0ya8q8ayvn68q5ijbh5m";
+  sha256 = "0n9qmh6v7gvrl1mfb0knygxlbkb78hvkdrppssx64m3pk4pxw85a";
 
   meta = with lib; {
     description = "IBM Plex Typeface";
diff --git a/pkgs/data/fonts/libertinus/default.nix b/pkgs/data/fonts/libertinus/default.nix
index b4ce653da637..2ee1e83691cc 100644
--- a/pkgs/data/fonts/libertinus/default.nix
+++ b/pkgs/data/fonts/libertinus/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "libertinus-${version}";
-  version = "6.4";
+  version = "6.6";
 
   src = fetchFromGitHub {
     rev    = "v${version}";
     owner  = "khaledhosny";
     repo   = "libertinus";
-    sha256 = "0acnq4vpplp2s7kdnhncz61diji3wmhca04g27yqpk03ahb40x9g";
+    sha256 = "0syagjmwy6q1ysncchl9bgyfrm7f6fghj1aipbr6md7l6gafz7ji";
   };
 
   installPhase = ''
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
 
   outputHashAlgo = "sha256";
   outputHashMode = "recursive";
-  outputHash = "0yn526kwb4xjyf6gvf0wflqi45z5dlzicycz2q003a6if5fgqcz3";
+  outputHash = "11pxb2zwvjlk06zbqrfv2pgwsl4awf68fak1ks4881i8xbl1910m";
 
   meta = with stdenv.lib; {
     description = "A fork of the Linux Libertine and Linux Biolinum fonts";
diff --git a/pkgs/data/fonts/medio/default.nix b/pkgs/data/fonts/medio/default.nix
index 8b484b3b5efd..aa805b6f0825 100644
--- a/pkgs/data/fonts/medio/default.nix
+++ b/pkgs/data/fonts/medio/default.nix
@@ -18,7 +18,7 @@ fetchzip rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = "http://dotcolon.net/font/{pname}/";
+    homepage = "http://dotcolon.net/font/${pname}/";
     description = "Serif font designed by Sora Sagano";
     longDescription = ''
       Medio is a serif font designed by Sora Sagano, based roughly
diff --git a/pkgs/data/fonts/pecita/default.nix b/pkgs/data/fonts/pecita/default.nix
index b57cf22569d2..a90ff42a8e2a 100644
--- a/pkgs/data/fonts/pecita/default.nix
+++ b/pkgs/data/fonts/pecita/default.nix
@@ -1,18 +1,24 @@
-{stdenv, fetchzip}:
+{ stdenv, fetchurl }:
 
 let
+
   version = "5.4";
-in fetchzip rec {
+
+in
+
+fetchurl rec {
   name = "pecita-${version}";
 
-  url = "http://archive.rycee.net/pecita/${name}.tar.xz";
+  url = "http://pecita.eu/b/Pecita.otf";
+
+  downloadToTemp = true;
 
   postFetch = ''
-    tar xJvf $downloadedFile --strip-components=1
     mkdir -p $out/share/fonts/opentype
-    cp -v Pecita.otf $out/share/fonts/opentype/Pecita.otf
+    cp -v $downloadedFile $out/share/fonts/opentype/Pecita.otf
   '';
 
+  recursiveHash = true;
   sha256 = "0pwm20f38lcbfkdqkpa2ydpc9kvmdg0ifc4h2dmipsnwbcb5rfwm";
 
   meta = with stdenv.lib; {
diff --git a/pkgs/data/fonts/penna/default.nix b/pkgs/data/fonts/penna/default.nix
index 893553a62ce2..b1244c47bf1b 100644
--- a/pkgs/data/fonts/penna/default.nix
+++ b/pkgs/data/fonts/penna/default.nix
@@ -18,7 +18,7 @@ fetchzip rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = "http://dotcolon.net/font/{pname}/";
+    homepage = "http://dotcolon.net/font/${pname}/";
     description = "Geometric sans serif designed by Sora Sagano";
     longDescription = ''
      Penna is a geometric sans serif designed by Sora Sagano,
diff --git a/pkgs/data/fonts/route159/default.nix b/pkgs/data/fonts/route159/default.nix
index 7e2480a77dc5..892078a1151b 100644
--- a/pkgs/data/fonts/route159/default.nix
+++ b/pkgs/data/fonts/route159/default.nix
@@ -18,7 +18,7 @@ fetchzip rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = "http://dotcolon.net/font/{pname}/";
+    homepage = "http://dotcolon.net/font/${pname}/";
     description = "A weighted sans serif font";
     platforms = platforms.all;
     maintainers = with maintainers; [ leenaars ];
diff --git a/pkgs/data/fonts/seshat/default.nix b/pkgs/data/fonts/seshat/default.nix
index 36e4f2fa10ff..6b22716f1ebb 100644
--- a/pkgs/data/fonts/seshat/default.nix
+++ b/pkgs/data/fonts/seshat/default.nix
@@ -18,7 +18,7 @@ fetchzip rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = "http://dotcolon.net/font/{pname}/";
+    homepage = "http://dotcolon.net/font/${pname}/";
     description = "Roman body font designed for main text by Sora Sagano";
     longDescription = ''
       Seshat is a Roman body font designed for the main text. By
diff --git a/pkgs/data/icons/faba-icon-theme/default.nix b/pkgs/data/icons/faba-icon-theme/default.nix
index e9d9efcfcb02..07d2b5ecf02c 100644
--- a/pkgs/data/icons/faba-icon-theme/default.nix
+++ b/pkgs/data/icons/faba-icon-theme/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, meson, ninja, gtk3, elementary-icon-theme }:
+{ stdenv, fetchFromGitHub, meson, ninja, python3, gtk3, elementary-icon-theme }:
 
 stdenv.mkDerivation rec {
   name = "${package-name}-${version}";
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
     sha256 = "0xh6ppr73p76z60ym49b4d0liwdc96w41cc5p07d48hxjsa6qd6n";
   };
 
-  nativeBuildInputs = [ meson ninja gtk3 elementary-icon-theme ];
+  nativeBuildInputs = [ meson ninja python3 gtk3 elementary-icon-theme ];
 
   postPatch = ''
     patchShebangs meson/post_install.py
diff --git a/pkgs/data/icons/moka-icon-theme/default.nix b/pkgs/data/icons/moka-icon-theme/default.nix
index 2b4bb5d67c3b..17892679a7ea 100644
--- a/pkgs/data/icons/moka-icon-theme/default.nix
+++ b/pkgs/data/icons/moka-icon-theme/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, meson, ninja, gtk3, faba-icon-theme }:
+{ stdenv, fetchFromGitHub, meson, ninja, gtk3, python3, faba-icon-theme }:
 
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
     sha256 = "015l02im4mha5z91dbchxf6xkp66d346bg3xskwg0rh3lglhjsrd";
   };
 
-  nativeBuildInputs = [ meson ninja gtk3 faba-icon-theme ];
+  nativeBuildInputs = [ meson ninja gtk3 python3 faba-icon-theme ];
 
   postPatch = ''
     patchShebangs meson/post_install.py
diff --git a/pkgs/data/icons/numix-icon-theme-circle/default.nix b/pkgs/data/icons/numix-icon-theme-circle/default.nix
index 5ac0998fb291..68b967e715d4 100644
--- a/pkgs/data/icons/numix-icon-theme-circle/default.nix
+++ b/pkgs/data/icons/numix-icon-theme-circle/default.nix
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Numix icon theme (circle version)";
-    homepage = https://numixproject.org;
+    homepage = https://numixproject.github.io;
     license = licenses.gpl3;
     # darwin cannot deal with file names differing only in case
     platforms = platforms.linux;
diff --git a/pkgs/data/icons/numix-icon-theme-square/default.nix b/pkgs/data/icons/numix-icon-theme-square/default.nix
index 875e10259276..ec6972c4cac7 100644
--- a/pkgs/data/icons/numix-icon-theme-square/default.nix
+++ b/pkgs/data/icons/numix-icon-theme-square/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Numix icon theme (square version)";
-    homepage = https://numixproject.org;
+    homepage = https://numixproject.github.io;
     license = licenses.gpl3;
     # darwin cannot deal with file names differing only in case
     platforms = platforms.linux;
diff --git a/pkgs/data/icons/numix-icon-theme/default.nix b/pkgs/data/icons/numix-icon-theme/default.nix
index 35f624a00f5b..9aaed97dc273 100644
--- a/pkgs/data/icons/numix-icon-theme/default.nix
+++ b/pkgs/data/icons/numix-icon-theme/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Numix icon theme";
-    homepage = https://numixproject.org;
+    homepage = https://numixproject.github.io;
     license = licenses.gpl3;
     # darwin cannot deal with file names differing only in case
     platforms = platforms.linux;
diff --git a/pkgs/data/icons/paper-icon-theme/default.nix b/pkgs/data/icons/paper-icon-theme/default.nix
index 34c949519baa..b16c9b076824 100644
--- a/pkgs/data/icons/paper-icon-theme/default.nix
+++ b/pkgs/data/icons/paper-icon-theme/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, meson, ninja, gtk3 }:
+{ stdenv, fetchFromGitHub, meson, ninja, gtk3, python3 }:
 
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
     sha256 = "0x45zkjnmbz904df63ph06npbm3phpgck4xwyymx8r8jgrfplk6v";
   };
 
-  nativeBuildInputs = [ meson ninja gtk3 ];
+  nativeBuildInputs = [ meson ninja gtk3 python3 ];
 
   postPatch = ''
     patchShebangs meson/post_install.py
diff --git a/pkgs/data/icons/papirus-icon-theme/default.nix b/pkgs/data/icons/papirus-icon-theme/default.nix
index c0f4727f48fb..1efd4145ce03 100644
--- a/pkgs/data/icons/papirus-icon-theme/default.nix
+++ b/pkgs/data/icons/papirus-icon-theme/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "papirus-icon-theme-${version}";
-  version = "20180401";
+  version = "20180816";
 
   src = fetchFromGitHub {
     owner = "PapirusDevelopmentTeam";
     repo = "papirus-icon-theme";
     rev = version;
-    sha256 = "1cbzv3igc6j05h0mq2850fwfd8sxxwixzgmhh85mc1k326rvncil";
+    sha256 = "0rmf5hvp6711pyqdq5sdxkrjr21nbk6113r4a7d8735ynvm8znkk";
   };
 
   nativeBuildInputs = [ gtk3 ];
diff --git a/pkgs/data/misc/hackage/default.nix b/pkgs/data/misc/hackage/default.nix
index fce8f44bd3ff..a72c94759fa8 100644
--- a/pkgs/data/misc/hackage/default.nix
+++ b/pkgs/data/misc/hackage/default.nix
@@ -1,6 +1,6 @@
 { fetchurl }:
 
 fetchurl {
-  url = "https://github.com/commercialhaskell/all-cabal-hashes/archive/d5c89ad106556f7890c89c50a2b4d3fbdcea7616.tar.gz";
-  sha256 = "0j8r88wwf0qvqxcnwmcs6xcn4vi0189c9f5chfl80941ggxfbpxk";
+  url = "https://github.com/commercialhaskell/all-cabal-hashes/archive/e44c7d34b0e57883da9cc0e09b0b5de3b065fe98.tar.gz";
+  sha256 = "1manarsja8lsvs75zd3jnjhy5yb1576yv8ba0jqa4a1rszrkil1d";
 }
diff --git a/pkgs/data/misc/osinfo-db/default.nix b/pkgs/data/misc/osinfo-db/default.nix
index 9919fb57f7cc..93ee6d38c7c3 100644
--- a/pkgs/data/misc/osinfo-db/default.nix
+++ b/pkgs/data/misc/osinfo-db/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, osinfo-db-tools, intltool, libxml2 }:
 
 stdenv.mkDerivation rec {
-  name = "osinfo-db-20180531";
+  name = "osinfo-db-20180903";
 
   src = fetchurl {
     url = "https://releases.pagure.org/libosinfo/${name}.tar.xz";
-    sha256 = "0vw6hn7xdfj0q7wc3k9b0nvbghdp1b9dl63xz2v7frr55qv59m5x";
+    sha256 = "0xkxqyn2b03d4rd91f5rw3xar5vnv2n8l5pp8sm3hqm1wm5z5my9";
   };
 
   nativeBuildInputs = [ osinfo-db-tools intltool libxml2 ];
diff --git a/pkgs/desktops/deepin/dbus-factory/default.nix b/pkgs/desktops/deepin/dbus-factory/default.nix
new file mode 100644
index 000000000000..66d28cbcaf3e
--- /dev/null
+++ b/pkgs/desktops/deepin/dbus-factory/default.nix
@@ -0,0 +1,30 @@
+{ stdenv, fetchFromGitHub, jq, libxml2, go-dbus-generator }:
+
+stdenv.mkDerivation rec {
+  name = "${pname}-${version}";
+  pname = "dbus-factory";
+  version = "3.1.17";
+
+  src = fetchFromGitHub {
+    owner = "linuxdeepin";
+    repo = pname;
+    rev = version;
+    sha256 = "1llq8wzgikgpzj7z36fyzk8kjych2h9nzi3x6zv53z0xc1xn4256";
+  };
+
+  nativeBuildInputs = [
+    jq
+    libxml2
+    go-dbus-generator
+  ];
+
+  makeFlags = [ "GOPATH=$(out)/share/gocode" ];
+
+  meta = with stdenv.lib; {
+    description = "Generates static DBus bindings for Golang and QML at build-time";
+    homepage = https://github.com/linuxdeepin/dbus-factory;
+    license = licenses.gpl3;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ romildo ];
+  };
+}
diff --git a/pkgs/desktops/deepin/dde-calendar/default.nix b/pkgs/desktops/deepin/dde-calendar/default.nix
new file mode 100644
index 000000000000..ad6b0f1912a6
--- /dev/null
+++ b/pkgs/desktops/deepin/dde-calendar/default.nix
@@ -0,0 +1,44 @@
+{ stdenv, fetchFromGitHub, pkgconfig, qmake, qttools,
+  deepin-gettext-tools, dtkcore, dtkwidget
+}:
+
+stdenv.mkDerivation rec {
+  name = "${pname}-${version}";
+  pname = "dde-calendar";
+  version = "1.2.5";
+
+  src = fetchFromGitHub {
+    owner = "linuxdeepin";
+    repo = pname;
+    rev = version;
+    sha256 = "1a5zxpz7zncw6mrzv8zmn0j1vk0c8fq0m1xhmnwllffzybrhn4y7";
+  };
+
+  nativeBuildInputs = [
+    pkgconfig
+    qmake
+    qttools
+    deepin-gettext-tools
+  ];
+
+  buildInputs = [
+    dtkcore
+    dtkwidget
+  ];
+
+  postPatch = ''
+    patchShebangs .
+    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,"
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Calendar for Deepin Desktop Environment";
+    homepage = https://github.com/linuxdeepin/dde-calendar;
+    license = licenses.gpl3;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ romildo ];
+  };
+}
diff --git a/pkgs/desktops/deepin/deepin-image-viewer/default.nix b/pkgs/desktops/deepin/deepin-image-viewer/default.nix
new file mode 100644
index 000000000000..0ba2e306110a
--- /dev/null
+++ b/pkgs/desktops/deepin/deepin-image-viewer/default.nix
@@ -0,0 +1,51 @@
+{ stdenv, fetchFromGitHub, pkgconfig, qmake, qttools, qtsvg,
+  qtx11extras, dtkcore, dtkwidget, qt5integration, freeimage, libraw,
+  libexif
+}:
+
+stdenv.mkDerivation rec {
+  name = "${pname}-${version}";
+  pname = "deepin-image-viewer";
+  version = "1.2.23";
+
+  src = fetchFromGitHub {
+    owner = "linuxdeepin";
+    repo = pname;
+    rev = version;
+    sha256 = "1n1b3j65in6v7q5bxgkiam8qy56kjn9prld3sjrbc2mqzff8sm3q";
+  };
+
+  nativeBuildInputs = [
+    pkgconfig
+    qmake
+    qttools
+  ];
+
+  buildInputs = [
+    qtsvg
+    qtx11extras
+    dtkcore
+    dtkwidget
+    qt5integration
+    freeimage
+    libraw
+    libexif
+  ];
+
+  postPatch = ''
+    patchShebangs .
+    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,"
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Image Viewer for Deepin Desktop Environment";
+    homepage = https://github.com/linuxdeepin/deepin-image-viewer;
+    license = licenses.gpl3Plus;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ romildo ];
+  };
+}
diff --git a/pkgs/desktops/deepin/deepin-menu/default.nix b/pkgs/desktops/deepin/deepin-menu/default.nix
new file mode 100644
index 000000000000..df0dcc379070
--- /dev/null
+++ b/pkgs/desktops/deepin/deepin-menu/default.nix
@@ -0,0 +1,40 @@
+{ stdenv, fetchFromGitHub, pkgconfig, qmake, dtkcore, dtkwidget,
+  qt5integration }:
+
+stdenv.mkDerivation rec {
+  name = "${pname}-${version}";
+  pname = "deepin-menu";
+  version = "3.3.10";
+
+  src = fetchFromGitHub {
+    owner = "linuxdeepin";
+    repo = pname;
+    rev = version;
+    sha256 = "1666821c2irs2hjgr3kvivij6c2fgjva8323kplrz75w2lz518xb";
+  };
+
+  nativeBuildInputs = [
+    pkgconfig
+    qmake
+  ];
+
+  buildInputs = [
+    dtkcore
+    dtkwidget
+    qt5integration
+  ];
+
+  postPatch = ''
+    sed -i deepin-menu.pro -e "s,/usr,$out,"
+  '';
+
+  enableParallelBuilding = true;
+
+  meta = with stdenv.lib; {
+    description = "Deepin menu service";
+    homepage = https://github.com/linuxdeepin/deepin-menu;
+    license = licenses.gpl3;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ romildo ];
+  };
+}
diff --git a/pkgs/desktops/deepin/deepin-mutter/default.nix b/pkgs/desktops/deepin/deepin-mutter/default.nix
new file mode 100644
index 000000000000..e397ab53576d
--- /dev/null
+++ b/pkgs/desktops/deepin/deepin-mutter/default.nix
@@ -0,0 +1,61 @@
+{ stdenv, fetchFromGitHub, pkgconfig, intltool, libtool, gnome3, xorg,
+  libcanberra-gtk3, upower, xkeyboard_config, libxkbcommon,
+  libstartup_notification, libinput, cogl, clutter, systemd
+}:
+
+stdenv.mkDerivation rec {
+  name = "${pname}-${version}";
+  pname = "deepin-mutter";
+  version = "3.20.34";
+
+  src = fetchFromGitHub {
+    owner = "linuxdeepin";
+    repo = pname;
+    rev = version;
+    sha256 = "0s427fmj806ljpdg6jdvpfislk5m1xvxpnnyrq3l8b7pkhjvp8wd";
+  };
+
+  nativeBuildInputs = [
+    pkgconfig
+    intltool
+    libtool
+    gnome3.gnome-common
+  ];
+
+  buildInputs = [
+    gnome3.gtk
+    gnome3.gnome-desktop
+    gnome3.gsettings-desktop-schemas
+    gnome3.libgudev
+    gnome3.zenity
+    upower
+    xorg.libxkbfile
+    libxkbcommon
+    libcanberra-gtk3
+    libstartup_notification
+    libinput
+    xkeyboard_config
+    cogl
+    clutter
+    systemd
+  ];
+
+  enableParallelBuilding = true;
+
+  configureFlags = [
+    "--enable-native-backend"
+    "--enable-compile-warnings=minimum"
+  ];
+
+  preConfigure = ''
+    NOCONFIGURE=1 ./autogen.sh
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Base window manager for deepin, fork of gnome mutter";
+    homepage = https://github.com/linuxdeepin/deepin-mutter;
+    license = licenses.gpl3;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ romildo ];
+  };
+}
diff --git a/pkgs/desktops/deepin/deepin-shortcut-viewer/default.nix b/pkgs/desktops/deepin/deepin-shortcut-viewer/default.nix
new file mode 100644
index 000000000000..1bb112b76f6e
--- /dev/null
+++ b/pkgs/desktops/deepin/deepin-shortcut-viewer/default.nix
@@ -0,0 +1,37 @@
+{ stdenv, fetchFromGitHub, pkgconfig, qmake, dtkcore, dtkwidget,
+  qt5integration
+}:
+
+stdenv.mkDerivation rec {
+  name = "${pname}-${version}";
+  pname = "deepin-shortcut-viewer";
+  version = "1.3.5";
+
+  src = fetchFromGitHub {
+    owner = "linuxdeepin";
+    repo = pname;
+    rev = version;
+    sha256 = "13vz8kjdqkrhgpvdgrvwn62vwzbyqp88hjm5m4rcqg3bh56709ma";
+  };
+
+  nativeBuildInputs = [
+    pkgconfig
+    qmake
+  ];
+
+  buildInputs = [
+    dtkcore
+    dtkwidget
+    qt5integration
+  ];
+
+  enableParallelBuilding = true;
+
+  meta = with stdenv.lib; {
+    description = "Pop-up shortcut viewer for Deepin applications";
+    homepage = https://github.com/linuxdeepin/deepin-shortcut-viewer;
+    license = licenses.gpl3;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ romildo ];
+  };
+}
diff --git a/pkgs/desktops/deepin/deepin-sound-theme/default.nix b/pkgs/desktops/deepin/deepin-sound-theme/default.nix
new file mode 100644
index 000000000000..f12419a615b3
--- /dev/null
+++ b/pkgs/desktops/deepin/deepin-sound-theme/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, fetchFromGitHub }:
+
+stdenv.mkDerivation rec {
+  name = "deepin-sound-theme-${version}";
+  version = "15.10.3";
+
+  src = fetchFromGitHub {
+    owner = "linuxdeepin";
+    repo = "deepin-sound-theme";
+    rev = version;
+    sha256 = "1sw4nrn7q7wk1hpicm05apyc0mihaw42iqm52wb8ib8gm1qiylr9";
+  };
+
+  makeFlags = [ "PREFIX=$(out)" ];
+
+  meta = with stdenv.lib; {
+    description = "Deepin sound theme";
+    homepage = https://github.com/linuxdeepin/deepin-sound-theme;
+    license = licenses.gpl3;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.romildo ];
+  };
+}
diff --git a/pkgs/desktops/deepin/deepin-terminal/default.nix b/pkgs/desktops/deepin/deepin-terminal/default.nix
index 7ace219dbf5d..26146b8ab477 100644
--- a/pkgs/desktops/deepin/deepin-terminal/default.nix
+++ b/pkgs/desktops/deepin/deepin-terminal/default.nix
@@ -1,4 +1,7 @@
-{ stdenv, fetchurl, fetchFromGitHub, pkgconfig, gtk3, vala, cmake, ninja, vte, libgee, wnck, zssh, gettext, librsvg, libsecret, json-glib, gobjectIntrospection }:
+{ stdenv, fetchurl, fetchFromGitHub, pkgconfig, gtk3, vala, cmake,
+  ninja, vte, libgee, wnck, zssh, gettext, librsvg, libsecret,
+  json-glib, gobjectIntrospection, deepin-menu, deepin-shortcut-viewer
+}:
 
 stdenv.mkDerivation rec {
   name = "deepin-terminal-${version}";
@@ -25,12 +28,27 @@ stdenv.mkDerivation rec {
   '';
 
   nativeBuildInputs = [
-    pkgconfig vala cmake ninja gettext
-    # For setup hook
-    gobjectIntrospection
+    pkgconfig
+    vala
+    cmake
+    ninja
+    gettext
+    gobjectIntrospection # For setup hook
   ];
 
-  buildInputs = [ gtk3 vte libgee wnck librsvg libsecret json-glib ];
+  buildInputs = [
+    gtk3
+    vte
+    libgee
+    wnck
+    librsvg
+    libsecret
+    json-glib
+    deepin-menu
+    deepin-shortcut-viewer
+  ];
+
+  enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
     description = "The default terminal emulation for Deepin";
@@ -41,7 +59,7 @@ stdenv.mkDerivation rec {
      '';
     homepage = https://github.com/linuxdeepin/deepin-terminal;
     license = licenses.gpl3;
-    maintainers = with maintainers; [ ];
     platforms = platforms.linux;
+    maintainers = [ maintainers.romildo ];
   };
 }
diff --git a/pkgs/desktops/deepin/default.nix b/pkgs/desktops/deepin/default.nix
index 0162f85c37f0..f85d51b2072d 100644
--- a/pkgs/desktops/deepin/default.nix
+++ b/pkgs/desktops/deepin/default.nix
@@ -3,16 +3,30 @@
 let
   packages = self: with self; {
 
+    dbus-factory = callPackage ./dbus-factory { };
+    dde-calendar = callPackage ./dde-calendar { };
     dde-qt-dbus-factory = callPackage ./dde-qt-dbus-factory { };
     deepin-gettext-tools = callPackage ./deepin-gettext-tools { };
     deepin-gtk-theme = callPackage ./deepin-gtk-theme { };
     deepin-icon-theme = callPackage ./deepin-icon-theme { };
+    deepin-image-viewer = callPackage ./deepin-image-viewer { };
+    deepin-menu = callPackage ./deepin-menu { };
+    deepin-mutter = callPackage ./deepin-mutter { };
+    deepin-shortcut-viewer = callPackage ./deepin-shortcut-viewer { };
+    deepin-sound-theme = callPackage ./deepin-sound-theme { };
     deepin-terminal = callPackage ./deepin-terminal {
       inherit (pkgs.gnome3) libgee vte;
       wnck = pkgs.libwnck3;
     };
     dtkcore = callPackage ./dtkcore { };
+    dtkwm = callPackage ./dtkwm { };
     dtkwidget = callPackage ./dtkwidget { };
+    go-dbus-factory = callPackage ./go-dbus-factory { };
+    go-dbus-generator = callPackage ./go-dbus-generator { };
+    go-gir-generator = callPackage ./go-gir-generator { };
+    go-lib = callPackage ./go-lib { };
+    qt5dxcb-plugin = callPackage ./qt5dxcb-plugin { };
+    qt5integration = callPackage ./qt5integration { };
 
   };
 
diff --git a/pkgs/desktops/deepin/dtkwm/default.nix b/pkgs/desktops/deepin/dtkwm/default.nix
new file mode 100644
index 000000000000..46ed7bcc3bef
--- /dev/null
+++ b/pkgs/desktops/deepin/dtkwm/default.nix
@@ -0,0 +1,39 @@
+{ stdenv, fetchFromGitHub, pkgconfig, qmake, qtx11extras, dtkcore }:
+
+stdenv.mkDerivation rec {
+  name = "${pname}-${version}";
+  pname = "dtkwm";
+  version = "2.0.9";
+
+  src = fetchFromGitHub {
+    owner = "linuxdeepin";
+    repo = pname;
+    rev = version;
+    sha256 = "0vkx6vlz83pgawhdwqkwpq3dy8whxmjdzfpgrvm2m6jmspfk9bab";
+  };
+
+  nativeBuildInputs = [
+    pkgconfig
+    qmake
+  ];
+
+  buildInputs = [
+    dtkcore
+    qtx11extras
+  ];
+
+  preConfigure = ''
+    qmakeFlags="$qmakeFlags \
+      QT_HOST_DATA=$out \
+      INCLUDE_INSTALL_DIR=$out/include \
+      LIB_INSTALL_DIR=$out/lib"
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Deepin graphical user interface library";
+    homepage = https://github.com/linuxdeepin/dtkwm;
+    license = licenses.gpl3Plus;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ romildo ];
+  };
+}
diff --git a/pkgs/desktops/deepin/go-dbus-factory/default.nix b/pkgs/desktops/deepin/go-dbus-factory/default.nix
new file mode 100644
index 000000000000..a488bd7202cb
--- /dev/null
+++ b/pkgs/desktops/deepin/go-dbus-factory/default.nix
@@ -0,0 +1,26 @@
+{ stdenv, fetchFromGitHub }:
+
+stdenv.mkDerivation rec {
+  name = "${pname}-${version}";
+  pname = "go-dbus-factory";
+  version = "0.0.7.1";
+
+  src = fetchFromGitHub {
+    owner = "linuxdeepin";
+    repo = pname;
+    rev = version;
+    sha256 = "0gj2xxv45gh7wr5ry3mcsi46kdsyq9nbd7znssn34kapiv40ixcx";
+  };
+
+  makeFlags = [
+    "PREFIX=$(out)"
+  ];
+
+  meta = with stdenv.lib; {
+    description = "GoLang DBus factory for the Deepin Desktop Environment";
+    homepage = https://github.com/linuxdeepin/go-dbus-factory;
+    license = licenses.gpl3;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ romildo ];
+  };
+}
diff --git a/pkgs/desktops/deepin/go-dbus-generator/default.nix b/pkgs/desktops/deepin/go-dbus-generator/default.nix
new file mode 100644
index 000000000000..2933c58f8d95
--- /dev/null
+++ b/pkgs/desktops/deepin/go-dbus-generator/default.nix
@@ -0,0 +1,33 @@
+{ stdenv, fetchFromGitHub, go, go-lib }:
+
+stdenv.mkDerivation rec {
+  name = "${pname}-${version}";
+  pname = "go-dbus-generator";
+  version = "0.6.6";
+
+  src = fetchFromGitHub {
+    owner = "linuxdeepin";
+    repo = pname;
+    rev = version;
+    sha256 = "17rzicqizyyrhjjf4rild7py1cyd07b2zdcd9nabvwn4gvj6lhfb";
+  };
+
+  nativeBuildInputs = [
+    go
+    go-lib
+  ];
+
+  makeFlags = [
+    "PREFIX=$(out)"
+    "GOPATH=$(GGOPATH):${go-lib}/share/gocode"
+    "HOME=$(TMP)"
+  ];
+
+  meta = with stdenv.lib; {
+    description = "Convert dbus interfaces to go-lang or qml wrapper code";
+    homepage = https://github.com/linuxdeepin/go-dbus-generator;
+    license = licenses.gpl3;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ romildo ];
+  };
+}
diff --git a/pkgs/desktops/deepin/go-gir-generator/default.nix b/pkgs/desktops/deepin/go-gir-generator/default.nix
new file mode 100644
index 000000000000..cc05f6f055b0
--- /dev/null
+++ b/pkgs/desktops/deepin/go-gir-generator/default.nix
@@ -0,0 +1,37 @@
+{ stdenv, fetchFromGitHub, pkgconfig, go, gobjectIntrospection, libgudev }:
+
+stdenv.mkDerivation rec {
+  name = "${pname}-${version}";
+  pname = "go-gir-generator";
+  version = "1.0.4";
+
+  src = fetchFromGitHub {
+    owner = "linuxdeepin";
+    repo = pname;
+    rev = version;
+    sha256 = "0yi3lsgkxi8ghz2c7msf2df20jxkvzj8s47slvpzz4m57i82vgzl";
+  };
+
+  nativeBuildInputs = [
+    pkgconfig
+    go
+  ];
+
+  buildInputs = [
+    gobjectIntrospection
+    libgudev
+  ];
+
+  makeFlags = [
+    "PREFIX=$(out)"
+    "HOME=$(TMP)"
+  ];
+
+  meta = with stdenv.lib; {
+    description = "Generate static golang bindings for GObject";
+    homepage = https://github.com/linuxdeepin/go-gir-generator;
+    license = licenses.gpl3;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ romildo ];
+  };
+}
diff --git a/pkgs/desktops/deepin/go-lib/default.nix b/pkgs/desktops/deepin/go-lib/default.nix
new file mode 100644
index 000000000000..44de8889df28
--- /dev/null
+++ b/pkgs/desktops/deepin/go-lib/default.nix
@@ -0,0 +1,34 @@
+{ stdenv, fetchFromGitHub, glib, xorg, gdk_pixbuf, pulseaudio,
+  mobile-broadband-provider-info
+}:
+
+stdenv.mkDerivation rec {
+  name = "${pname}-${version}";
+  pname = "go-lib";
+  version = "1.2.16.1";
+
+  src = fetchFromGitHub {
+    owner = "linuxdeepin";
+    repo = pname;
+    rev = version;
+    sha256 = "0nl35dm0bdca38qhnzdpsv6b0vds9ccvm4c86rs42a7c6v655b1q";
+  };
+
+  buildInputs = [
+    glib
+    xorg.libX11
+    gdk_pixbuf
+    pulseaudio
+    mobile-broadband-provider-info
+  ];
+
+  makeFlags = [ "PREFIX=$(out)" ];
+
+  meta = with stdenv.lib; {
+    description = "Go bindings for Deepin Desktop Environment development";
+    homepage = https://github.com/linuxdeepin/go-lib;
+    license = licenses.gpl3;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ romildo ];
+  };
+}
diff --git a/pkgs/desktops/deepin/qt5dxcb-plugin/default.nix b/pkgs/desktops/deepin/qt5dxcb-plugin/default.nix
new file mode 100644
index 000000000000..3754de3ea980
--- /dev/null
+++ b/pkgs/desktops/deepin/qt5dxcb-plugin/default.nix
@@ -0,0 +1,40 @@
+{ stdenv, fetchFromGitHub, pkgconfig, qmake, qtx11extras, libSM, mtdev, cairo }:
+
+stdenv.mkDerivation rec {
+  name = "${pname}-${version}";
+  pname = "qt5dxcb-plugin";
+  version = "1.1.11";
+
+  src = fetchFromGitHub {
+    owner = "linuxdeepin";
+    repo = pname;
+    rev = version;
+    sha256 = "157p2cqs9fvd4n4fmxj6mh4cxlc35bkl4rnf832wk2gvjnxdfrfy";
+  };
+
+  nativeBuildInputs = [
+    pkgconfig
+    qmake
+  ];
+
+  buildInputs = [
+    qtx11extras
+    libSM
+    mtdev
+    cairo
+  ];
+
+  preConfigure = ''
+    qmakeFlags="$qmakeFlags INSTALL_PATH=$out/$qtPluginPrefix/platforms"
+  '';
+
+  enableParallelBuilding = true;
+
+  meta = with stdenv.lib; {
+    description = "Qt platform theme integration plugin for DDE";
+    homepage = https://github.com/linuxdeepin/qt5dxcb-plugin;
+    license = licenses.gpl3;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ romildo ];
+  };
+}
diff --git a/pkgs/desktops/deepin/qt5integration/default.nix b/pkgs/desktops/deepin/qt5integration/default.nix
new file mode 100644
index 000000000000..28e06bae42d2
--- /dev/null
+++ b/pkgs/desktops/deepin/qt5integration/default.nix
@@ -0,0 +1,52 @@
+{ stdenv, fetchFromGitHub, pkgconfig, qmake, mtdev, gsettings-qt
+, lxqt, qtx11extras, qtmultimedia, qtsvg, fontconfig, freetype
+, qt5dxcb-plugin, qtstyleplugins, dtkcore, dtkwidget
+}:
+
+stdenv.mkDerivation rec {
+  name = "${pname}-${version}";
+  pname = "qt5integration";
+  version = "0.3.5";
+
+  src = fetchFromGitHub {
+    owner = "linuxdeepin";
+    repo = pname;
+    rev = version;
+    sha256 = "0qf9ndsg8pz2n68y68a30d1hxr3ri8k4j00dxlbcf5cn5mbnny1b";
+  };
+
+  nativeBuildInputs = [
+    pkgconfig
+    qmake
+  ];
+
+  buildInputs = [
+    dtkcore
+    dtkwidget
+    qt5dxcb-plugin
+    mtdev
+    lxqt.libqtxdg
+    qtstyleplugins
+    qtx11extras
+    qtmultimedia
+    qtsvg
+  ];
+
+  postPatch = ''
+    sed -i dstyleplugin/dstyleplugin.pro \
+           platformthemeplugin/qt5deepintheme-plugin.pro \
+           iconengineplugins/svgiconengine/svgiconengine.pro \
+           imageformatplugins/svg/svg.pro \
+      -e "s,\$\$\[QT_INSTALL_PLUGINS\],$out/$qtPluginPrefix,"
+  '';
+
+  enableParallelBuilding = true;
+
+  meta = with stdenv.lib; {
+    description = "Qt platform theme integration plugins for DDE";
+    homepage = https://github.com/linuxdeepin/qt5integration;
+    license = with licenses; [ gpl3 lgpl2Plus bsd2 ];
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ romildo ];
+  };
+}
diff --git a/pkgs/desktops/gnome-2/default.nix b/pkgs/desktops/gnome-2/default.nix
index c41183f4b24f..f67dc13c8545 100644
--- a/pkgs/desktops/gnome-2/default.nix
+++ b/pkgs/desktops/gnome-2/default.nix
@@ -35,8 +35,6 @@ let overridden = set // overrides; set = with overridden; {
 
   GConf = callPackage ./platform/GConf { };
 
-  gconfmm = callPackage ./platform/gconfmm { };
-
   libgnomecanvas = callPackage ./platform/libgnomecanvas { };
 
   libgnomecanvasmm = callPackage ./platform/libgnomecanvasmm { };
@@ -70,8 +68,6 @@ let overridden = set // overrides; set = with overridden; {
 
   gtkglext = callPackage ./platform/gtkglext { };
 
-  gtkglextmm = callPackage ./platform/gtkglextmm { };
-
 #### DESKTOP
 
   gvfs = gvfs.override { gnome = self; };
diff --git a/pkgs/desktops/gnome-2/platform/gconfmm/default.nix b/pkgs/desktops/gnome-2/platform/gconfmm/default.nix
deleted file mode 100644
index 356d4df9d1d8..000000000000
--- a/pkgs/desktops/gnome-2/platform/gconfmm/default.nix
+++ /dev/null
@@ -1,23 +0,0 @@
-{ stdenv, fetchurl, pkgconfig, GConf, gtkmm, glibmm }:
-
-stdenv.mkDerivation rec {
-  name = "gconfmm-${minVer}.3";
-  minVer = "2.28";
-
-  src = fetchurl {
-    url = "mirror://gnome/sources/gconfmm/${minVer}/${name}.tar.bz2";
-    sha256 = "a5e0092bb73371a3ca76b2ecae794778f3a9409056fee9b28ec1db072d8e6108";
-  };
-
-  nativeBuildInputs = [ pkgconfig ];
-
-  propagatedBuildInputs = [ GConf gtkmm glibmm ];
-
-  meta = {
-    description = "C++ wrappers for GConf";
-
-    license = stdenv.lib.licenses.lgpl2Plus;
-
-    platforms = stdenv.lib.platforms.linux;
-  };
-}
diff --git a/pkgs/desktops/gnome-2/platform/gtkglextmm/default.nix b/pkgs/desktops/gnome-2/platform/gtkglextmm/default.nix
deleted file mode 100644
index 63e33aa578ef..000000000000
--- a/pkgs/desktops/gnome-2/platform/gtkglextmm/default.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-{ stdenv, fetchurl, pkgconfig, gtkglext, gtkmm, gtk, libGLU_combined, gdk_pixbuf
-, pangox_compat, libXmu
-}:
-
-stdenv.mkDerivation rec {
-  name = "gtkglextmm-${minVer}.0";
-  minVer = "1.2";
-
-  src = fetchurl {
-    url = "mirror://gnome/sources/gtkglextmm/${minVer}/${name}.tar.bz2";
-    sha256 = "6cd4bd2a240e5eb1e3a24c5a3ebbf7ed905b522b888439778043fdeb58771fea";
-  };
-
-  patches = [
-    ./gdk.patch
-
-    # From debian, fixes build with newer gtk "[...] by switching #includes
-    # around so that the G_DISABLE_DEPRECATED trick in glibmm still works".
-    # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=707356
-    ./fix_ftbfs_gtk_2_36.patch
-  ];
-
-  buildInputs = [ pangox_compat libXmu ];
-
-  nativeBuildInputs = [pkgconfig];
-
-  propagatedBuildInputs = [ gtkglext gtkmm gtk libGLU_combined gdk_pixbuf ];
-
-  meta = {
-    description = "C++ wrappers for GtkGLExt";
-    license = stdenv.lib.licenses.lgpl2Plus;
-    platforms = stdenv.lib.platforms.linux;
-    broken = true;
-  };
-}
diff --git a/pkgs/desktops/gnome-2/platform/gtkglextmm/fix_ftbfs_gtk_2_36.patch b/pkgs/desktops/gnome-2/platform/gtkglextmm/fix_ftbfs_gtk_2_36.patch
deleted file mode 100644
index 88e271e3eb7b..000000000000
--- a/pkgs/desktops/gnome-2/platform/gtkglextmm/fix_ftbfs_gtk_2_36.patch
+++ /dev/null
@@ -1,121 +0,0 @@
-Index: gtkglextmm-1.2.0/gdkglext/gdkmm/gl/wrap_init.cc
-===================================================================
---- gtkglextmm-1.2.0.orig/gdkglext/gdkmm/gl/wrap_init.cc	2013-05-16 23:40:48.363207736 +0200
-+++ gtkglextmm-1.2.0/gdkglext/gdkmm/gl/wrap_init.cc	2013-05-16 23:42:40.193801834 +0200
-@@ -1,15 +1,8 @@
--
--#include <glib.h>
--
- // Disable the 'const' function attribute of the get_type() functions.
- // GCC would optimize them out because we don't use the return value.
- #undef  G_GNUC_CONST
- #define G_GNUC_CONST /* empty */
- 
--#include <gdkmm/gl/wrap_init.h>
--#include <glibmm/error.h>
--#include <glibmm/object.h>
--
- // #include the widget headers so that we can call the get_type() static methods:
- 
- #include "tokens.h"
-@@ -19,6 +12,12 @@
- #include "pixmap.h"
- #include "window.h"
- 
-+#include <glib.h>
-+
-+#include <gdkmm/gl/wrap_init.h>
-+#include <glibmm/error.h>
-+#include <glibmm/object.h>
-+
- extern "C"
- {
- 
-Index: gtkglextmm-1.2.0/gdkglext/gdkmm/gl/query.cc
-===================================================================
---- gtkglextmm-1.2.0.orig/gdkglext/gdkmm/gl/query.cc	2013-05-16 23:40:48.363207736 +0200
-+++ gtkglextmm-1.2.0/gdkglext/gdkmm/gl/query.cc	2013-05-16 23:42:40.193801834 +0200
-@@ -17,10 +17,10 @@
-  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307  USA.
-  */
- 
--#include <gdk/gdkglquery.h>
--
- #include "query.h"
- 
-+#include <gdk/gdkglquery.h>
-+
- namespace Gdk
- {
-   namespace GL
-Index: gtkglextmm-1.2.0/gdkglext/gdkmm/gl/pixmapext.cc
-===================================================================
---- gtkglextmm-1.2.0.orig/gdkglext/gdkmm/gl/pixmapext.cc	2013-05-16 23:40:48.363207736 +0200
-+++ gtkglextmm-1.2.0/gdkglext/gdkmm/gl/pixmapext.cc	2013-05-16 23:42:40.193801834 +0200
-@@ -17,11 +17,11 @@
-  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307  USA.
-  */
- 
-+#include "pixmapext.h"
-+
- #include <gdk/gdkgldrawable.h>
- #include <gdk/gdkglpixmap.h>
- 
--#include "pixmapext.h"
--
- namespace Gdk
- {
-   namespace GL
-Index: gtkglextmm-1.2.0/gdkglext/gdkmm/gl/windowext.cc
-===================================================================
---- gtkglextmm-1.2.0.orig/gdkglext/gdkmm/gl/windowext.cc	2013-05-16 23:40:48.363207736 +0200
-+++ gtkglextmm-1.2.0/gdkglext/gdkmm/gl/windowext.cc	2013-05-16 23:42:40.193801834 +0200
-@@ -17,11 +17,11 @@
-  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307  USA.
-  */
- 
-+#include "windowext.h"
-+
- #include <gdk/gdkgldrawable.h>
- #include <gdk/gdkglwindow.h>
- 
--#include "windowext.h"
--
- namespace Gdk
- {
-   namespace GL
-Index: gtkglextmm-1.2.0/gdkglext/gdkmm/gl/font.cc
-===================================================================
---- gtkglextmm-1.2.0.orig/gdkglext/gdkmm/gl/font.cc	2004-05-18 08:01:49.000000000 +0200
-+++ gtkglextmm-1.2.0/gdkglext/gdkmm/gl/font.cc	2013-05-16 23:43:07.637456821 +0200
-@@ -17,10 +17,10 @@
-  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307  USA.
-  */
- 
--#include <gdk/gdkglfont.h>
--
- #include "font.h"
- 
-+#include <gdk/gdkglfont.h>
-+
- namespace Gdk
- {
-   namespace GL
-Index: gtkglextmm-1.2.0/gdkglext/gdkmm/gl/init.cc
-===================================================================
---- gtkglextmm-1.2.0.orig/gdkglext/gdkmm/gl/init.cc	2003-02-27 10:49:24.000000000 +0100
-+++ gtkglextmm-1.2.0/gdkglext/gdkmm/gl/init.cc	2013-05-16 23:44:38.320316782 +0200
-@@ -19,11 +19,11 @@
- 
- #include <cstdlib>
- 
--#include <gdk/gdkglinit.h>
--
- #include "wrap_init.h"
- #include "init.h"
- 
-+#include <gdk/gdkglinit.h>
-+
- namespace Gdk
- {
-   namespace GL
diff --git a/pkgs/desktops/gnome-2/platform/gtkglextmm/gdk.patch b/pkgs/desktops/gnome-2/platform/gtkglextmm/gdk.patch
deleted file mode 100644
index 8a39b521d63c..000000000000
--- a/pkgs/desktops/gnome-2/platform/gtkglextmm/gdk.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-# fixes: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=621976
-# reference: http://www.mail-archive.com/pld-cvs-commit@lists.pld-linux.org/msg250570.html
---- gtkglextmm-1.2.0-orig/gtkglext/gtkmm/gl/widget.cc	2004-05-18 03:01:50.000000000 -0300
-+++ gtkglextmm-1.2.0/gtkglext/gtkmm/gl/widget.cc	2011-06-12 17:57:13.075541070 -0300
-@@ -17,9 +17,8 @@
-  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307  USA.
-  */
- 
--#include <gtk/gtkglwidget.h>
--
- #include "widget.h"
-+#include <gtk/gtkglwidget.h>
- 
- namespace Gtk
- {
\ No newline at end of file
diff --git a/pkgs/desktops/gnome-3/apps/bijiben/default.nix b/pkgs/desktops/gnome-3/apps/bijiben/default.nix
index 06510c8f34ac..38c729a1c429 100644
--- a/pkgs/desktops/gnome-3/apps/bijiben/default.nix
+++ b/pkgs/desktops/gnome-3/apps/bijiben/default.nix
@@ -1,5 +1,5 @@
 { stdenv, meson, ninja, gettext, fetchurl, pkgconfig
-, wrapGAppsHook, itstool, desktop-file-utils
+, wrapGAppsHook, itstool, desktop-file-utils, python3
 , glib, gtk3, evolution-data-server
 , libuuid, webkitgtk, zeitgeist
 , gnome3, libxml2 }:
@@ -22,7 +22,7 @@ in stdenv.mkDerivation rec {
   '';
 
   nativeBuildInputs = [
-    meson ninja pkgconfig gettext itstool libxml2 desktop-file-utils wrapGAppsHook
+    meson ninja pkgconfig gettext itstool libxml2 desktop-file-utils python3 wrapGAppsHook
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/gnome-3/apps/file-roller/default.nix b/pkgs/desktops/gnome-3/apps/file-roller/default.nix
index 42f0ddc6e4bb..bd97393b7b69 100644
--- a/pkgs/desktops/gnome-3/apps/file-roller/default.nix
+++ b/pkgs/desktops/gnome-3/apps/file-roller/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, glib, gtk, meson, ninja, pkgconfig, gnome3, gettext, itstool, libxml2, libarchive
-, file, json-glib, wrapGAppsHook, desktop-file-utils, libnotify, nautilus, glibcLocales }:
+, file, json-glib, python3, wrapGAppsHook, desktop-file-utils, libnotify, nautilus, glibcLocales }:
 
 stdenv.mkDerivation rec {
   name = "file-roller-${version}";
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
 
   LANG = "en_US.UTF-8"; # postinstall.py
 
-  nativeBuildInputs = [ meson ninja gettext itstool pkgconfig libxml2 wrapGAppsHook glibcLocales desktop-file-utils ];
+  nativeBuildInputs = [ meson ninja gettext itstool pkgconfig libxml2 python3 wrapGAppsHook glibcLocales desktop-file-utils ];
 
   buildInputs = [ glib gtk json-glib libarchive file gnome3.defaultIconTheme libnotify nautilus ];
 
diff --git a/pkgs/desktops/gnome-3/apps/gnome-boxes/default.nix b/pkgs/desktops/gnome-3/apps/gnome-boxes/default.nix
index aee315124f8e..b6679ccc2695 100644
--- a/pkgs/desktops/gnome-3/apps/gnome-boxes/default.nix
+++ b/pkgs/desktops/gnome-3/apps/gnome-boxes/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, meson, ninja, wrapGAppsHook, pkgconfig, gettext, itstool, libvirt-glib
-, glib, gobjectIntrospection, libxml2, gtk3, gtk-vnc, libvirt, spice-gtk
+, glib, gobjectIntrospection, libxml2, gtk3, gtk-vnc, libvirt, spice-gtk, python3
 , spice-protocol, libsoup, libosinfo, systemd, tracker, tracker-miners, vala
 , libcap, yajl, gmp, gdbm, cyrus_sasl, gnome3, librsvg, desktop-file-utils
 , mtools, cdrkit, libcdio, libusb, libarchive, acl, libgudev, qemu, libsecret
@@ -21,7 +21,7 @@ in stdenv.mkDerivation rec {
   doCheck = true;
 
   nativeBuildInputs = [
-    meson ninja vala pkgconfig gettext itstool wrapGAppsHook gobjectIntrospection desktop-file-utils
+    meson ninja vala pkgconfig gettext itstool wrapGAppsHook gobjectIntrospection desktop-file-utils python3
   ];
 
   # Required for USB redirection PolicyKit rules file
diff --git a/pkgs/desktops/gnome-3/apps/gnome-calendar/default.nix b/pkgs/desktops/gnome-3/apps/gnome-calendar/default.nix
index 347cd7a16ae0..05275fa01ac5 100644
--- a/pkgs/desktops/gnome-3/apps/gnome-calendar/default.nix
+++ b/pkgs/desktops/gnome-3/apps/gnome-calendar/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, meson, ninja, pkgconfig, wrapGAppsHook, libdazzle, libgweather, geoclue2, geocode-glib
+{ stdenv, fetchurl, meson, ninja, pkgconfig, wrapGAppsHook, libdazzle, libgweather, geoclue2, geocode-glib, python3
 , gettext, libxml2, gnome3, gtk, evolution-data-server, libsoup
 , glib, gnome-online-accounts, gsettings-desktop-schemas }:
 
@@ -20,7 +20,7 @@ in stdenv.mkDerivation rec {
     };
   };
 
-  nativeBuildInputs = [ meson ninja pkgconfig gettext libxml2 wrapGAppsHook ];
+  nativeBuildInputs = [ meson ninja pkgconfig gettext libxml2 wrapGAppsHook python3 ];
   buildInputs = [
     gtk evolution-data-server libsoup glib gnome-online-accounts libdazzle libgweather geoclue2 geocode-glib
     gsettings-desktop-schemas gnome3.defaultIconTheme
diff --git a/pkgs/desktops/gnome-3/apps/gnome-characters/default.nix b/pkgs/desktops/gnome-3/apps/gnome-characters/default.nix
index 92ce0eb8debb..8b497fbf433d 100644
--- a/pkgs/desktops/gnome-3/apps/gnome-characters/default.nix
+++ b/pkgs/desktops/gnome-3/apps/gnome-characters/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, meson, ninja, pkgconfig, gettext, gnome3, glib, gtk3, pango, wrapGAppsHook
+{ stdenv, fetchurl, meson, ninja, pkgconfig, gettext, gnome3, glib, gtk3, pango, wrapGAppsHook, python3
 , gobjectIntrospection, gjs, libunistring }:
 
 stdenv.mkDerivation rec {
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
     };
   };
 
-  nativeBuildInputs = [ meson ninja pkgconfig gettext wrapGAppsHook gobjectIntrospection ];
+  nativeBuildInputs = [ meson ninja pkgconfig gettext wrapGAppsHook python3 gobjectIntrospection ];
   buildInputs = [ glib gtk3 gjs pango gnome3.gsettings-desktop-schemas gnome3.defaultIconTheme libunistring ];
 
   mesonFlags = [
diff --git a/pkgs/desktops/gnome-3/apps/gnome-documents/default.nix b/pkgs/desktops/gnome-3/apps/gnome-documents/default.nix
index 9948f9d909b2..196331ec52ec 100644
--- a/pkgs/desktops/gnome-3/apps/gnome-documents/default.nix
+++ b/pkgs/desktops/gnome-3/apps/gnome-documents/default.nix
@@ -4,7 +4,7 @@
 , gnome-desktop, libzapojit, libgepub
 , gnome3, gdk_pixbuf, libsoup, docbook_xsl, docbook_xml_dtd_42
 , gobjectIntrospection, inkscape, poppler_utils
-, desktop-file-utils, wrapGAppsHook }:
+, desktop-file-utils, wrapGAppsHook, python3 }:
 
 stdenv.mkDerivation rec {
   name = "gnome-documents-${version}";
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
   mesonFlags = [ "-Dgetting-started=true" ];
 
   nativeBuildInputs = [
-    meson ninja pkgconfig gettext itstool libxslt desktop-file-utils docbook_xsl docbook_xml_dtd_42 wrapGAppsHook
+    meson ninja pkgconfig gettext itstool libxslt desktop-file-utils docbook_xsl docbook_xml_dtd_42 wrapGAppsHook python3
     inkscape poppler_utils # building getting started
   ];
   buildInputs = [
diff --git a/pkgs/desktops/gnome-3/apps/gnome-power-manager/default.nix b/pkgs/desktops/gnome-3/apps/gnome-power-manager/default.nix
index 70ed4403f100..a7861dcf74d9 100644
--- a/pkgs/desktops/gnome-3/apps/gnome-power-manager/default.nix
+++ b/pkgs/desktops/gnome-3/apps/gnome-power-manager/default.nix
@@ -7,6 +7,7 @@
 , meson
 , ninja
 , upower
+, python3
 , desktop-file-utils
 , wrapGAppsHook
 , gnome3 }:
@@ -37,6 +38,7 @@ in stdenv.mkDerivation rec {
     gettext
 
     # needed by meson_post_install.sh
+    python3
     glib.dev
     desktop-file-utils
   ];
diff --git a/pkgs/desktops/gnome-3/apps/gnome-todo/default.nix b/pkgs/desktops/gnome-3/apps/gnome-todo/default.nix
index 8e506b52270a..3a9f33f46f00 100644
--- a/pkgs/desktops/gnome-3/apps/gnome-todo/default.nix
+++ b/pkgs/desktops/gnome-3/apps/gnome-todo/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, meson, ninja, pkgconfig, wrapGAppsHook
+{ stdenv, fetchurl, meson, ninja, pkgconfig, python3, wrapGAppsHook
 , gettext, gnome3, glib, gtk, libpeas
 , gnome-online-accounts, gsettings-desktop-schemas
 , evolution-data-server, libxml2, libsoup, libical, rest, json-glib }:
@@ -15,7 +15,7 @@ in stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [
-    meson ninja pkgconfig gettext wrapGAppsHook
+    meson ninja pkgconfig gettext python3 wrapGAppsHook
   ];
   buildInputs = [
     glib gtk libpeas gnome-online-accounts
diff --git a/pkgs/desktops/gnome-3/core/dconf-editor/default.nix b/pkgs/desktops/gnome-3/core/dconf-editor/default.nix
index 57c102d89cc5..13d73fa34d2f 100644
--- a/pkgs/desktops/gnome-3/core/dconf-editor/default.nix
+++ b/pkgs/desktops/gnome-3/core/dconf-editor/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, meson, ninja, vala, libxslt, pkgconfig, glib, dbus-glib, gtk3, gnome3
+{ stdenv, fetchurl, meson, ninja, vala, libxslt, pkgconfig, glib, dbus-glib, gtk3, gnome3, python3
 , libxml2, gettext, docbook_xsl, wrapGAppsHook, gobjectIntrospection }:
 
 let
@@ -12,7 +12,7 @@ in stdenv.mkDerivation rec {
     sha256 = "0nhcpwqrkmpxbhaf0cafvy6dlp6s7vhm5vknl4lgs3l24zc56ns5";
   };
 
-  nativeBuildInputs = [ meson ninja vala libxslt pkgconfig wrapGAppsHook gettext docbook_xsl libxml2 gobjectIntrospection ];
+  nativeBuildInputs = [ meson ninja vala libxslt pkgconfig wrapGAppsHook gettext docbook_xsl libxml2 gobjectIntrospection python3 ];
 
   buildInputs = [ glib dbus-glib gtk3 gnome3.defaultIconTheme gnome3.dconf ];
 
diff --git a/pkgs/desktops/gnome-3/core/eog/default.nix b/pkgs/desktops/gnome-3/core/eog/default.nix
index e5483333d403..8459ba2c126b 100644
--- a/pkgs/desktops/gnome-3/core/eog/default.nix
+++ b/pkgs/desktops/gnome-3/core/eog/default.nix
@@ -1,6 +1,6 @@
 { fetchurl, stdenv, meson, ninja, gettext, itstool, pkgconfig, libxml2, libjpeg, libpeas, gnome3
 , gtk3, glib, gsettings-desktop-schemas, adwaita-icon-theme, gnome-desktop, lcms2, gdk_pixbuf, exempi
-, shared-mime-info, wrapGAppsHook, librsvg, libexif, gobjectIntrospection }:
+, shared-mime-info, wrapGAppsHook, librsvg, libexif, gobjectIntrospection, python3 }:
 
 let
   pname = "eog";
@@ -13,7 +13,7 @@ in stdenv.mkDerivation rec {
     sha256 = "1lj8v9m8jdxc3d4nzmgrxcccddg3hh8lkbmz4g71yxa0ykxxvbip";
   };
 
-  nativeBuildInputs = [ meson ninja pkgconfig gettext itstool wrapGAppsHook libxml2 gobjectIntrospection ];
+  nativeBuildInputs = [ meson ninja pkgconfig gettext itstool wrapGAppsHook libxml2 gobjectIntrospection python3 ];
 
   buildInputs = [
     libjpeg gtk3 gdk_pixbuf glib libpeas librsvg lcms2 gnome-desktop libexif exempi
diff --git a/pkgs/desktops/gnome-3/core/epiphany/default.nix b/pkgs/desktops/gnome-3/core/epiphany/default.nix
index 9613606f777a..01232b0f9977 100644
--- a/pkgs/desktops/gnome-3/core/epiphany/default.nix
+++ b/pkgs/desktops/gnome-3/core/epiphany/default.nix
@@ -1,7 +1,7 @@
 { stdenv, meson, ninja, gettext, fetchurl, pkgconfig, gtk, glib, icu
 , wrapGAppsHook, gnome3, libxml2, libxslt, itstool
 , webkitgtk, libsoup, glib-networking, libsecret, gnome-desktop, libnotify, p11-kit
-, sqlite, gcr, isocodes, desktop-file-utils
+, sqlite, gcr, isocodes, desktop-file-utils, python3
 , gdk_pixbuf, gst_all_1, json-glib }:
 
 stdenv.mkDerivation rec {
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
   mesonFlags = [ "-Dunit_tests=false" ];
 
   nativeBuildInputs = [
-    meson ninja libxslt pkgconfig itstool gettext wrapGAppsHook desktop-file-utils
+    meson ninja libxslt pkgconfig itstool gettext wrapGAppsHook desktop-file-utils python3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/gnome-3/core/gnome-calculator/default.nix b/pkgs/desktops/gnome-3/core/gnome-calculator/default.nix
index 794f37fcbbdc..2f4743ee2633 100644
--- a/pkgs/desktops/gnome-3/core/gnome-calculator/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-calculator/default.nix
@@ -1,5 +1,5 @@
 { stdenv, meson, ninja, vala, gettext, itstool, fetchurl, pkgconfig, libxml2
-, gtk3, glib, gtksourceview3, wrapGAppsHook, gobjectIntrospection
+, gtk3, glib, gtksourceview3, wrapGAppsHook, gobjectIntrospection, python3
 , gnome3, mpfr, gmp, libsoup, libmpc }:
 
 stdenv.mkDerivation rec {
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [
-    meson ninja pkgconfig vala gettext itstool wrapGAppsHook
+    meson ninja pkgconfig vala gettext itstool wrapGAppsHook python3
     gobjectIntrospection # for finding vapi files
   ];
 
diff --git a/pkgs/desktops/gnome-3/core/gnome-contacts/default.nix b/pkgs/desktops/gnome-3/core/gnome-contacts/default.nix
index 5799e613d5bc..a9541d64b03c 100644
--- a/pkgs/desktops/gnome-3/core/gnome-contacts/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-contacts/default.nix
@@ -1,5 +1,5 @@
 { stdenv, gettext, fetchurl, evolution-data-server
-, pkgconfig, libxslt, docbook_xsl, docbook_xml_dtd_42, gtk3, glib, cheese
+, pkgconfig, libxslt, docbook_xsl, docbook_xml_dtd_42, python3, gtk3, glib, cheese
 , libchamplain, clutter-gtk, geocode-glib, gnome-desktop, gnome-online-accounts
 , wrapGAppsHook, folks, libxml2, gnome3, telepathy-glib
 , vala, meson, ninja }:
@@ -17,7 +17,7 @@ in stdenv.mkDerivation rec {
   propagatedUserEnvPkgs = [ evolution-data-server ];
 
   nativeBuildInputs = [
-    meson ninja pkgconfig vala gettext libxslt docbook_xsl docbook_xml_dtd_42 wrapGAppsHook
+    meson ninja pkgconfig vala gettext libxslt docbook_xsl docbook_xml_dtd_42 python3 wrapGAppsHook
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/gnome-3/core/gnome-control-center/default.nix b/pkgs/desktops/gnome-3/core/gnome-control-center/default.nix
index 6d5777614118..6a57e4cdff48 100644
--- a/pkgs/desktops/gnome-3/core/gnome-control-center/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-control-center/default.nix
@@ -5,7 +5,7 @@
 , cracklib, libkrb5, networkmanagerapplet, networkmanager, glibc
 , libwacom, samba, shared-mime-info, tzdata, libtool, libgnomekbd
 , docbook_xsl, modemmanager, clutter, clutter-gtk, cheese
-, fontconfig, sound-theme-freedesktop, grilo }:
+, fontconfig, sound-theme-freedesktop, grilo, python3 }:
 
 let
   pname = "gnome-control-center";
@@ -20,7 +20,7 @@ in stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     meson ninja pkgconfig gettext wrapGAppsHook libtool libxslt docbook_xsl
-    shared-mime-info
+    shared-mime-info python3
   ];
 
   buildInputs = with gnome3; [
diff --git a/pkgs/desktops/gnome-3/core/gnome-disk-utility/default.nix b/pkgs/desktops/gnome-3/core/gnome-disk-utility/default.nix
index 2eb66b02627b..a572e617766e 100644
--- a/pkgs/desktops/gnome-3/core/gnome-disk-utility/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-disk-utility/default.nix
@@ -1,5 +1,5 @@
 { stdenv, gettext, fetchurl, pkgconfig, udisks2, libsecret, libdvdread
-, meson, ninja, gtk, glib, wrapGAppsHook, libnotify
+, meson, ninja, gtk, glib, wrapGAppsHook, python3, libnotify
 , itstool, gnome3, libxml2
 , libcanberra-gtk3, libxslt, docbook_xsl, libpwquality }:
 
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     meson ninja pkgconfig gettext itstool libxslt docbook_xsl
-    wrapGAppsHook libxml2
+    wrapGAppsHook python3 libxml2
   ];
   buildInputs = [
     gtk glib libsecret libpwquality libnotify libdvdread libcanberra-gtk3
diff --git a/pkgs/desktops/gnome-3/core/gnome-screenshot/default.nix b/pkgs/desktops/gnome-3/core/gnome-screenshot/default.nix
index f5b33c88f574..c92280ed5663 100644
--- a/pkgs/desktops/gnome-3/core/gnome-screenshot/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-screenshot/default.nix
@@ -1,5 +1,5 @@
 { stdenv, gettext, libxml2, fetchurl, pkgconfig, libcanberra-gtk3
-, gtk3, glib, meson, ninja, wrapGAppsHook, appstream-glib, desktop-file-utils
+, gtk3, glib, meson, ninja, python3, wrapGAppsHook, appstream-glib, desktop-file-utils
 , gnome3 }:
 
 let
@@ -20,7 +20,7 @@ in stdenv.mkDerivation rec {
     patchShebangs build-aux/postinstall.py
   '';
 
-  nativeBuildInputs = [ meson ninja pkgconfig gettext appstream-glib libxml2 desktop-file-utils wrapGAppsHook ];
+  nativeBuildInputs = [ meson ninja pkgconfig gettext appstream-glib libxml2 desktop-file-utils python3 wrapGAppsHook ];
   buildInputs = [
     gtk3 glib libcanberra-gtk3 gnome3.defaultIconTheme
     gnome3.gsettings-desktop-schemas
diff --git a/pkgs/desktops/gnome-3/core/libgweather/default.nix b/pkgs/desktops/gnome-3/core/libgweather/default.nix
index beab02465272..23405af50d3b 100644
--- a/pkgs/desktops/gnome-3/core/libgweather/default.nix
+++ b/pkgs/desktops/gnome-3/core/libgweather/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, meson, ninja, pkgconfig, libxml2, glib, gtk, gettext, libsoup
-, gtk-doc, docbook_xsl, gobjectIntrospection, tzdata, geocode-glib, vala, gnome3 }:
+, gtk-doc, docbook_xsl, docbook_xml_dtd_43, gobjectIntrospection, python3, tzdata, geocode-glib, vala, gnome3 }:
 
 let
   pname = "libgweather";
@@ -14,7 +14,7 @@ in stdenv.mkDerivation rec {
     sha256 = "0xfy5ghwvnz2g9074dy6512m4z2pv66pmja14vhi9imgacbfh708";
   };
 
-  nativeBuildInputs = [ meson ninja pkgconfig gettext vala gtk-doc docbook_xsl gobjectIntrospection ];
+  nativeBuildInputs = [ meson ninja pkgconfig gettext vala gtk-doc docbook_xsl docbook_xml_dtd_43 gobjectIntrospection python3 ];
   buildInputs = [ glib gtk libsoup libxml2 geocode-glib ];
 
   postPatch = ''
diff --git a/pkgs/desktops/gnome-3/core/mutter/default.nix b/pkgs/desktops/gnome-3/core/mutter/default.nix
index 631107fe7a80..b05644366dc0 100644
--- a/pkgs/desktops/gnome-3/core/mutter/default.nix
+++ b/pkgs/desktops/gnome-3/core/mutter/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
   configureFlags = [
     "--with-x"
     "--disable-static"
-    "--enable-remote-desktop"
+    # "--enable-remote-desktop"
     "--enable-shape"
     "--enable-sm"
     "--enable-startup-notification"
diff --git a/pkgs/desktops/gnome-3/core/nautilus/default.nix b/pkgs/desktops/gnome-3/core/nautilus/default.nix
index 5beabd08fa3a..33beb8a87d37 100644
--- a/pkgs/desktops/gnome-3/core/nautilus/default.nix
+++ b/pkgs/desktops/gnome-3/core/nautilus/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, meson, ninja, pkgconfig, gettext, libxml2, desktop-file-utils, wrapGAppsHook
+{ stdenv, fetchurl, meson, ninja, pkgconfig, gettext, libxml2, desktop-file-utils, python3, wrapGAppsHook
 , gtk, gnome3, gnome-autoar, dbus-glib, shared-mime-info, libnotify, libexif
 , exempi, librsvg, tracker, tracker-miners, gnome-desktop, gexiv2, libselinux, gdk_pixbuf }:
 
@@ -13,7 +13,7 @@ in stdenv.mkDerivation rec {
     sha256 = "19dhpa2ylrg8d5274lahy7xqr2p9z3jnq1h4qmsh95czkpy7is4w";
   };
 
-  nativeBuildInputs = [ meson ninja pkgconfig libxml2 gettext wrapGAppsHook desktop-file-utils ];
+  nativeBuildInputs = [ meson ninja pkgconfig libxml2 gettext python3 wrapGAppsHook desktop-file-utils ];
 
   buildInputs = [
     dbus-glib shared-mime-info libexif gtk exempi libnotify libselinux
diff --git a/pkgs/desktops/gnome-3/core/rygel/default.nix b/pkgs/desktops/gnome-3/core/rygel/default.nix
new file mode 100644
index 000000000000..ef0886328974
--- /dev/null
+++ b/pkgs/desktops/gnome-3/core/rygel/default.nix
@@ -0,0 +1,54 @@
+{ stdenv, fetchurl, pkgconfig, vala, gettext, libxml2, gobjectIntrospection, gtk-doc, wrapGAppsHook, glib, gssdp, gupnp, gupnp-av, gupnp-dlna, gst_all_1, libgee, libsoup, gtk3, libmediaart, sqlite, systemd, tracker, shared-mime-info, gnome3 }:
+
+let
+  pname = "rygel";
+  version = "0.36.2";
+in stdenv.mkDerivation rec {
+  name = "${pname}-${version}";
+
+  # TODO: split out lib
+  outputs = [ "out" "dev" "devdoc" ];
+
+  src = fetchurl {
+    url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
+    sha256 = "0i12z6bzfzgcjidhxa2jsvpm4hqpab0s032z13jy2vbifrncfcnk";
+  };
+
+  nativeBuildInputs = [
+    pkgconfig vala gettext libxml2 gobjectIntrospection gtk-doc wrapGAppsHook
+  ];
+  buildInputs = [
+    glib gssdp gupnp gupnp-av gupnp-dlna libgee libsoup gtk3 libmediaart sqlite systemd tracker shared-mime-info
+  ] ++ (with gst_all_1; [
+    gstreamer gst-plugins-base gst-plugins-good gst-plugins-bad gst-plugins-ugly
+  ]);
+
+  configureFlags = [
+    "--with-systemduserunitdir=$(out)/lib/systemd/user"
+    "--enable-apidocs"
+    "--sysconfdir=/etc"
+  ];
+
+  installFlags = [
+    "sysconfdir=$(out)/etc"
+  ];
+
+  doCheck = true;
+
+  enableParallelBuilding = true;
+
+  passthru = {
+    updateScript = gnome3.updateScript {
+      packageName = pname;
+      attrPath = "gnome3.${pname}";
+    };
+  };
+
+  meta = with stdenv.lib; {
+    description = "A home media solution (UPnP AV MediaServer) that allows you to easily share audio, video and pictures to other devices";
+    homepage = https://wiki.gnome.org/Projects/Rygel;
+    license = licenses.lgpl21Plus;
+    maintainers = gnome3.maintainers;
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/desktops/gnome-3/core/simple-scan/default.nix b/pkgs/desktops/gnome-3/core/simple-scan/default.nix
index e4458b7d0a3f..8596a059ca5d 100644
--- a/pkgs/desktops/gnome-3/core/simple-scan/default.nix
+++ b/pkgs/desktops/gnome-3/core/simple-scan/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, meson, ninja, pkgconfig, gettext, itstool, wrapGAppsHook
+{ stdenv, fetchurl, meson, ninja, pkgconfig, gettext, itstool, python3, wrapGAppsHook
 , cairo, gdk_pixbuf, colord, glib, gtk, gusb, packagekit, libwebp
 , libxml2, sane-backends, vala, gnome3, gobjectIntrospection }:
 
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ cairo gdk_pixbuf colord glib gnome3.defaultIconTheme gusb
                 gtk libwebp packagekit sane-backends vala ];
   nativeBuildInputs = [
-    meson ninja gettext itstool pkgconfig wrapGAppsHook libxml2
+    meson ninja gettext itstool pkgconfig python3 wrapGAppsHook libxml2
     # For setup hook
     gobjectIntrospection
   ];
diff --git a/pkgs/desktops/gnome-3/core/tracker/default.nix b/pkgs/desktops/gnome-3/core/tracker/default.nix
index a0da1b7147d2..891d4a70a5f7 100644
--- a/pkgs/desktops/gnome-3/core/tracker/default.nix
+++ b/pkgs/desktops/gnome-3/core/tracker/default.nix
@@ -5,7 +5,7 @@
 
 let
   pname = "tracker";
-  version = "2.1.2";
+  version = "2.1.4";
 in stdenv.mkDerivation rec {
   name = "${pname}-${version}";
 
@@ -13,7 +13,7 @@ in stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${gnome3.versionBranch version}/${name}.tar.xz";
-    sha256 = "1sf923f3ya3gj5s90da8qkqqvjj3fdll7xrjgscpb6yhgv0kzqsi";
+    sha256 = "0xf58zld6pnfa8k7k70rv8ya8g7zqgahz6q4sapwxs6k97d2fgsx";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome-3/default.nix b/pkgs/desktops/gnome-3/default.nix
index d90440d5f557..5112f8b496f5 100644
--- a/pkgs/desktops/gnome-3/default.nix
+++ b/pkgs/desktops/gnome-3/default.nix
@@ -216,6 +216,8 @@ lib.makeScope pkgs.newScope (self: with self; {
 
   rest = callPackage ./core/rest { };
 
+  rygel = callPackage ./core/rygel { };
+
   simple-scan = callPackage ./core/simple-scan { };
 
   sushi = callPackage ./core/sushi { };
diff --git a/pkgs/desktops/gnome-3/devtools/devhelp/default.nix b/pkgs/desktops/gnome-3/devtools/devhelp/default.nix
index 63fa2ebddcff..aa0f545c2dbd 100644
--- a/pkgs/desktops/gnome-3/devtools/devhelp/default.nix
+++ b/pkgs/desktops/gnome-3/devtools/devhelp/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, meson, ninja, pkgconfig, gnome3, gtk3, wrapGAppsHook
-, glib, amtk, appstream-glib, gobjectIntrospection
+, glib, amtk, appstream-glib, gobjectIntrospection, python3
 , webkitgtk, gettext, itstool, gsettings-desktop-schemas }:
 
 stdenv.mkDerivation rec {
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
     sha256 = "1rzilsn0v8dj86djankllc5f10d58f6rwg4w1fffh5zly10nlli5";
   };
 
-  nativeBuildInputs = [ meson ninja pkgconfig gettext itstool wrapGAppsHook appstream-glib gobjectIntrospection ];
+  nativeBuildInputs = [ meson ninja pkgconfig gettext itstool wrapGAppsHook appstream-glib gobjectIntrospection python3 ];
   buildInputs = [
     glib gtk3 webkitgtk amtk
     gnome3.defaultIconTheme gsettings-desktop-schemas
diff --git a/pkgs/desktops/gnome-3/extensions/mediaplayer/default.nix b/pkgs/desktops/gnome-3/extensions/mediaplayer/default.nix
index f64a0ef3f27e..6038443944f2 100644
--- a/pkgs/desktops/gnome-3/extensions/mediaplayer/default.nix
+++ b/pkgs/desktops/gnome-3/extensions/mediaplayer/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, glib, meson, gettext, ninja }:
+{ stdenv, fetchFromGitHub, glib, meson, gettext, ninja, python3 }:
 
 stdenv.mkDerivation rec {
   name = "gnome-shell-extensions-mediaplayer-${version}";
@@ -14,6 +14,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     meson
     ninja
+    python3
   ];
   buildInputs = [
     glib
diff --git a/pkgs/desktops/gnome-3/games/atomix/default.nix b/pkgs/desktops/gnome-3/games/atomix/default.nix
index 8ea4b82ca039..f7a18f4c5c31 100644
--- a/pkgs/desktops/gnome-3/games/atomix/default.nix
+++ b/pkgs/desktops/gnome-3/games/atomix/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, meson, ninja, pkgconfig, wrapGAppsHook
+{ stdenv, fetchurl, meson, ninja, pkgconfig, wrapGAppsHook, python3
 , gettext, gnome3, glib, gtk3, libgnome-games-support, gdk_pixbuf }:
 
 let
@@ -12,7 +12,7 @@ in stdenv.mkDerivation rec {
     sha256 = "1k8bvwywpvw5f13pw40brk6c3rz2mdz9cd4zhcawg7qdm77dvcvb";
   };
 
-  nativeBuildInputs = [ meson ninja pkgconfig gettext wrapGAppsHook ];
+  nativeBuildInputs = [ meson ninja pkgconfig gettext wrapGAppsHook python3 ];
   buildInputs = [ glib gtk3 gdk_pixbuf libgnome-games-support gnome3.defaultIconTheme ];
 
   postPatch = ''
diff --git a/pkgs/desktops/gnome-3/games/gnome-chess/default.nix b/pkgs/desktops/gnome-3/games/gnome-chess/default.nix
index aebd72d65df2..01e23384b8ea 100644
--- a/pkgs/desktops/gnome-3/games/gnome-chess/default.nix
+++ b/pkgs/desktops/gnome-3/games/gnome-chess/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, meson, ninja, vala, pkgconfig, wrapGAppsHook, gobjectIntrospection
-, gettext, itstool, libxml2, gnome3, glib, gtk3, librsvg }:
+, gettext, itstool, libxml2, python3, gnome3, glib, gtk3, librsvg }:
 
 stdenv.mkDerivation rec {
   name = "gnome-chess-${version}";
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
     sha256 = "1q8gc0mq8k2b7pjy363g0yjd80czqknw6ssqzbvgqx5b8nkfvmv1";
   };
 
-  nativeBuildInputs = [ meson ninja vala pkgconfig gettext itstool libxml2 wrapGAppsHook gobjectIntrospection ];
+  nativeBuildInputs = [ meson ninja vala pkgconfig gettext itstool libxml2 python3 wrapGAppsHook gobjectIntrospection ];
   buildInputs = [ glib gtk3 librsvg gnome3.defaultIconTheme ];
 
   postPatch = ''
diff --git a/pkgs/desktops/gnome-3/games/gnome-mines/default.nix b/pkgs/desktops/gnome-3/games/gnome-mines/default.nix
index 33672054a373..297e1a9ed7bf 100644
--- a/pkgs/desktops/gnome-3/games/gnome-mines/default.nix
+++ b/pkgs/desktops/gnome-3/games/gnome-mines/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, meson, ninja, vala, gobjectIntrospection, pkgconfig, gnome3, gtk3, wrapGAppsHook
-, librsvg, gettext, itstool, libxml2, libgnome-games-support, libgee }:
+, librsvg, gettext, itstool, python3, libxml2, libgnome-games-support, libgee }:
 
 stdenv.mkDerivation rec {
   name = "gnome-mines-${version}";
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
   };
 
   # gobjectIntrospection for finding vapi files
-  nativeBuildInputs = [ meson ninja vala gobjectIntrospection pkgconfig gettext itstool libxml2 wrapGAppsHook ];
+  nativeBuildInputs = [ meson ninja vala gobjectIntrospection pkgconfig gettext itstool python3 libxml2 wrapGAppsHook ];
   buildInputs = [ gtk3 librsvg gnome3.defaultIconTheme libgnome-games-support libgee ];
 
   postPatch = ''
diff --git a/pkgs/desktops/gnome-3/games/swell-foop/default.nix b/pkgs/desktops/gnome-3/games/swell-foop/default.nix
index 13b6f57d0fd2..b7dc6203b8a9 100644
--- a/pkgs/desktops/gnome-3/games/swell-foop/default.nix
+++ b/pkgs/desktops/gnome-3/games/swell-foop/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, meson, ninja, pkgconfig, vala, glib, gtk3, gnome3, desktop-file-utils
-, clutter, clutter-gtk, gettext, itstool, libxml2, wrapGAppsHook }:
+, clutter, clutter-gtk, gettext, itstool, libxml2, wrapGAppsHook, python3 }:
 
 let
   pname = "swell-foop";
@@ -19,7 +19,7 @@ in stdenv.mkDerivation rec {
     };
   };
 
-  nativeBuildInputs = [ meson ninja vala pkgconfig wrapGAppsHook itstool gettext libxml2 desktop-file-utils ];
+  nativeBuildInputs = [ meson ninja vala pkgconfig wrapGAppsHook python3 itstool gettext libxml2 desktop-file-utils ];
   buildInputs = [ glib gtk3 gnome3.defaultIconTheme clutter clutter-gtk ];
 
   postPatch = ''
diff --git a/pkgs/desktops/gnome-3/misc/gnome-tweaks/default.nix b/pkgs/desktops/gnome-3/misc/gnome-tweaks/default.nix
index 41206b71d42a..0ff21a6b0dd8 100644
--- a/pkgs/desktops/gnome-3/misc/gnome-tweaks/default.nix
+++ b/pkgs/desktops/gnome-3/misc/gnome-tweaks/default.nix
@@ -15,7 +15,7 @@ in stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [
-    meson ninja pkgconfig gettext itstool libxml2 wrapGAppsHook
+    meson ninja pkgconfig gettext itstool libxml2 wrapGAppsHook python3Packages.python
   ];
   buildInputs = [
     gtk3 glib gnome3.gsettings-desktop-schemas
diff --git a/pkgs/desktops/lxqt/optional/compton-conf/default.nix b/pkgs/desktops/lxqt/compton-conf/default.nix
index 9c36b523207f..9c36b523207f 100644
--- a/pkgs/desktops/lxqt/optional/compton-conf/default.nix
+++ b/pkgs/desktops/lxqt/compton-conf/default.nix
diff --git a/pkgs/desktops/lxqt/default.nix b/pkgs/desktops/lxqt/default.nix
index 015807ec684e..62b8aaf25abe 100644
--- a/pkgs/desktops/lxqt/default.nix
+++ b/pkgs/desktops/lxqt/default.nix
@@ -7,44 +7,44 @@ let
     # - https://github.com/lxqt/lxqt/wiki/Building-from-source
 
     ### BASE
-    libqtxdg = callPackage ./base/libqtxdg { };
-    lxqt-build-tools = callPackage ./base/lxqt-build-tools { };
-    libsysstat = callPackage ./base/libsysstat { };
-    liblxqt = callPackage ./base/liblxqt { };
+    libqtxdg = callPackage ./libqtxdg { };
+    lxqt-build-tools = callPackage ./lxqt-build-tools { };
+    libsysstat = callPackage ./libsysstat { };
+    liblxqt = callPackage ./liblxqt { };
 
     ### CORE 1
-    libfm-qt = callPackage ./core/libfm-qt { };
-    lxqt-about = callPackage ./core/lxqt-about { };
-    lxqt-admin = callPackage ./core/lxqt-admin { };
-    lxqt-config = callPackage ./core/lxqt-config { };
-    lxqt-globalkeys = callPackage ./core/lxqt-globalkeys { };
-    lxqt-l10n = callPackage ./core/lxqt-l10n { };
-    lxqt-notificationd = callPackage ./core/lxqt-notificationd { };
-    lxqt-openssh-askpass = callPackage ./core/lxqt-openssh-askpass { };
-    lxqt-policykit = callPackage ./core/lxqt-policykit { };
-    lxqt-powermanagement = callPackage ./core/lxqt-powermanagement { };
-    lxqt-qtplugin = callPackage ./core/lxqt-qtplugin { };
-    lxqt-session = callPackage ./core/lxqt-session { };
-    lxqt-sudo = callPackage ./core/lxqt-sudo { };
-    lxqt-themes = callPackage ./core/lxqt-themes { };
-    pavucontrol-qt = libsForQt5.callPackage ./core/pavucontrol-qt { };
-    qtermwidget = callPackage ./core/qtermwidget { };
+    libfm-qt = callPackage ./libfm-qt { };
+    lxqt-about = callPackage ./lxqt-about { };
+    lxqt-admin = callPackage ./lxqt-admin { };
+    lxqt-config = callPackage ./lxqt-config { };
+    lxqt-globalkeys = callPackage ./lxqt-globalkeys { };
+    lxqt-l10n = callPackage ./lxqt-l10n { };
+    lxqt-notificationd = callPackage ./lxqt-notificationd { };
+    lxqt-openssh-askpass = callPackage ./lxqt-openssh-askpass { };
+    lxqt-policykit = callPackage ./lxqt-policykit { };
+    lxqt-powermanagement = callPackage ./lxqt-powermanagement { };
+    lxqt-qtplugin = callPackage ./lxqt-qtplugin { };
+    lxqt-session = callPackage ./lxqt-session { };
+    lxqt-sudo = callPackage ./lxqt-sudo { };
+    lxqt-themes = callPackage ./lxqt-themes { };
+    pavucontrol-qt = libsForQt5.callPackage ./pavucontrol-qt { };
+    qtermwidget = callPackage ./qtermwidget { };
     # for now keep version 0.7.1 because virt-manager-qt currently does not compile with qtermwidget-0.8.0
-    qtermwidget_0_7_1 = callPackage ./core/qtermwidget/0.7.1.nix { };
+    qtermwidget_0_7_1 = callPackage ./qtermwidget/0.7.1.nix { };
 
     ### CORE 2
-    lxqt-panel = callPackage ./core/lxqt-panel { };
-    lxqt-runner = callPackage ./core/lxqt-runner { };
-    pcmanfm-qt = callPackage ./core/pcmanfm-qt { };
+    lxqt-panel = callPackage ./lxqt-panel { };
+    lxqt-runner = callPackage ./lxqt-runner { };
+    pcmanfm-qt = callPackage ./pcmanfm-qt { };
 
     ### OPTIONAL
-    qterminal = callPackage ./optional/qterminal { };
-    compton-conf = pkgs.qt5.callPackage ./optional/compton-conf { };
-    obconf-qt = callPackage ./optional/obconf-qt { };
-    lximage-qt = callPackage ./optional/lximage-qt { };
-    qps = callPackage ./optional/qps { };
-    screengrab = callPackage ./optional/screengrab { };
-    qlipper = callPackage ./optional/qlipper { };
+    qterminal = callPackage ./qterminal { };
+    compton-conf = pkgs.qt5.callPackage ./compton-conf { };
+    obconf-qt = callPackage ./obconf-qt { };
+    lximage-qt = callPackage ./lximage-qt { };
+    qps = callPackage ./qps { };
+    screengrab = callPackage ./screengrab { };
+    qlipper = callPackage ./qlipper { };
 
     preRequisitePackages = [
       pkgs.gvfs # virtual file systems support for PCManFM-QT
diff --git a/pkgs/desktops/lxqt/core/libfm-qt/default.nix b/pkgs/desktops/lxqt/libfm-qt/default.nix
index 4c187f1a07c5..4c187f1a07c5 100644
--- a/pkgs/desktops/lxqt/core/libfm-qt/default.nix
+++ b/pkgs/desktops/lxqt/libfm-qt/default.nix
diff --git a/pkgs/desktops/lxqt/base/liblxqt/default.nix b/pkgs/desktops/lxqt/liblxqt/default.nix
index 0762dbad3f87..0762dbad3f87 100644
--- a/pkgs/desktops/lxqt/base/liblxqt/default.nix
+++ b/pkgs/desktops/lxqt/liblxqt/default.nix
diff --git a/pkgs/desktops/lxqt/base/libqtxdg/default.nix b/pkgs/desktops/lxqt/libqtxdg/default.nix
index 0b23fb2d04f5..0b23fb2d04f5 100644
--- a/pkgs/desktops/lxqt/base/libqtxdg/default.nix
+++ b/pkgs/desktops/lxqt/libqtxdg/default.nix
diff --git a/pkgs/desktops/lxqt/base/libsysstat/default.nix b/pkgs/desktops/lxqt/libsysstat/default.nix
index 2e6b79f9769a..2e6b79f9769a 100644
--- a/pkgs/desktops/lxqt/base/libsysstat/default.nix
+++ b/pkgs/desktops/lxqt/libsysstat/default.nix
diff --git a/pkgs/desktops/lxqt/optional/lximage-qt/default.nix b/pkgs/desktops/lxqt/lximage-qt/default.nix
index 7f80e56bc7d2..7f80e56bc7d2 100644
--- a/pkgs/desktops/lxqt/optional/lximage-qt/default.nix
+++ b/pkgs/desktops/lxqt/lximage-qt/default.nix
diff --git a/pkgs/desktops/lxqt/core/lxqt-about/default.nix b/pkgs/desktops/lxqt/lxqt-about/default.nix
index e109a4f0944c..e109a4f0944c 100644
--- a/pkgs/desktops/lxqt/core/lxqt-about/default.nix
+++ b/pkgs/desktops/lxqt/lxqt-about/default.nix
diff --git a/pkgs/desktops/lxqt/core/lxqt-admin/default.nix b/pkgs/desktops/lxqt/lxqt-admin/default.nix
index a92c352087e8..a92c352087e8 100644
--- a/pkgs/desktops/lxqt/core/lxqt-admin/default.nix
+++ b/pkgs/desktops/lxqt/lxqt-admin/default.nix
diff --git a/pkgs/desktops/lxqt/base/lxqt-build-tools/default.nix b/pkgs/desktops/lxqt/lxqt-build-tools/default.nix
index 46f904d0ec7f..46f904d0ec7f 100644
--- a/pkgs/desktops/lxqt/base/lxqt-build-tools/default.nix
+++ b/pkgs/desktops/lxqt/lxqt-build-tools/default.nix
diff --git a/pkgs/desktops/lxqt/core/lxqt-config/default.nix b/pkgs/desktops/lxqt/lxqt-config/default.nix
index 3a167996ddb2..3a167996ddb2 100644
--- a/pkgs/desktops/lxqt/core/lxqt-config/default.nix
+++ b/pkgs/desktops/lxqt/lxqt-config/default.nix
diff --git a/pkgs/desktops/lxqt/core/lxqt-globalkeys/default.nix b/pkgs/desktops/lxqt/lxqt-globalkeys/default.nix
index 1877236bcddc..1877236bcddc 100644
--- a/pkgs/desktops/lxqt/core/lxqt-globalkeys/default.nix
+++ b/pkgs/desktops/lxqt/lxqt-globalkeys/default.nix
diff --git a/pkgs/desktops/lxqt/core/lxqt-l10n/default.nix b/pkgs/desktops/lxqt/lxqt-l10n/default.nix
index 9a79ec16df09..9a79ec16df09 100644
--- a/pkgs/desktops/lxqt/core/lxqt-l10n/default.nix
+++ b/pkgs/desktops/lxqt/lxqt-l10n/default.nix
diff --git a/pkgs/desktops/lxqt/core/lxqt-notificationd/default.nix b/pkgs/desktops/lxqt/lxqt-notificationd/default.nix
index 32a3c408258c..32a3c408258c 100644
--- a/pkgs/desktops/lxqt/core/lxqt-notificationd/default.nix
+++ b/pkgs/desktops/lxqt/lxqt-notificationd/default.nix
diff --git a/pkgs/desktops/lxqt/core/lxqt-openssh-askpass/default.nix b/pkgs/desktops/lxqt/lxqt-openssh-askpass/default.nix
index 56ea7ec72418..56ea7ec72418 100644
--- a/pkgs/desktops/lxqt/core/lxqt-openssh-askpass/default.nix
+++ b/pkgs/desktops/lxqt/lxqt-openssh-askpass/default.nix
diff --git a/pkgs/desktops/lxqt/core/lxqt-panel/default.nix b/pkgs/desktops/lxqt/lxqt-panel/default.nix
index 8cdbf9f9365a..8cdbf9f9365a 100644
--- a/pkgs/desktops/lxqt/core/lxqt-panel/default.nix
+++ b/pkgs/desktops/lxqt/lxqt-panel/default.nix
diff --git a/pkgs/desktops/lxqt/core/lxqt-policykit/default.nix b/pkgs/desktops/lxqt/lxqt-policykit/default.nix
index dcf46d09b732..dcf46d09b732 100644
--- a/pkgs/desktops/lxqt/core/lxqt-policykit/default.nix
+++ b/pkgs/desktops/lxqt/lxqt-policykit/default.nix
diff --git a/pkgs/desktops/lxqt/core/lxqt-powermanagement/default.nix b/pkgs/desktops/lxqt/lxqt-powermanagement/default.nix
index 3b56a489bee5..3b56a489bee5 100644
--- a/pkgs/desktops/lxqt/core/lxqt-powermanagement/default.nix
+++ b/pkgs/desktops/lxqt/lxqt-powermanagement/default.nix
diff --git a/pkgs/desktops/lxqt/core/lxqt-qtplugin/default.nix b/pkgs/desktops/lxqt/lxqt-qtplugin/default.nix
index 972d0a3cb379..972d0a3cb379 100644
--- a/pkgs/desktops/lxqt/core/lxqt-qtplugin/default.nix
+++ b/pkgs/desktops/lxqt/lxqt-qtplugin/default.nix
diff --git a/pkgs/desktops/lxqt/core/lxqt-runner/default.nix b/pkgs/desktops/lxqt/lxqt-runner/default.nix
index c0ce6321f6e9..c0ce6321f6e9 100644
--- a/pkgs/desktops/lxqt/core/lxqt-runner/default.nix
+++ b/pkgs/desktops/lxqt/lxqt-runner/default.nix
diff --git a/pkgs/desktops/lxqt/core/lxqt-session/default.nix b/pkgs/desktops/lxqt/lxqt-session/default.nix
index e369880b2b4e..e369880b2b4e 100644
--- a/pkgs/desktops/lxqt/core/lxqt-session/default.nix
+++ b/pkgs/desktops/lxqt/lxqt-session/default.nix
diff --git a/pkgs/desktops/lxqt/core/lxqt-sudo/default.nix b/pkgs/desktops/lxqt/lxqt-sudo/default.nix
index 4dddd7de09bc..4dddd7de09bc 100644
--- a/pkgs/desktops/lxqt/core/lxqt-sudo/default.nix
+++ b/pkgs/desktops/lxqt/lxqt-sudo/default.nix
diff --git a/pkgs/desktops/lxqt/core/lxqt-themes/default.nix b/pkgs/desktops/lxqt/lxqt-themes/default.nix
index 1d2301d4a3bf..1d2301d4a3bf 100644
--- a/pkgs/desktops/lxqt/core/lxqt-themes/default.nix
+++ b/pkgs/desktops/lxqt/lxqt-themes/default.nix
diff --git a/pkgs/desktops/lxqt/optional/obconf-qt/default.nix b/pkgs/desktops/lxqt/obconf-qt/default.nix
index 5ddb87ab55db..5ddb87ab55db 100644
--- a/pkgs/desktops/lxqt/optional/obconf-qt/default.nix
+++ b/pkgs/desktops/lxqt/obconf-qt/default.nix
diff --git a/pkgs/desktops/lxqt/core/pavucontrol-qt/default.nix b/pkgs/desktops/lxqt/pavucontrol-qt/default.nix
index efd5fde16661..efd5fde16661 100644
--- a/pkgs/desktops/lxqt/core/pavucontrol-qt/default.nix
+++ b/pkgs/desktops/lxqt/pavucontrol-qt/default.nix
diff --git a/pkgs/desktops/lxqt/core/pcmanfm-qt/default.nix b/pkgs/desktops/lxqt/pcmanfm-qt/default.nix
index 99dace0e42e6..99dace0e42e6 100644
--- a/pkgs/desktops/lxqt/core/pcmanfm-qt/default.nix
+++ b/pkgs/desktops/lxqt/pcmanfm-qt/default.nix
diff --git a/pkgs/desktops/lxqt/optional/qlipper/default.nix b/pkgs/desktops/lxqt/qlipper/default.nix
index e09c8bc09d50..e09c8bc09d50 100644
--- a/pkgs/desktops/lxqt/optional/qlipper/default.nix
+++ b/pkgs/desktops/lxqt/qlipper/default.nix
diff --git a/pkgs/desktops/lxqt/optional/qps/default.nix b/pkgs/desktops/lxqt/qps/default.nix
index a8ee18daf3c1..a8ee18daf3c1 100644
--- a/pkgs/desktops/lxqt/optional/qps/default.nix
+++ b/pkgs/desktops/lxqt/qps/default.nix
diff --git a/pkgs/desktops/lxqt/optional/qterminal/default.nix b/pkgs/desktops/lxqt/qterminal/default.nix
index 3d5a25634d7c..3d5a25634d7c 100644
--- a/pkgs/desktops/lxqt/optional/qterminal/default.nix
+++ b/pkgs/desktops/lxqt/qterminal/default.nix
diff --git a/pkgs/desktops/lxqt/core/qtermwidget/0.7.1.nix b/pkgs/desktops/lxqt/qtermwidget/0.7.1.nix
index 93c93d2c6ba1..93c93d2c6ba1 100644
--- a/pkgs/desktops/lxqt/core/qtermwidget/0.7.1.nix
+++ b/pkgs/desktops/lxqt/qtermwidget/0.7.1.nix
diff --git a/pkgs/desktops/lxqt/core/qtermwidget/default.nix b/pkgs/desktops/lxqt/qtermwidget/default.nix
index eae53cefc58b..eae53cefc58b 100644
--- a/pkgs/desktops/lxqt/core/qtermwidget/default.nix
+++ b/pkgs/desktops/lxqt/qtermwidget/default.nix
diff --git a/pkgs/desktops/lxqt/optional/screengrab/default.nix b/pkgs/desktops/lxqt/screengrab/default.nix
index 8890d3f47808..8890d3f47808 100644
--- a/pkgs/desktops/lxqt/optional/screengrab/default.nix
+++ b/pkgs/desktops/lxqt/screengrab/default.nix
diff --git a/pkgs/desktops/mate/mate-session-manager/default.nix b/pkgs/desktops/mate/mate-session-manager/default.nix
index 47657375bbab..38881e425762 100644
--- a/pkgs/desktops/mate/mate-session-manager/default.nix
+++ b/pkgs/desktops/mate/mate-session-manager/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   name = "mate-session-manager-${version}";
-  version = "1.20.1";
+  version = "1.21.0";
 
   src = fetchurl {
     url = "http://pub.mate-desktop.org/releases/${mate.getRelease version}/${name}.tar.xz";
-    sha256 = "0gdxa46ps0fxspri08kpp99vzx06faw6x30k6vbjg5m7x1xfq7i5";
+    sha256 = "1556kn4sk41x70m8cx200g4c9q3wndnhdxj4vp93sw262yqmk9mn";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/plasma-5/fetch.sh b/pkgs/desktops/plasma-5/fetch.sh
index acf769f02e33..fc1850b3c2a4 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.13.4/ -A '*.tar.xz' )
+WGET_ARGS=( https://download.kde.org/stable/plasma/5.13.5/ -A '*.tar.xz' )
diff --git a/pkgs/desktops/plasma-5/srcs.nix b/pkgs/desktops/plasma-5/srcs.nix
index 752493b1a70d..a6c3cb66f6a2 100644
--- a/pkgs/desktops/plasma-5/srcs.nix
+++ b/pkgs/desktops/plasma-5/srcs.nix
@@ -3,363 +3,363 @@
 
 {
   bluedevil = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/bluedevil-5.13.4.tar.xz";
-      sha256 = "1f7bjj3p5n8pvmqqgqz5xgjjhq1mjwknd36hrr5jn3klhbyahqkk";
-      name = "bluedevil-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/bluedevil-5.13.5.tar.xz";
+      sha256 = "0am708cb6jfccx1jfbriwc2jgwd4ajqllirc9i0bg4jz5ydxbjxg";
+      name = "bluedevil-5.13.5.tar.xz";
     };
   };
   breeze = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/breeze-5.13.4.tar.xz";
-      sha256 = "1kxcd8zkk79mjh1j0lzw2nf0v0w2qc4zzb68nw61k1ca8v9mgq84";
-      name = "breeze-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/breeze-5.13.5.tar.xz";
+      sha256 = "09jkkfdmngvbp8i2y6irlv6yvrzpc86mw6apmqvphiaqsilyxaw0";
+      name = "breeze-5.13.5.tar.xz";
     };
   };
   breeze-grub = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/breeze-grub-5.13.4.tar.xz";
-      sha256 = "1vxy24b2ndjkljw5ipwl8nl8nqckxr64sq6v4p690wib9j1nly09";
-      name = "breeze-grub-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/breeze-grub-5.13.5.tar.xz";
+      sha256 = "03hsq77gi75chgyq9pzh3ry6k6bi78pfm33zn8gx784k9fx7gvqr";
+      name = "breeze-grub-5.13.5.tar.xz";
     };
   };
   breeze-gtk = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/breeze-gtk-5.13.4.tar.xz";
-      sha256 = "0sa0v9irimqhh17c1nykzkbhr6n3agam8y0idfr26xg7jblch3s0";
-      name = "breeze-gtk-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/breeze-gtk-5.13.5.tar.xz";
+      sha256 = "1knh0b27b81rnd87s31s2mawqcl1yzwjcakk5npzfm3nj23xakv3";
+      name = "breeze-gtk-5.13.5.tar.xz";
     };
   };
   breeze-plymouth = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/breeze-plymouth-5.13.4.tar.xz";
-      sha256 = "1v02bh3xwcx5vixcp21a4wq04nn3wsgip5ycrgsb2bn013mspv20";
-      name = "breeze-plymouth-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/breeze-plymouth-5.13.5.tar.xz";
+      sha256 = "0xsjl602wsb5ak1xg19w8y0fv9404cwbj1rcrm0hgjv735m32c57";
+      name = "breeze-plymouth-5.13.5.tar.xz";
     };
   };
   discover = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/discover-5.13.4.tar.xz";
-      sha256 = "1n7wd9w1r9a5ncgqc2s0aywivzqc3115wr93hrf1lqxpk0qskkyc";
-      name = "discover-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/discover-5.13.5.tar.xz";
+      sha256 = "1q3nc5lih95vs5masd8z897hvfvpwidiisj8bg62iq0cblsgwz6d";
+      name = "discover-5.13.5.tar.xz";
     };
   };
   drkonqi = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/drkonqi-5.13.4.tar.xz";
-      sha256 = "1ddqisah98qd0hqg6pz5jk1pmisji2c6mj3i5w7df57zi7kpj4wz";
-      name = "drkonqi-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/drkonqi-5.13.5.tar.xz";
+      sha256 = "02kbmymzzhsf9slaf64xlp8sfv59gl7qf1g2ahcq58sqry5bqjnk";
+      name = "drkonqi-5.13.5.tar.xz";
     };
   };
   kactivitymanagerd = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/kactivitymanagerd-5.13.4.tar.xz";
-      sha256 = "0iq5bxnszdndbvrqi8xm80d7i67xw0z45yq3qdsdlx80zzgb9g9d";
-      name = "kactivitymanagerd-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/kactivitymanagerd-5.13.5.tar.xz";
+      sha256 = "0zfvypxh748vsl270l8wn6inmp8shi2m051yy699qdqbyb039wjq";
+      name = "kactivitymanagerd-5.13.5.tar.xz";
     };
   };
   kde-cli-tools = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/kde-cli-tools-5.13.4.tar.xz";
-      sha256 = "1dznj0jni4bm5z0hy644pcf7iavfd9yp8hfx87af3xhxxrifws37";
-      name = "kde-cli-tools-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/kde-cli-tools-5.13.5.tar.xz";
+      sha256 = "0p1az420p4ldinmxnkdwl69542ddm0r4f3wmdysfird7d68yw2hp";
+      name = "kde-cli-tools-5.13.5.tar.xz";
     };
   };
   kdecoration = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/kdecoration-5.13.4.tar.xz";
-      sha256 = "1clf939g7qpnxxxw8iv3i4l9330dayzhg0cfrx6mffm2ywny67wd";
-      name = "kdecoration-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/kdecoration-5.13.5.tar.xz";
+      sha256 = "04p77fs5c9b4mbpcl4a2c1wc0i09g51b7c1v7n9fd4nfkm7z8sqs";
+      name = "kdecoration-5.13.5.tar.xz";
     };
   };
   kde-gtk-config = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/kde-gtk-config-5.13.4.tar.xz";
-      sha256 = "03x5yvgk6kjy12qh3xblv90rsf8g5nsrc9573zd3rzz74pjql605";
-      name = "kde-gtk-config-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/kde-gtk-config-5.13.5.tar.xz";
+      sha256 = "06j64y7p5kxnrc3407hma0drh3sb8jvjp3mx6na6b86z4xxf1kj6";
+      name = "kde-gtk-config-5.13.5.tar.xz";
     };
   };
   kdeplasma-addons = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/kdeplasma-addons-5.13.4.tar.xz";
-      sha256 = "1kgnmkykma14vinabal747hpvnrahccksgb68pxb4lxgylbcvy04";
-      name = "kdeplasma-addons-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/kdeplasma-addons-5.13.5.tar.xz";
+      sha256 = "1a4f61bbwhc2y0lnrglbq3sas16bxff0ga3im9d15nq5a5q637i1";
+      name = "kdeplasma-addons-5.13.5.tar.xz";
     };
   };
   kgamma5 = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/kgamma5-5.13.4.tar.xz";
-      sha256 = "0hcnflk7zzpx00w6ifidrwxjmr99xrisfz2206fggal5j7y5w6yw";
-      name = "kgamma5-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/kgamma5-5.13.5.tar.xz";
+      sha256 = "08brmdi5y69iwhj7506q2l0bfm92c9l9ds9w4d1ipcgnbydrhfyn";
+      name = "kgamma5-5.13.5.tar.xz";
     };
   };
   khotkeys = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/khotkeys-5.13.4.tar.xz";
-      sha256 = "1nq2afb06y3383gh3n5b1b4sbry5nicy3znid6p7b0jch1a0v73x";
-      name = "khotkeys-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/khotkeys-5.13.5.tar.xz";
+      sha256 = "16kp5ck6zfpnmnvspdnqklix54np3sxvj5ixs9saqf3gd5rk49mp";
+      name = "khotkeys-5.13.5.tar.xz";
     };
   };
   kinfocenter = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/kinfocenter-5.13.4.tar.xz";
-      sha256 = "1vnch4ic1ppsrnp1w6rjcmn3c9ni91b3dgk0z91aw2x8c77cvji9";
-      name = "kinfocenter-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/kinfocenter-5.13.5.tar.xz";
+      sha256 = "15r9j33z3l31gip9q3fw015s4mxakgy5wqfs04w5p0aq8x9xkpzl";
+      name = "kinfocenter-5.13.5.tar.xz";
     };
   };
   kmenuedit = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/kmenuedit-5.13.4.tar.xz";
-      sha256 = "0jyb4dc42dnpb6v4hkfb9m97yim767z0dc0i0hxqvznd87n5nk98";
-      name = "kmenuedit-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/kmenuedit-5.13.5.tar.xz";
+      sha256 = "0zha39cd3p5nmrbkhkbcavxns2n2wnb6chc5kcsk5km9wn4laxz0";
+      name = "kmenuedit-5.13.5.tar.xz";
     };
   };
   kscreen = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/kscreen-5.13.4.tar.xz";
-      sha256 = "0labhlwdar6iibixal48bkk777hpyaibszv9mshlmhd7riaqrxs3";
-      name = "kscreen-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/kscreen-5.13.5.tar.xz";
+      sha256 = "0kf1cf88n46b4js7x9r504605v68wp5hwpwid6phvfqdyqrvbb77";
+      name = "kscreen-5.13.5.tar.xz";
     };
   };
   kscreenlocker = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/kscreenlocker-5.13.4.tar.xz";
-      sha256 = "01b6y0wwclhni6ansg3avkml4qsq93rrg254ihy18bd1h05jxg4r";
-      name = "kscreenlocker-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/kscreenlocker-5.13.5.tar.xz";
+      sha256 = "171zjk9r333kbkb9pashw0rdmiwq11nzfin4wnmqzwp7rrclxs18";
+      name = "kscreenlocker-5.13.5.tar.xz";
     };
   };
   ksshaskpass = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/ksshaskpass-5.13.4.tar.xz";
-      sha256 = "1f1567ac8qlgjgbqbksxqm969shydw3nizhn3ixvzr0n81lvab36";
-      name = "ksshaskpass-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/ksshaskpass-5.13.5.tar.xz";
+      sha256 = "1znhj8x8kag1jrw0j1kfvqgprdayrcfbmawz2jap1ik2bjq7dp81";
+      name = "ksshaskpass-5.13.5.tar.xz";
     };
   };
   ksysguard = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/ksysguard-5.13.4.tar.xz";
-      sha256 = "1pg5687mlf5h4wb65my0v6scrj1zkxm5755wlq1jdasqr6zffdw0";
-      name = "ksysguard-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/ksysguard-5.13.5.tar.xz";
+      sha256 = "1qjqhqc23rbimz3qj8gr3dhp0griwgbiajhvjngh1jl55fb3q29j";
+      name = "ksysguard-5.13.5.tar.xz";
     };
   };
   kwallet-pam = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/kwallet-pam-5.13.4.tar.xz";
-      sha256 = "0f9pg73710adr8p7m9qmync2lc86yl6hxmvr854lqzrp9mm2an0p";
-      name = "kwallet-pam-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/kwallet-pam-5.13.5.tar.xz";
+      sha256 = "145daahh8qjpbfcvjk2zyd6k3sr22npgnv3n23j9aim75qiwz1ac";
+      name = "kwallet-pam-5.13.5.tar.xz";
     };
   };
   kwayland-integration = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/kwayland-integration-5.13.4.tar.xz";
-      sha256 = "0mhsidzpv5wg59d3v5z3a4n27fgfpdcr6y33zvib9k67isgx39h1";
-      name = "kwayland-integration-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/kwayland-integration-5.13.5.tar.xz";
+      sha256 = "1qhkrs8md36z5gndkm88pyv6mspqsdsdavjz8klfwfv1hii6qyds";
+      name = "kwayland-integration-5.13.5.tar.xz";
     };
   };
   kwin = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/kwin-5.13.4.tar.xz";
-      sha256 = "1inh20xh80nv1vn0154jqsn6cn1xqfgjvvdvng6k2v330sd15dc6";
-      name = "kwin-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/kwin-5.13.5.tar.xz";
+      sha256 = "0ld1pclni1axrh7jww3gxlfwkbjsfbqb9z7gygj2ff3nmc6khgfm";
+      name = "kwin-5.13.5.tar.xz";
     };
   };
   kwrited = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/kwrited-5.13.4.tar.xz";
-      sha256 = "1j9gl6d3j5mzydb4r9xmzxs313f2pj5phnh2n74nia672fn5kpqb";
-      name = "kwrited-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/kwrited-5.13.5.tar.xz";
+      sha256 = "150nhjk4vcigs2r2bxqk309g81lxpnkkv8l44hiyivcbmwvc3aya";
+      name = "kwrited-5.13.5.tar.xz";
     };
   };
   libkscreen = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/libkscreen-5.13.4.tar.xz";
-      sha256 = "1azcpc3jm006s8zswv1w22gcajyvs800xc77l6das5jrl4ddk309";
-      name = "libkscreen-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/libkscreen-5.13.5.tar.xz";
+      sha256 = "04719va15i66qn1xqx318v6risxhp8bfcnhxh9mqm5h9qx5c6c4k";
+      name = "libkscreen-5.13.5.tar.xz";
     };
   };
   libksysguard = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/libksysguard-5.13.4.tar.xz";
-      sha256 = "0k8q5bxk9zyv7c3nny1c399v8acqs618nw39q20pj2qdijl9ibvh";
-      name = "libksysguard-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/libksysguard-5.13.5.tar.xz";
+      sha256 = "0pccjjjzk8dxgmkj5vrq20nwb3qpf9isjd1zmg5nc127jld924x6";
+      name = "libksysguard-5.13.5.tar.xz";
     };
   };
   milou = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/milou-5.13.4.tar.xz";
-      sha256 = "0rqwjb91a5x7piwdfh4xy8f2nhkfzdaja0ifpm7hrkysq6d9yzad";
-      name = "milou-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/milou-5.13.5.tar.xz";
+      sha256 = "0rhgj10l2iik1mgnv2bixxqjyc3pl731bs1bqz9gsa3wiazspwrv";
+      name = "milou-5.13.5.tar.xz";
     };
   };
   oxygen = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/oxygen-5.13.4.tar.xz";
-      sha256 = "0035z94v4fbdl5jcaggv1vqjxk9z1marf4vs8zm7fkz6hhcn4vj2";
-      name = "oxygen-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/oxygen-5.13.5.tar.xz";
+      sha256 = "0wm2mngh0gb0lqvx8g82ml2sdv0kbkx14mpb8c6aw3hslcwma7yd";
+      name = "oxygen-5.13.5.tar.xz";
     };
   };
   plasma-browser-integration = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/plasma-browser-integration-5.13.4.tar.xz";
-      sha256 = "19vqn3wbkfzsbf5rl61zaqgp10q83zxjmvvbn9325rp3dsv3i0jb";
-      name = "plasma-browser-integration-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/plasma-browser-integration-5.13.5.tar.xz";
+      sha256 = "0bhpbq4n29x8m0nmxlli5ljmgpw9da7sfbmf3j5c3wnxqja16sgy";
+      name = "plasma-browser-integration-5.13.5.tar.xz";
     };
   };
   plasma-desktop = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/plasma-desktop-5.13.4.tar.xz";
-      sha256 = "1wmyms3bjka9kgjc6zp17j8w707lnmr2kxqzqznm78c16h34lfdx";
-      name = "plasma-desktop-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/plasma-desktop-5.13.5.tar.xz";
+      sha256 = "14isrq3n9lm1nzmyv8zdgq6pwnv2zmg4dwxyp7fvqjxfls8851vp";
+      name = "plasma-desktop-5.13.5.tar.xz";
     };
   };
   plasma-integration = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/plasma-integration-5.13.4.tar.xz";
-      sha256 = "0p5wqj0jdvwq7blj7j1va00jlkqkwcxfkcj7gpnjmnsggp25mpsq";
-      name = "plasma-integration-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/plasma-integration-5.13.5.tar.xz";
+      sha256 = "0j57ra79p5lkj81d05hhb87mrxgyj6qikkpzcb0p2dr2x8cmkng2";
+      name = "plasma-integration-5.13.5.tar.xz";
     };
   };
   plasma-nm = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/plasma-nm-5.13.4.tar.xz";
-      sha256 = "0qadmxzmw8a4r43ri2xxj4i884vraxlyxmwqkkn540x0aysyj4rq";
-      name = "plasma-nm-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/plasma-nm-5.13.5.tar.xz";
+      sha256 = "1z8f5iybgra72vhpiayiwpysvv2z8x2r5xal8rhgf7y24xcjwxmi";
+      name = "plasma-nm-5.13.5.tar.xz";
     };
   };
   plasma-pa = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/plasma-pa-5.13.4.tar.xz";
-      sha256 = "1xqmp19dkggfzapns94jr0jz03aphdlz31iw888w2qj730zdx97k";
-      name = "plasma-pa-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/plasma-pa-5.13.5.tar.xz";
+      sha256 = "0p54x4zr3w009nn7g00qmxh7xil35x7b48d0l0flz5d7hvkk6nd8";
+      name = "plasma-pa-5.13.5.tar.xz";
     };
   };
   plasma-sdk = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/plasma-sdk-5.13.4.tar.xz";
-      sha256 = "13ddin88ila3imkhn9bgaf1i0bbbmcb4xigk2cps74s8vl98jpfa";
-      name = "plasma-sdk-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/plasma-sdk-5.13.5.tar.xz";
+      sha256 = "1x8hq343xzwlcsdvf0jy0qgn64xw8l11lawhknbjrf90qq58axga";
+      name = "plasma-sdk-5.13.5.tar.xz";
     };
   };
   plasma-tests = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/plasma-tests-5.13.4.tar.xz";
-      sha256 = "0fzqw3ix9sa3m492xjz46wsaqs7cgfpcprdx3z05ww4217k5d4sf";
-      name = "plasma-tests-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/plasma-tests-5.13.5.tar.xz";
+      sha256 = "00nm0d0c4zccbwnhy8sc1qb4sf7bs5vfky3n7lihwyng3syqwz3d";
+      name = "plasma-tests-5.13.5.tar.xz";
     };
   };
   plasma-vault = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/plasma-vault-5.13.4.tar.xz";
-      sha256 = "1acpn49vb645a30xnxxf0rylihb7n838l0ky5169n6dq96swam4j";
-      name = "plasma-vault-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/plasma-vault-5.13.5.tar.xz";
+      sha256 = "1045zb58pmcyn0cznb81bmcpd4hkhxm6509rznrjykkhcfcrbf8z";
+      name = "plasma-vault-5.13.5.tar.xz";
     };
   };
   plasma-workspace = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/plasma-workspace-5.13.4.tar.xz";
-      sha256 = "1kvl6pbhqw7llv8llq020qvbk7glynix8c4dsh3dfp170xpg3qnh";
-      name = "plasma-workspace-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/plasma-workspace-5.13.5.tar.xz";
+      sha256 = "1qcmw60lyp966rhvw9raaqrvxdv09pr8zc7x3fx1vpm9kphh3lv3";
+      name = "plasma-workspace-5.13.5.tar.xz";
     };
   };
   plasma-workspace-wallpapers = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/plasma-workspace-wallpapers-5.13.4.tar.xz";
-      sha256 = "11z8isy01vbgzb5jkbslin30himy5072wwrb010jw9ls9j5dz1cm";
-      name = "plasma-workspace-wallpapers-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/plasma-workspace-wallpapers-5.13.5.tar.xz";
+      sha256 = "1wbnm6bzvgx2ssig4dk3plhrsjiw3lq1yhr2dfga6vvlyi6wg9mg";
+      name = "plasma-workspace-wallpapers-5.13.5.tar.xz";
     };
   };
   plymouth-kcm = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/plymouth-kcm-5.13.4.tar.xz";
-      sha256 = "1f18ys2b80smd975a18qkhxb3ipr31wx8g0pmbfscqclc6kma506";
-      name = "plymouth-kcm-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/plymouth-kcm-5.13.5.tar.xz";
+      sha256 = "0flgr68rms40acgl2f4539mvp53m36ifignxix27raqmibaf38s1";
+      name = "plymouth-kcm-5.13.5.tar.xz";
     };
   };
   polkit-kde-agent = {
-    version = "1-5.13.4";
+    version = "1-5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/polkit-kde-agent-1-5.13.4.tar.xz";
-      sha256 = "0wgj9pawwcgznqg7shp3zh65ag9cscnmamgr29x2lq9wwxqw2836";
-      name = "polkit-kde-agent-1-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/polkit-kde-agent-1-5.13.5.tar.xz";
+      sha256 = "00f05ii3www8knn2ycgkc6izc8ydb3vjy4f657k38hkzl2sjnhl6";
+      name = "polkit-kde-agent-1-5.13.5.tar.xz";
     };
   };
   powerdevil = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/powerdevil-5.13.4.tar.xz";
-      sha256 = "10zhm5z0hwh75fmcp7cz5c35zcywm7an73x2dh4fyl42cczfb0zl";
-      name = "powerdevil-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/powerdevil-5.13.5.tar.xz";
+      sha256 = "1k7ilcvm5nvx6sd43j0djar9ay6ag84g4m8f420yf7q4yryp76yn";
+      name = "powerdevil-5.13.5.tar.xz";
     };
   };
   sddm-kcm = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/sddm-kcm-5.13.4.tar.xz";
-      sha256 = "0g6alnlg8waxgf3cbzx838062qsdcfisxsw67zxykyp77spq00f0";
-      name = "sddm-kcm-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/sddm-kcm-5.13.5.tar.xz";
+      sha256 = "122g83ajh0xqylvmicrhgw0fm8bmzpw26v7fjckfk9if5zqzk8ch";
+      name = "sddm-kcm-5.13.5.tar.xz";
     };
   };
   systemsettings = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/systemsettings-5.13.4.tar.xz";
-      sha256 = "1z6c6kaz0ib76qsiq5cj6ya4mrdgmv3xa71hnwd2fbmv45agk8q4";
-      name = "systemsettings-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/systemsettings-5.13.5.tar.xz";
+      sha256 = "14029a3mf2d6cw87lyffnwy88yvj0n3jmi0glr69zwi8lmz0cbsv";
+      name = "systemsettings-5.13.5.tar.xz";
     };
   };
   user-manager = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/user-manager-5.13.4.tar.xz";
-      sha256 = "1s968hf7p9rrv3b0bq47s1387cbl6iq5313m34xfv5h7rqr2cw3m";
-      name = "user-manager-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/user-manager-5.13.5.tar.xz";
+      sha256 = "12550xvl084rab0y331r8dm3qwpcvm83k3j02gxrwrigv1vckas8";
+      name = "user-manager-5.13.5.tar.xz";
     };
   };
   xdg-desktop-portal-kde = {
-    version = "5.13.4";
+    version = "5.13.5";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.13.4/xdg-desktop-portal-kde-5.13.4.tar.xz";
-      sha256 = "02fv1v778rh512wcm2zqgn6q61459bjbcjj2xz63lp3iycl7avqi";
-      name = "xdg-desktop-portal-kde-5.13.4.tar.xz";
+      url = "${mirror}/stable/plasma/5.13.5/xdg-desktop-portal-kde-5.13.5.tar.xz";
+      sha256 = "0i9pcbdxfh2cbv9ybk9i11l7vcm2ifx0zm3gkj3ry3bjxxbphn4f";
+      name = "xdg-desktop-portal-kde-5.13.5.tar.xz";
     };
   };
 }
diff --git a/pkgs/desktops/xfce4-13/xfce4-mixer/default.nix b/pkgs/desktops/xfce4-13/xfce4-mixer/default.nix
index 266b05199ddb..a4bc0a3eaddb 100644
--- a/pkgs/desktops/xfce4-13/xfce4-mixer/default.nix
+++ b/pkgs/desktops/xfce4-13/xfce4-mixer/default.nix
@@ -1,5 +1,10 @@
-{ mkXfceDerivation, automakeAddFlags, dbus-glib, gtk2, libxfce4ui, libxfce4util, xfce4-panel, xfconf }:
+{ mkXfceDerivation, automakeAddFlags, dbus-glib, gtk2, libxfce4ui, libxfce4util, xfce4-panel, xfconf, gst-plugins-base, libunique }:
 
+let
+  gst_plugins_minimal = gst-plugins-base.override {
+    minimalDeps = true;
+  };
+in
 mkXfceDerivation rec {
   category = "apps";
   pname = "xfce4-mixer";
@@ -16,7 +21,9 @@ mkXfceDerivation rec {
 
   buildInputs = [
     dbus-glib
+    gst_plugins_minimal
     gtk2
+    libunique
     libxfce4ui
     libxfce4util
     xfce4-panel
diff --git a/pkgs/development/compilers/boo/config.patch b/pkgs/development/compilers/boo/config.patch
deleted file mode 100644
index f6e0eee29b1b..000000000000
--- a/pkgs/development/compilers/boo/config.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-diff --git a/default.build b/default.build
-index e48fd9e..b0dee4f 100644
---- a/default.build
-+++ b/default.build
-@@ -23,14 +23,14 @@
- 	<property name="skip.ast" value="False" />

- 	<property name="skip.vs" value="False" />

- 

--	<property name="gsv.name" value="gtksourceview-1.0" />

-+	<property name="gsv.name" value="gtksourceview-2.0" />

- 	

- 	<property name="build.dir" value="build" dynamic="True"/>

- 	<property name="distrobuild.dir" value="distrobuild"/>

- 	<property name="docs.dir" value="docs" />

- 	<property name="examples.dir" value="examples" />

- 

--	<property name="install.prefix" value="/usr/local" />

-+	<property name="install.prefix" value="$out" />

- 	<property name="install.destdir" value="/" />

- 

- 	<property name="install.share" value="${path::combine(install.prefix,'share')}" />

-@@ -575,9 +575,9 @@
- 		key files for mime detection, etc

- 		-->

- 

--		<property name="sharedmime.prefix" value="${pkg-config::get-variable('shared-mime-info','prefix')}" />

-+		<property name="sharedmime.prefix" value="$out" />

- 		<property name="fakeroot.sharedmime" value="${fakeroot}/${sharedmime.prefix}" />

--		<property name="gsv.prefix" value="${pkg-config::get-variable(gsv.name,'prefix')}" />

-+		<property name="gsv.prefix" value="$out" />

- 		<property name="fakeroot.gsv" value="${fakeroot}/${gsv.prefix}" />

- 

- 		<mkdir dir="${fakeroot.boolib}"/>

-@@ -707,9 +707,9 @@
- 		key files for mime detection, etc

- 		-->

- 

--		<property name="sharedmime.prefix" value="${pkg-config::get-variable('shared-mime-info','prefix')}" />

-+		<property name="sharedmime.prefix" value="$out" />

- 		<property name="fakeroot.sharedmime" value="${fakeroot}/${sharedmime.prefix}" />

--		<property name="gsv.prefix" value="${pkg-config::get-variable(gsv.name,'prefix')}" />

-+		<property name="gsv.prefix" value="$out" />

- 		<property name="fakeroot.gsv" value="${fakeroot}/${gsv.prefix}" />

- 		

- 		<foreach item="File" property="filename">

diff --git a/pkgs/development/compilers/boo/default.nix b/pkgs/development/compilers/boo/default.nix
deleted file mode 100644
index ec5e08ffda40..000000000000
--- a/pkgs/development/compilers/boo/default.nix
+++ /dev/null
@@ -1,46 +0,0 @@
-{ stdenv, fetchFromGitHub, pkgconfig, mono, makeWrapper, nant
-, shared-mime-info, gtksourceview, gtk2 }:
-
-let
-  release = "alpha";
-in stdenv.mkDerivation rec {
-  name = "boo-${version}";
-  version = "2013-10-21";
-
-  src = fetchFromGitHub {
-    owner = "boo-lang";
-    repo = "boo";
-
-    rev = "${release}";
-    sha256 = "174abdwfpq8i3ijx6bwqll16lx7xwici374rgsbymyk8g8mla094";
-  };
-
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [
-    mono makeWrapper nant shared-mime-info gtksourceview
-    gtk2
-  ];
-
-  patches = [ ./config.patch ];
-
-  postPatch = ''
-    sed -e 's|\$out|'$out'|' -i default.build
-  '';
-
-  buildPhase = ''
-    nant -t:mono-4.5
-  '';
-
-  installPhase = ''
-    nant install
-    cp $out/lib/mono/boo/*.dll $out/lib/boo/
-  '';
-
-  dontStrip = true;
-
-  meta = with stdenv.lib; {
-    description = "The Boo Programming Language";
-    platforms = platforms.linux;
-    broken = true;
-  };
-}
diff --git a/pkgs/development/compilers/clasp/default.nix b/pkgs/development/compilers/clasp/default.nix
index 6ff2028e3c16..2c260e110d60 100644
--- a/pkgs/development/compilers/clasp/default.nix
+++ b/pkgs/development/compilers/clasp/default.nix
@@ -70,5 +70,6 @@ stdenv.mkDerivation rec {
     maintainers = [stdenv.lib.maintainers.raskin];
     platforms = stdenv.lib.platforms.linux;
     homepage = "https://github.com/drmeister/clasp";
+    broken = true; # 2018-09-08, no successful build since 2018-01-03
   };
 }
diff --git a/pkgs/development/compilers/dotnet/sdk/default.nix b/pkgs/development/compilers/dotnet/sdk/default.nix
index 50057f91e804..0e28e041cc5d 100644
--- a/pkgs/development/compilers/dotnet/sdk/default.nix
+++ b/pkgs/development/compilers/dotnet/sdk/default.nix
@@ -12,12 +12,13 @@ let
   rpath = stdenv.lib.makeLibraryPath [ stdenv.cc.cc libunwind libuuid icu openssl zlib curl ];
 in
   stdenv.mkDerivation rec {
-    version = "2.1.302";
+    version = "2.1.401";
     name = "dotnet-sdk-${version}";
 
     src = fetchurl {
       url = "https://dotnetcli.azureedge.net/dotnet/Sdk/${version}/dotnet-sdk-${version}-linux-x64.tar.gz";
-      sha256 = "1a8z9q69cd9a33j7fr7907abm5z4qiivw5k379cgsjmmvxwyvjia";
+      # use sha512 from the download page
+      sha512 = "639f9f68f225246d9cce798d72d011f65c7eda0d775914d1394df050bddf93e2886555f5eed85a75d6c72e9063a54d8aa053c64c326c683b94e9e0a0570e5654";
     };
 
     unpackPhase = "tar xvzf $src";
diff --git a/pkgs/development/compilers/elm/default.nix b/pkgs/development/compilers/elm/default.nix
index 93deb4a90aff..692404a19bf6 100644
--- a/pkgs/development/compilers/elm/default.nix
+++ b/pkgs/development/compilers/elm/default.nix
@@ -1,4 +1,6 @@
-{ lib, stdenv, buildEnv, haskell, nodejs, fetchurl, makeWrapper, git }:
+{ lib, stdenv, buildEnv
+, haskell, nodejs
+, fetchurl, fetchpatch, makeWrapper, git }:
 
 # To update:
 
@@ -90,6 +92,12 @@ let
                 export ELM_HOME=`pwd`/.elm
               '' + (makeDotElm "0.19.0" (import ./packages/elm-elm.nix));
               buildTools = drv.buildTools or [] ++ [ makeWrapper ];
+              patches = [
+                (fetchpatch {
+                  url = "https://github.com/elm/compiler/pull/1784/commits/78d2d8eab310552b1b877a3e90e1e57e7a09ddec.patch";
+                  sha256 = "0vdhk16xqm2hxw12s1b91a0bmi8w4wsxc086qlzglgnjxrl5b3w4";
+                })
+              ];
               postInstall = ''
                 wrapProgram $out/bin/elm \
                   --prefix PATH ':' ${lib.makeBinPath [ nodejs ]}
diff --git a/pkgs/development/compilers/elm/packages/elm.nix b/pkgs/development/compilers/elm/packages/elm.nix
index 1097c8a1e192..41998f4c9b3d 100644
--- a/pkgs/development/compilers/elm/packages/elm.nix
+++ b/pkgs/development/compilers/elm/packages/elm.nix
@@ -11,8 +11,8 @@ mkDerivation {
   version = "0.19.0";
   src = fetchgit {
     url = "https://github.com/elm/compiler";
-    sha256 = "0s93z9vr0vp5w894ghc5s34nsq09sg1msf59zfiba87sid5vgjqy";
-    rev = "32059a289d27e303fa1665e9ada0a52eb688f302";
+    sha256 = "13jks6c6i80z71mjjfg46ri570g5ini0k3xw3857v6z66zcl56x4";
+    rev = "d5cbc41aac23da463236bbc250933d037da4055a";
   };
   isLibrary = false;
   isExecutable = true;
diff --git a/pkgs/development/compilers/gambit/default.nix b/pkgs/development/compilers/gambit/default.nix
index 36aa73f7274b..812b83389601 100644
--- a/pkgs/development/compilers/gambit/default.nix
+++ b/pkgs/development/compilers/gambit/default.nix
@@ -1,11 +1,11 @@
 { stdenv, callPackage, fetchurl }:
 
 callPackage ./build.nix {
-  version = "4.8.9";
+  version = "4.9.0";
 
   SRC = fetchurl {
-    url = "http://www.iro.umontreal.ca/~gambit/download/gambit/v4.8/source/gambit-v4_8_9-devel.tgz";
-    sha256 = "1gwzz1ag9hlv266nvfq1bhwzrps3f2yghhffasjjqy8i8xwnry5p";
+    url = "http://www.iro.umontreal.ca/~gambit/download/gambit/v4.9/source/gambit-v4_9_0-devel.tgz";
+    sha256 = "0wyfpjs244zrbrdil9rfkdgcawvms84z0r77qwhwadghma4dqgjf";
   };
   inherit stdenv;
 }
diff --git a/pkgs/development/compilers/gambit/unstable.nix b/pkgs/development/compilers/gambit/unstable.nix
index 41d0ee930bf0..067a409ac1c3 100644
--- a/pkgs/development/compilers/gambit/unstable.nix
+++ b/pkgs/development/compilers/gambit/unstable.nix
@@ -1,12 +1,12 @@
 { stdenv, callPackage, fetchgit }:
 
 callPackage ./build.nix {
-  version = "unstable-2018-08-06";
-# git-version = "4.8.9-77-g91a4ad2c";
+  version = "unstable-2018-09-03";
+# git-version = "4.9.0";
   SRC = fetchgit {
     url = "https://github.com/feeley/gambit.git";
-    rev = "91a4ad2c28375f067adedcaa61f9d66a4b536f4f";
-    sha256 = "0px1ipvhh0hz8n38h6jv4y1nn163j8llvcy4l7p3hkdns5czwy1p";
+    rev = "7cdc7e7b9194b2c088c0667efaf7686a4ffd0d8a";
+    sha256 = "06mmi8jkinihfirz4gjfw2lhxhskiqf3d47sihzx10r60asyqcxg";
   };
   inherit stdenv;
 }
diff --git a/pkgs/development/compilers/gerbil/default.nix b/pkgs/development/compilers/gerbil/default.nix
index 6fa9fcc3de88..e0f4ca4324f0 100644
--- a/pkgs/development/compilers/gerbil/default.nix
+++ b/pkgs/development/compilers/gerbil/default.nix
@@ -1,12 +1,12 @@
 { stdenv, callPackage, fetchurl, gambit }:
 
 callPackage ./build.nix {
-  version = "0.12-RELEASE";
-  git-version = "0.12";
+  version = "0.13";
+  git-version = "0.13";
   GAMBIT = gambit;
   SRC = fetchurl {
-    url = "https://github.com/vyzo/gerbil/archive/v0.12.tar.gz";
-    sha256 = "0nigr3mgrzai57q2jqac8f39zj8rcmic3277ynyzlgm8hhps71pq";
+    url = "https://github.com/vyzo/gerbil/archive/v0.13.tar.gz";
+    sha256 = "1qs0vdq2lgxlpw20s8jzw2adx1xk9wb3w2m4a8vp6bb8hagmfr5l";
   };
   inherit stdenv;
 }
diff --git a/pkgs/development/compilers/gerbil/unstable.nix b/pkgs/development/compilers/gerbil/unstable.nix
index 66ead04b5429..bd9c3994dd49 100644
--- a/pkgs/development/compilers/gerbil/unstable.nix
+++ b/pkgs/development/compilers/gerbil/unstable.nix
@@ -1,13 +1,13 @@
 { stdenv, callPackage, fetchgit, gambit-unstable }:
 
 callPackage ./build.nix {
-  version = "unstable-2018-08-11";
-  git-version = "0.13-DEV-542-g274e1a22";
+  version = "unstable-2018-09-06";
+  git-version = "0.14-DEV";
   GAMBIT = gambit-unstable;
   SRC = fetchgit {
     url = "https://github.com/vyzo/gerbil.git";
-    rev = "274e1a22b2d2b708d5582594274ab52ee9ba1686";
-    sha256 = "10j44ar4xfl8xmh276zg1ykd3r0vy7w2f2cg4p8slwnk9r251g2s";
+    rev = "184cb635c82517d5d75d7966dcdf1d25ad863dac";
+    sha256 = "1ljzbpc36i9zpzfwra5hpfbgzj1dyzzp50h5jf976n8qr9x4l7an";
   };
   inherit stdenv;
 }
diff --git a/pkgs/development/compilers/ghc/8.4.3.nix b/pkgs/development/compilers/ghc/8.4.3.nix
index aa9fab184364..365f401119da 100644
--- a/pkgs/development/compilers/ghc/8.4.3.nix
+++ b/pkgs/development/compilers/ghc/8.4.3.nix
@@ -99,6 +99,10 @@ stdenv.mkDerivation (rec {
     sha256 = "0plzsbfaq6vb1023lsarrjglwgr9chld4q3m99rcfzx0yx5mibp3";
     extraPrefix = "utils/hsc2hs/";
     stripLen = 1;
+  }) (fetchpatch rec { # https://phabricator.haskell.org/D5123
+    url = "http://tarballs.nixos.org/sha256/${sha256}";
+    name = "D5123.diff";
+    sha256 = "0nhqwdamf2y4gbwqxcgjxs0kqx23w9gv5kj0zv6450dq19rji82n";
   })] ++ stdenv.lib.optional deterministicProfiling
     (fetchpatch rec {
       url = "http://tarballs.nixos.org/sha256/${sha256}";
diff --git a/pkgs/development/compilers/ghc/8.6.1.nix b/pkgs/development/compilers/ghc/8.6.1.nix
index 7fcb52969151..36ef9d0cc73d 100644
--- a/pkgs/development/compilers/ghc/8.6.1.nix
+++ b/pkgs/development/compilers/ghc/8.6.1.nix
@@ -2,7 +2,7 @@
 
 # build-tools
 , bootPkgs, alex, happy, hscolour
-, autoconf, automake, coreutils, fetchurl, perl, python3, m4
+, autoconf, automake, coreutils, fetchurl, fetchpatch, perl, python3, m4
 
 , libiconv ? null, ncurses
 
@@ -90,6 +90,12 @@ stdenv.mkDerivation (rec {
 
   outputs = [ "out" "doc" ];
 
+  patches = [(fetchpatch rec { # https://phabricator.haskell.org/D5123
+    url = "http://tarballs.nixos.org/sha256/${sha256}";
+    name = "D5123.diff";
+    sha256 = "0nhqwdamf2y4gbwqxcgjxs0kqx23w9gv5kj0zv6450dq19rji82n";
+  })];
+
   postPatch = "patchShebangs .";
 
   # GHC is a bit confused on its cross terminology.
diff --git a/pkgs/development/compilers/gnu-smalltalk/default.nix b/pkgs/development/compilers/gnu-smalltalk/default.nix
index 21c0a5ede91b..39d1652fc700 100644
--- a/pkgs/development/compilers/gnu-smalltalk/default.nix
+++ b/pkgs/development/compilers/gnu-smalltalk/default.nix
@@ -34,6 +34,8 @@ in stdenv.mkDerivation rec {
 
   configureFlags = stdenv.lib.optional (!emacsSupport) "--without-emacs";
 
+  hardeningDisable = [ "format" ];
+
   installFlags = stdenv.lib.optional emacsSupport "lispdir=$(out)/share/emacs/site-lisp";
 
   # For some reason the tests fail if executated with nix-build, but pass if
diff --git a/pkgs/development/compilers/go/1.11.nix b/pkgs/development/compilers/go/1.11.nix
index 55cc654b0aa9..e4872597e79c 100644
--- a/pkgs/development/compilers/go/1.11.nix
+++ b/pkgs/development/compilers/go/1.11.nix
@@ -125,6 +125,8 @@ stdenv.mkDerivation rec {
     ./remove-fhs-test-references.patch
     ./skip-external-network-tests.patch
     ./skip-nohup-tests.patch
+    # breaks under load: https://github.com/golang/go/issues/25628
+    ./skip-test-extra-files-on-386.patch
   ];
 
   postPatch = optionalString stdenv.isDarwin ''
@@ -139,7 +141,7 @@ stdenv.mkDerivation rec {
            else if stdenv.targetPlatform.isAarch32 then "arm"
            else if stdenv.targetPlatform.isAarch64 then "arm64"
            else throw "Unsupported system";
-  GOARM = stdenv.targetPlatform.parsed.cpu.version or "";
+  GOARM = toString (stdenv.lib.intersectLists [(stdenv.targetPlatform.parsed.cpu.version or "")] ["5" "6" "7"]);
   GO386 = 387; # from Arch: don't assume sse2 on i686
   CGO_ENABLED = 1;
   GOROOT_BOOTSTRAP = "${goBootstrap}/share/go";
diff --git a/pkgs/development/compilers/go/skip-test-extra-files-on-386.patch b/pkgs/development/compilers/go/skip-test-extra-files-on-386.patch
new file mode 100644
index 000000000000..afe5aea3d916
--- /dev/null
+++ b/pkgs/development/compilers/go/skip-test-extra-files-on-386.patch
@@ -0,0 +1,15 @@
+diff --git a/src/os/exec/exec_test.go b/src/os/exec/exec_test.go
+index 558345ff63..22129bf022 100644
+--- a/src/os/exec/exec_test.go
++++ b/src/os/exec/exec_test.go
+@@ -593,6 +593,10 @@ func TestExtraFiles(t *testing.T) {
+ 		t.Skipf("skipping test on %q", runtime.GOOS)
+ 	}
+ 
++	if runtime.GOOS == "linux" && runtime.GOARCH  == "386" {
++		t.Skipf("skipping test on %q %q", runtime.GOARCH, runtime.GOOS)
++	}
++
+ 	// Ensure that file descriptors have not already been leaked into
+ 	// our environment.
+ 	if !testedAlreadyLeaked {
diff --git a/pkgs/development/compilers/julia/shared.nix b/pkgs/development/compilers/julia/shared.nix
index 41c9c57bd034..e07c2c04b92d 100644
--- a/pkgs/development/compilers/julia/shared.nix
+++ b/pkgs/development/compilers/julia/shared.nix
@@ -211,7 +211,7 @@ stdenv.mkDerivation rec {
     description = "High-level performance-oriented dynamical language for technical computing";
     homepage = https://julialang.org/;
     license = stdenv.lib.licenses.mit;
-    maintainers = with stdenv.lib.maintainers; [ raskin rob ];
+    maintainers = with stdenv.lib.maintainers; [ raskin rob garrison ];
     platforms = [ "i686-linux" "x86_64-linux" "x86_64-darwin" ];
     broken = stdenv.isi686;
   };
diff --git a/pkgs/development/compilers/ocaml/generic.nix b/pkgs/development/compilers/ocaml/generic.nix
index 1ee6fee613c9..d2295d2d79b0 100644
--- a/pkgs/development/compilers/ocaml/generic.nix
+++ b/pkgs/development/compilers/ocaml/generic.nix
@@ -90,6 +90,7 @@ stdenv.mkDerivation (args // rec {
       '';
 
     platforms = with platforms; linux ++ darwin;
+    broken = stdenv.isAarch64 && !stdenv.lib.versionAtLeast major_version "4.06";
   };
 
 })
diff --git a/pkgs/development/compilers/reason/default.nix b/pkgs/development/compilers/reason/default.nix
index f4cc1cf2b650..81c935fc421f 100644
--- a/pkgs/development/compilers/reason/default.nix
+++ b/pkgs/development/compilers/reason/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, makeWrapper, fetchFromGitHub, ocaml, findlib, jbuilder
+{ stdenv, makeWrapper, fetchFromGitHub, ocaml, findlib, dune
 , menhir, merlin_extend, ppx_tools_versioned, utop
 }:
 
@@ -15,14 +15,14 @@ stdenv.mkDerivation rec {
 
   propagatedBuildInputs = [ menhir merlin_extend ppx_tools_versioned ];
 
-  buildInputs = [ makeWrapper ocaml findlib jbuilder utop menhir ];
+  buildInputs = [ makeWrapper ocaml findlib dune utop menhir ];
 
   buildFlags = [ "build" ]; # do not "make tests" before reason lib is installed
 
   installPhase = ''
     for p in reason rtop
     do
-      ${jbuilder.installPhase} $p.install
+      ${dune.installPhase} $p.install
     done
 
     wrapProgram $out/bin/rtop \
diff --git a/pkgs/development/compilers/sbcl/default.nix b/pkgs/development/compilers/sbcl/default.nix
index a860aa7dc734..34855838fe8b 100644
--- a/pkgs/development/compilers/sbcl/default.nix
+++ b/pkgs/development/compilers/sbcl/default.nix
@@ -9,11 +9,11 @@
 
 stdenv.mkDerivation rec {
   name    = "sbcl-${version}";
-  version = "1.4.7";
+  version = "1.4.10";
 
   src = fetchurl {
     url    = "mirror://sourceforge/project/sbcl/sbcl/${version}/${name}-source.tar.bz2";
-    sha256 = "1wmxly94pn8527092hyzg5mq58mg7qlc46nm31f268wb2dm67rvm";
+    sha256 = "1j9wb608pkihpwgzl4qvnr4jl6mb7ngfqy559pxnvmnn1zlyfklh";
   };
 
   patchPhase = ''
diff --git a/pkgs/development/compilers/swift/default.nix b/pkgs/development/compilers/swift/default.nix
index 9c1a36585907..233eb6647c09 100644
--- a/pkgs/development/compilers/swift/default.nix
+++ b/pkgs/development/compilers/swift/default.nix
@@ -36,9 +36,9 @@
 }:
 
 let
-  v_major = "4.1";
-  version = "${v_major}-RELEASE";
-  version_friendly = "${v_major}";
+  v_base = "4.1.3";
+  version = "${v_base}-RELEASE";
+  version_friendly = "${v_base}";
 
   tag = "refs/tags/swift-${version}";
   fetch = { repo, sha256, fetchSubmodules ? false }:
@@ -58,7 +58,7 @@ let
     };
     llvm = fetch {
       repo = "swift-llvm";
-      sha256 = "03558f5zbchqvdabi3x9ahyz4xkmj7w69gazivz372832lgr9zfh";
+      sha256 = "0q5cv4iydm8c1kcax32573y3q2cbpihwgj5aa8ws1fnpy4jvq934";
     };
     compilerrt = fetch {
       repo = "swift-compiler-rt";
@@ -70,7 +70,7 @@ let
     };
     lldb = fetch {
       repo = "swift-lldb";
-      sha256 = "09x3d3bc6rn9g6jpi3fb120c4r2carsmqla4bq4scjrs0867jz9m";
+      sha256 = "1d0pa7xm289bjb6r52hkkmlngkqkwbwgixnmm30bin2q18mkxk7s";
     };
     llbuild = fetch {
       repo = "swift-llbuild";
@@ -86,7 +86,7 @@ let
     };
     foundation = fetch {
       repo = "swift-corelibs-foundation";
-      sha256 = "06pbhb7wg4q5qgprhiyzbqy6hssga7xxjclhlh81gd6rvfd6bxvw";
+      sha256 = "1bhrag63rmz41bg2g6ap01qrdpq37hislgf5hg6myy2v69q7mahx";
     };
     libdispatch = fetch {
       repo = "swift-corelibs-libdispatch";
@@ -95,7 +95,7 @@ let
     };
     swift = fetch {
       repo = "swift";
-      sha256 = "1flvr12bg8m4k44yq0xy9qrllv5rpxgxisjgbpakk5p3myfsx7ky";
+      sha256 = "1ydx11pkvaasgjbr29lnha0lpnak758gd5l0aqzmp3q6mcyvfm7a";
     };
   };
 
@@ -287,6 +287,7 @@ stdenv.mkDerivation rec {
     # Swift doesn't support 32bit Linux, unknown on other platforms.
     platforms = platforms.linux;
     badPlatforms = platforms.i686;
+    broken = stdenv.isAarch64; # 2018-09-04, never built on Hydra
   };
 }
 
diff --git a/pkgs/development/coq-modules/QuickChick/default.nix b/pkgs/development/coq-modules/QuickChick/default.nix
index 35cf63af8627..fc88a1c33eed 100644
--- a/pkgs/development/coq-modules/QuickChick/default.nix
+++ b/pkgs/development/coq-modules/QuickChick/default.nix
@@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = git://github.com/QuickChick/QuickChick.git;
+    homepage = https://github.com/QuickChick/QuickChick;
     description = "Randomized property-based testing plugin for Coq; a clone of Haskell QuickCheck";
     maintainers = with maintainers; [ jwiegley ];
     platforms = coq.meta.platforms;
diff --git a/pkgs/development/coq-modules/category-theory/default.nix b/pkgs/development/coq-modules/category-theory/default.nix
index 795c177bc80d..c707fcdbd6be 100644
--- a/pkgs/development/coq-modules/category-theory/default.nix
+++ b/pkgs/development/coq-modules/category-theory/default.nix
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = git://github.com/jwiegley/category-theory.git;
+    homepage = https://github.com/jwiegley/category-theory;
     description = "A formalization of category theory in Coq for personal study and practical work";
     maintainers = with maintainers; [ jwiegley ];
     platforms = coq.meta.platforms;
diff --git a/pkgs/development/coq-modules/coq-haskell/default.nix b/pkgs/development/coq-modules/coq-haskell/default.nix
index a66e941a8c9c..9d9a4cb5f1a1 100644
--- a/pkgs/development/coq-modules/coq-haskell/default.nix
+++ b/pkgs/development/coq-modules/coq-haskell/default.nix
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = git://github.com/jwiegley/coq-haskell.git;
+    homepage = https://github.com/jwiegley/coq-haskell;
     description = "A library for formalizing Haskell types and functions in Coq";
     maintainers = with maintainers; [ jwiegley ];
     platforms = coq.meta.platforms;
diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix
index ef55272d6e97..2f89623ecdeb 100644
--- a/pkgs/development/haskell-modules/configuration-common.nix
+++ b/pkgs/development/haskell-modules/configuration-common.nix
@@ -1074,16 +1074,10 @@ self: super: {
   haddock-library = doJailbreak (dontCheck super.haddock-library);
   haddock-library_1_6_0 = doJailbreak (dontCheck super.haddock-library_1_6_0);
 
-  # cabal2nix requires hpack >= 0.29.6 but the LTS has hpack-0.28.2.
-  # Lets remove this once the LTS has upraded to 0.29.6.
-  hpack = super.hpack_0_29_7;
-
-  # The test suite does not know how to find the 'cabal2nix' binary.
-  cabal2nix = overrideCabal super.cabal2nix (drv: {
-    preCheck = ''
-      export PATH="$PWD/dist/build/cabal2nix:$PATH"
-      export HOME="$TMPDIR/home"
-    '';
+  # The tool needs a newer hpack version than the one mandated by LTS-12.x.
+  cabal2nix = super.cabal2nix.overrideScope (self: super: {
+    hpack = self.hpack_0_31_0;
+    yaml = self.yaml_0_10_1_1;
   });
 
   # Break out of "aeson <1.3, temporary <1.3".
@@ -1130,4 +1124,12 @@ self: super: {
 
   # https://github.com/snapframework/xmlhtml/pull/37
   xmlhtml = doJailbreak super.xmlhtml;
+
+  # https://github.com/NixOS/nixpkgs/issues/46467
+  safe-money-aeson = super.safe-money-aeson.override { safe-money = self.safe-money_0_7; };
+  safe-money-store = super.safe-money-store.override { safe-money = self.safe-money_0_7; };
+  safe-money-cereal = super.safe-money-cereal.override { safe-money = self.safe-money_0_7; };
+  safe-money-serialise = super.safe-money-serialise.override { safe-money = self.safe-money_0_7; };
+  safe-money-xmlbf = super.safe-money-xmlbf.override { safe-money = self.safe-money_0_7; };
+
 } // import ./configuration-tensorflow.nix {inherit pkgs haskellLib;} self super
diff --git a/pkgs/development/haskell-modules/configuration-ghc-7.10.x.nix b/pkgs/development/haskell-modules/configuration-ghc-7.10.x.nix
index 9bd45c9887f1..5684d14caddf 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-7.10.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-7.10.x.nix
@@ -40,7 +40,7 @@ self: super: {
   mtl = self.mtl_2_2_2;
   parsec = self.parsec_3_1_13_0;
   parsec_3_1_13_0 = addBuildDepends super.parsec_3_1_13_0 [self.fail self.semigroups];
-  stm = self.stm_2_4_5_0;
+  stm = self.stm_2_4_5_1;
   text = self.text_1_2_3_0;
 
   # Build jailbreak-cabal with the latest version of Cabal.
diff --git a/pkgs/development/haskell-modules/configuration-ghc-8.0.x.nix b/pkgs/development/haskell-modules/configuration-ghc-8.0.x.nix
index f475512a8dab..a28682004239 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-8.0.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-8.0.x.nix
@@ -39,7 +39,7 @@ self: super: {
   # These are now core libraries in GHC 8.4.x.
   mtl = self.mtl_2_2_2;
   parsec = self.parsec_3_1_13_0;
-  stm = self.stm_2_4_5_0;
+  stm = self.stm_2_4_5_1;
   text = self.text_1_2_3_0;
 
   # https://github.com/bmillwood/applicative-quoters/issues/6
@@ -81,4 +81,8 @@ self: super: {
   haddock-library = self.haddock-library_1_4_3;
   haddock-api = self.haddock-api_2_17_4;
   haddock = self.haddock_2_17_5;
+
+  # GHC 8.0 doesn't have semigroups included by default
+  ListLike = addBuildDepend super.ListLike self.semigroups;
+
 }
diff --git a/pkgs/development/haskell-modules/configuration-ghc-8.2.x.nix b/pkgs/development/haskell-modules/configuration-ghc-8.2.x.nix
index f73172e02d38..af96a7425d1c 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-8.2.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-8.2.x.nix
@@ -39,7 +39,7 @@ self: super: {
   # These are now core libraries in GHC 8.4.x.
   mtl = self.mtl_2_2_2;
   parsec = self.parsec_3_1_13_0;
-  stm = self.stm_2_4_5_0;
+  stm = self.stm_2_4_5_1;
   text = self.text_1_2_3_0;
 
   # Make sure we can still build Cabal 1.x.
@@ -96,4 +96,7 @@ self: super: {
     haddock-library = dontHaddock (dontCheck self.haddock-library_1_5_0_1);
   }));
 
+  # GHC 8.2 doesn't have semigroups included by default
+  ListLike = addBuildDepend super.ListLike self.semigroups;
+
 }
diff --git a/pkgs/development/haskell-modules/configuration-ghcjs.nix b/pkgs/development/haskell-modules/configuration-ghcjs.nix
index c79406a94727..7e8bc1a1e8e3 100644
--- a/pkgs/development/haskell-modules/configuration-ghcjs.nix
+++ b/pkgs/development/haskell-modules/configuration-ghcjs.nix
@@ -25,7 +25,7 @@ self: super:
 
   # GHCJS does not ship with the same core packages as GHC.
   # https://github.com/ghcjs/ghcjs/issues/676
-  stm = self.stm_2_4_5_0;
+  stm = self.stm_2_4_5_1;
   ghc-compact = self.ghc-compact_0_1_0_0;
 
   network = addBuildTools super.network (pkgs.lib.optional pkgs.buildPlatform.isDarwin pkgs.buildPackages.darwin.libiconv);
diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
index 3aee4857f993..467234b8a25d 100644
--- a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
+++ b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
@@ -43,7 +43,7 @@ core-packages:
 default-package-overrides:
   # Newer versions require contravariant-1.5.*, which many builds refuse at the moment.
   - base-compat-batteries ==0.10.1
-  # LTS Haskell 12.7
+  # LTS Haskell 12.9
   - abstract-deque ==0.3
   - abstract-deque-tests ==0.3
   - abstract-par ==0.3.3
@@ -63,7 +63,7 @@ default-package-overrides:
   - aeson-compat ==0.3.8
   - aeson-diff ==1.1.0.5
   - aeson-extra ==0.4.1.1
-  - aeson-generic-compat ==0.0.1.2
+  - aeson-generic-compat ==0.0.1.3
   - aeson-iproute ==0.2
   - aeson-picker ==0.1.0.4
   - aeson-pretty ==0.8.7
@@ -81,7 +81,7 @@ default-package-overrides:
   - Allure ==0.8.3.0
   - almost-fix ==0.0.2
   - alsa-core ==0.5.0.1
-  - alsa-pcm ==0.6.1
+  - alsa-pcm ==0.6.1.1
   - alsa-seq ==0.6.0.7
   - alternative-vector ==0.0.0
   - alternators ==1.0.0.0
@@ -183,7 +183,7 @@ default-package-overrides:
   - api-field-json-th ==0.1.0.2
   - appar ==0.1.4
   - apply-refact ==0.5.0.0
-  - apportionment ==0.0.0.2
+  - apportionment ==0.0.0.3
   - approximate ==0.3.1
   - app-settings ==0.2.0.11
   - arithmoi ==0.7.0.0
@@ -241,7 +241,7 @@ default-package-overrides:
   - bcrypt ==0.0.11
   - beam-core ==0.7.2.2
   - beam-migrate ==0.3.2.1
-  - bench ==1.0.11
+  - bench ==1.0.12
   - bencode ==0.6.0.0
   - between ==0.11.0.0
   - bhoogle ==0.1.3.5
@@ -306,7 +306,7 @@ default-package-overrides:
   - brick ==0.37.2
   - brittany ==0.11.0.0
   - broadcast-chan ==0.1.1
-  - bsb-http-chunked ==0.0.0.2
+  - bsb-http-chunked ==0.0.0.3
   - bson ==0.3.2.6
   - bson-lens ==0.1.1
   - btrfs ==0.1.2.3
@@ -337,7 +337,7 @@ default-package-overrides:
   - cachix ==0.1.1
   - cachix-api ==0.1.0.1
   - cairo ==0.13.5.0
-  - calendar-recycling ==0.0
+  - calendar-recycling ==0.0.0.1
   - call-stack ==0.1.0
   - capataz ==0.2.0.0
   - carray ==0.1.6.8
@@ -400,7 +400,7 @@ default-package-overrides:
   - clr-marshal ==0.2.0.0
   - clumpiness ==0.17.0.0
   - ClustalParser ==1.2.3
-  - cmark-gfm ==0.1.4
+  - cmark-gfm ==0.1.5
   - cmdargs ==0.10.20
   - code-builder ==0.1.3
   - codec ==0.2.1
@@ -413,8 +413,8 @@ default-package-overrides:
   - colorful-monoids ==0.2.1.2
   - colorize-haskell ==1.0.1
   - colour ==2.3.4
-  - combinatorial ==0.1
-  - comfort-graph ==0.0.3
+  - combinatorial ==0.1.0.1
+  - comfort-graph ==0.0.3.1
   - commutative ==0.0.1.4
   - comonad ==5.0.4
   - compactmap ==0.1.4.2.1
@@ -426,7 +426,7 @@ default-package-overrides:
   - composable-associations-aeson ==0.1.0.0
   - composition ==1.0.2.1
   - composition-extra ==2.0.0
-  - composition-prelude ==1.5.0.8
+  - composition-prelude ==1.5.3.1
   - compressed ==3.11
   - concise ==0.1.0.1
   - concurrency ==1.6.0.0
@@ -470,7 +470,7 @@ default-package-overrides:
   - cpu ==0.1.2
   - cpuinfo ==0.1.0.1
   - cql ==4.0.1
-  - cql-io ==1.0.1
+  - cql-io ==1.0.1.1
   - credential-store ==0.1.2
   - criterion ==1.4.1.0
   - criterion-measurement ==0.1.1.0
@@ -497,9 +497,9 @@ default-package-overrides:
   - crypto-random ==0.0.9
   - crypto-random-api ==0.2.0
   - crypt-sha512 ==0
-  - csg ==0.1.0.4
+  - csg ==0.1.0.5
   - csp ==1.4.0
-  - css-syntax ==0.0.7
+  - css-syntax ==0.0.8
   - css-text ==0.1.3.0
   - csv ==0.1.2
   - ctrie ==0.2
@@ -514,9 +514,9 @@ default-package-overrides:
   - cyclotomic ==0.5.1
   - czipwith ==1.0.1.0
   - darcs ==2.14.1
-  - data-accessor ==0.2.2.7
+  - data-accessor ==0.2.2.8
   - data-accessor-mtl ==0.2.0.4
-  - data-accessor-template ==0.2.1.15
+  - data-accessor-template ==0.2.1.16
   - data-accessor-transformers ==0.2.1.7
   - data-binary-ieee754 ==0.4.4
   - data-bword ==0.1.0.1
@@ -553,7 +553,7 @@ default-package-overrides:
   - dawg-ord ==0.5.1.0
   - dbcleaner ==0.1.3
   - dbus ==1.0.1
-  - debian-build ==0.10.1.1
+  - debian-build ==0.10.1.2
   - debug ==0.1.1
   - debug-trace-var ==0.2.0
   - Decimal ==0.5.1
@@ -569,9 +569,9 @@ default-package-overrides:
   - detour-via-sci ==1.0.0
   - df1 ==0.1.1
   - dhall ==1.15.1
-  - dhall-bash ==1.0.14
-  - dhall-json ==1.2.2
-  - dhall-text ==1.0.11
+  - dhall-bash ==1.0.15
+  - dhall-json ==1.2.3
+  - dhall-text ==1.0.12
   - di ==1.0.1
   - diagrams ==1.4
   - diagrams-builder ==0.8.0.3
@@ -624,7 +624,7 @@ default-package-overrides:
   - DRBG ==0.5.5
   - drifter ==0.2.3
   - drifter-postgresql ==0.2.1
-  - dsp ==0.2.4
+  - dsp ==0.2.4.1
   - dual-tree ==0.2.2
   - dublincore-xml-conduit ==0.1.0.2
   - dunai ==0.4.0.0
@@ -671,7 +671,7 @@ default-package-overrides:
   - errors-ext ==0.4.2
   - error-util ==0.0.1.2
   - ersatz ==0.4.4
-  - etc ==0.4.0.3
+  - etc ==0.4.1.0
   - event ==0.1.4
   - eventful-core ==0.2.0
   - eventful-memory ==0.2.0
@@ -699,7 +699,7 @@ default-package-overrides:
   - extensible-exceptions ==0.1.1.4
   - extra ==1.6.9
   - extractable-singleton ==0.0.1
-  - extrapolate ==0.3.1
+  - extrapolate ==0.3.3
   - facts ==0.0.1.0
   - fail ==4.9.0.0
   - farmhash ==0.1.0.5
@@ -726,8 +726,8 @@ default-package-overrides:
   - fileplow ==0.1.0.0
   - filter-logger ==0.6.0.0
   - filtrable ==0.1.1.0
+  - Fin ==0.2.5.0
   - fin ==0.0.1
-  - Fin ==0.2.3.0
   - FindBin ==0.0.5
   - find-clumpiness ==0.2.3.1
   - fingertree ==0.1.4.1
@@ -747,6 +747,7 @@ default-package-overrides:
   - fmlist ==0.9.2
   - fn ==0.3.0.2
   - focus ==0.1.5.2
+  - foldable1 ==0.1.0.0
   - fold-debounce ==0.2.0.7
   - fold-debounce-conduit ==0.2.0.1
   - foldl ==1.4.3
@@ -807,7 +808,7 @@ default-package-overrides:
   - genvalidity-path ==0.3.0.2
   - genvalidity-property ==0.2.1.0
   - genvalidity-scientific ==0.2.0.1
-  - genvalidity-text ==0.5.0.2
+  - genvalidity-text ==0.5.1.0
   - genvalidity-time ==0.2.1.0
   - genvalidity-unordered-containers ==0.2.0.3
   - genvalidity-uuid ==0.1.0.2
@@ -860,7 +861,7 @@ default-package-overrides:
   - gloss-rendering ==1.12.0.0
   - GLURaw ==2.0.0.4
   - GLUT ==2.7.0.14
-  - gnuplot ==0.5.5.2
+  - gnuplot ==0.5.5.3
   - goggles ==0.3.2
   - google-oauth2-jwt ==0.3.0
   - gpolyline ==0.1.0.1
@@ -890,7 +891,7 @@ default-package-overrides:
   - hamtsolo ==1.0.3
   - HandsomeSoup ==0.4.2
   - handwriting ==0.1.0.3
-  - hapistrano ==0.3.5.9
+  - hapistrano ==0.3.5.10
   - happstack-server ==7.5.1.1
   - happy ==1.19.9
   - hasbolt ==0.1.3.0
@@ -944,7 +945,7 @@ default-package-overrides:
   - hebrew-time ==0.1.1
   - hedgehog ==0.6
   - hedgehog-corpus ==0.1.0
-  - hedis ==0.10.3
+  - hedis ==0.10.4
   - here ==1.2.13
   - heredoc ==0.2.0.0
   - heterocephalus ==1.0.5.2
@@ -981,7 +982,7 @@ default-package-overrides:
   - hopfli ==0.2.2.1
   - hostname ==1.0
   - hostname-validate ==1.0.0
-  - hourglass ==0.2.11
+  - hourglass ==0.2.12
   - hourglass-orphans ==0.1.0.0
   - hp2pretty ==0.8.0.2
   - hpack ==0.28.2
@@ -1001,7 +1002,7 @@ default-package-overrides:
   - HSet ==0.0.1
   - hset ==2.2.0
   - hsexif ==0.6.1.5
-  - hs-functors ==0.1.2.0
+  - hs-functors ==0.1.3.0
   - hs-GeoIP ==0.3
   - hsini ==0.5.1.2
   - hsinstall ==1.6
@@ -1079,7 +1080,7 @@ default-package-overrides:
   - hw-mquery ==0.1.0.1
   - hworker ==0.1.0.1
   - hw-parser ==0.0.0.3
-  - hw-prim ==0.6.2.9
+  - hw-prim ==0.6.2.14
   - hw-rankselect ==0.10.0.3
   - hw-rankselect-base ==0.3.2.1
   - hw-string-parse ==0.0.0.4
@@ -1131,7 +1132,7 @@ default-package-overrides:
   - intern ==0.9.2
   - interpolate ==0.2.0
   - interpolatedstring-perl6 ==1.0.0
-  - interpolation ==0.1.0.2
+  - interpolation ==0.1.0.3
   - IntervalMap ==0.6.0.0
   - intervals ==0.8.1
   - intro ==0.3.2.0
@@ -1163,7 +1164,7 @@ default-package-overrides:
   - iterable ==3.0
   - ixset-typed ==0.4
   - ix-shapable ==0.1.0
-  - jack ==0.7.1.3
+  - jack ==0.7.1.4
   - jmacro ==0.6.15
   - jmacro-rpc ==0.3.3
   - jmacro-rpc-snap ==0.3
@@ -1175,7 +1176,7 @@ default-package-overrides:
   - json ==0.9.2
   - json-feed ==1.0.3
   - json-rpc-client ==0.2.5.0
-  - json-rpc-generic ==0.2.1.4
+  - json-rpc-generic ==0.2.1.5
   - json-rpc-server ==0.2.6.0
   - json-schema ==0.7.4.2
   - JuicyPixels ==3.2.9.5
@@ -1210,18 +1211,18 @@ default-package-overrides:
   - language-haskell-extract ==0.2.4
   - language-java ==0.2.9
   - language-javascript ==0.6.0.11
-  - language-puppet ==1.3.20
+  - language-puppet ==1.3.20.1
   - lapack-carray ==0.0.2
   - lapack-ffi ==0.0.2
-  - lapack-ffi-tools ==0.1.0.1
+  - lapack-ffi-tools ==0.1.1
   - large-hashable ==0.1.0.4
   - largeword ==1.2.5
-  - latex ==0.1.0.3
+  - latex ==0.1.0.4
   - lattices ==1.7.1.1
   - lawful ==0.1.0.0
   - lazyio ==0.1.0.4
   - lca ==0.3.1
-  - leancheck ==0.7.1
+  - leancheck ==0.7.3
   - leapseconds-announced ==2017.1.0.1
   - learn-physics ==0.6.2
   - lens ==4.16.1
@@ -1325,10 +1326,10 @@ default-package-overrides:
   - microlens ==0.4.9.1
   - microlens-aeson ==2.3.0
   - microlens-contra ==0.1.0.1
-  - microlens-ghc ==0.4.9
+  - microlens-ghc ==0.4.9.1
   - microlens-mtl ==0.1.11.1
   - microlens-platform ==0.3.10
-  - microlens-th ==0.4.2.1
+  - microlens-th ==0.4.2.2
   - microspec ==0.1.0.0
   - microstache ==1.0.1.1
   - midi ==0.2.2.2
@@ -1463,7 +1464,7 @@ default-package-overrides:
   - nsis ==0.3.2
   - numbers ==3000.2.0.2
   - numeric-extras ==0.1
-  - numeric-prelude ==0.4.3
+  - numeric-prelude ==0.4.3.1
   - numhask ==0.2.3.1
   - numhask-prelude ==0.1.0.1
   - numhask-range ==0.2.3.1
@@ -1491,7 +1492,7 @@ default-package-overrides:
   - oo-prototypes ==0.1.0.0
   - OpenAL ==1.7.0.4
   - open-browser ==0.2.1.0
-  - openexr-write ==0.1.0.1
+  - openexr-write ==0.1.0.2
   - OpenGL ==3.0.2.2
   - OpenGLRaw ==3.3.1.0
   - openpgp-asciiarmor ==0.1.1
@@ -1552,10 +1553,10 @@ default-package-overrides:
   - persistent ==2.8.2
   - persistent-iproute ==0.2.3
   - persistent-mysql ==2.8.1
-  - persistent-mysql-haskell ==0.4.1
+  - persistent-mysql-haskell ==0.4.2
   - persistent-postgresql ==2.8.2.0
   - persistent-refs ==0.4
-  - persistent-sqlite ==2.8.1.2
+  - persistent-sqlite ==2.8.2
   - persistent-template ==2.5.4
   - pgp-wordlist ==0.1.0.2
   - pg-transact ==0.1.0.1
@@ -1594,7 +1595,7 @@ default-package-overrides:
   - poly-arity ==0.1.0
   - polynomials-bernstein ==1.1.2
   - polyparse ==1.12
-  - pooled-io ==0.0.2.1
+  - pooled-io ==0.0.2.2
   - portable-lines ==0.1
   - postgresql-binary ==0.12.1.1
   - postgresql-libpq ==0.9.4.1
@@ -1628,9 +1629,9 @@ default-package-overrides:
   - primes ==0.2.1.0
   - primitive ==0.6.3.0
   - prim-uniq ==0.1.0.1
-  - probability ==0.2.5.1
+  - probability ==0.2.5.2
   - process-extras ==0.7.4
-  - product-isomorphic ==0.0.3.2
+  - product-isomorphic ==0.0.3.3
   - product-profunctors ==0.10.0.0
   - profiterole ==0.1
   - profunctors ==5.2.2
@@ -1643,14 +1644,14 @@ default-package-overrides:
   - protobuf-simple ==0.1.0.5
   - protocol-buffers ==2.4.11
   - protocol-buffers-descriptor ==2.4.11
-  - protocol-radius ==0.0.1.0
+  - protocol-radius ==0.0.1.1
   - protocol-radius-test ==0.0.1.0
   - proto-lens ==0.3.1.0
-  - proto-lens-arbitrary ==0.1.2.1
-  - proto-lens-combinators ==0.1.0.10
-  - proto-lens-optparse ==0.1.1.1
+  - proto-lens-arbitrary ==0.1.2.2
+  - proto-lens-combinators ==0.1.0.11
+  - proto-lens-optparse ==0.1.1.2
   - proto-lens-protobuf-types ==0.3.0.1
-  - proto-lens-protoc ==0.3.1.0
+  - proto-lens-protoc ==0.3.1.2
   - protolude ==0.2.2
   - proxied ==0.3
   - psql-helpers ==0.1.0.0
@@ -1743,7 +1744,7 @@ default-package-overrides:
   - rest-stringmap ==0.2.0.7
   - result ==0.2.6.0
   - rethinkdb-client-driver ==0.0.25
-  - retry ==0.7.6.3
+  - retry ==0.7.7.0
   - rev-state ==0.1.2
   - rfc5051 ==0.1.0.3
   - rhine ==0.4.0.1
@@ -1776,8 +1777,8 @@ default-package-overrides:
   - sandman ==0.2.0.1
   - say ==0.1.0.1
   - sbp ==2.3.17
-  - scalendar ==1.2.0
   - SCalendar ==1.1.0
+  - scalendar ==1.2.0
   - scalpel ==0.5.1
   - scalpel-core ==0.5.1
   - scanner ==0.2
@@ -1826,7 +1827,7 @@ default-package-overrides:
   - servant-lucid ==0.8.1
   - servant-mock ==0.8.4
   - servant-pandoc ==0.5.0.0
-  - servant-ruby ==0.8.0.1
+  - servant-ruby ==0.8.0.2
   - servant-server ==0.14.1
   - servant-static-th ==0.2.2.0
   - servant-streaming ==0.3.0.0
@@ -1845,7 +1846,7 @@ default-package-overrides:
   - ses-html ==0.4.0.0
   - set-cover ==0.0.9
   - setenv ==0.1.1.3
-  - setlocale ==1.0.0.6
+  - setlocale ==1.0.0.8
   - sexp-grammar ==2.0.1
   - SHA ==1.6.4.4
   - shake ==0.16.4
@@ -1873,8 +1874,8 @@ default-package-overrides:
   - siphash ==1.0.3
   - size-based ==0.1.1.0
   - skein ==1.0.9.4
-  - skylighting ==0.7.2
-  - skylighting-core ==0.7.2
+  - skylighting ==0.7.3
+  - skylighting-core ==0.7.3
   - slack-web ==0.2.0.6
   - slave-thread ==1.0.2
   - smallcheck ==1.1.5
@@ -1898,7 +1899,7 @@ default-package-overrides:
   - sparkle ==0.7.4
   - sparse-linear-algebra ==0.3.1
   - special-values ==0.1.0.0
-  - speculate ==0.3.2
+  - speculate ==0.3.5
   - speculation ==1.5.0.3
   - speedy-slice ==0.3.0
   - sphinx ==0.6.0.2
@@ -1994,7 +1995,7 @@ default-package-overrides:
   - tao ==1.0.0
   - tao-example ==1.0.0
   - tar ==0.5.1.0
-  - tar-conduit ==0.2.3.1
+  - tar-conduit ==0.2.5
   - tardis ==0.4.1.0
   - tasty ==1.1.0.3
   - tasty-ant-xml ==1.1.4
@@ -2033,11 +2034,11 @@ default-package-overrides:
   - texmath ==0.11.0.1
   - text ==1.2.3.0
   - text-binary ==0.2.1.1
-  - text-builder ==0.5.3.1
+  - text-builder ==0.5.4.3
   - text-conversions ==0.3.0
   - text-icu ==0.7.0.1
   - text-latin1 ==0.3.1
-  - text-ldap ==0.1.1.12
+  - text-ldap ==0.1.1.13
   - textlocal ==0.1.0.5
   - text-manipulate ==0.2.0.1
   - text-metrics ==0.3.0
@@ -2050,12 +2051,12 @@ default-package-overrides:
   - tfp ==1.0.0.2
   - tf-random ==0.5
   - th-abstraction ==0.2.8.0
-  - th-data-compat ==0.0.2.6
+  - th-data-compat ==0.0.2.7
   - th-desugar ==1.8
   - these ==0.7.4
   - th-expand-syns ==0.4.4.0
   - th-extras ==0.0.0.4
-  - th-lift ==0.7.10
+  - th-lift ==0.7.11
   - th-lift-instances ==0.1.11
   - th-nowq ==0.1.0.2
   - th-orphans ==0.13.6
@@ -2065,7 +2066,7 @@ default-package-overrides:
   - threads ==0.5.1.6
   - threads-extras ==0.1.0.2
   - threepenny-gui ==0.8.2.4
-  - th-reify-compat ==0.0.1.4
+  - th-reify-compat ==0.0.1.5
   - th-reify-many ==0.1.8
   - throttle-io-stream ==0.2.0.1
   - through-text ==0.1.0.0
@@ -2078,7 +2079,7 @@ default-package-overrides:
   - timeit ==2.0
   - timelens ==0.2.0.2
   - time-lens ==0.4.0.2
-  - time-locale-compat ==0.1.1.4
+  - time-locale-compat ==0.1.1.5
   - time-locale-vietnamese ==1.0.0.0
   - time-parsers ==0.1.2.0
   - timerep ==2.0.0.2
@@ -2155,10 +2156,10 @@ default-package-overrides:
   - universe-reverse-instances ==1.0
   - universum ==1.2.0
   - unix-bytestring ==0.3.7.3
-  - unix-compat ==0.5.0.1
+  - unix-compat ==0.5.1
   - unix-time ==0.3.8
-  - unliftio ==0.2.7.0
-  - unliftio-core ==0.1.1.0
+  - unliftio ==0.2.7.1
+  - unliftio-core ==0.1.2.0
   - unlit ==0.4.0.0
   - unordered-containers ==0.2.9.0
   - unordered-intmap ==0.1.1
@@ -2172,7 +2173,7 @@ default-package-overrides:
   - users-test ==0.5.0.1
   - utf8-light ==0.4.2
   - utf8-string ==1.0.1.1
-  - util ==0.1.10.1
+  - util ==0.1.11.0
   - utility-ht ==0.0.14
   - uuid ==1.3.13
   - uuid-types ==1.0.3
@@ -2181,18 +2182,18 @@ default-package-overrides:
   - validity-aeson ==0.2.0.2
   - validity-bytestring ==0.3.0.2
   - validity-containers ==0.3.1.0
-  - validity-path ==0.3.0.1
-  - validity-scientific ==0.2.0.1
-  - validity-text ==0.3.0.1
-  - validity-time ==0.2.0.1
-  - validity-unordered-containers ==0.2.0.1
-  - validity-uuid ==0.1.0.1
-  - validity-vector ==0.2.0.1
+  - validity-path ==0.3.0.2
+  - validity-scientific ==0.2.0.2
+  - validity-text ==0.3.1.0
+  - validity-time ==0.2.0.2
+  - validity-unordered-containers ==0.2.0.2
+  - validity-uuid ==0.1.0.2
+  - validity-vector ==0.2.0.2
   - valor ==0.1.0.0
   - vault ==0.3.1.2
   - vec ==0.1
   - vector ==0.12.0.1
-  - vector-algorithms ==0.7.0.1
+  - vector-algorithms ==0.7.0.4
   - vector-binary-instances ==0.2.4
   - vector-buffer ==0.4.1
   - vector-builder ==0.3.6
@@ -2220,7 +2221,7 @@ default-package-overrides:
   - wai-conduit ==3.0.0.4
   - wai-cors ==0.2.6
   - wai-eventsource ==3.0.0
-  - wai-extra ==3.0.24.1
+  - wai-extra ==3.0.24.2
   - wai-handler-launch ==3.0.2.4
   - wai-logger ==2.3.2
   - wai-middleware-caching ==0.1.0.2
@@ -2377,6 +2378,7 @@ extra-packages:
   - Cabal == 1.18.*                     # required for cabal-install et al on old GHC versions
   - Cabal == 1.20.*                     # required for cabal-install et al on old GHC versions
   - Cabal == 1.24.*                     # required for jailbreak-cabal etc.
+  - Cabal == 2.2.*                      # required for jailbreak-cabal etc.
   - colour < 2.3.4                      # newer versions don't support GHC 7.10.x
   - conduit >=1.1 && <1.3               # pre-lts-11.x versions neeed by git-annex 6.20180227
   - conduit-extra >=1.1 && <1.3         # pre-lts-11.x versions neeed by git-annex 6.20180227
@@ -9054,18 +9056,11 @@ dont-distribute-packages:
   temporary-resourcet:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   tempus:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   tensor:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
-  tensorflow-core-ops:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
-  tensorflow-logging:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
-  tensorflow-opgen:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
-  tensorflow-ops:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
-  tensorflow-proto:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
-  tensorflow:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   term-rewriting:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   termbox-bindings:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   termcolor:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   terminal-text:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   termination-combinators:                        [ i686-linux, x86_64-linux, x86_64-darwin ]
-  termonad:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   termplot:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   terntup:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   terrahs:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
diff --git a/pkgs/development/haskell-modules/configuration-nix.nix b/pkgs/development/haskell-modules/configuration-nix.nix
index d363d2e87b69..d016bd6ce8d6 100644
--- a/pkgs/development/haskell-modules/configuration-nix.nix
+++ b/pkgs/development/haskell-modules/configuration-nix.nix
@@ -314,9 +314,6 @@ self: super: builtins.intersectAttrs super {
   # https://github.com/bos/pcap/issues/5
   pcap = addExtraLibrary super.pcap pkgs.libpcap;
 
-  # https://github.com/snoyberg/yaml/issues/106
-  yaml = disableCabalFlag super.yaml "system-libyaml";
-
   # The cabal files for these libraries do not list the required system dependencies.
   miniball = overrideCabal super.miniball (drv: {
     librarySystemDepends = [ pkgs.miniball ];
@@ -510,4 +507,8 @@ self: super: builtins.intersectAttrs super {
   LDAP = dontCheck (overrideCabal super.LDAP (drv: {
     librarySystemDepends = drv.librarySystemDepends or [] ++ [ pkgs.cyrus_sasl.dev ];
   }));
+
+  # Doctests hang only when compiling with nix.
+  # https://github.com/cdepillabout/termonad/issues/15
+  termonad = dontCheck super.termonad;
 }
diff --git a/pkgs/development/haskell-modules/configuration-tensorflow.nix b/pkgs/development/haskell-modules/configuration-tensorflow.nix
index dfc93686405c..43a3b82923ba 100644
--- a/pkgs/development/haskell-modules/configuration-tensorflow.nix
+++ b/pkgs/development/haskell-modules/configuration-tensorflow.nix
@@ -55,13 +55,29 @@ in
   tensorflow-logging = super.tensorflow-logging.override {
     inherit proto-lens;
   };
-  tensorflow-mnist = super.tensorflow-mnist.override {
+  tensorflow-mnist = overrideCabal (super.tensorflow-mnist.override {
     inherit proto-lens;
-  };
+    # https://github.com/tensorflow/haskell/issues/215
+    tensorflow-mnist-input-data = self.tensorflow-mnist-input-data;
+  }) (_drv: { broken = false; });
   tensorflow-mnist-input-data = setSourceRoot "tensorflow-mnist-input-data" (super.callPackage (
     { mkDerivation, base, bytestring, Cabal, cryptonite, directory
     , filepath, HTTP, network-uri, stdenv
     }:
+
+    let
+      fileInfos = {
+        "train-images-idx3-ubyte.gz" = "440fcabf73cc546fa21475e81ea370265605f56be210a4024d2ca8f203523609";
+        "train-labels-idx1-ubyte.gz" = "3552534a0a558bbed6aed32b30c495cca23d567ec52cac8be1a0730e8010255c";
+        "t10k-images-idx3-ubyte.gz"  = "8d422c7b0a1c1c79245a5bcf07fe86e33eeafee792b84584aec276f5a2dbc4e6";
+        "t10k-labels-idx1-ubyte.gz"  = "f7ae60f92e00ec6debd23a6088c31dbd2371eca3ffa0defaefb259924204aec6";
+      };
+      downloads = with pkgs.lib; flip mapAttrsToList fileInfos (name: sha256:
+                    pkgs.fetchurl {
+                      url = "http://yann.lecun.com/exdb/mnist/${name}";
+                      inherit sha256;
+                    });
+    in
     mkDerivation {
       pname = "tensorflow-mnist-input-data";
       version = "0.1.0.0";
@@ -71,6 +87,9 @@ in
         base bytestring Cabal cryptonite directory filepath HTTP
         network-uri
       ];
+      preConfigure = pkgs.lib.strings.concatStringsSep "\n" (
+          map (x: "ln -s ${x} data/$(stripHash ${x})") downloads
+        );
       libraryHaskellDepends = [ base ];
       homepage = "https://github.com/tensorflow/haskell#readme";
       description = "Downloader of input data for training MNIST";
diff --git a/pkgs/development/haskell-modules/generic-builder.nix b/pkgs/development/haskell-modules/generic-builder.nix
index 1b33954662db..cdbf119af8c4 100644
--- a/pkgs/development/haskell-modules/generic-builder.nix
+++ b/pkgs/development/haskell-modules/generic-builder.nix
@@ -26,7 +26,7 @@ in
 , editedCabalFile ? null
 , enableLibraryProfiling ? true
 , enableExecutableProfiling ? false
-, profilingDetail ? "all-functions"
+, profilingDetail ? "exported-functions"
 # TODO enable shared libs for cross-compiling
 , enableSharedExecutables ? false
 , enableSharedLibraries ? (ghc.enableShared or false)
@@ -134,7 +134,7 @@ let
   buildFlagsString = optionalString (buildFlags != []) (" " + concatStringsSep " " buildFlags);
 
   defaultConfigureFlags = [
-    "--verbose" "--prefix=$out" "--libdir=\\$prefix/lib/\\$compiler" "--libsubdir=\\$pkgid"
+    "--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.
diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix
index c1fb70ee2e6e..003d9d259ace 100644
--- a/pkgs/development/haskell-modules/hackage-packages.nix
+++ b/pkgs/development/haskell-modules/hackage-packages.nix
@@ -2469,6 +2469,35 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "Cabal_2_4_0_0" = callPackage
+    ({ mkDerivation, array, base, base-compat, base-orphans, binary
+     , bytestring, containers, deepseq, Diff, directory, filepath
+     , integer-logarithms, mtl, optparse-applicative, parsec, pretty
+     , process, QuickCheck, tagged, tar, tasty, tasty-golden
+     , tasty-hunit, tasty-quickcheck, temporary, text, time
+     , transformers, tree-diff, unix
+     }:
+     mkDerivation {
+       pname = "Cabal";
+       version = "2.4.0.0";
+       sha256 = "1zz0vadgr8vn2x7fzv4hcip1mcvxah50sx6zzrxhn9c1lw0l0cgl";
+       setupHaskellDepends = [ mtl parsec ];
+       libraryHaskellDepends = [
+         array base binary bytestring containers deepseq directory filepath
+         mtl parsec pretty process text time transformers unix
+       ];
+       testHaskellDepends = [
+         array base base-compat base-orphans bytestring containers deepseq
+         Diff directory filepath integer-logarithms optparse-applicative
+         pretty process QuickCheck tagged tar tasty tasty-golden tasty-hunit
+         tasty-quickcheck temporary text tree-diff
+       ];
+       doCheck = false;
+       description = "A framework for packaging Haskell software";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "Cabal-ide-backend" = callPackage
     ({ mkDerivation, array, base, binary, bytestring, Cabal, containers
      , deepseq, directory, extensible-exceptions, filepath, HUnit
@@ -5391,17 +5420,6 @@ self: {
      }) {};
 
   "Fin" = callPackage
-    ({ mkDerivation, base, natural-induction, peano }:
-     mkDerivation {
-       pname = "Fin";
-       version = "0.2.3.0";
-       sha256 = "1cjsp6i1ak2icjmg0xrprn2xminz35mxb4dj1nsvjvs2qqgjvl1g";
-       libraryHaskellDepends = [ base natural-induction peano ];
-       description = "Finite totally-ordered sets";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "Fin_0_2_5_0" = callPackage
     ({ mkDerivation, alg, base, foldable1, natural-induction, peano }:
      mkDerivation {
        pname = "Fin";
@@ -5412,7 +5430,6 @@ self: {
        ];
        description = "Finite totally-ordered sets";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "Finance-Quote-Yahoo" = callPackage
@@ -5768,27 +5785,30 @@ self: {
      }) {};
 
   "Frames" = callPackage
-    ({ mkDerivation, base, contravariant, criterion, deepseq, directory
-     , discrimination, ghc-prim, hashable, hspec, htoml, HUnit, pipes
-     , pipes-bytestring, pipes-group, pipes-parse, pipes-safe
-     , pipes-text, pretty, primitive, readable, regex-applicative
-     , template-haskell, temporary, text, transformers
-     , unordered-containers, vector, vinyl
+    ({ mkDerivation, attoparsec, base, bytestring, containers
+     , contravariant, criterion, deepseq, directory, discrimination
+     , foldl, ghc-prim, hashable, hspec, htoml, HUnit, lens, pipes
+     , pipes-bytestring, pipes-group, pipes-parse, pipes-safe, pretty
+     , primitive, readable, regex-applicative, template-haskell
+     , temporary, text, transformers, unordered-containers, vector
+     , vector-th-unbox, vinyl
      }:
      mkDerivation {
        pname = "Frames";
-       version = "0.4.0";
-       sha256 = "06yh8vl3s5543nxhndjd2wsbclka4in4nsbjqzbpcg9g8s8x3z20";
+       version = "0.5.0";
+       sha256 = "0dd2gqgxjhy23a9xhz62gzashjqmcv34gkcys4wz9l6y2fk1a5xl";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         base contravariant deepseq discrimination ghc-prim hashable pipes
-         pipes-bytestring pipes-group pipes-parse pipes-safe pipes-text
-         primitive readable template-haskell text transformers vector vinyl
+         base bytestring containers contravariant deepseq discrimination
+         ghc-prim hashable pipes pipes-bytestring pipes-group pipes-parse
+         pipes-safe primitive readable template-haskell text transformers
+         vector vector-th-unbox vinyl
        ];
        testHaskellDepends = [
-         base directory hspec htoml HUnit pipes pretty regex-applicative
-         template-haskell temporary text unordered-containers vinyl
+         attoparsec base directory foldl hspec htoml HUnit lens pipes pretty
+         regex-applicative template-haskell temporary text
+         unordered-containers vinyl
        ];
        benchmarkHaskellDepends = [ base criterion pipes transformers ];
        description = "Data frames For working with tabular data files";
@@ -5804,8 +5824,8 @@ self: {
      }:
      mkDerivation {
        pname = "Frames-beam";
-       version = "0.1.0.1";
-       sha256 = "12n3pyr88ihgkfwynhvjx3m9fr1fbznpkgx9ihf7mqar9d8wnywj";
+       version = "0.2.0.0";
+       sha256 = "1fzd41zwx5zmbysk49z2r9ga11z8c0vqqfvb4zgbcm3ivhkn48yi";
        libraryHaskellDepends = [
          base beam-core beam-migrate beam-postgres bytestring conduit Frames
          generics-sop monad-control postgresql-simple process scientific
@@ -6083,8 +6103,8 @@ self: {
      }:
      mkDerivation {
        pname = "GLUtil";
-       version = "0.10.1";
-       sha256 = "08qsa22xhw4cdhdzc8ixlwjazi9s0n48395g4vf5qwfap9r8rdq3";
+       version = "0.10.2";
+       sha256 = "05x733nk3dbla4y6p7b1nx4pv3b0wm6idhsm7p30z2f968k3hyv9";
        libraryHaskellDepends = [
          array base bytestring containers directory filepath hpp JuicyPixels
          linear OpenGL OpenGLRaw transformers vector
@@ -9852,6 +9872,21 @@ self: {
        license = stdenv.lib.licenses.publicDomain;
      }) {inherit (pkgs) openssl;};
 
+  "HsOpenSSL_0_11_4_15" = callPackage
+    ({ mkDerivation, base, bytestring, Cabal, network, openssl, time }:
+     mkDerivation {
+       pname = "HsOpenSSL";
+       version = "0.11.4.15";
+       sha256 = "0idmak6d8mpbxphyq9hkxkmby2wnzhc1phywlgm0zw6q47pwxgff";
+       setupHaskellDepends = [ base Cabal ];
+       libraryHaskellDepends = [ base bytestring network time ];
+       librarySystemDepends = [ openssl ];
+       testHaskellDepends = [ base bytestring ];
+       description = "Partial OpenSSL binding for Haskell";
+       license = stdenv.lib.licenses.publicDomain;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {inherit (pkgs) openssl;};
+
   "HsOpenSSL-x509-system" = callPackage
     ({ mkDerivation, base, bytestring, HsOpenSSL, unix }:
      mkDerivation {
@@ -10175,8 +10210,8 @@ self: {
      }:
      mkDerivation {
        pname = "IPv6DB";
-       version = "0.3.0";
-       sha256 = "0dz0ar75nd04l1cbca7iz9laqv24mach7ajr4k5ibl2717kczkpa";
+       version = "0.3.1";
+       sha256 = "06240z3nbjkf0rgwhvajjw28lckgpsfz5nbzzdqyfzgyg2r4wdcn";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -12838,8 +12873,10 @@ self: {
     ({ mkDerivation, base, containers, random }:
      mkDerivation {
        pname = "NameGenerator";
-       version = "0.0.1";
-       sha256 = "1zzc944xdfxlqld6fnn6fiqrd9rs2cdzqv5jc8jx7azbvspq6y9f";
+       version = "0.0.2";
+       sha256 = "1rnn3i9rvb9z7iqd0hx730gv3n5hc1gbsdqsa0hlq3qxffg3sr8x";
+       revision = "1";
+       editedCabalFile = "01ma6068mnwn9f7jpa5g8kkl7lyhl5wnpw9ad44zz9gki1mrw37i";
        libraryHaskellDepends = [ base containers random ];
        description = "A name generator written in Haskell";
        license = stdenv.lib.licenses.gpl3;
@@ -14549,12 +14586,12 @@ self: {
      }) {};
 
   "Prelude" = callPackage
-    ({ mkDerivation, base-noprelude }:
+    ({ mkDerivation, base }:
      mkDerivation {
        pname = "Prelude";
-       version = "0.1.0.0";
-       sha256 = "0wcacpbqphb635pblqzbv44fhjwdnv0l90zr5i6c8x7mymqpcixj";
-       libraryHaskellDepends = [ base-noprelude ];
+       version = "0.1.0.1";
+       sha256 = "14p4jkhzdh618r7gvj6dd4w1zj4b032g4nx43bihnnaf2dqyppy6";
+       libraryHaskellDepends = [ base ];
        description = "A Prelude module replacement";
        license = stdenv.lib.licenses.bsd3;
      }) {};
@@ -14936,6 +14973,24 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "QuickCheck_2_12_2" = callPackage
+    ({ mkDerivation, base, containers, deepseq, erf, process, random
+     , template-haskell, tf-random, transformers
+     }:
+     mkDerivation {
+       pname = "QuickCheck";
+       version = "2.12.2";
+       sha256 = "0cqjxwjn0374baf3qs059jmj8qr147i2fqxn6cjhsn4wbzxnc48r";
+       libraryHaskellDepends = [
+         base containers deepseq erf random template-haskell tf-random
+         transformers
+       ];
+       testHaskellDepends = [ base deepseq process ];
+       description = "Automatic testing of Haskell programs";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "QuickCheck-GenT" = callPackage
     ({ mkDerivation, base, mtl, QuickCheck, random }:
      mkDerivation {
@@ -14980,6 +15035,8 @@ self: {
        pname = "QuickPlot";
        version = "0.1.0.1";
        sha256 = "1d9zllxl8vyjmb9m9kdgrv9v9hwnspyiqhjnb5ds5kmby6r4r1h2";
+       revision = "1";
+       editedCabalFile = "0ykvkbrf5mavrk9jdl5w01dldwi3x2dwg89hiin95vi8ay0r02gq";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -15711,8 +15768,8 @@ self: {
     ({ mkDerivation, base, Cabal, SDL, SDL_gfx }:
      mkDerivation {
        pname = "SDL-gfx";
-       version = "0.6.2.0";
-       sha256 = "1y49wzy71ns7gwczmwvrx8d026y5nabqzvh8ymxxcy3brhay0shr";
+       version = "0.7.0.0";
+       sha256 = "1pmhbgdp4f9nz9mpxckx0mrhphccqsfcwfpflxmph5gx4mxk4xb2";
        enableSeparateDataOutput = true;
        setupHaskellDepends = [ base Cabal ];
        libraryHaskellDepends = [ base SDL ];
@@ -18072,10 +18129,10 @@ self: {
     ({ mkDerivation, base, base-orphans }:
      mkDerivation {
        pname = "TypeCompose";
-       version = "0.9.12";
-       sha256 = "1qikwd8cq7pywz5j86hwc21ak15a3w5jrhyzmsrr30izr4n2q61s";
-       revision = "1";
-       editedCabalFile = "0j27xdfim7a6a16v834n3jdp1j7bsr3yn19bnfwni3xsvrc732q3";
+       version = "0.9.13";
+       sha256 = "0cmlldr665mzi0jsb567pn6qbqxr6cyq9ky3mfh1sfls5yhwr5hc";
+       revision = "2";
+       editedCabalFile = "026h1zgp7fj8ccq8rpzcq0s4wdbw2v7fskcj73n40mfhv0gx26y0";
        libraryHaskellDepends = [ base base-orphans ];
        description = "Type composition classes & instances";
        license = stdenv.lib.licenses.bsd3;
@@ -21741,23 +21798,11 @@ self: {
     ({ mkDerivation, aeson, base }:
      mkDerivation {
        pname = "aeson-generic-compat";
-       version = "0.0.1.2";
-       sha256 = "08h4r8ni7i9x0fqx5gizv6fpwrq84lv8m4c3w6g2hirs0iscw233";
-       libraryHaskellDepends = [ aeson base ];
-       description = "Compatible generic class names of Aeson";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "aeson-generic-compat_0_0_1_3" = callPackage
-    ({ mkDerivation, aeson, base }:
-     mkDerivation {
-       pname = "aeson-generic-compat";
        version = "0.0.1.3";
        sha256 = "1kr3waa46k3619yvif0zh4lx7s0zhyghlr1c5kkrvg432i8wmdm6";
        libraryHaskellDepends = [ aeson base ];
        description = "Compatible generic class names of Aeson";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "aeson-injector" = callPackage
@@ -21768,8 +21813,8 @@ self: {
      }:
      mkDerivation {
        pname = "aeson-injector";
-       version = "1.1.0.0";
-       sha256 = "1dkl7sgzi9hzc86a27wfch7p33sj1h8zh7xsah3fbqjbz4y8z9wf";
+       version = "1.1.1.0";
+       sha256 = "04hg0vdrfb7x6qxwcifsayc6z5vhc1l96ahvswg8q5wddc00ypzp";
        libraryHaskellDepends = [
          aeson base bifunctors deepseq hashable lens servant-docs swagger2
          text unordered-containers
@@ -23042,20 +23087,17 @@ self: {
 
   "algebraic-graphs" = callPackage
     ({ mkDerivation, array, base, base-compat, base-orphans, containers
-     , criterion, deepseq, extra, QuickCheck
+     , deepseq, extra, mtl, QuickCheck
      }:
      mkDerivation {
        pname = "algebraic-graphs";
-       version = "0.1.1.1";
-       sha256 = "0c8jrp0z3ibla7isbn1v5nhfka56hwq8h10r7h3vca53yzbafiw7";
+       version = "0.2";
+       sha256 = "0rfs58z60nn041ymi7lilc7dyijka30l4hhdznfaz9sfzx4f8yl8";
        libraryHaskellDepends = [
-         array base base-compat containers deepseq
+         array base base-compat containers deepseq mtl
        ];
        testHaskellDepends = [
-         base base-compat base-orphans containers extra QuickCheck
-       ];
-       benchmarkHaskellDepends = [
-         base base-compat containers criterion
+         array base base-compat base-orphans containers extra QuickCheck
        ];
        description = "A library for algebraic graph construction and transformation";
        license = stdenv.lib.licenses.mit;
@@ -23385,8 +23427,8 @@ self: {
      }:
      mkDerivation {
        pname = "alsa-pcm";
-       version = "0.6.1";
-       sha256 = "0pafjds9xrhzwv3xz9qcknm9f2plz3bvqqjlznss1alhgf7pcga5";
+       version = "0.6.1.1";
+       sha256 = "1mllr9nbm3qb837zgvd6mrpr6f8i272wflv0a45rrpsq50zgcj33";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -26708,6 +26750,20 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "ansi-terminal_0_8_1" = callPackage
+    ({ mkDerivation, base, colour }:
+     mkDerivation {
+       pname = "ansi-terminal";
+       version = "0.8.1";
+       sha256 = "1fm489l5mnlyb6bidq7vxz5asvhshmxz38f0lijgj0z7yyzqpwwy";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base colour ];
+       description = "Simple ANSI terminal support, with Windows compatibility";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "ansi-terminal-game" = callPackage
     ({ mkDerivation, ansi-terminal, array, base, bytestring, cereal
      , clock, hspec, linebreak, split, terminal-size, timers-tick
@@ -27168,15 +27224,15 @@ self: {
      }) {};
 
   "apecs" = callPackage
-    ({ mkDerivation, async, base, containers, criterion, linear, mtl
-     , QuickCheck, template-haskell, vector
+    ({ mkDerivation, base, containers, criterion, linear, mtl
+     , QuickCheck, stm, template-haskell, vector
      }:
      mkDerivation {
        pname = "apecs";
-       version = "0.4.1.1";
-       sha256 = "0ybw09hpjfjm22bza74n57aarv6nhwf5zi27q7q7a6yf5jpa5ccg";
+       version = "0.5.0.0";
+       sha256 = "11ya44z5lk2vk0pwz1m8ygr0x6gkf7xhwiy0k28s5kd65vlpx6bw";
        libraryHaskellDepends = [
-         async base containers mtl template-haskell vector
+         base containers mtl stm template-haskell vector
        ];
        testHaskellDepends = [
          base containers criterion linear QuickCheck vector
@@ -27729,13 +27785,13 @@ self: {
      }) {};
 
   "appendmap" = callPackage
-    ({ mkDerivation, base, containers, hspec }:
+    ({ mkDerivation, base, containers, hspec, QuickCheck }:
      mkDerivation {
        pname = "appendmap";
-       version = "0.1.3";
-       sha256 = "1jssrwbsk0z9y4ialw9ly7vc95jrc64dr1idycwz1spgvn03adp6";
+       version = "0.1.5";
+       sha256 = "03mr60hgb5593s9vhc5890xwd2pdyismfkvnvw5hxhq26wda5grd";
        libraryHaskellDepends = [ base containers ];
-       testHaskellDepends = [ base containers hspec ];
+       testHaskellDepends = [ base containers hspec QuickCheck ];
        description = "Map with a Semigroup and Monoid instances delegating to Semigroup of the elements";
        license = stdenv.lib.licenses.bsd3;
      }) {};
@@ -27895,8 +27951,8 @@ self: {
     ({ mkDerivation, base, containers, utility-ht }:
      mkDerivation {
        pname = "apportionment";
-       version = "0.0.0.2";
-       sha256 = "0azqr4c1zz19rba2gg2w31w38jslvjxgi1qh58qx60fvzxj9ab9m";
+       version = "0.0.0.3";
+       sha256 = "062v4a1ip7zy20b03z1jajqy2ylx5fl74p7px54b1vajf6vx0wcg";
        libraryHaskellDepends = [ base containers utility-ht ];
        description = "Round a set of numbers while maintaining its sum";
        license = stdenv.lib.licenses.bsd3;
@@ -28435,8 +28491,8 @@ self: {
        pname = "arithmoi";
        version = "0.7.0.0";
        sha256 = "0303bqlbf8abixcq3x3px2ijj01c9hlqadkv8rhls6f64a8h8cwb";
-       revision = "2";
-       editedCabalFile = "1db2pcwip682f4zs1qnqzqqdswhqzbsxydy89m6zqm5ddlgrw5sq";
+       revision = "3";
+       editedCabalFile = "1s0jm2y0jhfrj7af80csckiizkfq5h0v4zb92mkwh1pkfi763fha";
        configureFlags = [ "-f-llvm" ];
        libraryHaskellDepends = [
          array base containers exact-pi ghc-prim integer-gmp
@@ -28762,16 +28818,17 @@ self: {
 
   "ascii" = callPackage
     ({ mkDerivation, base, blaze-builder, bytestring, case-insensitive
-     , hashable, text
+     , hashable, semigroups, text
      }:
      mkDerivation {
        pname = "ascii";
-       version = "0.0.4.1";
-       sha256 = "1xpw2n3gskndg74ilrq8zngawlvc3mbsji3nx2aprar96hdlpvpv";
+       version = "0.0.5.1";
+       sha256 = "06z63pr5g1wcsyii3pr8svz23cl9n4srspbkvby595pxfcbzkirn";
        libraryHaskellDepends = [
-         base blaze-builder bytestring case-insensitive hashable text
+         base blaze-builder bytestring case-insensitive hashable semigroups
+         text
        ];
-       description = "Type-safe, bytestring-based ASCII values. (deprecated)";
+       description = "Type-safe, bytestring-based ASCII values";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
@@ -28845,8 +28902,8 @@ self: {
      }:
      mkDerivation {
        pname = "ascii-string";
-       version = "1.0.1";
-       sha256 = "0br053njgnfqwgmk7zz0fayiyycqq3sw8kxjpb2s9wx17arnq5kz";
+       version = "1.0.1.3";
+       sha256 = "1m11ms0x5di5qbckh2n7vnqqh94wv9p6zzynglg4ngijqhn4qjls";
        libraryHaskellDepends = [
          base bytestring cereal deepseq deferred-folds foldl hashable
          primitive primitive-extras
@@ -29367,6 +29424,8 @@ self: {
        pname = "async";
        version = "2.2.1";
        sha256 = "09whscli1q5z7lzyq9rfk0bq1ydplh6pjmc6qv0x668k5818c2wg";
+       revision = "1";
+       editedCabalFile = "0lg8c3iixm7vjjq2nydkqswj78i4iyx2k83hgs12z829yj196y31";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base hashable stm ];
@@ -29808,8 +29867,8 @@ self: {
     ({ mkDerivation, base, stm }:
      mkDerivation {
        pname = "atomic-modify";
-       version = "0.1.0.1";
-       sha256 = "0kkfbm7jkarzj42ja7093i1j1h4klg362pfz1cvldvdhzjgs009r";
+       version = "0.1.0.2";
+       sha256 = "0j4zhr02bmkpar80vzxxj91qyz97wi7kia79q20a1y3sqbmx2sk5";
        libraryHaskellDepends = [ base stm ];
        description = "A typeclass for mutable references that have an atomic modify operation";
        license = stdenv.lib.licenses.asl20;
@@ -29935,19 +29994,20 @@ self: {
 
   "ats-format" = callPackage
     ({ mkDerivation, ansi-wl-pprint, base, Cabal, cli-setup, directory
-     , file-embed, htoml-megaparsec, language-ats, optparse-applicative
-     , process, text, unordered-containers
+     , file-embed, filepath, htoml-megaparsec, language-ats, megaparsec
+     , optparse-applicative, process, text, unordered-containers
      }:
      mkDerivation {
        pname = "ats-format";
-       version = "0.2.0.28";
-       sha256 = "0s538j8v0n8sdfi9pbykk2avbi3vg35iw2c9h6vmiyy3zszflqc4";
+       version = "0.2.0.29";
+       sha256 = "02zk3qbg2h14wc5x7sizllgj39zprgx63j8rbf2lk9nd3yiqc4va";
        isLibrary = false;
        isExecutable = true;
-       setupHaskellDepends = [ base Cabal cli-setup ];
+       setupHaskellDepends = [ base Cabal cli-setup filepath ];
        executableHaskellDepends = [
          ansi-wl-pprint base directory file-embed htoml-megaparsec
-         language-ats optparse-applicative process text unordered-containers
+         language-ats megaparsec optparse-applicative process text
+         unordered-containers
        ];
        description = "A source-code formatter for ATS";
        license = stdenv.lib.licenses.bsd3;
@@ -29964,8 +30024,8 @@ self: {
      }:
      mkDerivation {
        pname = "ats-pkg";
-       version = "3.2.1.8";
-       sha256 = "183gdyivl6kab2k3z0jm6dk0wh83qwz3zvai7ayfkq3rjc6lb8ms";
+       version = "3.2.2.0";
+       sha256 = "10xwgc7y324fgisqjkx2jk5bq226fj3ayl373m6m1nbnx2qax22w";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -30540,15 +30600,15 @@ self: {
      }) {};
 
   "aur" = callPackage
-    ({ mkDerivation, aeson, base, http-client, http-client-tls, servant
-     , servant-client, tasty, tasty-hunit, text
+    ({ mkDerivation, aeson, base, errors, http-client, http-client-tls
+     , servant, servant-client, tasty, tasty-hunit, text
      }:
      mkDerivation {
        pname = "aur";
-       version = "6.0.0.1";
-       sha256 = "1ip97gnny26h5ayq7x0yx4afls3nhd1kfhqz3l3bsjq7fvkn8jx0";
+       version = "6.1.0";
+       sha256 = "1wgff9vbp8sxqa0hyd6ifkld6yly20qijm15dfk72wpcsia86jx6";
        libraryHaskellDepends = [
-         aeson base http-client servant servant-client text
+         aeson base errors http-client servant servant-client text
        ];
        testHaskellDepends = [
          base http-client http-client-tls tasty tasty-hunit
@@ -30575,6 +30635,52 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "aura" = callPackage
+    ({ mkDerivation, aeson, aeson-pretty, algebraic-graphs, array
+     , async, aur, base, base-prelude, bytestring, compactable
+     , containers, directory, errors, filepath, freer-simple
+     , generic-lens, http-client, http-client-tls, http-types
+     , language-bash, megaparsec, microlens, microlens-ghc, mtl
+     , mwc-random, network-uri, non-empty-containers
+     , optparse-applicative, paths, pretty-simple, prettyprinter
+     , prettyprinter-ansi-terminal, semigroupoids, stm, tasty
+     , tasty-hunit, text, throttled, time, transformers, typed-process
+     , versions, witherable
+     }:
+     mkDerivation {
+       pname = "aura";
+       version = "2.0.0";
+       sha256 = "1k53r44kxy7p23nsjbx12mvn7nkl8j3h9fzy4v3dxyqkd4jz0996";
+       revision = "1";
+       editedCabalFile = "1z73n5fcrp23hms0l6r45p1knqqlng8g4gfb44a4raqj7da823zj";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson aeson-pretty algebraic-graphs array async aur base
+         base-prelude bytestring compactable containers directory errors
+         filepath freer-simple generic-lens http-client http-types
+         language-bash megaparsec microlens microlens-ghc mtl mwc-random
+         network-uri non-empty-containers paths pretty-simple prettyprinter
+         prettyprinter-ansi-terminal semigroupoids stm text throttled time
+         transformers typed-process versions witherable
+       ];
+       executableHaskellDepends = [
+         base base-prelude bytestring containers errors freer-simple
+         http-client http-client-tls language-bash microlens
+         non-empty-containers optparse-applicative paths pretty-simple
+         prettyprinter prettyprinter-ansi-terminal text transformers
+         typed-process versions
+       ];
+       testHaskellDepends = [
+         base base-prelude bytestring containers errors freer-simple
+         http-client language-bash megaparsec microlens non-empty-containers
+         paths pretty-simple prettyprinter prettyprinter-ansi-terminal tasty
+         tasty-hunit text transformers typed-process versions
+       ];
+       description = "A secure package manager for Arch Linux and the AUR, written in Haskell";
+       license = stdenv.lib.licenses.gpl3;
+     }) {};
+
   "authenticate" = callPackage
     ({ mkDerivation, aeson, attoparsec, base, blaze-builder, bytestring
      , case-insensitive, conduit, containers, http-conduit, http-types
@@ -30710,6 +30816,21 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "autoexporter_1_1_11" = callPackage
+    ({ mkDerivation, base, Cabal, directory, filepath }:
+     mkDerivation {
+       pname = "autoexporter";
+       version = "1.1.11";
+       sha256 = "17d1a2fns4b3gw8cggg9yq1fxvkyr859s3y22i9lviz6x7hd8dvn";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base Cabal directory filepath ];
+       executableHaskellDepends = [ base Cabal directory filepath ];
+       description = "Automatically re-export modules";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "autom" = callPackage
     ({ mkDerivation, base, bytestring, colour, ghc-prim, gloss
      , JuicyPixels, random, vector
@@ -31037,6 +31158,33 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "avro_0_3_5_1" = callPackage
+    ({ mkDerivation, aeson, array, base, base16-bytestring, binary
+     , bytestring, containers, data-binary-ieee754, directory, entropy
+     , extra, fail, hashable, hspec, lens, lens-aeson, mtl, pure-zlib
+     , QuickCheck, scientific, semigroups, tagged, template-haskell
+     , text, transformers, unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "avro";
+       version = "0.3.5.1";
+       sha256 = "147w9a30z2vxjf8lsmf4vy0p9dvc8c3lla45b42sinr9916m61f8";
+       libraryHaskellDepends = [
+         aeson array base base16-bytestring binary bytestring containers
+         data-binary-ieee754 entropy fail hashable mtl pure-zlib scientific
+         semigroups tagged template-haskell text unordered-containers vector
+       ];
+       testHaskellDepends = [
+         aeson array base base16-bytestring binary bytestring containers
+         directory entropy extra fail hashable hspec lens lens-aeson mtl
+         pure-zlib QuickCheck scientific semigroups tagged template-haskell
+         text transformers unordered-containers vector
+       ];
+       description = "Avro serialization support for Haskell";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "avwx" = callPackage
     ({ mkDerivation, attoparsec, base, HTTP, lens, optparse-applicative
      , parsers, pretty-show, text
@@ -32370,8 +32518,8 @@ self: {
      }:
      mkDerivation {
        pname = "barbies";
-       version = "0.1.3.1";
-       sha256 = "0jddnjygqmcczhg2s1ifqgmbd1liqrkhnza4bmcplwmqkg4bkbr5";
+       version = "0.1.4.0";
+       sha256 = "03ndlns5kmk3v0n153m7r5v91f8pwzi8fazhanjv1paxadwscada";
        libraryHaskellDepends = [ base bifunctors ];
        testHaskellDepends = [ base QuickCheck tasty tasty-quickcheck ];
        description = "Classes for working with types that can change clothes";
@@ -33145,8 +33293,8 @@ self: {
      }:
      mkDerivation {
        pname = "battleship-combinatorics";
-       version = "0.0.0.1";
-       sha256 = "00zr3798y5h640rdhls4xkaqmj6n90qnxglq7bq8bvxl68a8ibxd";
+       version = "0.0.0.2";
+       sha256 = "1vja3z9xna06cyb3xlx2p7z4drbglbyahr8fs3337phynv2h0v0g";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -33658,23 +33806,6 @@ self: {
      }:
      mkDerivation {
        pname = "bench";
-       version = "1.0.11";
-       sha256 = "15rv999kajlmhvd1cajcn8vir3r950c1v2njyywpqaz6anm6ykm8";
-       isLibrary = false;
-       isExecutable = true;
-       executableHaskellDepends = [
-         base criterion optparse-applicative process silently text turtle
-       ];
-       description = "Command-line benchmark tool";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "bench_1_0_12" = callPackage
-    ({ mkDerivation, base, criterion, optparse-applicative, process
-     , silently, text, turtle
-     }:
-     mkDerivation {
-       pname = "bench";
        version = "1.0.12";
        sha256 = "1sy97qpv6paar2d5syppk6lc06wjx6qyz5aidsmh30jq853nydx6";
        isLibrary = false;
@@ -33684,7 +33815,6 @@ self: {
        ];
        description = "Command-line benchmark tool";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "bench-graph" = callPackage
@@ -33897,22 +34027,24 @@ self: {
      }) {};
 
   "betris" = callPackage
-    ({ mkDerivation, base, containers, lens, linear, random, stm
-     , stm-chans, vty
+    ({ mkDerivation, base, containers, lens, linear
+     , optparse-applicative, random, stm, time-units, vty
      }:
      mkDerivation {
        pname = "betris";
-       version = "0.1.0.0";
-       sha256 = "1qn326s4xydvvgmrhqi48cc2pl9b3mp7swc82qk59gj7cx4dx222";
+       version = "0.1.1.1";
+       sha256 = "0ggmy2rwwsgq54j29b2a5dkafalww0nrzz89j08wf3gsg90g9p9i";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         base containers lens linear random stm stm-chans vty
+         base containers lens linear optparse-applicative random stm
+         time-units vty
        ];
        executableHaskellDepends = [
-         base containers lens linear random stm stm-chans vty
+         base containers lens linear optparse-applicative random stm
+         time-units vty
        ];
-       description = "Braille friendly vertical version of tetris";
+       description = "A horizontal version of tetris for braille users";
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
@@ -35403,8 +35535,8 @@ self: {
     ({ mkDerivation, base, monetdb-mapi }:
      mkDerivation {
        pname = "bindings-monetdb-mapi";
-       version = "0.1.0.0";
-       sha256 = "12i1sn508m0vcm6d34l32h8x77ik63l64ix4vmn6c91jbhgakvv3";
+       version = "0.1.0.1";
+       sha256 = "0ghl73n679y5srg4b2jwy6xgnd4lbv7wad8k133k6c7k70zq89hl";
        libraryHaskellDepends = [ base ];
        libraryPkgconfigDepends = [ monetdb-mapi ];
        description = "Low-level bindings for the MonetDB API (mapi)";
@@ -35700,8 +35832,8 @@ self: {
      }:
      mkDerivation {
        pname = "bins";
-       version = "0.1.1.0";
-       sha256 = "067df9dpb7kvn7v9y2mw0y3zb4jmxas27yd3ybrb9h94f9j8p9jk";
+       version = "0.1.1.1";
+       sha256 = "1v585ppm5g424jn2bkq7ydsdd6bds7gak53288vn4vclnw2rswr8";
        libraryHaskellDepends = [
          base containers finite-typelits ghc-typelits-knownnat
          ghc-typelits-natnormalise math-functions profunctors reflection
@@ -35819,8 +35951,8 @@ self: {
      }:
      mkDerivation {
        pname = "biohazard";
-       version = "1.0.3";
-       sha256 = "19pk2c52w300jxcnrxlnvc6m8qr4jj19vwppdz37c9nppm6q2252";
+       version = "1.0.4";
+       sha256 = "1gj5xr0b9s2zifknm10bynkh0gvsi0gmw2sa3zcp1if17ixndv2c";
        libraryHaskellDepends = [
          async attoparsec base base-prelude bytestring containers exceptions
          hashable primitive stm text transformers unix unordered-containers
@@ -37719,23 +37851,26 @@ self: {
 
   "board-games" = callPackage
     ({ mkDerivation, array, base, cgi, containers, html, httpd-shed
-     , network-uri, QuickCheck, random, transformers, utility-ht
+     , network-uri, non-empty, QuickCheck, random, transformers
+     , utility-ht
      }:
      mkDerivation {
        pname = "board-games";
-       version = "0.1.0.6";
-       sha256 = "0qry0kacwaiwdcc2wxz08qimvzj9y0vmyc0cc5yq1lyx1sx6wghp";
+       version = "0.2";
+       sha256 = "1plgnwlpx0bw0wjwd0dxbh616vy37frclwir692x1fr2lq85y98c";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         array base cgi containers html random transformers utility-ht
+         array base cgi containers html non-empty random transformers
+         utility-ht
        ];
        executableHaskellDepends = [
-         array base cgi containers html httpd-shed network-uri random
-         transformers utility-ht
+         array base cgi containers html httpd-shed network-uri non-empty
+         random transformers utility-ht
        ];
        testHaskellDepends = [
-         array base containers QuickCheck random transformers utility-ht
+         array base containers non-empty QuickCheck random transformers
+         utility-ht
        ];
        description = "Three games for inclusion in a web server";
        license = "GPL";
@@ -38071,8 +38206,8 @@ self: {
      }:
      mkDerivation {
        pname = "boolector";
-       version = "0.0.0.4";
-       sha256 = "0f5yfkkgarwkbdkxkjj8fsd7fgq683qjxyv88wqk724dx6wv3yn7";
+       version = "0.0.0.5";
+       sha256 = "0wgz2x8jwv5zwh9g7jpvl1q6inyvhjlh4jf3983r3zxr3k2jmxq5";
        libraryHaskellDepends = [
          base containers directory mtl temporary
        ];
@@ -38568,8 +38703,8 @@ self: {
      }:
      mkDerivation {
        pname = "brainheck";
-       version = "0.1.0.9";
-       sha256 = "0wmkkamgzassvc63wrk7bmm3ljq056zbxqbgs223454iswk35hc8";
+       version = "0.1.0.10";
+       sha256 = "10j3wncbdgxz2cb1v6sm6dr7z8jdh7xax8dwsj151sgxjw5n35xm";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -38666,7 +38801,7 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "brick_0_40" = callPackage
+  "brick_0_41_1" = callPackage
     ({ mkDerivation, base, config-ini, containers, contravariant
      , data-clist, deepseq, dlist, microlens, microlens-mtl
      , microlens-th, QuickCheck, stm, template-haskell, text
@@ -38674,8 +38809,8 @@ self: {
      }:
      mkDerivation {
        pname = "brick";
-       version = "0.40";
-       sha256 = "12bd0acbczcrr7mlpfrpjm9qq2ll2rbmgskpdw6lfaxz1iz75cad";
+       version = "0.41.1";
+       sha256 = "1sgxw18n3261gz0yfpig3p9vi84b2rlrsdkmvn5az26qrwrycqfd";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -38979,12 +39114,22 @@ self: {
      }) {};
 
   "bsb-http-chunked" = callPackage
-    ({ mkDerivation, base, bytestring, bytestring-builder }:
+    ({ mkDerivation, attoparsec, base, blaze-builder, bytestring
+     , bytestring-builder, deepseq, doctest, gauge, hedgehog, semigroups
+     , tasty, tasty-hedgehog, tasty-hunit
+     }:
      mkDerivation {
        pname = "bsb-http-chunked";
-       version = "0.0.0.2";
-       sha256 = "1x6m6xkrcw6jiaig1bb2wb5pqyw31x8xr9k9pxgq2g3ng44pbjr8";
+       version = "0.0.0.3";
+       sha256 = "181bmywrb6w3v4hljn6lxiqb0ql1imngsm4sma7i792y6m9p05j4";
        libraryHaskellDepends = [ base bytestring bytestring-builder ];
+       testHaskellDepends = [
+         attoparsec base blaze-builder bytestring bytestring-builder doctest
+         hedgehog tasty tasty-hedgehog tasty-hunit
+       ];
+       benchmarkHaskellDepends = [
+         base blaze-builder bytestring deepseq gauge semigroups
+       ];
        description = "Chunked HTTP transfer encoding for bytestring builders";
        license = stdenv.lib.licenses.bsd3;
      }) {};
@@ -39311,23 +39456,24 @@ self: {
 
   "bugsnag-haskell" = callPackage
     ({ mkDerivation, aeson, aeson-qq, base, bytestring
-     , case-insensitive, doctest, hspec, http-client, http-client-tls
-     , http-conduit, http-types, iproute, network, parsec
-     , template-haskell, text, th-lift-instances, time, ua-parser, wai
+     , case-insensitive, containers, doctest, Glob, hspec, http-client
+     , http-client-tls, http-conduit, http-types, iproute, network
+     , parsec, template-haskell, text, th-lift-instances, time
+     , ua-parser, unliftio, wai
      }:
      mkDerivation {
        pname = "bugsnag-haskell";
-       version = "0.0.1.3";
-       sha256 = "07z2gw0p6cswzr22378z07jdyrww56mby3bfdlc7gxarxyfzsf9f";
+       version = "0.0.2.0";
+       sha256 = "0jkcfgs6ln3pcq5c0pz170wwphkx27ya2xj7li1avph5j5q42dxl";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         aeson base bytestring case-insensitive http-client http-client-tls
-         http-conduit http-types iproute network parsec template-haskell
-         text th-lift-instances time ua-parser wai
+         aeson base bytestring case-insensitive containers Glob http-client
+         http-client-tls http-conduit http-types iproute network parsec
+         template-haskell text th-lift-instances time ua-parser wai
        ];
        testHaskellDepends = [
-         aeson aeson-qq base doctest hspec text time
+         aeson aeson-qq base doctest hspec text time unliftio
        ];
        description = "Bugsnag error reporter for Haskell";
        license = stdenv.lib.licenses.mit;
@@ -40011,13 +40157,30 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "bytestring-encoding" = callPackage
+    ({ mkDerivation, base, bytestring, QuickCheck, tasty, tasty-hunit
+     , tasty-quickcheck, tasty-th, text
+     }:
+     mkDerivation {
+       pname = "bytestring-encoding";
+       version = "0.1.0.0";
+       sha256 = "05pjx59xxpi27j3qfh2cwy9ibfdsc7g0zcsfkdhsj33yxpls363d";
+       libraryHaskellDepends = [ base bytestring text ];
+       testHaskellDepends = [
+         base bytestring QuickCheck tasty tasty-hunit tasty-quickcheck
+         tasty-th text
+       ];
+       description = "ByteString ↔ Text converter based on GHC.IO.Encoding";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "bytestring-encodings" = callPackage
     ({ mkDerivation, base, bytestring, gauge, ghc-prim, hedgehog, text
      }:
      mkDerivation {
        pname = "bytestring-encodings";
-       version = "0.2.0.1";
-       sha256 = "0qjqbffp4fa7a95mfsgzhibqblxrxl4qa8kb0yhyb8c1r47r5nn7";
+       version = "0.2.0.2";
+       sha256 = "1x239ihnxxmbfcpm9v79snpdafhammqdsm19pdlnrg02m0ia59pn";
        libraryHaskellDepends = [ base bytestring ghc-prim ];
        testHaskellDepends = [ base bytestring hedgehog ];
        benchmarkHaskellDepends = [ base bytestring gauge text ];
@@ -40202,6 +40365,8 @@ self: {
        pname = "bytestring-strict-builder";
        version = "0.4.5.1";
        sha256 = "17n6ll8k26312fgxbhws1yrswvy5dbsgyf57qksnj0akdssysy8q";
+       revision = "1";
+       editedCabalFile = "1snn8qb17maa76zji75i4yfz9x8ci16xp6zwg6kgwb33lf06imnd";
        libraryHaskellDepends = [
          base base-prelude bytestring semigroups
        ];
@@ -40795,8 +40960,8 @@ self: {
        pname = "cabal-doctest";
        version = "1.0.6";
        sha256 = "0bgd4jdmzxq5y465r4sf4jv2ix73yvblnr4c9wyazazafddamjny";
-       revision = "1";
-       editedCabalFile = "1bk85avgc93yvcggwbk01fy8nvg6753wgmaanhkry0hz55h7mpld";
+       revision = "2";
+       editedCabalFile = "1kbiwqm4fxrsdpcqijdq98h8wzmxydcvxd03f1z8dliqzyqsbd60";
        libraryHaskellDepends = [ base Cabal directory filepath ];
        description = "A Setup.hs helper for doctests running";
        license = stdenv.lib.licenses.bsd3;
@@ -41474,6 +41639,10 @@ self: {
          base Cabal containers directory filepath language-nix lens pretty
          process tasty tasty-golden
        ];
+       preCheck = ''
+         export PATH="$PWD/dist/build/cabal2nix:$PATH"
+         export HOME="$TMPDIR/home"
+       '';
        description = "Convert Cabal files into Nix build instructions";
        license = stdenv.lib.licenses.bsd3;
        maintainers = with stdenv.lib.maintainers; [ peti ];
@@ -42112,8 +42281,8 @@ self: {
     ({ mkDerivation, base, containers, html, old-time, utility-ht }:
      mkDerivation {
        pname = "calendar-recycling";
-       version = "0.0";
-       sha256 = "0qvrxq3pgbbska0mqw9wk7wpsiln0i8rbdxnj4jfiv5vpp2n4gm3";
+       version = "0.0.0.1";
+       sha256 = "0afmnii65axpqk3x50wj1d17942m1kyhwka3bn78ylxy9z7rrlwc";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -42459,8 +42628,8 @@ self: {
      }:
      mkDerivation {
        pname = "capnp";
-       version = "0.1.0.0";
-       sha256 = "14my9py7vjvxq51cd7sys8bxzyvwm2196qwjp2027daqbh7975vl";
+       version = "0.2.0.0";
+       sha256 = "06frfg1dl2cxbksy07pp9njfdgmyamyywd9wn2izpgixpxhv6d7d";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -43568,8 +43737,8 @@ self: {
      }:
      mkDerivation {
        pname = "cayley-client";
-       version = "0.4.6";
-       sha256 = "1wyf6bz87b83lxcdbm84db7ziv3ggb3zbj4qd2cvfc7m4wr9a0v6";
+       version = "0.4.7";
+       sha256 = "13jrmlci29hdx0mxs4lzd9xdrdn9qga4891p49nhfpfiz4gch6xs";
        libraryHaskellDepends = [
          aeson attoparsec base binary bytestring exceptions http-client
          http-conduit lens lens-aeson mtl text transformers
@@ -44839,26 +45008,26 @@ self: {
      , directory, file-embed, filepath, github, hlint, hspec
      , hspec-megaparsec, interpolatedstring-perl6, megaparsec
      , monad-parallel, optparse-applicative, process, QuickCheck
-     , quickcheck-text, range, temporary, text
+     , quickcheck-text, temporary, text
      }:
      mkDerivation {
        pname = "checkmate";
-       version = "0.3.2";
-       sha256 = "1s79cpi5hzfb59705i6gdvicczvddsbikcwwqx22v3yfyakbbxww";
+       version = "0.4.0";
+       sha256 = "0l5d1wf9pbji0h8qsqhqliv3kvzc6xcryq5zvps375pk8r5l2lvb";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          base containers diff-parse directory filepath github megaparsec
-         monad-parallel range text
+         monad-parallel text
        ];
        executableHaskellDepends = [
          base diff-parse directory filepath megaparsec optparse-applicative
-         process range text
+         process text
        ];
        testHaskellDepends = [
          base bytestring diff-parse directory file-embed filepath hlint
          hspec hspec-megaparsec interpolatedstring-perl6 megaparsec
-         QuickCheck quickcheck-text range temporary text
+         QuickCheck quickcheck-text temporary text
        ];
        description = "Generate checklists relevant to a given patch";
        license = stdenv.lib.licenses.agpl3;
@@ -47455,23 +47624,6 @@ self: {
      }:
      mkDerivation {
        pname = "cmark-gfm";
-       version = "0.1.4";
-       sha256 = "0jjcl7pfack8aksx34m1f80ll0y62ba1fyzdn77xbs2rvlvjzw0m";
-       libraryHaskellDepends = [ base bytestring text ];
-       testHaskellDepends = [ base HUnit text ];
-       benchmarkHaskellDepends = [
-         base blaze-html cheapskate criterion discount markdown sundown text
-       ];
-       description = "Fast, accurate GitHub Flavored Markdown parser and renderer";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "cmark-gfm_0_1_5" = callPackage
-    ({ mkDerivation, base, blaze-html, bytestring, cheapskate
-     , criterion, discount, HUnit, markdown, sundown, text
-     }:
-     mkDerivation {
-       pname = "cmark-gfm";
        version = "0.1.5";
        sha256 = "13b0mqks5c1q989slgsa3ixr5vvkfyic4ynzgv00kgl5qrs7hqk7";
        libraryHaskellDepends = [ base bytestring text ];
@@ -47481,7 +47633,6 @@ self: {
        ];
        description = "Fast, accurate GitHub Flavored Markdown parser and renderer";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "cmark-highlight" = callPackage
@@ -48271,6 +48422,28 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "collapse-duplication" = callPackage
+    ({ mkDerivation, base, bytestring, bytestring-show, cassava
+     , containers, hierarchical-clustering, lens, optparse-generic
+     , split
+     }:
+     mkDerivation {
+       pname = "collapse-duplication";
+       version = "0.4.0.1";
+       sha256 = "0azfyayvlw6vmgim98rsmgz5gx2dmwnbk9dwmm23781wdbm448a5";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base bytestring bytestring-show cassava containers
+         hierarchical-clustering lens
+       ];
+       executableHaskellDepends = [
+         base bytestring cassava containers lens optparse-generic split
+       ];
+       description = "Collapse the duplication output into clones and return their frequencies";
+       license = stdenv.lib.licenses.gpl3;
+     }) {};
+
   "collapse-util" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -48770,10 +48943,8 @@ self: {
      }:
      mkDerivation {
        pname = "combinatorial";
-       version = "0.1";
-       sha256 = "1a5l4iixjhvqca8dvwkx3zvlaimp6ggr3fcm7vk7r77rv6n6svh9";
-       revision = "1";
-       editedCabalFile = "1bqcg04w48dqk4n1n36j9ykajrmwqdd4qpcjjjfhzvm83z5ypsh7";
+       version = "0.1.0.1";
+       sha256 = "0w6vjs2pg2dffbq1dbs1dygnxk8nppzhkq3bgrg3ydfdzra7imn4";
        libraryHaskellDepends = [
          array base containers transformers utility-ht
        ];
@@ -48844,8 +49015,8 @@ self: {
      }:
      mkDerivation {
        pname = "comfort-graph";
-       version = "0.0.3";
-       sha256 = "11s3ag5skk07vs4h6xl20hbmlrbxqcwrj54wfpz2fk73347prmmr";
+       version = "0.0.3.1";
+       sha256 = "0qmmz3z9dgjb41rj6g81ppxaj4jswqnnb8bqn2s1dd6hf6cih9n9";
        libraryHaskellDepends = [
          base containers QuickCheck semigroups transformers utility-ht
        ];
@@ -49025,6 +49196,8 @@ self: {
        pname = "comonad-extras";
        version = "4.0";
        sha256 = "0irlx6rbp0cq5njxssm5a21mv7v5yccchfpn7h9hzr9fgyaxsr62";
+       revision = "1";
+       editedCabalFile = "1bmhdmncfbv80qgmykn67f4jkwbgags4ypaqibnzz849hpmibfj1";
        libraryHaskellDepends = [
          array base comonad containers distributive semigroupoids
          transformers
@@ -49085,6 +49258,18 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "compact-list" = callPackage
+    ({ mkDerivation, base, ghc-prim }:
+     mkDerivation {
+       pname = "compact-list";
+       version = "0.1.0";
+       sha256 = "0mg2s7mm908gy5j958abmiylfc05fs4y08dcjz4805ayi9cb1qqd";
+       libraryHaskellDepends = [ base ghc-prim ];
+       testHaskellDepends = [ base ];
+       description = "An append only list in a compact region";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "compact-map" = callPackage
     ({ mkDerivation, array, base, binary, bytestring, containers }:
      mkDerivation {
@@ -49628,19 +49813,19 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "composition-prelude";
-       version = "1.5.0.8";
-       sha256 = "1pgpjmb5pnnil98h6xrr9vmxxn8hgh20k9gjzm3jqzmx0l6dyspc";
+       version = "1.5.3.1";
+       sha256 = "0dq4znxr3qy2avmv68lzw4xrbfccap19ri2hxmlkl6r8p2850k7d";
        libraryHaskellDepends = [ base ];
        description = "Higher-order function combinators";
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "composition-prelude_1_5_3_1" = callPackage
+  "composition-prelude_2_0_0_0" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "composition-prelude";
-       version = "1.5.3.1";
-       sha256 = "0dq4znxr3qy2avmv68lzw4xrbfccap19ri2hxmlkl6r8p2850k7d";
+       version = "2.0.0.0";
+       sha256 = "0kz0jr5pfy6d1pm8sbxzrp0h7bnaljspggmzz382p6xp4npr6pg5";
        libraryHaskellDepends = [ base ];
        description = "Higher-order function combinators";
        license = stdenv.lib.licenses.bsd3;
@@ -50067,6 +50252,28 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "concurrency-benchmarks" = callPackage
+    ({ mkDerivation, async, base, bench-graph, bytestring, Chart
+     , Chart-diagrams, csv, deepseq, directory, gauge, getopt-generics
+     , mtl, random, split, streamly, text, transformers, typed-process
+     }:
+     mkDerivation {
+       pname = "concurrency-benchmarks";
+       version = "0.1.0";
+       sha256 = "1qsn726ic2v7mxm7f05n1vlpcvn0xwys2yj0vn243fsmw3075gzi";
+       isLibrary = false;
+       isExecutable = true;
+       executableHaskellDepends = [
+         base bench-graph bytestring Chart Chart-diagrams csv directory
+         getopt-generics split text transformers typed-process
+       ];
+       benchmarkHaskellDepends = [
+         async base deepseq gauge mtl random streamly transformers
+       ];
+       description = "Benchmarks to compare concurrency APIs";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "concurrent-barrier" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -50116,8 +50323,8 @@ self: {
      }:
      mkDerivation {
        pname = "concurrent-dns-cache";
-       version = "0.1.1";
-       sha256 = "0q6mffxkdag9impmd69nfqvjhpmnb3wy88aqfnlb7q476g84yjkx";
+       version = "0.1.2";
+       sha256 = "1hczxqvlnp5nxcx3mdpv9cm7mv66823jhyw9pibfklpy94syiz5a";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -50550,6 +50757,22 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "conduit-concurrent-map" = callPackage
+    ({ mkDerivation, base, conduit, containers, hspec, HUnit, mtl
+     , resourcet, say, unliftio, unliftio-core, vector
+     }:
+     mkDerivation {
+       pname = "conduit-concurrent-map";
+       version = "0.1.1";
+       sha256 = "0rn7sry51xiz00hrs2vvqff18lnmmzyadrd858g1ixga76f44z2j";
+       libraryHaskellDepends = [
+         base conduit containers mtl resourcet unliftio unliftio-core vector
+       ];
+       testHaskellDepends = [ base conduit hspec HUnit say ];
+       description = "Concurrent, order-preserving mapping Conduit";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "conduit-connection" = callPackage
     ({ mkDerivation, base, bytestring, conduit, connection, HUnit
      , network, resourcet, test-framework, test-framework-hunit
@@ -51541,8 +51764,8 @@ self: {
     ({ mkDerivation, base, constraints, template-haskell }:
      mkDerivation {
        pname = "constraints-extras";
-       version = "0.1.0.1";
-       sha256 = "12m6z1va1idbqnl7syljgk8hy82vm0lymf262331jmhjb744awpz";
+       version = "0.2.0.0";
+       sha256 = "0id5xaij014vabzkbnl54h8km667vk1mz8dk27kdzfa5vg6pj8j8";
        libraryHaskellDepends = [ base constraints template-haskell ];
        description = "Utility package for constraints";
        license = stdenv.lib.licenses.bsd3;
@@ -51639,8 +51862,8 @@ self: {
     ({ mkDerivation, base, containers, convert, lens, text, vector }:
      mkDerivation {
        pname = "container";
-       version = "1.1.2";
-       sha256 = "1i2zf7hn5pg0dmgq93w0i2v3vjsdryn6895za6mzfpdk7vyxsxsj";
+       version = "1.1.5";
+       sha256 = "1hh3ahw1vfmws1hyyl6blqyxaz4qcip0h0d80ia8pb6b1gfbvxsm";
        libraryHaskellDepends = [
          base containers convert lens text vector
        ];
@@ -51823,12 +52046,12 @@ self: {
      }) {};
 
   "contiguous" = callPackage
-    ({ mkDerivation, base, primitive }:
+    ({ mkDerivation, base, deepseq, primitive }:
      mkDerivation {
        pname = "contiguous";
-       version = "0.2.0.0";
-       sha256 = "1cm6syjrql90m54hsinyknfjhspj47ikskq3fv408bl4sx3gk2kl";
-       libraryHaskellDepends = [ base primitive ];
+       version = "0.3.0.0";
+       sha256 = "15v53w85f8bxnnrjsj46nfnjshf91b8sld76jcqffzj5nfjxkv28";
+       libraryHaskellDepends = [ base deepseq primitive ];
        description = "Unified interface for primitive arrays";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -51838,8 +52061,8 @@ self: {
     ({ mkDerivation, base, contiguous, primitive }:
      mkDerivation {
        pname = "contiguous-checked";
-       version = "0.2.0.0";
-       sha256 = "0cb7cankkmn8nb7v6fy4ykcglfd4sd5nc916lg1nyj7fjr5v7y4l";
+       version = "0.3.0.0";
+       sha256 = "144v6c9w0x9a43z1wpfgrq8k5h3d9nnrdxx87wcrkfcprcghdy7b";
        libraryHaskellDepends = [ base contiguous primitive ];
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -53145,8 +53368,8 @@ self: {
     ({ mkDerivation, base, containers, parallel }:
      mkDerivation {
        pname = "cpsa";
-       version = "3.6.0";
-       sha256 = "1c2hhdny9nn10rgaray827fqc3wq02pv8pf853cy865dl6zdihpb";
+       version = "3.6.1";
+       sha256 = "04hvb1z483gh7mb5q1mvsiym8jg29512wnrfdssl8y9c90qhk2sp";
        isLibrary = false;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -53251,34 +53474,6 @@ self: {
      }:
      mkDerivation {
        pname = "cql-io";
-       version = "1.0.1";
-       sha256 = "06imd6cjfh7jnr8s0d2pqlg82w9h0s81xpyjir6hci61al6yfx5q";
-       libraryHaskellDepends = [
-         async auto-update base bytestring containers cql cryptohash
-         data-default-class exceptions hashable HsOpenSSL iproute lens
-         monad-control mtl mwc-random network retry semigroups stm text time
-         tinylog transformers transformers-base unordered-containers uuid
-         vector
-       ];
-       testHaskellDepends = [
-         base containers cql Decimal iproute mtl raw-strings-qq tasty
-         tasty-hunit text time tinylog uuid
-       ];
-       description = "Cassandra CQL client";
-       license = stdenv.lib.licenses.mpl20;
-       hydraPlatforms = stdenv.lib.platforms.none;
-     }) {};
-
-  "cql-io_1_0_1_1" = callPackage
-    ({ mkDerivation, async, auto-update, base, bytestring, containers
-     , cql, cryptohash, data-default-class, Decimal, exceptions
-     , hashable, HsOpenSSL, iproute, lens, monad-control, mtl
-     , mwc-random, network, raw-strings-qq, retry, semigroups, stm
-     , tasty, tasty-hunit, text, time, tinylog, transformers
-     , transformers-base, unordered-containers, uuid, vector
-     }:
-     mkDerivation {
-       pname = "cql-io";
        version = "1.0.1.1";
        sha256 = "1kdv00fv21s8vbb3dfgzlgsrr0xxl4p2h655ga3q5cg47by564xc";
        libraryHaskellDepends = [
@@ -53490,18 +53685,18 @@ self: {
      }) {crack = null;};
 
   "crackNum" = callPackage
-    ({ mkDerivation, base, data-binary-ieee754, FloatingHex, ieee754 }:
+    ({ mkDerivation, base, FloatingHex, ieee754, reinterpret-cast }:
      mkDerivation {
        pname = "crackNum";
-       version = "2.1";
-       sha256 = "10z192nd9ik4ry0bjmkdpyvys75h3xz106588z8m1ix7caf1208a";
+       version = "2.2";
+       sha256 = "15327p12jql90j5z02nfzx5fivp7zsbznkg1i79iby59n3njfv40";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         base data-binary-ieee754 FloatingHex ieee754
+         base FloatingHex ieee754 reinterpret-cast
        ];
        executableHaskellDepends = [
-         base data-binary-ieee754 FloatingHex ieee754
+         base FloatingHex ieee754 reinterpret-cast
        ];
        description = "Crack various integer, floating-point data formats";
        license = stdenv.lib.licenses.bsd3;
@@ -54936,38 +55131,6 @@ self: {
      }:
      mkDerivation {
        pname = "csg";
-       version = "0.1.0.4";
-       sha256 = "1dril9ayqng04s6jnh28r8by604kkygbjiblp2c4px0bqvz3g5cx";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         attoparsec base bytestring containers QuickCheck simple-vec3 strict
-         transformers
-       ];
-       executableHaskellDepends = [
-         base gloss gloss-raster QuickCheck simple-vec3 strict
-         system-filepath turtle
-       ];
-       testHaskellDepends = [
-         base bytestring doctest doctest-driver-gen simple-vec3 tasty
-         tasty-hunit tasty-quickcheck
-       ];
-       benchmarkHaskellDepends = [
-         base criterion simple-vec3 strict vector
-       ];
-       description = "Analytical CSG (Constructive Solid Geometry) library";
-       license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-     }) {};
-
-  "csg_0_1_0_5" = callPackage
-    ({ mkDerivation, attoparsec, base, bytestring, containers
-     , criterion, doctest, doctest-driver-gen, gloss, gloss-raster
-     , QuickCheck, simple-vec3, strict, system-filepath, tasty
-     , tasty-hunit, tasty-quickcheck, transformers, turtle, vector
-     }:
-     mkDerivation {
-       pname = "csg";
        version = "0.1.0.5";
        sha256 = "12zwf2xiqiq4snwqhwvk1k3fl1bzlfbcd2vc2hsnv6v61ci6shq9";
        isLibrary = true;
@@ -55149,24 +55312,6 @@ self: {
      }:
      mkDerivation {
        pname = "css-syntax";
-       version = "0.0.7";
-       sha256 = "0r30rnwpmzvwbhj9di5rvbsigfn1w325c700hvjyw826x53ivz13";
-       libraryHaskellDepends = [
-         attoparsec base bytestring scientific text
-       ];
-       testHaskellDepends = [
-         attoparsec base bytestring directory hspec scientific text
-       ];
-       description = "This package implments a parser for the CSS syntax";
-       license = stdenv.lib.licenses.mit;
-     }) {};
-
-  "css-syntax_0_0_8" = callPackage
-    ({ mkDerivation, attoparsec, base, bytestring, directory, hspec
-     , scientific, text
-     }:
-     mkDerivation {
-       pname = "css-syntax";
        version = "0.0.8";
        sha256 = "1h9h606q9m9sxgwjxx3km9b30l4rmaygd2zfigf38wz45vqfqwa2";
        libraryHaskellDepends = [
@@ -55177,7 +55322,6 @@ self: {
        ];
        description = "This package implments a parser for the CSS syntax";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "css-text" = callPackage
@@ -55514,6 +55658,30 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "cue-sheet_2_0_0" = callPackage
+    ({ mkDerivation, base, bytestring, containers, data-default-class
+     , exceptions, hspec, hspec-discover, hspec-megaparsec, megaparsec
+     , mtl, QuickCheck, text
+     }:
+     mkDerivation {
+       pname = "cue-sheet";
+       version = "2.0.0";
+       sha256 = "1w6gmxwrqz7jlm7f0rccrik86w0syhjk5w5cvg29gi2yzj3grnql";
+       enableSeparateDataOutput = true;
+       libraryHaskellDepends = [
+         base bytestring containers data-default-class exceptions megaparsec
+         mtl QuickCheck text
+       ];
+       testHaskellDepends = [
+         base bytestring exceptions hspec hspec-megaparsec megaparsec
+         QuickCheck text
+       ];
+       testToolDepends = [ hspec-discover ];
+       description = "Support for construction, rendering, and parsing of CUE sheets";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "cufft" = callPackage
     ({ mkDerivation, base, c2hs, Cabal, cuda, directory, filepath
      , template-haskell
@@ -56556,8 +56724,8 @@ self: {
     ({ mkDerivation, array, base, containers, transformers }:
      mkDerivation {
        pname = "data-accessor";
-       version = "0.2.2.7";
-       sha256 = "1vf2g1gac3rm32g97rl0fll51m88q7ry4m6khnl5j47qsmx24r9l";
+       version = "0.2.2.8";
+       sha256 = "1fq4gygxbz0bd0mzgvc1sl3m4gjnsv8nbgpnmdpa29zj5lb9agxc";
        libraryHaskellDepends = [ array base containers transformers ];
        description = "Utilities for accessing and manipulating fields of records";
        license = stdenv.lib.licenses.bsd3;
@@ -56619,8 +56787,8 @@ self: {
      }:
      mkDerivation {
        pname = "data-accessor-template";
-       version = "0.2.1.15";
-       sha256 = "0vxs6d6xv2lsxz81msgh5l91pvxma9gif69csi23nxq2xxapyaw0";
+       version = "0.2.1.16";
+       sha256 = "15gd6xlrq5ica514m5rdcz2dl8bibdmbsmnc98ddhx491c9g5rwk";
        libraryHaskellDepends = [
          base data-accessor template-haskell utility-ht
        ];
@@ -57338,8 +57506,8 @@ self: {
     ({ mkDerivation, base, doctest }:
      mkDerivation {
        pname = "data-forest";
-       version = "0.1.0.6";
-       sha256 = "11iisc82cgma5pp6apnjg112dd4cvqxclwf09zh9rh50lzkml9dk";
+       version = "0.1.0.7";
+       sha256 = "1q41cwinvv0ys260f1f7005403pvz1gbwn0d6cnwh8b7rlgp8f4j";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [ base doctest ];
        description = "A simple multi-way tree data structure";
@@ -59325,24 +59493,6 @@ self: {
      }:
      mkDerivation {
        pname = "debian-build";
-       version = "0.10.1.1";
-       sha256 = "0dv5fs0kp8qmrldly6cj0fkvab7infplii0ay23p1pbx6qjakrnk";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         base directory filepath process split transformers
-       ];
-       executableHaskellDepends = [ base filepath transformers ];
-       description = "Debian package build sequence tools";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "debian-build_0_10_1_2" = callPackage
-    ({ mkDerivation, base, directory, filepath, process, split
-     , transformers
-     }:
-     mkDerivation {
-       pname = "debian-build";
        version = "0.10.1.2";
        sha256 = "0h8nxk9pir6ic65vh5y29jnlz7jrnq8inqg22h7nvlphk7qbblqw";
        isLibrary = true;
@@ -59353,7 +59503,6 @@ self: {
        executableHaskellDepends = [ base filepath transformers ];
        description = "Debian package build sequence tools";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "debug" = callPackage
@@ -59771,15 +59920,16 @@ self: {
      }) {};
 
   "deferred-folds" = callPackage
-    ({ mkDerivation, base, bytestring, containers, foldl, primitive
-     , transformers
+    ({ mkDerivation, base, bytestring, containers, foldl, hashable
+     , primitive, transformers, unordered-containers, vector
      }:
      mkDerivation {
        pname = "deferred-folds";
-       version = "0.6.12";
-       sha256 = "1gvbm0dkmvjjz5wwg2a5p2ahyd2imz1g751sr8k536hnd377xzy8";
+       version = "0.9.7";
+       sha256 = "18kyf6li2n3gzsvvdqsf4vwb1l0la755m1dl7gddg2ysnb8kkqb0";
        libraryHaskellDepends = [
-         base bytestring containers foldl primitive transformers
+         base bytestring containers foldl hashable primitive transformers
+         unordered-containers vector
        ];
        description = "Abstractions over deferred folds";
        license = stdenv.lib.licenses.mit;
@@ -60623,8 +60773,8 @@ self: {
      }:
      mkDerivation {
        pname = "descriptive";
-       version = "0.9.4";
-       sha256 = "0bxskc4q6jzpvifnhh6zl77xic0fbni8abf9lipfr1xzarbwcpkr";
+       version = "0.9.5";
+       sha256 = "0y5693zm2kvqjilybbmrcv1g6n6x2p6zjgi0k0axjw1sdhh1g237";
        libraryHaskellDepends = [
          aeson base bifunctors containers mtl scientific text transformers
          vector
@@ -60808,14 +60958,14 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "df1_0_2" = callPackage
+  "df1_0_3" = callPackage
     ({ mkDerivation, attoparsec, base, bytestring, containers
      , QuickCheck, tasty, tasty-quickcheck, text, time
      }:
      mkDerivation {
        pname = "df1";
-       version = "0.2";
-       sha256 = "11sd9d6izb3jrxxr27h058lajjij1p5wfsgg0pshjziqc9l426zs";
+       version = "0.3";
+       sha256 = "1qiy2xxri3vdqhy78ccan7phrlfdkb2ndvrj8grlhbzycmai64i3";
        libraryHaskellDepends = [
          attoparsec base bytestring containers text time
        ];
@@ -60948,37 +61098,42 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "dhall_1_16_1" = callPackage
+  "dhall_1_17_0" = callPackage
     ({ mkDerivation, ansi-terminal, base, bytestring, case-insensitive
-     , containers, contravariant, criterion, cryptonite, deepseq, Diff
-     , directory, doctest, exceptions, filepath, haskeline, http-client
-     , http-client-tls, insert-ordered-containers, lens-family-core
-     , megaparsec, memory, mockery, mtl, optparse-applicative, parsers
-     , prettyprinter, prettyprinter-ansi-terminal, repline, scientific
-     , tasty, tasty-hunit, template-haskell, text, transformers
+     , cborg, containers, contravariant, criterion, cryptonite, deepseq
+     , Diff, directory, doctest, exceptions, filepath, hashable
+     , haskeline, http-client, http-client-tls
+     , insert-ordered-containers, lens-family-core, megaparsec, memory
+     , mockery, mtl, optparse-applicative, parsers, prettyprinter
+     , prettyprinter-ansi-terminal, QuickCheck, quickcheck-instances
+     , repline, scientific, serialise, tasty, tasty-hunit
+     , tasty-quickcheck, template-haskell, text, transformers
      , unordered-containers, vector
      }:
      mkDerivation {
        pname = "dhall";
-       version = "1.16.1";
-       sha256 = "1mf0x42f1gq8y6518hm1p8j8ca9dgh3nwbw2lfilddk1difrm9h2";
+       version = "1.17.0";
+       sha256 = "14a74zqsnv00hbv19lhmv78xzl36qnsznmncnzq7jji2aslgwad0";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         ansi-terminal base bytestring case-insensitive containers
+         ansi-terminal base bytestring case-insensitive cborg containers
          contravariant cryptonite Diff directory exceptions filepath
-         haskeline http-client http-client-tls insert-ordered-containers
-         lens-family-core megaparsec memory mtl optparse-applicative parsers
-         prettyprinter prettyprinter-ansi-terminal repline scientific
+         hashable haskeline http-client http-client-tls
+         insert-ordered-containers lens-family-core megaparsec memory mtl
+         optparse-applicative parsers prettyprinter
+         prettyprinter-ansi-terminal repline scientific serialise
          template-haskell text transformers unordered-containers vector
        ];
        executableHaskellDepends = [ base ];
        testHaskellDepends = [
-         base deepseq directory doctest filepath insert-ordered-containers
-         mockery prettyprinter tasty tasty-hunit text vector
+         base containers deepseq directory doctest filepath hashable
+         insert-ordered-containers mockery prettyprinter QuickCheck
+         quickcheck-instances serialise tasty tasty-hunit tasty-quickcheck
+         text transformers vector
        ];
        benchmarkHaskellDepends = [
-         base containers criterion directory text
+         base bytestring containers criterion directory serialise text
        ];
        description = "A configuration language guaranteed to terminate";
        license = stdenv.lib.licenses.bsd3;
@@ -60992,10 +61147,8 @@ self: {
      }:
      mkDerivation {
        pname = "dhall-bash";
-       version = "1.0.14";
-       sha256 = "1zxqlmnhq8lrwxiqz7hlqln7wf14mlz78s018yqy3hpzmy3aa84d";
-       revision = "1";
-       editedCabalFile = "1ih8w5q0gnys02hv7hnjxxapfqw4gqmd9xfxn7a05cg2gb30mapr";
+       version = "1.0.15";
+       sha256 = "15xgfglxy5bac93i83pp4pc78yfcwq6ys9vpak9kmklsbr08ynq4";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -61029,15 +61182,13 @@ self: {
 
   "dhall-json" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, base, bytestring, dhall
-     , insert-ordered-containers, optparse-applicative, text
-     , unordered-containers, yaml
+     , insert-ordered-containers, optparse-applicative, tasty
+     , tasty-hunit, text, unordered-containers, yaml
      }:
      mkDerivation {
        pname = "dhall-json";
-       version = "1.2.2";
-       sha256 = "13vap0x53c9i2cyggh3riq8fza46c2d9rqmbxmsjvsawxz2jfm9d";
-       revision = "1";
-       editedCabalFile = "0vkn5kivqjl640f4ifjgy3mgmlqhz8ir48n04lklr4mra7z95qw2";
+       version = "1.2.3";
+       sha256 = "1npw5x49jrijq6lby5ipnywqvbq67znmbsrfhnk0pi9pz4kixjw3";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -61048,6 +61199,7 @@ self: {
          aeson aeson-pretty base bytestring dhall optparse-applicative text
          yaml
        ];
+       testHaskellDepends = [ aeson base dhall tasty tasty-hunit text ];
        description = "Compile Dhall to JSON or YAML";
        license = stdenv.lib.licenses.bsd3;
      }) {};
@@ -61078,10 +61230,8 @@ self: {
      }:
      mkDerivation {
        pname = "dhall-nix";
-       version = "1.1.5";
-       sha256 = "1j0b7w8ydhz5fq7jmajz35j8bw2xmr1v0pbl4yfkc2gv8djmiw6y";
-       revision = "1";
-       editedCabalFile = "1k9mb8fm5vxm7asqawvv103y63i81n84py42w7hh72rk3wp3xcnk";
+       version = "1.1.6";
+       sha256 = "0pchanzgcag6z7fywqm09xj29n0pfxd2ya2ky64aapykq038jxbs";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -61099,10 +61249,8 @@ self: {
     ({ mkDerivation, base, dhall, optparse-applicative, text }:
      mkDerivation {
        pname = "dhall-text";
-       version = "1.0.11";
-       sha256 = "0zbsr5mchcm3713y6dbdj1vlak5rb6f13p6a8ah7f3kcihdpx0b1";
-       revision = "1";
-       editedCabalFile = "0lrp1aknia3y4cz87vh14ns3f273lbca09ssz138wlf3266ka613";
+       version = "1.0.12";
+       sha256 = "1k68s83cqlwgivliag9n2vhin385k08f8vd506dcbix5farv9dp6";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -61177,14 +61325,14 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "di_1_1" = callPackage
+  "di_1_1_1" = callPackage
     ({ mkDerivation, base, containers, df1, di-core, di-df1, di-handle
      , di-monad, exceptions
      }:
      mkDerivation {
        pname = "di";
-       version = "1.1";
-       sha256 = "1akwhznnnwb9y4rbb4kys2vvwzdmpxdccrnrh65s5c1pw3w517n5";
+       version = "1.1.1";
+       sha256 = "0ibbhc0mnf4qwz90hgxnyd2vc6n86qqnyiahcr30lxknvqmbnskk";
        libraryHaskellDepends = [
          base containers df1 di-core di-df1 di-handle di-monad exceptions
        ];
@@ -61468,6 +61616,8 @@ self: {
        pname = "diagrams-core";
        version = "1.4.1.1";
        sha256 = "10mnicfyvawy3jlpgf656fx2y4836x04p3z1lpgyyr1nkvwyk0m1";
+       revision = "1";
+       editedCabalFile = "0qf0b27lx8w16x85rr4zf3sf4qzkywyi04incv3667054v7y8m25";
        libraryHaskellDepends = [
          adjunctions base containers distributive dual-tree lens linear
          monoid-extras mtl profunctors semigroups unordered-containers
@@ -62377,21 +62527,21 @@ self: {
      }) {};
 
   "digit" = callPackage
-    ({ mkDerivation, ansi-wl-pprint, base, hedgehog, lens, papa, parsec
+    ({ mkDerivation, ansi-wl-pprint, base, hedgehog, lens, parsec
      , parsers, pretty, scientific, semigroupoids, semigroups, tasty
      , tasty-hedgehog, tasty-hspec, tasty-hunit, template-haskell, text
      }:
      mkDerivation {
        pname = "digit";
-       version = "0.6";
-       sha256 = "13cm8xk3szfcyfdzp108rzwkvwwws34bpla2viyqcr0sivmzdck8";
+       version = "0.7";
+       sha256 = "0451nlmf2ggg1dy82qkdxqlg4lgnsvkrxl3qrcjr5dzmi2ghk3ql";
        libraryHaskellDepends = [
-         base lens papa parsers scientific semigroupoids semigroups
+         base lens parsers scientific semigroupoids semigroups
          template-haskell
        ];
        testHaskellDepends = [
-         ansi-wl-pprint base hedgehog lens papa parsec parsers pretty tasty
-         tasty-hedgehog tasty-hspec tasty-hunit text
+         ansi-wl-pprint base hedgehog lens parsec parsers pretty semigroups
+         tasty tasty-hedgehog tasty-hspec tasty-hunit text
        ];
        description = "A data-type representing digits 0-9 and other combinations";
        license = stdenv.lib.licenses.bsd3;
@@ -64271,6 +64421,18 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "do-notation" = callPackage
+    ({ mkDerivation, base, indexed }:
+     mkDerivation {
+       pname = "do-notation";
+       version = "0.1.0.2";
+       sha256 = "1xbvphpwbzns4567zbk8baq0zd068dcprp59cjzhbplf9cypiwy9";
+       libraryHaskellDepends = [ base indexed ];
+       testHaskellDepends = [ base indexed ];
+       description = "Generalize do-notation to work on monads and indexed monads simultaneously";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "doc-review" = callPackage
     ({ mkDerivation, base, base64-bytestring, binary, bytestring
      , containers, directory, feed, filepath, haskell98, heist, hexpat
@@ -65558,8 +65720,8 @@ self: {
     ({ mkDerivation, array, base, containers, QuickCheck, random }:
      mkDerivation {
        pname = "dsp";
-       version = "0.2.4";
-       sha256 = "0bwvb2axzv19lmv61ifvpmp3kpyzn62vi87agkyyjaip3psxzr7y";
+       version = "0.2.4.1";
+       sha256 = "0b748v9v9i7kw2djnb9a89yjw0nhwhb5sfml3x6ajydjhx79a8ik";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ array base containers random ];
@@ -66620,8 +66782,8 @@ self: {
      }:
      mkDerivation {
        pname = "ec2-unikernel";
-       version = "0.9.2";
-       sha256 = "02nydjp2l686wx42a5dndhj3dxi5q73lx9628lhdan1alhim4j31";
+       version = "0.9.8";
+       sha256 = "137rq45d0d7ap77wlgiqp5sd2r0jwxkaw4mvxmj1lyi8yc52mxbg";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -66880,8 +67042,8 @@ self: {
      }:
      mkDerivation {
        pname = "edges";
-       version = "0.11.0.1";
-       sha256 = "12bs1wlfhhq5cqb0xan34jvdpx1asr3rb2d2yiafxqpngwvd7nh8";
+       version = "0.11.0.3";
+       sha256 = "02735ky371hvxxxkgal7lzg6v8cmq5s115j6qx459lwj8p42az77";
        libraryHaskellDepends = [
          base cereal cereal-data-dword cereal-vector contravariant
          data-dword deepseq deferred-folds foldl hashable monad-par pointed
@@ -66915,8 +67077,8 @@ self: {
      }:
      mkDerivation {
        pname = "edit";
-       version = "1.0.0.0";
-       sha256 = "0p93j90f40ckg5n9d8hnsbd5qsi00c28cpdrczgihk81hjgflnkd";
+       version = "1.0.1.0";
+       sha256 = "0114fcb1cpfrvn01vqq4wcharny0ri412a3gsy888g739k61a4gj";
        libraryHaskellDepends = [
          base comonad deepseq QuickCheck transformers
        ];
@@ -67333,6 +67495,8 @@ self: {
        pname = "either";
        version = "5.0.1";
        sha256 = "064hjfld7dkzs78sy30k5qkiva3hx24rax6dvzz5ygr2c0zypdkc";
+       revision = "1";
+       editedCabalFile = "1kf0dy6nki64kkmjw8214jz3n086g1pghfm26f012b6qv0iakzca";
        libraryHaskellDepends = [
          base bifunctors mtl profunctors semigroupoids semigroups
        ];
@@ -67358,8 +67522,8 @@ self: {
     ({ mkDerivation, base, doctest }:
      mkDerivation {
        pname = "either-list-functions";
-       version = "0.0.0.2";
-       sha256 = "0m7fkf8r1i0z3zrfmnqsdzk0fc9mhanqmx7x6rjiisjiaf91yr8d";
+       version = "0.0.0.3";
+       sha256 = "1b01aj05dbx51hgyhmggh1zgcbwfvyijkxj7knqpbgpj7hymv00y";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [ base doctest ];
        description = "Functions involving lists of Either";
@@ -68280,6 +68444,23 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "email-validate_2_3_2_7" = callPackage
+    ({ mkDerivation, attoparsec, base, bytestring, doctest, hspec
+     , QuickCheck, template-haskell
+     }:
+     mkDerivation {
+       pname = "email-validate";
+       version = "2.3.2.7";
+       sha256 = "1qdl0g8nbngr6kz4xrgi06rn1zf1np55ipk3wwdrg9hpfaaazcs3";
+       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 {
@@ -68668,8 +68849,8 @@ self: {
      }:
      mkDerivation {
        pname = "engine-io-wai";
-       version = "1.0.8";
-       sha256 = "0mph6pg3j81kwwl73dn5hdbw3mndfxi2wqdgwb727znh058xh7zb";
+       version = "1.0.9";
+       sha256 = "1zdin34gfi2059n1wjfxs4i2kfc0r53f3wpwhjd0fbp0as56h94s";
        libraryHaskellDepends = [
          attoparsec base bytestring either engine-io http-types mtl text
          transformers transformers-compat unordered-containers wai
@@ -69805,16 +69986,16 @@ self: {
      }) {};
 
   "etc" = callPackage
-    ({ mkDerivation, aeson, base, hashable, rio, tasty, tasty-hunit
-     , text, typed-process, unliftio
+    ({ mkDerivation, aeson, base, rio, tasty, tasty-hunit
+     , template-haskell, text, typed-process, unliftio
      }:
      mkDerivation {
        pname = "etc";
-       version = "0.4.0.3";
-       sha256 = "0xnm5mvrd0409kcrxp6ls92z5fvq959pghf67pqmj4a84k1dwkw3";
+       version = "0.4.1.0";
+       sha256 = "1j17g8jij4y782vwpx7b52fv9nwv4v4mygk2hbq6vihzkbrdbd31";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
-         aeson base hashable rio text typed-process unliftio
+         aeson base rio template-haskell text typed-process unliftio
        ];
        testHaskellDepends = [ aeson base rio tasty tasty-hunit ];
        description = "Declarative configuration spec for Haskell projects";
@@ -70157,10 +70338,8 @@ self: {
      }:
      mkDerivation {
        pname = "euler-tour-tree";
-       version = "0.1.0.1";
-       sha256 = "12fxs5992rlfg91xxh2sahm2vykcjcjc30iwzkfm894qrk4flbz4";
-       revision = "1";
-       editedCabalFile = "033v38mr81pr81gb5wksi7bgpm1wrvcgck893dk1ymq4w6ifa2m6";
+       version = "0.1.1.0";
+       sha256 = "166gbinlf0ay8y2clzjzf5b2x489hcr1gzj8w5qk341z01f8pckh";
        libraryHaskellDepends = [
          base containers fingertree mtl parser-combinators transformers
          Unique
@@ -70631,6 +70810,43 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "eventstore_1_1_6" = callPackage
+    ({ mkDerivation, aeson, array, async, base, bifunctors, bytestring
+     , cereal, clock, connection, containers, dns, dotnet-timespan
+     , ekg-core, exceptions, fast-logger, hashable, http-client
+     , interpolate, lifted-async, lifted-base, machines, monad-control
+     , monad-logger, mono-traversable, mtl, protobuf, random
+     , safe-exceptions, semigroups, stm, stm-chans, tasty, tasty-hspec
+     , tasty-hunit, text, time, transformers-base, unordered-containers
+     , uuid
+     }:
+     mkDerivation {
+       pname = "eventstore";
+       version = "1.1.6";
+       sha256 = "00bdkklwrabxvbr725hkdsc1a2fdr50gdwryn7spmsqxmqgzv96w";
+       revision = "1";
+       editedCabalFile = "1y1a7brw220bg4mfc80qhkcyzlm38qvs6pkr7p8xyk104b8k5qgx";
+       libraryHaskellDepends = [
+         aeson array base bifunctors bytestring cereal clock connection
+         containers dns dotnet-timespan ekg-core exceptions fast-logger
+         hashable http-client interpolate lifted-async lifted-base machines
+         monad-control monad-logger mono-traversable mtl protobuf random
+         safe-exceptions semigroups stm stm-chans text time
+         transformers-base unordered-containers uuid
+       ];
+       testHaskellDepends = [
+         aeson async base bytestring cereal connection containers
+         dotnet-timespan exceptions fast-logger hashable lifted-async
+         lifted-base monad-control mono-traversable protobuf safe-exceptions
+         semigroups stm stm-chans tasty tasty-hspec tasty-hunit text time
+         transformers-base unordered-containers uuid
+       ];
+       description = "EventStore TCP Client";
+       license = stdenv.lib.licenses.bsd3;
+       platforms = [ "x86_64-darwin" "x86_64-linux" ];
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "every" = callPackage
     ({ mkDerivation, async, base, stm }:
      mkDerivation {
@@ -70875,8 +71091,8 @@ self: {
        pname = "exceptions";
        version = "0.10.0";
        sha256 = "1ms9zansv0pwzwdjncvx4kf18lnkjy2p61hvjhvxmjx5bqp93p8y";
-       revision = "1";
-       editedCabalFile = "1ydvmhi9bj7b1md3wd4l2z2lccgyjgv3ha8milmy2l4lad9xh6xy";
+       revision = "2";
+       editedCabalFile = "0aiihbjfrlmxzw9q8idvr6mihhs7kbx9s3w1vj8x3pz27p0ncq7g";
        libraryHaskellDepends = [
          base mtl stm template-haskell transformers transformers-compat
        ];
@@ -71194,6 +71410,8 @@ self: {
        pname = "exitcode";
        version = "0.1.0.1";
        sha256 = "1h4qv29g59dxwsb2i4qrnf2f96xsmzngc9rnrqfkh8nkkcr71br5";
+       revision = "1";
+       editedCabalFile = "0p2kmkgqbfcf5za5n210a6ra6758dkmkwvs516aj3y895na6j14z";
        libraryHaskellDepends = [
          base lens mmorph mtl semigroupoids semigroups transformers
        ];
@@ -71682,8 +71900,8 @@ self: {
      }:
      mkDerivation {
        pname = "extensible-effects";
-       version = "3.1.0.0";
-       sha256 = "0p4vk4k6922ar853zb85jm4si7y1qdr1wkx4pwfd613a5ar23440";
+       version = "3.1.0.1";
+       sha256 = "1znqhcx5y4mpkbib18nma2c6bw4wxyxlxg3s8kafdalrx61rdhy3";
        libraryHaskellDepends = [ base monad-control transformers-base ];
        testHaskellDepends = [
          base doctest HUnit monad-control QuickCheck silently test-framework
@@ -71842,29 +72060,14 @@ self: {
     ({ mkDerivation, base, leancheck, speculate, template-haskell }:
      mkDerivation {
        pname = "extrapolate";
-       version = "0.3.1";
-       sha256 = "1hz03mdascy4jvqhyrqqmb1py3pb03g4z3if05z2cbdxgbgsbbn4";
-       libraryHaskellDepends = [
-         base leancheck speculate template-haskell
-       ];
-       testHaskellDepends = [ base leancheck speculate ];
-       description = "generalize counter-examples of test properties";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "extrapolate_0_3_2" = callPackage
-    ({ mkDerivation, base, leancheck, speculate, template-haskell }:
-     mkDerivation {
-       pname = "extrapolate";
-       version = "0.3.2";
-       sha256 = "1scfcjqz1q9pv37rvygbpdwx8j22469f5p2vf5ay68hd62d592gj";
+       version = "0.3.3";
+       sha256 = "1mc14d9wcrvrd2fkzjxc5gvy7s33p875qj97bdaacdjv5hmg5zr2";
        libraryHaskellDepends = [
          base leancheck speculate template-haskell
        ];
        testHaskellDepends = [ base leancheck speculate ];
        description = "generalize counter-examples of test properties";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "ez-couch" = callPackage
@@ -72228,8 +72431,8 @@ self: {
      }:
      mkDerivation {
        pname = "fast-arithmetic";
-       version = "0.6.0.9";
-       sha256 = "1kpki7j8kz9xzzg8gl8l5g7wgq0v2s7r2lhr0mb4m67bkq61zmrs";
+       version = "0.6.1.1";
+       sha256 = "0adnngx0bqbrcsxkgpdfb60p4jhvx0b8ls37g94q6cx9s0n3cmb8";
        libraryHaskellDepends = [ base composition-prelude gmpint ];
        testHaskellDepends = [
          arithmoi base combinat-compat hspec QuickCheck
@@ -73525,20 +73728,20 @@ self: {
      }) {};
 
   "fficxx" = callPackage
-    ({ mkDerivation, base, bytestring, Cabal, containers, data-default
-     , directory, either, errors, filepath, hashable, haskell-src-exts
-     , lens, mtl, process, pureMD5, split, template, template-haskell
-     , text, transformers, unordered-containers
+    ({ mkDerivation, aeson, aeson-pretty, base, bytestring, Cabal
+     , containers, data-default, directory, either, errors, filepath
+     , hashable, haskell-src-exts, lens, mtl, process, pureMD5, split
+     , template, template-haskell, text, transformers
+     , unordered-containers
      }:
      mkDerivation {
        pname = "fficxx";
-       version = "0.4.1";
-       sha256 = "1s1yzvs1j4as4875509hzny1399zimpzyh9zh5g0ddg8dqg5lfi4";
-       enableSeparateDataOutput = true;
+       version = "0.5";
+       sha256 = "16r7pbfxr1xf5jxwyk2qv50yishpk0mzndl88hv9bwpz7gbj55yy";
        libraryHaskellDepends = [
-         base bytestring Cabal containers data-default directory either
-         errors filepath hashable haskell-src-exts lens mtl process pureMD5
-         split template template-haskell text transformers
+         aeson aeson-pretty base bytestring Cabal containers data-default
+         directory either errors filepath hashable haskell-src-exts lens mtl
+         process pureMD5 split template template-haskell text transformers
          unordered-containers
        ];
        description = "automatic C++ binding generation";
@@ -73550,8 +73753,8 @@ self: {
     ({ mkDerivation, base, bytestring, template-haskell }:
      mkDerivation {
        pname = "fficxx-runtime";
-       version = "0.3";
-       sha256 = "18pzjhfqsr2f783xywmcfkz5isx31iqcyng4j5mbz92q2m166idb";
+       version = "0.5";
+       sha256 = "05ljkq3zv8nfx4xhvqql13qd81v46bnxnja8f8590yrf3zfqg87x";
        libraryHaskellDepends = [ base bytestring template-haskell ];
        description = "Runtime for fficxx-generated library";
        license = stdenv.lib.licenses.bsd3;
@@ -73618,8 +73821,8 @@ self: {
     ({ mkDerivation, base, fftw }:
      mkDerivation {
        pname = "fftwRaw";
-       version = "0.1.0.1";
-       sha256 = "1ka58mkn30mrhma7l5cshilhaif4r2jqxqpm6rvmscrvnrjq3nyz";
+       version = "0.1.0.2";
+       sha256 = "1690x5vllqba39srbp7q3gl2rv30wq941sx4z89fh89axwgp9629";
        libraryHaskellDepends = [ base ];
        librarySystemDepends = [ fftw ];
        description = "Low level bindings to FFTW";
@@ -74755,6 +74958,19 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "fixed-vector_1_2_0_0" = callPackage
+    ({ mkDerivation, base, deepseq, doctest, filemanip, primitive }:
+     mkDerivation {
+       pname = "fixed-vector";
+       version = "1.2.0.0";
+       sha256 = "19846sgjlsv7qy9nm9l4p2wdms5kvx6y9wm5ffz1hw7h77qy8ryw";
+       libraryHaskellDepends = [ base deepseq primitive ];
+       testHaskellDepends = [ base doctest filemanip primitive ];
+       description = "Generic vectors with statically known size";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "fixed-vector-binary" = callPackage
     ({ mkDerivation, base, binary, fixed-vector, tasty
      , tasty-quickcheck
@@ -75020,8 +75236,8 @@ self: {
      }:
      mkDerivation {
        pname = "fizzbuzz-as-a-service";
-       version = "0.1.0.2";
-       sha256 = "0bskyv1zyk469bikh4rh6ad1i8d5ym9s89a88aw34cpphy0vq1zk";
+       version = "0.1.0.3";
+       sha256 = "0kzhbavi26qbph6pgna77fbnpfgrxi81h9v92177ycl980k4qdwv";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -75306,44 +75522,33 @@ self: {
      }) {};
 
   "flight-igc" = callPackage
-    ({ mkDerivation, base, cmdargs, directory, filemanip, filepath
-     , hlint, mtl, parsec, raw-strings-qq, system-filepath, transformers
-     }:
+    ({ mkDerivation, base, bytestring, parsec, utf8-string }:
      mkDerivation {
        pname = "flight-igc";
-       version = "0.1.0";
-       sha256 = "1cr25xhwmpzi0rg8znj1q7siy5skjm8q08ncgwvmd4h3mmdbb7xl";
-       revision = "1";
-       editedCabalFile = "0yaqp249gjqgch7w9d8y963afvjl43mhaywgni3x8ld14h55m7ia";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [ base parsec ];
-       executableHaskellDepends = [
-         base cmdargs directory filemanip filepath mtl raw-strings-qq
-         system-filepath transformers
-       ];
-       testHaskellDepends = [ base hlint ];
+       version = "1.0.0";
+       sha256 = "17w40nfmdb4crg23fnqn663i4a60dx5714rcyaiqllm4r25n5qv9";
+       libraryHaskellDepends = [ base bytestring parsec utf8-string ];
        description = "A parser for IGC files";
-       license = stdenv.lib.licenses.bsd3;
+       license = stdenv.lib.licenses.mpl20;
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "flight-kml" = callPackage
-    ({ mkDerivation, aeson, base, detour-via-sci, doctest, hlint, hxt
+    ({ mkDerivation, aeson, base, detour-via-sci, doctest, hxt
      , hxt-xpath, parsec, path, raw-strings-qq, siggy-chardust
      , smallcheck, split, tasty, tasty-hunit, tasty-quickcheck
      , tasty-smallcheck, template-haskell, time
      }:
      mkDerivation {
        pname = "flight-kml";
-       version = "1.0.0";
-       sha256 = "0h04f0hkcri1qjk9kfc4r0sg8wyf6hx6s4cjgzaqnmfak6sa9j9c";
+       version = "1.0.1";
+       sha256 = "1g70vm7qbxsx2azgb759xcpizq5c1ic2173w78jib0f7mpb8qc28";
        libraryHaskellDepends = [
          aeson base detour-via-sci hxt hxt-xpath parsec path siggy-chardust
          split time
        ];
        testHaskellDepends = [
-         aeson base detour-via-sci doctest hlint hxt hxt-xpath parsec path
+         aeson base detour-via-sci doctest hxt hxt-xpath parsec path
          raw-strings-qq siggy-chardust smallcheck split tasty tasty-hunit
          tasty-quickcheck tasty-smallcheck template-haskell time
        ];
@@ -75486,6 +75691,19 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "flow_1_0_15" = callPackage
+    ({ mkDerivation, base, doctest, QuickCheck, template-haskell }:
+     mkDerivation {
+       pname = "flow";
+       version = "1.0.15";
+       sha256 = "1i3rhjjl8w9xmvckz0qrlbg7jfdz6v5w5cgmhs8xqjys5ssmla2y";
+       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 {
@@ -76058,6 +76276,8 @@ self: {
        pname = "foldl";
        version = "1.4.3";
        sha256 = "13n0ca3hw5jzqf6rxsdbhbwkn61a9zlm13f0f205s60j3sc72jzk";
+       revision = "1";
+       editedCabalFile = "043axkgbjwvzlh5il1cmrb36svri3v0zja00iym9p0vm9gldh81c";
        libraryHaskellDepends = [
          base bytestring comonad containers contravariant hashable
          mwc-random primitive profunctors semigroupoids semigroups text
@@ -76068,6 +76288,27 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "foldl_1_4_4" = callPackage
+    ({ mkDerivation, base, bytestring, comonad, containers
+     , contravariant, criterion, hashable, mwc-random, primitive
+     , profunctors, semigroupoids, semigroups, text, transformers
+     , unordered-containers, vector, vector-builder
+     }:
+     mkDerivation {
+       pname = "foldl";
+       version = "1.4.4";
+       sha256 = "0dy8dhpys2bq6pn0m6klsykk4mfxi6q8hr8gqbfcvqk6g4i5wyn7";
+       libraryHaskellDepends = [
+         base bytestring comonad containers contravariant hashable
+         mwc-random primitive profunctors semigroupoids semigroups text
+         transformers unordered-containers vector vector-builder
+       ];
+       benchmarkHaskellDepends = [ base criterion ];
+       description = "Composable, streaming, and efficient left folds";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "foldl-incremental" = callPackage
     ({ mkDerivation, base, bytestring, containers, criterion, deepseq
      , foldl, histogram-fill, mwc-random, pipes, QuickCheck, tasty
@@ -80780,24 +81021,6 @@ self: {
      }:
      mkDerivation {
        pname = "genvalidity-text";
-       version = "0.5.0.2";
-       sha256 = "1d955278y5522a5aji1i662iynkjn7g88af9myvg6q5b4nig5cqx";
-       libraryHaskellDepends = [
-         array base genvalidity QuickCheck text validity validity-text
-       ];
-       testHaskellDepends = [
-         base genvalidity genvalidity-hspec hspec QuickCheck text
-       ];
-       description = "GenValidity support for Text";
-       license = stdenv.lib.licenses.mit;
-     }) {};
-
-  "genvalidity-text_0_5_1_0" = callPackage
-    ({ mkDerivation, array, base, genvalidity, genvalidity-hspec, hspec
-     , QuickCheck, text, validity, validity-text
-     }:
-     mkDerivation {
-       pname = "genvalidity-text";
        version = "0.5.1.0";
        sha256 = "0j7fx2zzv6ljqk87148h1rq3yg6vvy0dsl7kfl3f2p6ghnz7wggg";
        libraryHaskellDepends = [
@@ -80808,7 +81031,6 @@ self: {
        ];
        description = "GenValidity support for Text";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "genvalidity-time" = callPackage
@@ -81023,20 +81245,21 @@ self: {
      }) {};
 
   "geojson" = callPackage
-    ({ mkDerivation, aeson, base, bytestring, directory, doctest
-     , filepath, hlint, lens, QuickCheck, semigroups, template-haskell
-     , text, transformers, validation, vector
+    ({ mkDerivation, aeson, base, bytestring, hlint, lens, scientific
+     , semigroups, tasty, tasty-hspec, tasty-quickcheck, text
+     , transformers, validation, vector
      }:
      mkDerivation {
        pname = "geojson";
-       version = "1.3.1";
-       sha256 = "0qcngx6dszpqrjsbfvqjgdn2qs3vyv112dwva5kbmwfpg5665xml";
+       version = "1.3.3";
+       sha256 = "17ra6kb2bgz9ydhqhgp00wmpd3dqxqgc89wifnn3qqk0rqwsqilz";
        libraryHaskellDepends = [
-         aeson base lens semigroups text transformers validation vector
+         aeson base lens scientific semigroups text transformers validation
+         vector
        ];
        testHaskellDepends = [
-         base bytestring directory doctest filepath hlint QuickCheck
-         template-haskell
+         aeson base bytestring hlint tasty tasty-hspec tasty-quickcheck text
+         validation
        ];
        description = "A thin GeoJSON Layer above the aeson library";
        license = stdenv.lib.licenses.bsd3;
@@ -82372,6 +82595,33 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "ghcid_0_7_1" = callPackage
+    ({ mkDerivation, ansi-terminal, base, cmdargs, containers
+     , directory, extra, filepath, fsnotify, process, tasty, tasty-hunit
+     , terminal-size, time, unix
+     }:
+     mkDerivation {
+       pname = "ghcid";
+       version = "0.7.1";
+       sha256 = "06n37dv51i2905v8nwwv1ilm0zlx6zblrkfic1mp491ws2sijdx7";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         ansi-terminal base cmdargs directory extra filepath process time
+       ];
+       executableHaskellDepends = [
+         ansi-terminal base cmdargs containers directory extra filepath
+         fsnotify process terminal-size time unix
+       ];
+       testHaskellDepends = [
+         ansi-terminal base cmdargs containers directory extra filepath
+         fsnotify process tasty tasty-hunit terminal-size time unix
+       ];
+       description = "GHCi based bare bones IDE";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "ghcjs-ajax" = callPackage
     ({ mkDerivation, aeson, base, http-types, text }:
      mkDerivation {
@@ -82929,8 +83179,8 @@ self: {
      }:
      mkDerivation {
        pname = "gi-gst";
-       version = "1.0.15";
-       sha256 = "09h4ilyg85d9b20chqf6fp6zqvxcclqn9i8s02bqw86cq7s19cq4";
+       version = "1.0.16";
+       sha256 = "0yygachni7ybb14sj8fqlb831154i1v4b7wn2z1qva6yx1h9gr3l";
        setupHaskellDepends = [ base Cabal haskell-gi ];
        libraryHaskellDepends = [
          base bytestring containers gi-glib gi-gobject haskell-gi
@@ -83068,6 +83318,41 @@ self: {
        license = stdenv.lib.licenses.lgpl21;
      }) {gtk3 = pkgs.gnome3.gtk;};
 
+  "gi-gtk-declarative" = callPackage
+    ({ mkDerivation, base, gi-gobject, gi-gtk, haskell-gi
+     , haskell-gi-base, haskell-gi-overloading, mtl, text
+     , unordered-containers
+     }:
+     mkDerivation {
+       pname = "gi-gtk-declarative";
+       version = "0.1.0";
+       sha256 = "1yqvqbhlgbpq5s77fvqi8f644i059gg64xdkgwr4ka6zdz4fhiaf";
+       libraryHaskellDepends = [
+         base gi-gobject gi-gtk haskell-gi haskell-gi-base
+         haskell-gi-overloading mtl text unordered-containers
+       ];
+       description = "Declarative GTK+ programming in Haskell";
+       license = stdenv.lib.licenses.mpl20;
+     }) {};
+
+  "gi-gtk-declarative-app-simple" = callPackage
+    ({ mkDerivation, async, base, gi-gdk, gi-glib, gi-gobject, gi-gtk
+     , gi-gtk-declarative, haskell-gi, haskell-gi-base
+     , haskell-gi-overloading, pipes, pipes-concurrency, text
+     }:
+     mkDerivation {
+       pname = "gi-gtk-declarative-app-simple";
+       version = "0.1.0";
+       sha256 = "157xhfixlf545qzk9v4sav6817fdznxk0kwiin59xn9d3ldp71ak";
+       libraryHaskellDepends = [
+         async base gi-gdk gi-glib gi-gobject gi-gtk gi-gtk-declarative
+         haskell-gi haskell-gi-base haskell-gi-overloading pipes
+         pipes-concurrency text
+       ];
+       description = "Declarative GTK+ programming in Haskell in the style of [Pux](https://github.com/alexmingoia/purescript-pux).";
+       license = stdenv.lib.licenses.mpl20;
+     }) {};
+
   "gi-gtk-hs" = callPackage
     ({ mkDerivation, base, base-compat, containers, gi-gdk
      , gi-gdkpixbuf, gi-glib, gi-gobject, gi-gtk, haskell-gi-base, mtl
@@ -84472,23 +84757,20 @@ self: {
   "gitlib-libgit2" = callPackage
     ({ mkDerivation, base, bytestring, conduit, conduit-combinators
      , containers, directory, exceptions, fast-logger, filepath, gitlib
-     , gitlib-test, hlibgit2, hspec, hspec-expectations, HUnit
-     , lifted-async, lifted-base, mmorph, monad-control, monad-loops
-     , mtl, resourcet, stm, stm-conduit, tagged, template-haskell, text
-     , text-icu, time, transformers, transformers-base
+     , gitlib-test, hlibgit2, hspec, hspec-expectations, HUnit, mmorph
+     , monad-loops, mtl, resourcet, stm, stm-conduit, tagged
+     , template-haskell, text, text-icu, time, transformers
+     , transformers-base, unliftio, unliftio-core
      }:
      mkDerivation {
        pname = "gitlib-libgit2";
-       version = "3.1.1";
-       sha256 = "1fv8r2w0fd9m7chrccmf5kw0pr2v0k2r2l0d782galdvq7mhca7w";
-       revision = "1";
-       editedCabalFile = "0v510c4sd6zwwf6mbc6gfv5sin91ckw4v6c844wrfksi9gdq3shm";
+       version = "3.1.2";
+       sha256 = "1nj9f2qmjxb5k9b23wfyz290pgb01hnzrswbamwb7am9bnkk250b";
        libraryHaskellDepends = [
          base bytestring conduit conduit-combinators containers directory
-         exceptions fast-logger filepath gitlib hlibgit2 lifted-async
-         lifted-base mmorph monad-control monad-loops mtl resourcet stm
-         stm-conduit tagged template-haskell text text-icu time transformers
-         transformers-base
+         exceptions fast-logger filepath gitlib hlibgit2 mmorph monad-loops
+         mtl resourcet stm stm-conduit tagged template-haskell text text-icu
+         time transformers transformers-base unliftio unliftio-core
        ];
        testHaskellDepends = [
          base exceptions gitlib gitlib-test hspec hspec-expectations HUnit
@@ -84544,17 +84826,17 @@ self: {
 
   "gitlib-test" = callPackage
     ({ mkDerivation, base, bytestring, conduit, conduit-combinators
-     , exceptions, gitlib, hspec, hspec-expectations, HUnit
-     , monad-control, tagged, text, time, transformers
+     , exceptions, gitlib, hspec, hspec-expectations, HUnit, tagged
+     , text, time, transformers, unliftio-core
      }:
      mkDerivation {
        pname = "gitlib-test";
-       version = "3.1.0.3";
-       sha256 = "07r970d6m15gri6xim71kl2vvml85jlb0vc51zb67gfsd6iby2py";
+       version = "3.1.1";
+       sha256 = "1h8kqqj298bb0bj7w4rw18jf3bz0h1rqdg8fngmp4p35c1k1kjzi";
        libraryHaskellDepends = [
          base bytestring conduit conduit-combinators exceptions gitlib hspec
-         hspec-expectations HUnit monad-control tagged text time
-         transformers
+         hspec-expectations HUnit tagged text time transformers
+         unliftio-core
        ];
        description = "Test library for confirming gitlib backend compliance";
        license = stdenv.lib.licenses.mit;
@@ -85053,6 +85335,8 @@ self: {
        pname = "glirc";
        version = "2.28";
        sha256 = "17z3lhb7ngvp0678ry5zk0jl7pmjhzypk2l6x9mp43m427ick1nk";
+       revision = "1";
+       editedCabalFile = "142909apkky5z443qifchd2cm1dakw2zpbcfyxpvpi7crzhq0h1d";
        isLibrary = true;
        isExecutable = true;
        setupHaskellDepends = [ base Cabal filepath ];
@@ -85076,8 +85360,8 @@ self: {
      }:
      mkDerivation {
        pname = "gll";
-       version = "0.4.0.11";
-       sha256 = "0vxi750q11q1ggf0s2yyjpr47fmpfvmqm5mjdh6i4z6bf5vlhfd8";
+       version = "0.4.0.12";
+       sha256 = "1ls01s36ixik53c0fyr9sy3bhyh2kfn0yjkh3mp8izgw6l8aydwr";
        libraryHaskellDepends = [
          array base containers pretty random-strings regex-applicative text
          time TypeCompose
@@ -85306,6 +85590,25 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "gloss-export" = callPackage
+    ({ mkDerivation, base, GLFW-b, gloss, gloss-rendering, GLUT
+     , JuicyPixels, OpenGLRaw, vector
+     }:
+     mkDerivation {
+       pname = "gloss-export";
+       version = "0.1.0.0";
+       sha256 = "0m5k8zr90wqh6sjgn5c3mrpffwkq8g42qji8ss77l97a2hcv50dq";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base GLFW-b gloss-rendering GLUT JuicyPixels OpenGLRaw vector
+       ];
+       executableHaskellDepends = [ base gloss ];
+       testHaskellDepends = [ base ];
+       description = "Export Gloss pictures to png, bmp, tga, tiff, gif and juicy-pixels-image";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "gloss-game" = callPackage
     ({ mkDerivation, base, gloss, gloss-juicy }:
      mkDerivation {
@@ -85322,8 +85625,10 @@ self: {
      }:
      mkDerivation {
        pname = "gloss-juicy";
-       version = "0.2.2";
-       sha256 = "1w1y8aijdf4ba80rq5i2456xh1yyix4wcfagy102xsyvcldlggpv";
+       version = "0.2.3";
+       sha256 = "0px0i6fvicmsgvp7sl7g37y3163s1i2fm5xcq5b1ar9smwv25gq3";
+       revision = "1";
+       editedCabalFile = "09cbz0854v2dsmv24l40rmx4bq7ic436m4xingw93gvw4fawlfqc";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -85731,8 +86036,8 @@ self: {
      }:
      mkDerivation {
        pname = "gnuplot";
-       version = "0.5.5.2";
-       sha256 = "1mlppnc13ygjzmf6ldydys4wvy35yb3xjwwfgf9rbi7nfcqjr6mn";
+       version = "0.5.5.3";
+       sha256 = "0105ajc5szgrh091x5fxdcydc96rdh75gg2snyfr2y2rhf120x2g";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -88117,6 +88422,8 @@ self: {
        pname = "grapefruit-frp";
        version = "0.1.0.7";
        sha256 = "132jd2dxj964paz6dcyb6sx25dkv271rl2fgw05c7zawrrfnrkxs";
+       revision = "1";
+       editedCabalFile = "14qhyvsf7r04fwm1jwl41gdijx0vrqz7lsqy50hmzpcwixr92013";
        libraryHaskellDepends = [
          arrows base containers fingertree semigroups TypeCompose
        ];
@@ -88145,6 +88452,8 @@ self: {
        pname = "grapefruit-ui";
        version = "0.1.0.7";
        sha256 = "1r2wpn982z33s0p6fgdgslgv9ixanb2pysy71j20cfp1xzh13hdj";
+       revision = "1";
+       editedCabalFile = "0s61spgkw2h12g1wks5zxhrzpqqnmmxcw5kbirblyfl4p59pxpns";
        libraryHaskellDepends = [
          arrows base colour containers fraction grapefruit-frp
          grapefruit-records
@@ -88163,6 +88472,8 @@ self: {
        pname = "grapefruit-ui-gtk";
        version = "0.1.0.7";
        sha256 = "0ix6dilj3xv2cvihwq8cfykr8i1yq9w1bn86248r5bg5vhfn4g28";
+       revision = "1";
+       editedCabalFile = "0ahjd2sxh12hr8slz6vkc5gn2wr1h9dgq8q3kc9jq5xjzr66cgbk";
        libraryHaskellDepends = [
          base colour containers fraction glib grapefruit-frp
          grapefruit-records grapefruit-ui gtk3 transformers
@@ -88862,8 +89173,8 @@ self: {
      }:
      mkDerivation {
        pname = "greenclip";
-       version = "3.1.1";
-       sha256 = "1axh1q7kcvcnhn4rl704i4gcix5yn5v0sb3bdgjk4vgkd7fv8chw";
+       version = "3.2.0";
+       sha256 = "09ygvyrczxqsp2plwmwx021wmbq2vln9i4b5iaj0j26j7prykikq";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -89000,6 +89311,28 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "greskell-core_0_1_2_3" = 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.3";
+       sha256 = "026lipvhc4kjcmf1d604f6m71b3hrrkaafdvymmn1fsxa360dw0s";
+       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
@@ -89211,8 +89544,8 @@ self: {
      }:
      mkDerivation {
        pname = "groundhog";
-       version = "0.8.0.1";
-       sha256 = "0qrv2rpw1nqn28j6mcmwn0sjmfsfg5gj68sq5dcydh247q1acp5r";
+       version = "0.9.0";
+       sha256 = "09d0n91cd0bvmrik4ail2svbh7l8vp5va0344jzvy1g2ancy0yj0";
        libraryHaskellDepends = [
          aeson attoparsec base base64-bytestring blaze-builder bytestring
          containers monad-control mtl resourcet safe-exceptions scientific
@@ -89273,8 +89606,8 @@ self: {
      }:
      mkDerivation {
        pname = "groundhog-mysql";
-       version = "0.8.0.1";
-       sha256 = "0h4sckj7hrhlnrfa9639kr9id8rf11ragadsj9rxils1vn4cn35r";
+       version = "0.9.0";
+       sha256 = "0n3zcvb1qh5jdfrzgiamaf51fvkhgabsl07asy7wcdp0hb8rxdkq";
        libraryHaskellDepends = [
          base bytestring containers groundhog monad-control monad-logger
          mysql mysql-simple resource-pool resourcet text time transformers
@@ -89292,8 +89625,8 @@ self: {
      }:
      mkDerivation {
        pname = "groundhog-postgresql";
-       version = "0.8.0.3";
-       sha256 = "0iz21awiblzir01r6p77qnlvqsb8j87x5y11g1q2spnafzj4wlpl";
+       version = "0.9.0";
+       sha256 = "0r756ccnrwzwl6x9fkrvyws8l00sp9jjqlj5n42jkw7nwwx3i8gy";
        libraryHaskellDepends = [
          aeson attoparsec base blaze-builder bytestring containers groundhog
          monad-control postgresql-libpq postgresql-simple resource-pool
@@ -89311,8 +89644,8 @@ self: {
      }:
      mkDerivation {
        pname = "groundhog-sqlite";
-       version = "0.8.0.1";
-       sha256 = "1y6cfnyrrq61vv793crfb7yd21yn0gqmx7j7c9sg8665l34wq2jp";
+       version = "0.9.0";
+       sha256 = "06985myr96dc7f6hkkm9nihvvl2c19wdl1bn3nfvyj78yvz8ryxb";
        libraryHaskellDepends = [
          base bytestring containers direct-sqlite groundhog monad-control
          resource-pool resourcet text transformers unordered-containers
@@ -89328,8 +89661,8 @@ self: {
      }:
      mkDerivation {
        pname = "groundhog-th";
-       version = "0.8.0.2";
-       sha256 = "13rxdmnbmsivp608xclkvjnab0dzhzyqc8zjrpm7ml9d5yc8v596";
+       version = "0.9.0";
+       sha256 = "1wwfgyak5kdhnn6i07y114q063ryg9w3sngh0c2fh2addh5xrqay";
        libraryHaskellDepends = [
          aeson base bytestring containers groundhog template-haskell text
          time unordered-containers yaml
@@ -89463,6 +89796,34 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "grpc-api-etcd" = callPackage
+    ({ mkDerivation, base, proto-lens, proto-lens-protoc }:
+     mkDerivation {
+       pname = "grpc-api-etcd";
+       version = "0.1.0.1";
+       sha256 = "0sr9nsk207ap1psf4mypzjbpbppxwmbbcv6z07dxpv1dwzs6dnyf";
+       libraryHaskellDepends = [ base proto-lens proto-lens-protoc ];
+       description = "Generated messages and instances for etcd gRPC";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
+  "grpc-etcd-client" = callPackage
+    ({ mkDerivation, base, bytestring, data-default-class
+     , grpc-api-etcd, http2-client, http2-client-grpc, lens, network
+     , proto-lens, proto-lens-protoc
+     }:
+     mkDerivation {
+       pname = "grpc-etcd-client";
+       version = "0.1.1.2";
+       sha256 = "1xrdasrg0m3cxlb227wmnl9vbakqiikrm3wi07wbnmbg6n5agzkr";
+       libraryHaskellDepends = [
+         base bytestring data-default-class grpc-api-etcd http2-client
+         http2-client-grpc lens network proto-lens proto-lens-protoc
+       ];
+       description = "gRPC client for etcd";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "gruff" = callPackage
     ({ mkDerivation, base, bytestring, containers, directory, filepath
      , FTGL, gtk, gtkglext, mtl, old-locale, OpenGL, OpenGLRaw, parallel
@@ -89688,6 +90049,25 @@ self: {
        license = stdenv.lib.licenses.lgpl21;
      }) {gtk2 = pkgs.gnome2.gtk;};
 
+  "gtk_0_15_0" = callPackage
+    ({ mkDerivation, array, base, bytestring, Cabal, cairo, containers
+     , gio, glib, gtk2, gtk2hs-buildtools, mtl, pango, text
+     }:
+     mkDerivation {
+       pname = "gtk";
+       version = "0.15.0";
+       sha256 = "110lawhnd00acllfjhimcq59wxsrl2xs68mam6wmqfc43wan5f5k";
+       enableSeparateDataOutput = true;
+       setupHaskellDepends = [ base Cabal gtk2hs-buildtools ];
+       libraryHaskellDepends = [
+         array base bytestring cairo containers gio glib mtl pango text
+       ];
+       libraryPkgconfigDepends = [ gtk2 ];
+       description = "Binding to the Gtk+ graphical user interface library";
+       license = stdenv.lib.licenses.lgpl21;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {gtk2 = pkgs.gnome2.gtk;};
+
   "gtk-helpers" = callPackage
     ({ mkDerivation, array, base, gio, glib, gtk, mtl, process
      , template-haskell
@@ -90021,6 +90401,27 @@ self: {
        license = stdenv.lib.licenses.lgpl21;
      }) {inherit (pkgs) gtk3;};
 
+  "gtk3_0_15_0" = callPackage
+    ({ mkDerivation, array, base, bytestring, Cabal, cairo, containers
+     , gio, glib, gtk2hs-buildtools, gtk3, mtl, pango, text
+     }:
+     mkDerivation {
+       pname = "gtk3";
+       version = "0.15.0";
+       sha256 = "1q6ysw00gjaaali18iz111zqzkjiblzg7cfg6ckvzf93mg0w6g0c";
+       isLibrary = true;
+       isExecutable = true;
+       enableSeparateDataOutput = true;
+       setupHaskellDepends = [ base Cabal gtk2hs-buildtools ];
+       libraryHaskellDepends = [
+         array base bytestring cairo containers gio glib mtl pango text
+       ];
+       libraryPkgconfigDepends = [ gtk3 ];
+       description = "Binding to the Gtk+ 3 graphical user interface library";
+       license = stdenv.lib.licenses.lgpl21;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {inherit (pkgs) gtk3;};
+
   "gtk3-mac-integration" = callPackage
     ({ mkDerivation, array, base, Cabal, containers, glib
      , gtk-mac-integration-gtk3, gtk2hs-buildtools, gtk3, mtl
@@ -90274,8 +90675,8 @@ self: {
      }:
      mkDerivation {
        pname = "h-gpgme";
-       version = "0.5.0.0";
-       sha256 = "0fvkj7cz7nfz52a2zccngb8gbs8p94whvgccvnxpwmkg90m45mfp";
+       version = "0.5.1.0";
+       sha256 = "0fdlfi068m23yizkfgsbzjvd1yxmrvmbndsbsvawljq98jc75sgl";
        libraryHaskellDepends = [
          base bindings-gpgme bytestring data-default email-validate time
          transformers unix
@@ -92020,17 +92421,17 @@ self: {
      }:
      mkDerivation {
        pname = "hadolint";
-       version = "1.11.2";
-       sha256 = "0xfhghpy0jmgmlyzc6plcg3nq26afbwp36bjjdc156rcwzsm9qyx";
+       version = "1.13.0";
+       sha256 = "1z5qaxslshd1adkhqcpx8m8fs8d3dw4vwbwvsqcpm7gis63qhbqg";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         aeson base bytestring containers language-docker megaparsec mtl
-         ShellCheck split text void
+         aeson base bytestring containers directory filepath language-docker
+         megaparsec mtl ShellCheck split text void yaml
        ];
        executableHaskellDepends = [
-         base containers directory filepath gitrev language-docker
-         megaparsec optparse-applicative text yaml
+         base containers gitrev language-docker megaparsec
+         optparse-applicative text
        ];
        testHaskellDepends = [
          aeson base bytestring hspec HUnit language-docker megaparsec
@@ -92649,8 +93050,8 @@ self: {
      }:
      mkDerivation {
        pname = "hakyll-dir-list";
-       version = "1.0.0.2";
-       sha256 = "0irkfnwbzhchvjsfzndb6i3w76gnwik9fq3fhi3qg3jc7l0cgi76";
+       version = "1.0.0.4";
+       sha256 = "0n7cfamaan0yyrpdfqmjbbgv7cg172hp4zs16zf52l90xdq253h9";
        libraryHaskellDepends = [
          base containers data-default filepath hakyll
        ];
@@ -93402,34 +93803,6 @@ self: {
      }:
      mkDerivation {
        pname = "hapistrano";
-       version = "0.3.5.9";
-       sha256 = "1jyzjj9m6vj9rlpvadaxnfxxl8ynrn8jp9xzyp3kwkzyv6cdi1ha";
-       revision = "2";
-       editedCabalFile = "1gfs133dm21jwv48v4wlr1dbr993fz49b9lviaahkymlv1d3j8gd";
-       isLibrary = true;
-       isExecutable = true;
-       enableSeparateDataOutput = true;
-       libraryHaskellDepends = [
-         base filepath formatting gitrev mtl path process time transformers
-       ];
-       executableHaskellDepends = [
-         aeson async base formatting gitrev optparse-applicative path
-         path-io stm yaml
-       ];
-       testHaskellDepends = [
-         base directory filepath hspec mtl path path-io process temporary
-       ];
-       description = "A deployment library for Haskell applications";
-       license = stdenv.lib.licenses.mit;
-     }) {};
-
-  "hapistrano_0_3_5_10" = callPackage
-    ({ mkDerivation, aeson, async, base, directory, filepath
-     , formatting, gitrev, hspec, mtl, optparse-applicative, path
-     , path-io, process, stm, temporary, time, transformers, yaml
-     }:
-     mkDerivation {
-       pname = "hapistrano";
        version = "0.3.5.10";
        sha256 = "1pkgbcpddk5ik0b1b684nnvwil68kla1w7660c1751dyhhh78ikw";
        isLibrary = true;
@@ -93447,7 +93820,6 @@ self: {
        ];
        description = "A deployment library for Haskell applications";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "happindicator" = callPackage
@@ -95816,7 +96188,7 @@ self: {
        description = "Haskell interface of the igraph library";
        license = stdenv.lib.licenses.mit;
        hydraPlatforms = stdenv.lib.platforms.none;
-     }) {igraph = null;};
+     }) {inherit (pkgs) igraph;};
 
   "haskell-import-graph" = callPackage
     ({ mkDerivation, base, classy-prelude, ghc, graphviz, process, text
@@ -95913,7 +96285,7 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "haskell-lsp_0_7_0_0" = callPackage
+  "haskell-lsp_0_8_0_0" = callPackage
     ({ mkDerivation, aeson, base, bytestring, containers, data-default
      , directory, filepath, hashable, haskell-lsp-types, hslogger, hspec
      , lens, mtl, network-uri, parsec, sorted-list, stm, text, time
@@ -95921,10 +96293,8 @@ self: {
      }:
      mkDerivation {
        pname = "haskell-lsp";
-       version = "0.7.0.0";
-       sha256 = "1v67yj0ndd5wra2rnmdqcamivml82yn4lwhnm04nz6spsq2mqgkv";
-       revision = "1";
-       editedCabalFile = "1j33y61hwarfm5p54b682sd3rfhxf82lchr1jnnvv1h8xs56ryln";
+       version = "0.8.0.0";
+       sha256 = "04mihj4538pys6v4m3dwijfzcpsv52jizm416rnnwc88gr8q6wkk";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -95983,15 +96353,15 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "haskell-lsp-types_0_7_0_0" = callPackage
+  "haskell-lsp-types_0_8_0_0" = callPackage
     ({ mkDerivation, aeson, base, bytestring, data-default, filepath
      , hashable, lens, network-uri, scientific, text
      , unordered-containers
      }:
      mkDerivation {
        pname = "haskell-lsp-types";
-       version = "0.7.0.0";
-       sha256 = "1iisadmi3v3wshpwi5cbn2p8p4qr9rh5xnlbhjymzxhj9k09cmcb";
+       version = "0.8.0.0";
+       sha256 = "11dm7v9rvfig6m40m0np7cs5cfaawwpw67c445dz15vls5pri71n";
        libraryHaskellDepends = [
          aeson base bytestring data-default filepath hashable lens
          network-uri scientific text unordered-containers
@@ -97751,31 +98121,30 @@ self: {
      }) {};
 
   "haskoin-core" = callPackage
-    ({ mkDerivation, aeson, base, base16-bytestring, binary, byteable
-     , bytestring, cereal, conduit, containers, cryptohash, deepseq
-     , either, entropy, HUnit, largeword, mtl, murmur3, network, pbkdf
-     , QuickCheck, safe, scientific, secp256k1, split
-     , string-conversions, test-framework, test-framework-hunit
-     , test-framework-quickcheck2, text, time, unordered-containers
-     , vector
+    ({ mkDerivation, aeson, array, base, base16-bytestring, bytestring
+     , cereal, conduit, containers, cryptonite, deepseq, entropy
+     , hashable, hspec, hspec-discover, HUnit, memory, mtl, murmur3
+     , network, QuickCheck, safe, scientific, secp256k1-haskell, split
+     , string-conversions, text, time, transformers
+     , unordered-containers, vector
      }:
      mkDerivation {
        pname = "haskoin-core";
-       version = "0.4.2";
-       sha256 = "0nyla9kqgyjahnpf3idi7kzyx8h7q92vk3jql1gl9iq8q9acwnzk";
+       version = "0.5.2";
+       sha256 = "1sjsni26m9f36v9zc3q6gkpv8d7bnwvn88s1v77d5z81jszfwq2b";
        libraryHaskellDepends = [
-         aeson base base16-bytestring byteable bytestring cereal conduit
-         containers cryptohash deepseq either entropy largeword mtl murmur3
-         network pbkdf QuickCheck secp256k1 split string-conversions text
-         time vector
+         aeson array base base16-bytestring bytestring cereal conduit
+         containers cryptonite deepseq entropy hashable memory mtl murmur3
+         network QuickCheck scientific secp256k1-haskell split
+         string-conversions text time transformers unordered-containers
+         vector
        ];
        testHaskellDepends = [
-         aeson base binary bytestring cereal containers HUnit largeword mtl
-         QuickCheck safe scientific secp256k1 split string-conversions
-         test-framework test-framework-hunit test-framework-quickcheck2 text
-         unordered-containers vector
+         aeson base bytestring cereal containers hspec HUnit mtl QuickCheck
+         safe split string-conversions text vector
        ];
-       description = "Implementation of the core Bitcoin protocol features";
+       testToolDepends = [ hspec-discover ];
+       description = "Bitcoin & Bitcoin Cash library for Haskell";
        license = stdenv.lib.licenses.publicDomain;
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
@@ -97804,34 +98173,25 @@ self: {
      }) {};
 
   "haskoin-node" = callPackage
-    ({ mkDerivation, aeson, async, base, bytestring, cereal
-     , concurrent-extra, conduit, conduit-extra, containers
-     , data-default, deepseq, either, esqueleto, exceptions
-     , haskoin-core, HUnit, largeword, lifted-async, lifted-base
-     , monad-control, monad-logger, mtl, network, persistent
-     , persistent-sqlite, persistent-template, QuickCheck, random
-     , resource-pool, resourcet, stm, stm-chans, stm-conduit
-     , string-conversions, test-framework, test-framework-hunit
-     , test-framework-quickcheck2, text, time
+    ({ mkDerivation, base, bytestring, cereal, conduit, conduit-extra
+     , hashable, haskoin-core, hspec, monad-logger, mtl, network, nqe
+     , random, resourcet, rocksdb-haskell, rocksdb-query
+     , string-conversions, time, unique, unliftio
      }:
      mkDerivation {
        pname = "haskoin-node";
-       version = "0.4.2";
-       sha256 = "0khgdr5qql716d1klajs4y0mkyz0d9h3drahhv8062k64n7a989s";
+       version = "0.5.2";
+       sha256 = "1wrkah2sbinkc5yp2b6mj6z0aps1pl7j1hncygmsa5pvg8iifjih";
        libraryHaskellDepends = [
-         aeson async base bytestring cereal concurrent-extra conduit
-         conduit-extra containers data-default deepseq either esqueleto
-         exceptions haskoin-core largeword lifted-async lifted-base
-         monad-control monad-logger mtl network persistent
-         persistent-template random resource-pool stm stm-chans stm-conduit
-         string-conversions text time
+         base bytestring cereal conduit conduit-extra hashable haskoin-core
+         monad-logger mtl network nqe random resourcet rocksdb-haskell
+         rocksdb-query string-conversions time unique unliftio
        ];
        testHaskellDepends = [
-         base haskoin-core HUnit monad-logger mtl persistent
-         persistent-sqlite QuickCheck resourcet test-framework
-         test-framework-hunit test-framework-quickcheck2
+         base bytestring cereal haskoin-core hspec monad-logger mtl network
+         nqe random rocksdb-haskell unliftio
        ];
-       description = "Implementation of a Bitoin node";
+       description = "Haskoin Node P2P library for Bitcoin and Bitcoin Cash";
        license = stdenv.lib.licenses.publicDomain;
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
@@ -97880,6 +98240,37 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "haskoin-store" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, cereal, conduit
+     , containers, directory, filepath, haskoin-core, haskoin-node
+     , hspec, http-types, monad-logger, mtl, network, nqe
+     , optparse-applicative, random, rocksdb-haskell, rocksdb-query
+     , scotty, string-conversions, text, time, transformers, unliftio
+     }:
+     mkDerivation {
+       pname = "haskoin-store";
+       version = "0.1.3";
+       sha256 = "1xlvh0q6jx37p4rnq4qspwnnq7hpvaqi9ib1mlgkdxj7ypxk26fr";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson base bytestring cereal conduit containers haskoin-core
+         haskoin-node monad-logger mtl network nqe random rocksdb-haskell
+         rocksdb-query string-conversions text time transformers unliftio
+       ];
+       executableHaskellDepends = [
+         aeson base bytestring conduit directory filepath haskoin-core
+         haskoin-node http-types monad-logger nqe optparse-applicative
+         rocksdb-haskell scotty string-conversions text unliftio
+       ];
+       testHaskellDepends = [
+         base haskoin-core haskoin-node hspec monad-logger nqe
+         rocksdb-haskell unliftio
+       ];
+       description = "Storage and index for Bitcoin and Bitcoin Cash";
+       license = stdenv.lib.licenses.publicDomain;
+     }) {};
+
   "haskoin-util" = callPackage
     ({ mkDerivation, base, binary, bytestring, containers, either
      , HUnit, mtl, QuickCheck, test-framework, test-framework-hunit
@@ -98292,8 +98683,8 @@ self: {
      }:
      mkDerivation {
        pname = "hasmin";
-       version = "1.0.2";
-       sha256 = "13cblc4jcn88w00rsb72dqhiy18mfph388407vm3k6kbg5zxg1d9";
+       version = "1.0.2.1";
+       sha256 = "0dwamjpqwikl8qh5zcxhrm7x80k35zw29xh83yfnwnsa41incylb";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -98349,6 +98740,8 @@ self: {
        pname = "hasql";
        version = "1.3.0.3";
        sha256 = "01vl4p67yhcm8cmbmajgyd7ggj3p5f6350f8sky8kv3dn31wg6ji";
+       revision = "2";
+       editedCabalFile = "14063k0dald0i2cqk70kdja1df587vn8vrzgw3rb62nxwycr0r9b";
        libraryHaskellDepends = [
          attoparsec base base-prelude bytestring bytestring-strict-builder
          contravariant contravariant-extras data-default-class dlist
@@ -99057,6 +99450,8 @@ self: {
        pname = "haxl";
        version = "2.0.1.0";
        sha256 = "07s3jxqvdcla3qj8jjxd5088kp7h015i2q20kjhs4n73swa9h9fd";
+       revision = "1";
+       editedCabalFile = "04k5q5hvnbw1shrb8pqw3nwsylpb78fi802xzfq2gcmrnl6hy58p";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -99964,6 +100359,8 @@ self: {
        pname = "hdirect";
        version = "0.21.0";
        sha256 = "1v7yx9k0kib6527k49hf3s4jvdda7a0wgv09qhyjk6lyriyi3ny2";
+       revision = "1";
+       editedCabalFile = "19h5zsxl8knbvkbyv7z0an5hdibi2xslbva5cmck9h5wgc9m874n";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ array base haskell98 pretty ];
@@ -100205,6 +100602,58 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "heatitup" = callPackage
+    ({ mkDerivation, base, bytestring, bytestring-show, cassava, colour
+     , containers, diagrams-core, diagrams-html5, diagrams-lib
+     , diagrams-pgf, diagrams-rasterific, diagrams-svg, edit-distance
+     , fasta, lens, optparse-applicative, pipes, pipes-bytestring
+     , pipes-csv, safe, string-similarity, stringsearch, suffixtree
+     , vector
+     }:
+     mkDerivation {
+       pname = "heatitup";
+       version = "0.5.3.3";
+       sha256 = "1bqindh91i4ra67516nl0c5i98fgm9bwsjy7vv0qjzmfqk3bqp84";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base bytestring bytestring-show cassava colour containers
+         diagrams-lib edit-distance fasta lens pipes pipes-bytestring
+         pipes-csv safe string-similarity stringsearch suffixtree vector
+       ];
+       executableHaskellDepends = [
+         base bytestring colour containers diagrams-core diagrams-html5
+         diagrams-lib diagrams-pgf diagrams-rasterific diagrams-svg fasta
+         lens optparse-applicative pipes pipes-bytestring pipes-csv safe
+         vector
+       ];
+       description = "Find and annotate ITDs";
+       license = stdenv.lib.licenses.gpl3;
+     }) {};
+
+  "heatitup-complete" = callPackage
+    ({ mkDerivation, base, bytestring, cassava, containers, fasta
+     , foldl, lens, optparse-applicative, pipes, pipes-text, safe, text
+     , text-show, turtle, vector
+     }:
+     mkDerivation {
+       pname = "heatitup-complete";
+       version = "0.5.3.3";
+       sha256 = "1djs5hni6s4mzs4fniamfz6k7590l34mgvd1d2kglmdpb5m22pcz";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base bytestring cassava containers fasta foldl lens safe text
+         text-show turtle vector
+       ];
+       executableHaskellDepends = [
+         base bytestring cassava containers fasta foldl optparse-applicative
+         pipes pipes-text safe text turtle vector
+       ];
+       description = "Find and annotate ITDs with assembly or read pair joining";
+       license = stdenv.lib.licenses.gpl3;
+     }) {};
+
   "heatshrink" = callPackage
     ({ mkDerivation, base, bytestring, c2hs, cereal, pcre-heavy, tasty
      , tasty-golden, tasty-hunit, text
@@ -100460,31 +100909,6 @@ self: {
      }:
      mkDerivation {
        pname = "hedis";
-       version = "0.10.3";
-       sha256 = "0wapsg0amlmzayphchng67ih3ivp0mk3vgi8x1mzrkd1xrlgav3v";
-       libraryHaskellDepends = [
-         async base bytestring bytestring-lexing deepseq errors HTTP mtl
-         network network-uri resource-pool scanner stm text time tls
-         unordered-containers vector
-       ];
-       testHaskellDepends = [
-         async base bytestring doctest HUnit mtl slave-thread stm
-         test-framework test-framework-hunit text time
-       ];
-       benchmarkHaskellDepends = [ base mtl time ];
-       description = "Client library for the Redis datastore: supports full command set, pipelining";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "hedis_0_10_4" = callPackage
-    ({ mkDerivation, async, base, bytestring, bytestring-lexing
-     , deepseq, doctest, errors, HTTP, HUnit, mtl, network, network-uri
-     , resource-pool, scanner, slave-thread, stm, test-framework
-     , test-framework-hunit, text, time, tls, unordered-containers
-     , vector
-     }:
-     mkDerivation {
-       pname = "hedis";
        version = "0.10.4";
        sha256 = "1xsa6wgakmjhwz9s9fybbwsx6gxy6630bqyrai0sb4vmd9lnbxfx";
        libraryHaskellDepends = [
@@ -100499,7 +100923,6 @@ self: {
        benchmarkHaskellDepends = [ base mtl time ];
        description = "Client library for the Redis datastore: supports full command set, pipelining";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "hedis-config" = callPackage
@@ -101631,6 +102054,19 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "hexml_0_3_4" = callPackage
+    ({ mkDerivation, base, bytestring, extra }:
+     mkDerivation {
+       pname = "hexml";
+       version = "0.3.4";
+       sha256 = "0amy5gjk1sqj5dq8a8gp7d3z9wfhcflhxkssijnklnfn5s002x4k";
+       libraryHaskellDepends = [ base bytestring extra ];
+       testHaskellDepends = [ base bytestring ];
+       description = "XML subset DOM parser";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "hexml-lens" = callPackage
     ({ mkDerivation, base, bytestring, contravariant, doctest
      , foundation, hexml, hspec, lens, profunctors, QuickCheck, text
@@ -101980,10 +102416,8 @@ self: {
      }:
      mkDerivation {
        pname = "hformat";
-       version = "0.3.3.0";
-       sha256 = "0g9kjfssaksjj3cp0qiwk7v85yy3sb2ryhjnlrdznhm3mnkvp35j";
-       revision = "1";
-       editedCabalFile = "00924yrjyzy3v5l13f03v1qw45ra2600f98r9bgswjqrrn87m79i";
+       version = "0.3.3.1";
+       sha256 = "0wx7qlhdzd8rl2d351hvxzwlyz9yxza625fklp2p66x7khfxlbih";
        libraryHaskellDepends = [
          ansi-terminal base base-unicode-symbols text
        ];
@@ -102243,18 +102677,18 @@ self: {
     ({ mkDerivation, ansi-wl-pprint, base, binary, bytestring, Chart
      , Chart-cairo, Chart-diagrams, colour, composition-prelude
      , data-binary-ieee754, data-default, directory, filepath, hspec
-     , lens, monad-loops
+     , lens, monad-loops, spherical
      }:
      mkDerivation {
        pname = "hgis";
-       version = "1.0.0.2";
-       sha256 = "1z730c48pvi6ylb0pjzx2x9jnd03aadpmsx3psrlf2vp0bvm6ims";
+       version = "1.0.0.3";
+       sha256 = "00s87mna6lxr1q3275jg7ya17qhksr9bmfg2nw9mgadb05j6h2v8";
        libraryHaskellDepends = [
          ansi-wl-pprint base binary bytestring Chart Chart-cairo
          Chart-diagrams colour composition-prelude data-binary-ieee754
-         data-default directory filepath lens monad-loops
+         data-default directory filepath lens monad-loops spherical
        ];
-       testHaskellDepends = [ base hspec ];
+       testHaskellDepends = [ base hspec spherical ];
        doHaddock = false;
        description = "Library and for GIS with Haskell";
        license = stdenv.lib.licenses.bsd3;
@@ -106162,8 +106596,8 @@ self: {
        pname = "hookup";
        version = "0.2.2";
        sha256 = "1q9w8j4g8j9ijfvwpng4i3k2b8pkf4ln27bcdaalnp9yyidmxlqf";
-       revision = "1";
-       editedCabalFile = "1ag338856kxlywgcizqij566iaqicv4jb3kmd017k7qflq8vmwb3";
+       revision = "2";
+       editedCabalFile = "12x7h7yg0x9gqv9yj2snp3k221yzyphm1l7aixkz1szxp1pndfgy";
        libraryHaskellDepends = [
          attoparsec base bytestring HsOpenSSL HsOpenSSL-x509-system network
        ];
@@ -106392,8 +106826,8 @@ self: {
      }:
      mkDerivation {
        pname = "hoppy-generator";
-       version = "0.5.1";
-       sha256 = "1hnaxv3vg46a9iqszi3dfjj5kd3gqiagrxz28hi2wvvcpc8zpadn";
+       version = "0.5.2";
+       sha256 = "0ifk7ja1nynbgcf7q8v2dl4sn5ivif9rbd2d7pjp9lx43di9axfc";
        libraryHaskellDepends = [
          base containers directory filepath haskell-src mtl
        ];
@@ -106670,25 +107104,6 @@ self: {
      }:
      mkDerivation {
        pname = "hourglass";
-       version = "0.2.11";
-       sha256 = "0lag9sgj7ndrbfmab6jhszlv413agg0zzaj5r9f2fmf07wqbp9hq";
-       libraryHaskellDepends = [ base deepseq ];
-       testHaskellDepends = [
-         base deepseq mtl old-locale tasty tasty-hunit tasty-quickcheck time
-       ];
-       benchmarkHaskellDepends = [
-         base bytestring deepseq gauge mtl old-locale time
-       ];
-       description = "simple performant time related library";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "hourglass_0_2_12" = callPackage
-    ({ mkDerivation, base, bytestring, deepseq, gauge, mtl, old-locale
-     , tasty, tasty-hunit, tasty-quickcheck, time
-     }:
-     mkDerivation {
-       pname = "hourglass";
        version = "0.2.12";
        sha256 = "0jnay5j13vpz6i1rkaj3j0d9v8jfpri499xn3l7wd01f81f5ncs4";
        libraryHaskellDepends = [ base deepseq ];
@@ -106700,7 +107115,6 @@ self: {
        ];
        description = "simple performant time related library";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "hourglass-fuzzy-parsing" = callPackage
@@ -106909,18 +107323,18 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "hpack_0_29_7" = callPackage
+  "hpack_0_31_0" = callPackage
     ({ mkDerivation, aeson, base, bifunctors, bytestring, Cabal
      , containers, cryptonite, deepseq, directory, filepath, Glob, hspec
-     , http-client, http-client-tls, http-types, HUnit, infer-license
-     , interpolate, mockery, pretty, QuickCheck, scientific
-     , template-haskell, temporary, text, transformers
+     , hspec-discover, http-client, http-client-tls, http-types, HUnit
+     , infer-license, interpolate, mockery, pretty, QuickCheck
+     , scientific, template-haskell, temporary, text, transformers
      , unordered-containers, vector, yaml
      }:
      mkDerivation {
        pname = "hpack";
-       version = "0.29.7";
-       sha256 = "07a9dar92qmgxfkf783rlwpkl49f242ygd50wrc22g4xllgrm2y9";
+       version = "0.31.0";
+       sha256 = "0lh60zqjzbjq0hkdia97swz0g1r3ihj84fph9jq9936fpb7hm1n9";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -106942,6 +107356,7 @@ self: {
          QuickCheck scientific template-haskell temporary text transformers
          unordered-containers vector yaml
        ];
+       testToolDepends = [ hspec-discover ];
        description = "A modern format for Haskell packages";
        license = stdenv.lib.licenses.mit;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -107343,18 +107758,18 @@ self: {
      }) {};
 
   "hpp" = callPackage
-    ({ mkDerivation, base, bytestring, bytestring-trie, directory
-     , filepath, ghc-prim, time, transformers
+    ({ mkDerivation, base, bytestring, directory, filepath, ghc-prim
+     , time, transformers, unordered-containers
      }:
      mkDerivation {
        pname = "hpp";
-       version = "0.5.2";
-       sha256 = "1r1sas1rcxcra4q3vjw3qmiv0xc4j263m7p93y6bwm1fvpxlkvcc";
+       version = "0.6.1";
+       sha256 = "1gv2gndbyrppl8qan680kl9kmwv6b5a5j5yrwifzh8rj73s47a6i";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         base bytestring bytestring-trie directory filepath ghc-prim time
-         transformers
+         base bytestring directory filepath ghc-prim time transformers
+         unordered-containers
        ];
        executableHaskellDepends = [ base directory filepath time ];
        testHaskellDepends = [ base bytestring transformers ];
@@ -107726,8 +108141,8 @@ self: {
      }:
      mkDerivation {
        pname = "hriemann";
-       version = "0.3.3.0";
-       sha256 = "0apji56rwh1did67z9z0bcy5r9k2m6rrfkiv18rp4mbd863skg25";
+       version = "0.3.3.1";
+       sha256 = "0a2pljkqjvx88cssq24yq8h06md864fvvr77ka0nnmk3znyddn9f";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -108019,23 +108434,11 @@ self: {
     ({ mkDerivation, base, transformers }:
      mkDerivation {
        pname = "hs-functors";
-       version = "0.1.2.0";
-       sha256 = "0jhhli0hhhmrh313nnydblyz68rhhmf4g6yrn35m8davj5cg1wd7";
-       libraryHaskellDepends = [ base transformers ];
-       description = "Functors from products of Haskell and its dual to Haskell";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "hs-functors_0_1_3_0" = callPackage
-    ({ mkDerivation, base, transformers }:
-     mkDerivation {
-       pname = "hs-functors";
        version = "0.1.3.0";
        sha256 = "1j7g5s82f8c1j4hans28m63bwi612j8kfrb7n9cdqqzlc1r804ik";
        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
@@ -110336,6 +110739,22 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "hspec_2_5_6" = callPackage
+    ({ mkDerivation, base, hspec-core, hspec-discover
+     , hspec-expectations, QuickCheck
+     }:
+     mkDerivation {
+       pname = "hspec";
+       version = "2.5.6";
+       sha256 = "0nfs2a0ymh8nw5v5v16qlbf3np8j1rv7nw3jwa9ib7mlqrmfp9ly";
+       libraryHaskellDepends = [
+         base hspec-core hspec-discover hspec-expectations QuickCheck
+       ];
+       description = "A Testing Framework for Haskell";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "hspec-attoparsec" = callPackage
     ({ mkDerivation, attoparsec, base, bytestring, hspec
      , hspec-expectations, text
@@ -110388,6 +110807,8 @@ self: {
        pname = "hspec-core";
        version = "2.4.8";
        sha256 = "02zr6n7mqdncvf1braf38zjdplaxrkg11x9k8717k4yg57585ji4";
+       revision = "1";
+       editedCabalFile = "05rfar3kl9nkh421jxx71p6dn3zykj61lj1hjhrj0z3s6m1ihn5q";
        libraryHaskellDepends = [
          ansi-terminal array base call-stack deepseq directory filepath
          hspec-expectations HUnit QuickCheck quickcheck-io random setenv stm
@@ -110415,6 +110836,8 @@ self: {
        pname = "hspec-core";
        version = "2.5.5";
        sha256 = "1vfrqlpn32s9wiykmkxbnrnd5p56yznw20pf8fwzw78ar4wpz55x";
+       revision = "1";
+       editedCabalFile = "1fifkdjhzrvwsx27qcsj0jam66sswjas5vfrzmb75z0xqyg5lpr7";
        libraryHaskellDepends = [
          ansi-terminal array base call-stack clock deepseq directory
          filepath hspec-expectations HUnit QuickCheck quickcheck-io random
@@ -110431,6 +110854,34 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "hspec-core_2_5_6" = callPackage
+    ({ mkDerivation, ansi-terminal, array, base, call-stack, clock
+     , deepseq, directory, filepath, hspec-expectations, hspec-meta
+     , HUnit, process, QuickCheck, quickcheck-io, random, setenv
+     , silently, stm, temporary, tf-random, transformers
+     }:
+     mkDerivation {
+       pname = "hspec-core";
+       version = "2.5.6";
+       sha256 = "0pj53qna5x742vnkdlhid7ginqv61awgw4csgb5ay2rd6br8q63g";
+       libraryHaskellDepends = [
+         ansi-terminal array base call-stack clock deepseq directory
+         filepath hspec-expectations HUnit QuickCheck quickcheck-io random
+         setenv stm tf-random transformers
+       ];
+       testHaskellDepends = [
+         ansi-terminal array base call-stack clock deepseq directory
+         filepath hspec-expectations hspec-meta HUnit process QuickCheck
+         quickcheck-io random setenv silently stm temporary tf-random
+         transformers
+       ];
+       testToolDepends = [ hspec-meta ];
+       testTarget = "--test-option=--skip --test-option='Test.Hspec.Core.Runner.hspecResult runs specs in parallel'";
+       description = "A Testing Framework for Haskell";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "hspec-dirstream" = callPackage
     ({ mkDerivation, base, dirstream, filepath, hspec, hspec-core
      , pipes, pipes-safe, system-filepath, text
@@ -110486,6 +110937,26 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "hspec-discover_2_5_6" = callPackage
+    ({ mkDerivation, base, directory, filepath, hspec-meta, QuickCheck
+     }:
+     mkDerivation {
+       pname = "hspec-discover";
+       version = "2.5.6";
+       sha256 = "0ilaq6l4gikpv6m82dyzfzhdq2d6x3h5jc7zlmw84jx43asqk5lc";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base directory filepath ];
+       executableHaskellDepends = [ base directory filepath ];
+       testHaskellDepends = [
+         base directory filepath hspec-meta QuickCheck
+       ];
+       testToolDepends = [ hspec-meta ];
+       description = "Automatically discover and run Hspec tests";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "hspec-expectations" = callPackage
     ({ mkDerivation, base, call-stack, HUnit, nanospec }:
      mkDerivation {
@@ -110662,6 +111133,18 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "hspec-leancheck" = callPackage
+    ({ mkDerivation, base, hspec, hspec-core, HUnit, leancheck }:
+     mkDerivation {
+       pname = "hspec-leancheck";
+       version = "0.0.2";
+       sha256 = "1780xhwmbvkhca3l6rckbnr92f7i3icarwprdcfnrrdpk4yq9ml8";
+       libraryHaskellDepends = [ base hspec hspec-core HUnit leancheck ];
+       testHaskellDepends = [ base hspec leancheck ];
+       description = "LeanCheck support for the Hspec test framework";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "hspec-megaparsec" = callPackage
     ({ mkDerivation, base, containers, hspec, hspec-expectations
      , megaparsec
@@ -110678,14 +111161,14 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "hspec-megaparsec_1_1_0" = callPackage
+  "hspec-megaparsec_2_0_0" = callPackage
     ({ mkDerivation, base, containers, hspec, hspec-expectations
      , megaparsec
      }:
      mkDerivation {
        pname = "hspec-megaparsec";
-       version = "1.1.0";
-       sha256 = "1929fnpys1j7nja1c3limyl6f259gky9dpf98xyyx0pi663qdmf1";
+       version = "2.0.0";
+       sha256 = "0c4vb0c2y8yar0jjhh24wkkp1g7pbg2wc8h8nw3avfznbil6zyd8";
        libraryHaskellDepends = [
          base containers hspec-expectations megaparsec
        ];
@@ -110720,6 +111203,35 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "hspec-meta_2_5_6" = callPackage
+    ({ mkDerivation, ansi-terminal, array, base, call-stack, clock
+     , deepseq, directory, filepath, hspec-expectations, HUnit
+     , QuickCheck, quickcheck-io, random, setenv, stm, time
+     , transformers
+     }:
+     mkDerivation {
+       pname = "hspec-meta";
+       version = "2.5.6";
+       sha256 = "196dyacvh7liq49ccwd5q0dw6n74igrvhk35zm95i3y8m44ky3a4";
+       revision = "1";
+       editedCabalFile = "0c7dq1vvk09fj6nljwwshgpkszg725hrpgnq9l2aka230sig9vz4";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         ansi-terminal array base call-stack clock deepseq directory
+         filepath hspec-expectations HUnit QuickCheck quickcheck-io random
+         setenv stm time transformers
+       ];
+       executableHaskellDepends = [
+         ansi-terminal array base call-stack clock deepseq directory
+         filepath hspec-expectations HUnit QuickCheck quickcheck-io random
+         setenv stm time transformers
+       ];
+       description = "A version of Hspec which is used to test Hspec itself";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "hspec-monad-control" = callPackage
     ({ mkDerivation, base, hspec-core, monad-control, transformers
      , transformers-base
@@ -111975,8 +112487,8 @@ self: {
      }:
      mkDerivation {
        pname = "htirage";
-       version = "1.20170804";
-       sha256 = "04rjp4gzi2dfzp9vpmwrvlwdj0mwx7s1myvl85jzlf5ikic1898p";
+       version = "2.1.0.20180829";
+       sha256 = "1r0p1xsc7gg9d089z7d60qdfcaxahrzd9z951mr7jrqdi7b2fi3f";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [
          base containers QuickCheck tasty tasty-quickcheck text transformers
@@ -112322,20 +112834,20 @@ self: {
 
   "htoml-megaparsec" = callPackage
     ({ mkDerivation, aeson, base, bytestring, composition-prelude
-     , containers, criterion, deepseq, file-embed, hspec, megaparsec
-     , mtl, tasty, tasty-hspec, tasty-hunit, text, time
-     , unordered-containers, vector
+     , containers, criterion, deepseq, file-embed, megaparsec, mtl
+     , tasty, tasty-hspec, tasty-hunit, text, time, unordered-containers
+     , vector
      }:
      mkDerivation {
        pname = "htoml-megaparsec";
-       version = "2.0.0.2";
-       sha256 = "1z0p35l2rjclxkmbvwg6fcfx50ibfd6v7gia5wbnkbgh3cwyp19d";
+       version = "2.1.0.2";
+       sha256 = "0m5v4f6djwr6sr9sndfal4gwxl0ryq2cg661ka8br7v1ww2d70yl";
        libraryHaskellDepends = [
          base composition-prelude containers deepseq megaparsec mtl text
          time unordered-containers vector
        ];
        testHaskellDepends = [
-         aeson base bytestring containers file-embed hspec megaparsec tasty
+         aeson base bytestring containers file-embed megaparsec tasty
          tasty-hspec tasty-hunit text time unordered-containers vector
        ];
        benchmarkHaskellDepends = [ base criterion text ];
@@ -112457,6 +112969,8 @@ self: {
        pname = "http-api-data";
        version = "0.3.8.1";
        sha256 = "1cq6459b8wz6nvkvpi89dg189n5q2xdq4rdq435hf150555vmskf";
+       revision = "1";
+       editedCabalFile = "1843bapm2rdkl4941rycryircpqpp7mbal7vgmlikf11f8ws7y7x";
        setupHaskellDepends = [ base Cabal cabal-doctest ];
        libraryHaskellDepends = [
          attoparsec attoparsec-iso8601 base bytestring containers hashable
@@ -113037,8 +113551,8 @@ self: {
      }:
      mkDerivation {
        pname = "http-monad";
-       version = "0.1.1.2";
-       sha256 = "0s2ajy2iwi7k5zrs6asp5ncyy06jnphp4ncc130cg2kpnf32yyfz";
+       version = "0.1.1.3";
+       sha256 = "0hch3qjs5axf4grrvgfmd208ar0pviywkrgdmh26564aqrfpr2y1";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -113407,17 +113921,18 @@ self: {
      }) {};
 
   "http2-client-grpc" = callPackage
-    ({ mkDerivation, base, binary, bytestring, data-default-class
-     , http2, http2-client, http2-grpc-types, proto-lens
-     , proto-lens-protoc, text, zlib
+    ({ mkDerivation, async, base, binary, bytestring, case-insensitive
+     , data-default-class, http2, http2-client, http2-grpc-types, lens
+     , proto-lens, proto-lens-protoc, text, tls
      }:
      mkDerivation {
        pname = "http2-client-grpc";
-       version = "0.2.0.0";
-       sha256 = "1bg4p6fy09mbi5r355vvrbmc0al7mcwbr3mx2lpkjkzm9cg53x2z";
+       version = "0.5.0.3";
+       sha256 = "19vzrln75y64gkmzxcasmzxp8qsccg9jpr0z5k9s8w0g5vnfmp9x";
        libraryHaskellDepends = [
-         base binary bytestring data-default-class http2 http2-client
-         http2-grpc-types proto-lens proto-lens-protoc text zlib
+         async base binary bytestring case-insensitive data-default-class
+         http2 http2-client http2-grpc-types lens proto-lens
+         proto-lens-protoc text tls
        ];
        testHaskellDepends = [ base ];
        description = "Implement gRPC-over-HTTP2 clients";
@@ -113426,12 +113941,18 @@ self: {
      }) {};
 
   "http2-grpc-types" = callPackage
-    ({ mkDerivation, base, binary, bytestring, proto-lens, zlib }:
+    ({ mkDerivation, base, binary, bytestring, case-insensitive
+     , proto-lens, zlib
+     }:
      mkDerivation {
        pname = "http2-grpc-types";
-       version = "0.1.0.0";
-       sha256 = "0qj9bffznw8fawalj6hlvx8r0sj9smgks88wdqjq5ran02b6i2dl";
-       libraryHaskellDepends = [ base binary bytestring proto-lens zlib ];
+       version = "0.3.0.0";
+       sha256 = "0r3gfc8alm535hqmyy39hd7nhpp3dmba52l4wf38bj7j3ckggpy5";
+       revision = "1";
+       editedCabalFile = "10gmgp63ll7zv8sbcw2klc0xi4qaiakbgsv46a5gv1pdgwh78w8b";
+       libraryHaskellDepends = [
+         base binary bytestring case-insensitive proto-lens zlib
+       ];
        description = "Types for gRPC over HTTP2 common for client and servers";
        license = stdenv.lib.licenses.bsd3;
      }) {};
@@ -114637,8 +115158,8 @@ self: {
      }:
      mkDerivation {
        pname = "hw-prim";
-       version = "0.6.2.9";
-       sha256 = "1c2ykdxvrg0i1wbjgfc0mank5z7466crqcs5hdyddjc833xhmv2d";
+       version = "0.6.2.14";
+       sha256 = "18x7gxvn8p55j5iva4ag31kmdzcvlq76a56shsnh821xw3aw6ala";
        libraryHaskellDepends = [
          base bytestring mmap semigroups transformers vector
        ];
@@ -114653,15 +115174,15 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "hw-prim_0_6_2_13" = callPackage
+  "hw-prim_0_6_2_15" = callPackage
     ({ mkDerivation, base, bytestring, criterion, directory, exceptions
      , hedgehog, hspec, hw-hspec-hedgehog, mmap, QuickCheck, semigroups
      , transformers, vector
      }:
      mkDerivation {
        pname = "hw-prim";
-       version = "0.6.2.13";
-       sha256 = "0cvg99v9c86fzf76i4z3lilss0qgs1i91v1hsk2n22a79rmhpvnb";
+       version = "0.6.2.15";
+       sha256 = "10ab0fmygcgwm748m6grpfdzfxixsns2mbxhxhj3plmcbkfxxbyc";
        libraryHaskellDepends = [
          base bytestring mmap semigroups transformers vector
        ];
@@ -114795,8 +115316,8 @@ self: {
      }:
      mkDerivation {
        pname = "hw-simd";
-       version = "0.1.1.1";
-       sha256 = "1mcingwc7z6ybsn32c3g66r4j9sfwpm4jkqvwh8cbbbd97lhalmq";
+       version = "0.1.1.2";
+       sha256 = "0jcd6clhcqdmkcvhvf68xldgmx4n1wp333438ypbwk2mwp1q559l";
        libraryHaskellDepends = [
          base bits-extra bytestring deepseq hw-bits hw-prim hw-rankselect
          hw-rankselect-base vector
@@ -116829,7 +117350,7 @@ self: {
        description = "Bindings to the igraph C library";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
-     }) {igraph = null;};
+     }) {inherit (pkgs) igraph;};
 
   "igrf" = callPackage
     ({ mkDerivation, ad, base, polynomial }:
@@ -118355,6 +118876,31 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "influxdb_1_6_0_9" = callPackage
+    ({ mkDerivation, aeson, attoparsec, base, bytestring, Cabal
+     , cabal-doctest, clock, containers, doctest, foldl, http-client
+     , http-types, lens, network, optional-args, QuickCheck, scientific
+     , tagged, template-haskell, text, time, unordered-containers
+     , vector
+     }:
+     mkDerivation {
+       pname = "influxdb";
+       version = "1.6.0.9";
+       sha256 = "0xs2bbqgaj6zmk6wrfm21q516qa2x7qfcvfazkkvyv49vvk9i7is";
+       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 QuickCheck 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
@@ -118998,6 +119544,25 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "integer-logarithms_1_0_2_2" = callPackage
+    ({ mkDerivation, array, base, ghc-prim, integer-gmp, QuickCheck
+     , smallcheck, tasty, tasty-hunit, tasty-quickcheck
+     , tasty-smallcheck
+     }:
+     mkDerivation {
+       pname = "integer-logarithms";
+       version = "1.0.2.2";
+       sha256 = "1hvzbrh8fm1g9fbavdym52pr5n9f2bnfx1parkfizwqlbj6n51ms";
+       libraryHaskellDepends = [ array base ghc-prim integer-gmp ];
+       testHaskellDepends = [
+         base QuickCheck smallcheck tasty tasty-hunit tasty-quickcheck
+         tasty-smallcheck
+       ];
+       description = "Integer logarithms";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "integer-pure" = callPackage
     ({ mkDerivation }:
      mkDerivation {
@@ -119309,8 +119874,8 @@ self: {
     ({ mkDerivation, array, base, containers, QuickCheck, utility-ht }:
      mkDerivation {
        pname = "interpolation";
-       version = "0.1.0.2";
-       sha256 = "1qjh0jx6xx1x80diay8q18basfwkrsm9x0yrqd27ig2mi9drp0qq";
+       version = "0.1.0.3";
+       sha256 = "0j9hdzi59lqq92773f8h17awrm9ghr45k876qc7krq87pgbr95z2";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base utility-ht ];
@@ -119461,6 +120026,29 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "intro_0_5_1_0" = callPackage
+    ({ mkDerivation, base, bytestring, containers, deepseq, dlist
+     , extra, hashable, lens, mtl, QuickCheck, safe, text, transformers
+     , unordered-containers, writer-cps-mtl
+     }:
+     mkDerivation {
+       pname = "intro";
+       version = "0.5.1.0";
+       sha256 = "0gsj5l0vgvpbdw2vwlr9r869jwc08lqbypp24g33dlnd338pjxzs";
+       libraryHaskellDepends = [
+         base bytestring containers deepseq dlist extra hashable mtl safe
+         text transformers unordered-containers writer-cps-mtl
+       ];
+       testHaskellDepends = [
+         base bytestring containers deepseq dlist extra hashable lens mtl
+         QuickCheck safe text transformers unordered-containers
+         writer-cps-mtl
+       ];
+       description = "Safe and minimal prelude";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "intro-prelude" = callPackage
     ({ mkDerivation, intro }:
      mkDerivation {
@@ -121389,8 +121977,8 @@ self: {
      }:
      mkDerivation {
        pname = "jack";
-       version = "0.7.1.3";
-       sha256 = "1n0znnk3q8vic47k1vlv6mdqghrklagcwalvz1arsdfvpy74ig4c";
+       version = "0.7.1.4";
+       sha256 = "018lsa5mgl7vb0hrd4jswa40d6w7alfq082brax8p832zf0v5bj2";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -121534,6 +122122,18 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "japanese-calendar" = callPackage
+    ({ mkDerivation, base, hspec, QuickCheck, time }:
+     mkDerivation {
+       pname = "japanese-calendar";
+       version = "0.1.0.0";
+       sha256 = "0i9699xammqi5q5rjn7cyzv41alm1c9hnq9njhf6mnxf0d08ch2y";
+       libraryHaskellDepends = [ base time ];
+       testHaskellDepends = [ base hspec QuickCheck time ];
+       description = "Data type of Japanese Calendar (Wareki)";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "japanese-holidays" = callPackage
     ({ mkDerivation, base, doctest, hspec, QuickCheck
      , quickcheck-instances, time
@@ -122114,8 +122714,8 @@ self: {
     ({ mkDerivation, base, haskeline, hspec, HUnit }:
      mkDerivation {
        pname = "jord";
-       version = "0.4.0.0";
-       sha256 = "0sa19hr49l71dlvm1wpkw6901zzws12higd4xksk8b81cwrgp8l2";
+       version = "0.4.2.0";
+       sha256 = "0nhkxd8vbygybihm1c20bhn8cfylj94l5jr9f7phkp1667lqxdgc";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base ];
@@ -122942,26 +123542,6 @@ self: {
      }:
      mkDerivation {
        pname = "json-rpc-generic";
-       version = "0.2.1.4";
-       sha256 = "0zibbxc5fqm9mazfdjbi6angyh5rlcccfd260k667w8lcxc6h7kl";
-       libraryHaskellDepends = [
-         aeson aeson-generic-compat base containers dlist scientific text
-         transformers unordered-containers vector
-       ];
-       testHaskellDepends = [
-         aeson base QuickCheck quickcheck-simple text
-       ];
-       description = "Generic encoder and decode for JSON-RPC";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "json-rpc-generic_0_2_1_5" = callPackage
-    ({ mkDerivation, aeson, aeson-generic-compat, base, containers
-     , dlist, QuickCheck, quickcheck-simple, scientific, text
-     , transformers, unordered-containers, vector
-     }:
-     mkDerivation {
-       pname = "json-rpc-generic";
        version = "0.2.1.5";
        sha256 = "1h1spyiq5xix3rbjdk37a28l6l46zygvxafdhaa466hyn2j7p4cz";
        libraryHaskellDepends = [
@@ -122973,7 +123553,6 @@ self: {
        ];
        description = "Generic encoder and decode for JSON-RPC";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "json-rpc-server" = callPackage
@@ -123768,6 +124347,17 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "kafka" = callPackage
+    ({ mkDerivation }:
+     mkDerivation {
+       pname = "kafka";
+       version = "0.0.0.0";
+       sha256 = "07x6dsc4d4f3vksi21fxd1vix9wqsydrl17f2xq8858m2ay0j28j";
+       doHaddock = false;
+       description = "TBA";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "kafka-client" = callPackage
     ({ mkDerivation, base, bytestring, cereal, digest, dlist, hspec
      , hspec-discover, network, QuickCheck, snappy, time, zlib
@@ -124320,21 +124910,26 @@ self: {
      }:
      mkDerivation {
        pname = "katydid";
-       version = "0.3.1.0";
-       sha256 = "0h7w54z9318m85qdd9whlmg3vnkv69gbl8nxc8iz35pw2cbw51r2";
+       version = "0.4.0.2";
+       sha256 = "0gg94j983q6bga015h2wiia2a0miy0s70rsxa46g3k0czpkzgyyg";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          base bytestring containers deepseq either extra hxt ilist json mtl
          parsec regex-tdfa text transformers
        ];
-       executableHaskellDepends = [ base mtl ];
+       executableHaskellDepends = [
+         base bytestring containers deepseq either extra hxt ilist json mtl
+         parsec regex-tdfa text transformers
+       ];
        testHaskellDepends = [
-         base containers directory filepath HUnit hxt ilist json mtl parsec
-         primes tasty tasty-hunit text
+         base bytestring containers deepseq directory either extra filepath
+         HUnit hxt ilist json mtl parsec primes regex-tdfa tasty tasty-hunit
+         text transformers
        ];
        benchmarkHaskellDepends = [
-         base criterion deepseq directory filepath hxt mtl text
+         base bytestring containers criterion deepseq directory either extra
+         filepath hxt ilist json mtl parsec regex-tdfa text transformers
        ];
        description = "A haskell implementation of Katydid";
        license = stdenv.lib.licenses.bsd3;
@@ -124416,16 +125011,17 @@ self: {
      }:
      mkDerivation {
        pname = "kazura-queue";
-       version = "0.1.0.2";
-       sha256 = "0yywvl9pdy78851cmby6z7f9ivinp83qxfxfmfn68qzavx5m9l0f";
-       libraryHaskellDepends = [
-         async atomic-primops base containers primitive
-       ];
+       version = "0.1.0.4";
+       sha256 = "0zi3b6d97ql3ixml238r50lpmp8aghz2mbc5yi94fyp9xvq42m2y";
+       libraryHaskellDepends = [ atomic-primops base primitive ];
        testHaskellDepends = [
-         async base containers deepseq doctest exceptions free hspec
-         hspec-expectations HUnit mtl QuickCheck transformers
+         async atomic-primops base containers deepseq doctest exceptions
+         free hspec hspec-expectations HUnit mtl primitive QuickCheck
+         transformers
+       ];
+       benchmarkHaskellDepends = [
+         atomic-primops base criterion primitive stm
        ];
-       benchmarkHaskellDepends = [ async base containers criterion stm ];
        description = "Fast concurrent queues much inspired by unagi-chan";
        license = stdenv.lib.licenses.bsd3;
      }) {};
@@ -125921,6 +126517,21 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "lambda-calculus-interpreter" = callPackage
+    ({ mkDerivation, base, tasty, tasty-hunit }:
+     mkDerivation {
+       pname = "lambda-calculus-interpreter";
+       version = "0.1.0.3";
+       sha256 = "0ccvqblggpng130l7i857nh7vdr7yfxv8s8r17bd05ckclp21k0f";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base ];
+       executableHaskellDepends = [ base ];
+       testHaskellDepends = [ base tasty tasty-hunit ];
+       description = "Lambda Calculus interpreter";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "lambda-canvas" = callPackage
     ({ mkDerivation, base, GLUT, mtl, OpenGL, time }:
      mkDerivation {
@@ -126680,8 +127291,8 @@ self: {
      }:
      mkDerivation {
        pname = "language-bash";
-       version = "0.7.1";
-       sha256 = "1p8ikx9iq9ssvm8b99hly7pqqw09588xjkgf5397kg5xpv8ga4gp";
+       version = "0.8.0";
+       sha256 = "16lkqy1skc82cyxsh313184dbm31hrsi3w1729ci8lw8dybmz6ax";
        libraryHaskellDepends = [ base parsec pretty transformers ];
        testHaskellDepends = [
          base parsec process QuickCheck tasty tasty-expected-failure
@@ -127022,10 +127633,10 @@ self: {
      }:
      mkDerivation {
        pname = "language-glsl";
-       version = "0.2.1";
-       sha256 = "08hrl9s8640a61npdshjrw5q3j3b2gvms846cf832j0n19mi24h0";
+       version = "0.3.0";
+       sha256 = "0hdg67ainlqpjjghg3qin6fg4p783m0zmjqh4rd5gyizwiplxkp1";
        revision = "1";
-       editedCabalFile = "1dlax6dfjc8ca0p5an3k1f29b078hgb44aj48njf97shvl9hqf5v";
+       editedCabalFile = "10ac9pk4jy75k03j1ns4b5136l4kw8krr2d2nw2fdmpm5jzyghc5";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base parsec prettyclass ];
@@ -127430,8 +128041,8 @@ self: {
      }:
      mkDerivation {
        pname = "language-puppet";
-       version = "1.3.20";
-       sha256 = "074k9lk7wqspbn193qa78f1nabv0s27dza9qh7qzni4v95zz5k4r";
+       version = "1.3.20.1";
+       sha256 = "0gak1v8p6fnrac7br2gvz3wg8mymm82gyv4wbdcp5rkj7ncm19vs";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -127461,22 +128072,22 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "language-puppet_1_3_20_1" = callPackage
+  "language-puppet_1_4_0" = callPackage
     ({ mkDerivation, aeson, ansi-wl-pprint, attoparsec, base
      , base16-bytestring, bytestring, case-insensitive, containers
      , cryptonite, directory, exceptions, filecache, filepath
      , formatting, Glob, hashable, hruby, hslogger, hspec
      , hspec-megaparsec, http-api-data, http-client, lens, lens-aeson
      , megaparsec, memory, mtl, operational, optparse-applicative
-     , parallel-io, parsec, pcre-utils, process, protolude, random
-     , regex-pcre-builtin, scientific, servant, servant-client, split
-     , stm, strict-base-types, temporary, text, time, transformers, unix
-     , unordered-containers, vector, yaml
+     , parallel-io, parsec, parser-combinators, pcre-utils, process
+     , protolude, random, regex-pcre-builtin, scientific, servant
+     , servant-client, split, stm, strict-base-types, temporary, text
+     , time, transformers, unix, unordered-containers, vector, yaml
      }:
      mkDerivation {
        pname = "language-puppet";
-       version = "1.3.20.1";
-       sha256 = "0gak1v8p6fnrac7br2gvz3wg8mymm82gyv4wbdcp5rkj7ncm19vs";
+       version = "1.4.0";
+       sha256 = "169kzd6csar170j0zqzisa82jxs5xfang17ys6aa4m1jx0nbh4mz";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -127485,10 +128096,10 @@ self: {
          case-insensitive containers cryptonite directory exceptions
          filecache filepath formatting hashable hruby hslogger hspec
          http-api-data http-client lens lens-aeson megaparsec memory mtl
-         operational parsec pcre-utils process protolude random
-         regex-pcre-builtin scientific servant servant-client split stm
-         strict-base-types text time transformers unix unordered-containers
-         vector yaml
+         operational parsec parser-combinators pcre-utils process protolude
+         random regex-pcre-builtin scientific servant servant-client split
+         stm strict-base-types text time transformers unix
+         unordered-containers vector yaml
        ];
        executableHaskellDepends = [
          aeson ansi-wl-pprint base bytestring containers Glob hslogger
@@ -127798,8 +128409,8 @@ self: {
      }:
      mkDerivation {
        pname = "lapack-ffi-tools";
-       version = "0.1.0.1";
-       sha256 = "0cddhc6hm72sjkj3i5f38z3bf4m0cy44jnbgv2v5ck5x0h55173w";
+       version = "0.1.1";
+       sha256 = "1y3h69mkbjidl146y1w0symk8rgpir5gb5914ymmg83nsyyl16vk";
        isLibrary = false;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -127912,8 +128523,8 @@ self: {
     ({ mkDerivation, base, containers, utility-ht }:
      mkDerivation {
        pname = "latex";
-       version = "0.1.0.3";
-       sha256 = "1linwqab6z2s91vdxr874vk7rg7gv1ckabsxwmlr80gnhdfgyhmp";
+       version = "0.1.0.4";
+       sha256 = "10m0l0wlrkkl474sdmi7cl6w6kqyqzcp05h7jdacxhzbxyf8nahw";
        libraryHaskellDepends = [ base containers utility-ht ];
        description = "Parse, format and process LaTeX files";
        license = stdenv.lib.licenses.bsd3;
@@ -128529,20 +129140,20 @@ self: {
     ({ mkDerivation, base, template-haskell }:
      mkDerivation {
        pname = "leancheck";
-       version = "0.7.1";
-       sha256 = "184z6n86jg5vmd5f02qzg62hm14snrk5d9knsf72gayyj4fla1kh";
+       version = "0.7.3";
+       sha256 = "0lvyf82qsiprvhk40870c6pz13z9fv2qml1cvvw3ryc7y8xh89v9";
        libraryHaskellDepends = [ base template-haskell ];
        testHaskellDepends = [ base ];
-       description = "Cholesterol-free property-based testing";
+       description = "Enumerative property-based testing";
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "leancheck_0_7_3" = callPackage
+  "leancheck_0_7_4" = callPackage
     ({ mkDerivation, base, template-haskell }:
      mkDerivation {
        pname = "leancheck";
-       version = "0.7.3";
-       sha256 = "0lvyf82qsiprvhk40870c6pz13z9fv2qml1cvvw3ryc7y8xh89v9";
+       version = "0.7.4";
+       sha256 = "1lbr0b3k4fk0xlmqh5v4cidayzi9ijkr1i6ykzg2gd0xmjl9b4bq";
        libraryHaskellDepends = [ base template-haskell ];
        testHaskellDepends = [ base ];
        description = "Enumerative property-based testing";
@@ -128616,6 +129227,27 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "learn-physics_0_6_3" = callPackage
+    ({ mkDerivation, base, gloss, gnuplot, hmatrix, not-gloss
+     , spatial-math, vector-space
+     }:
+     mkDerivation {
+       pname = "learn-physics";
+       version = "0.6.3";
+       sha256 = "0nhc53l963fsviw3yqz7yxwbjwxsrp8s4jckffbg6hl8npakhirh";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base gloss gnuplot hmatrix not-gloss spatial-math vector-space
+       ];
+       executableHaskellDepends = [
+         base gloss gnuplot not-gloss spatial-math
+       ];
+       description = "Haskell code for learning physics";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "learn-physics-examples" = callPackage
     ({ mkDerivation, base, gloss, gnuplot, learn-physics, not-gloss
      , spatial-math
@@ -129063,11 +129695,25 @@ self: {
        pname = "lens-labels";
        version = "0.2.0.1";
        sha256 = "1nn0qp0xl65wc5axy68jlmif1k97af8v5r09sf02fw3iww7ym7wj";
+       revision = "1";
+       editedCabalFile = "0iyh7msip83dzj9gj5f18zchvjinhx40dmdb52vza0x1763qkilv";
        libraryHaskellDepends = [ base ghc-prim profunctors tagged ];
        description = "Integration of lenses with OverloadedLabels";
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "lens-labels_0_3_0_0" = callPackage
+    ({ mkDerivation, base, ghc-prim, profunctors, tagged }:
+     mkDerivation {
+       pname = "lens-labels";
+       version = "0.3.0.0";
+       sha256 = "1kpbn9lsaxvw86w3r121rymrxcyihci7njpcw3f2663pb01v39rn";
+       libraryHaskellDepends = [ base ghc-prim profunctors tagged ];
+       description = "Integration of lenses with OverloadedLabels";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "lens-misc" = callPackage
     ({ mkDerivation, base, lens, tagged, template-haskell }:
      mkDerivation {
@@ -129114,8 +129760,8 @@ self: {
        pname = "lens-properties";
        version = "4.11.1";
        sha256 = "1caciyn75na3f25q9qxjl7ibjam22xlhl5k2pqfiak10lxsmnz2g";
-       revision = "1";
-       editedCabalFile = "1b9db7dbfq46q63y6w1471nffj77rb363rk4b1l3l23g15cq6a5i";
+       revision = "2";
+       editedCabalFile = "1b14fcncz2yby0d4jhx2h0ma6nx0fd1z7hrg1va4h7zn06m99482";
        libraryHaskellDepends = [ base lens QuickCheck transformers ];
        description = "QuickCheck properties for lens";
        license = stdenv.lib.licenses.bsd3;
@@ -129574,8 +130220,8 @@ self: {
      }:
      mkDerivation {
        pname = "lhs2tex";
-       version = "1.20";
-       sha256 = "0fmhvxi1a839h3i6s2aqckh64bc0qyp4hbzc3wp85zr5gmzix1df";
+       version = "1.21";
+       sha256 = "17yfqvsrd2p39fxfmzfvnliwbmkfx5kxmdk0fw5rx9v17acjmnc7";
        isLibrary = false;
        isExecutable = true;
        setupHaskellDepends = [
@@ -130928,22 +131574,22 @@ self: {
   "linear-code" = callPackage
     ({ mkDerivation, base, containers, data-default
      , ghc-typelits-knownnat, ghc-typelits-natnormalise, HaskellForMaths
-     , matrix, QuickCheck, random, random-shuffle, smallcheck, tasty
-     , tasty-hunit, tasty-quickcheck, tasty-smallcheck
+     , matrix-static, QuickCheck, random, random-shuffle, smallcheck
+     , tasty, tasty-hunit, tasty-quickcheck, tasty-smallcheck
      }:
      mkDerivation {
        pname = "linear-code";
-       version = "0.1.1";
-       sha256 = "0dyz7j6y6ayxd2367pkrln78zr2hx1bygswsy840hjf4xhm30a1b";
+       version = "0.2.0";
+       sha256 = "14d4gmpqx9x9acaldml7hf64fbpdrncn5akgid1scnqv1jzc9197";
        libraryHaskellDepends = [
          base containers data-default ghc-typelits-knownnat
-         ghc-typelits-natnormalise HaskellForMaths matrix random
+         ghc-typelits-natnormalise HaskellForMaths matrix-static random
          random-shuffle
        ];
        testHaskellDepends = [
          base containers data-default ghc-typelits-knownnat
-         ghc-typelits-natnormalise HaskellForMaths matrix QuickCheck random
-         random-shuffle smallcheck tasty tasty-hunit tasty-quickcheck
+         ghc-typelits-natnormalise HaskellForMaths matrix-static QuickCheck
+         random random-shuffle smallcheck tasty tasty-hunit tasty-quickcheck
          tasty-smallcheck
        ];
        description = "A simple library for linear codes (coding theory, error correction)";
@@ -131910,10 +132556,10 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "list-zip-def";
-       version = "0.1.0.1";
-       sha256 = "07fasgp9vagsqaaikrn38hxf7dbpfrjcrp97dn72pss7adz7yi6h";
+       version = "0.1.0.2";
+       sha256 = "15123r7a52qb6dcxy1bxid8llykx439srqripmvji3rizwlqaa89";
        libraryHaskellDepends = [ base ];
-       description = "Provides zips where the combining doesn't stop premature, but instead uses default values";
+       description = "Provides zips with default values";
        license = stdenv.lib.licenses.publicDomain;
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
@@ -131971,26 +132617,35 @@ self: {
      }) {};
 
   "liszt" = callPackage
-    ({ mkDerivation, base, binary, bytestring, containers, deepseq
-     , directory, exceptions, filepath, fsnotify, network, reflection
-     , scientific, sendfile, stm, stm-delay, text, transformers
-     , unordered-containers, winery
+    ({ mkDerivation, base, binary, bytestring, cereal, containers, cpu
+     , deepseq, directory, exceptions, filepath, fsnotify, gauge
+     , network, reflection, scientific, sendfile, stm, stm-delay, text
+     , transformers, unordered-containers, vector, vector-th-unbox
+     , winery
      }:
      mkDerivation {
        pname = "liszt";
-       version = "0.1";
-       sha256 = "0ffqpplasb6d0kbj6n50811a5qawaghv9s9vfszm6z2dw27zkjwd";
+       version = "0.2";
+       sha256 = "1dy7c1l64ylgyxsi5ivxdc4kikaja4yhakx2z5i1sdk7kc7gkr51";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         base binary bytestring containers deepseq directory exceptions
-         filepath fsnotify network reflection scientific sendfile stm
-         stm-delay text transformers unordered-containers winery
+         base binary bytestring cereal containers cpu deepseq directory
+         exceptions filepath fsnotify network reflection scientific sendfile
+         stm stm-delay text transformers unordered-containers vector
+         vector-th-unbox winery
        ];
        executableHaskellDepends = [
-         base binary bytestring containers deepseq directory exceptions
-         filepath fsnotify network reflection scientific sendfile stm
-         stm-delay text transformers unordered-containers winery
+         base binary bytestring cereal containers cpu deepseq directory
+         exceptions filepath fsnotify network reflection scientific sendfile
+         stm stm-delay text transformers unordered-containers vector
+         vector-th-unbox winery
+       ];
+       benchmarkHaskellDepends = [
+         base binary bytestring cereal containers cpu deepseq directory
+         exceptions filepath fsnotify gauge network reflection scientific
+         sendfile stm stm-delay text transformers unordered-containers
+         vector vector-th-unbox winery
        ];
        description = "Append only key-list database";
        license = stdenv.lib.licenses.bsd3;
@@ -132275,8 +132930,8 @@ self: {
      }:
      mkDerivation {
        pname = "llvm-ffi-tools";
-       version = "0.0";
-       sha256 = "18lfa6fzpcxp6j95wbi5axm58ipzwn98rx3d1c54zdkjhzrl507x";
+       version = "0.0.0.1";
+       sha256 = "0nicgcdlywb8w5fr7hi5hgayv9phwslp5s47p2c30kavj7c3f3zk";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -132509,8 +133164,8 @@ self: {
      }:
      mkDerivation {
        pname = "llvm-tf";
-       version = "3.1.1";
-       sha256 = "0mhlz1jv81rl353qp0vbm39qz15yms9n0xlb0s27jj88yf66zks1";
+       version = "3.1.1.1";
+       sha256 = "1rqszg06r8md7cgw2zgf30yvri4isndj608r9l8grqfnyi4lfjay";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -133433,6 +134088,18 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "loglevel" = callPackage
+    ({ mkDerivation, base, deepseq, text }:
+     mkDerivation {
+       pname = "loglevel";
+       version = "0.1.0.0";
+       sha256 = "12hck2fb7xdk905428yd1a8dnm1hw1apkhw6fr7zqyxzhfqqm1yz";
+       libraryHaskellDepends = [ base deepseq text ];
+       testHaskellDepends = [ base text ];
+       description = "Log Level Datatype";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "logplex-parse" = callPackage
     ({ mkDerivation, base, hspec, iso8601-time, parsec, text, time }:
      mkDerivation {
@@ -134037,8 +134704,8 @@ self: {
        pname = "lrucaching";
        version = "0.3.3";
        sha256 = "192a2zap1bmxa2y48n48rmngf18fr8k0az4a230hziv3g795yzma";
-       revision = "3";
-       editedCabalFile = "0y7j6m0n1xi40c7dmabi9lk6mjic9h49xx60rq9xc4xap90hjfqb";
+       revision = "4";
+       editedCabalFile = "11zfnngp3blx8c3sgy5cva1g9bp69wqz7ys23gdm905i7sjjs6a9";
        libraryHaskellDepends = [
          base base-compat deepseq hashable psqueues vector
        ];
@@ -134095,8 +134762,8 @@ self: {
      }:
      mkDerivation {
        pname = "lsp-test";
-       version = "0.2.1.0";
-       sha256 = "1nd3nn5lyn9cwviijzfhqybj38zg10nf7ypb76ifaax91vj2hrkw";
+       version = "0.4.0.0";
+       sha256 = "0kiddzb7lwwdf96jz4ghvjnwr2hf9jiv8vjjlxwm76k3ab4wx09c";
        libraryHaskellDepends = [
          aeson aeson-pretty ansi-terminal base bytestring conduit
          conduit-parse containers data-default Diff directory filepath
@@ -135136,8 +135803,8 @@ self: {
      }:
      mkDerivation {
        pname = "madlang";
-       version = "4.0.2.12";
-       sha256 = "0g3nciqjfqkhi6j5kcyp4zwrzbik3v9qrj0jpl374g4r1sw3piq9";
+       version = "4.0.2.13";
+       sha256 = "10a7q64dm9vw2a3qzvixlg0632l5h8j6xj9ga3w430fxch618f26";
        isLibrary = true;
        isExecutable = true;
        setupHaskellDepends = [ base Cabal cli-setup ];
@@ -135998,18 +136665,18 @@ self: {
   "mandrill" = callPackage
     ({ mkDerivation, aeson, base, base64-bytestring, blaze-html
      , bytestring, containers, email-validate, http-client
-     , http-client-tls, http-types, lens, mtl, old-locale, QuickCheck
-     , raw-strings-qq, tasty, tasty-hunit, tasty-quickcheck, text, time
-     , unordered-containers
+     , http-client-tls, http-types, microlens-th, mtl, old-locale
+     , QuickCheck, raw-strings-qq, tasty, tasty-hunit, tasty-quickcheck
+     , text, time, unordered-containers
      }:
      mkDerivation {
        pname = "mandrill";
-       version = "0.5.3.4";
-       sha256 = "0gaz5drb8wvlr12ynwag4rcgmsyzd713j0qgpv9ydy3jlk65nrf7";
+       version = "0.5.3.5";
+       sha256 = "0yh7r3wrzpzm3iv0zvs6nzf36hwv0y7xlsz6cy3dlnyrr5jbsb1i";
        libraryHaskellDepends = [
          aeson base base64-bytestring blaze-html bytestring containers
-         email-validate http-client http-client-tls http-types lens mtl
-         old-locale QuickCheck text time unordered-containers
+         email-validate http-client http-client-tls http-types microlens-th
+         mtl old-locale QuickCheck text time unordered-containers
        ];
        testHaskellDepends = [
          aeson base bytestring QuickCheck raw-strings-qq tasty tasty-hunit
@@ -136662,6 +137329,28 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "massiv_0_2_1_0" = callPackage
+    ({ mkDerivation, base, bytestring, data-default, data-default-class
+     , deepseq, ghc-prim, hspec, primitive, QuickCheck, safe-exceptions
+     , vector
+     }:
+     mkDerivation {
+       pname = "massiv";
+       version = "0.2.1.0";
+       sha256 = "0x5qf5hp6ncrjc28xcjd2v4w33wpyy69whmgvvp163y0q3v1n3q7";
+       libraryHaskellDepends = [
+         base bytestring data-default-class deepseq ghc-prim primitive
+         vector
+       ];
+       testHaskellDepends = [
+         base bytestring data-default deepseq hspec QuickCheck
+         safe-exceptions 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
@@ -136765,15 +137454,15 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "math-functions_0_3_0_1" = callPackage
+  "math-functions_0_3_0_2" = callPackage
     ({ mkDerivation, base, data-default-class, deepseq, erf, HUnit
      , primitive, QuickCheck, test-framework, test-framework-hunit
      , test-framework-quickcheck2, vector, vector-th-unbox
      }:
      mkDerivation {
        pname = "math-functions";
-       version = "0.3.0.1";
-       sha256 = "1nrslskbgsy9yx0kzc5a0jdahch218qd16343j001pdxkygq21b2";
+       version = "0.3.0.2";
+       sha256 = "094kf3261b3m07r6gyf63s0pnhw5v0z1q5pzfskl4y8fdjvsp4kb";
        libraryHaskellDepends = [
          base data-default-class deepseq primitive vector vector-th-unbox
        ];
@@ -136783,7 +137472,7 @@ self: {
          vector vector-th-unbox
        ];
        description = "Collection of tools for numeric computations";
-       license = stdenv.lib.licenses.bsd3;
+       license = stdenv.lib.licenses.bsd2;
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
@@ -137032,6 +137721,27 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "matrix-static" = callPackage
+    ({ mkDerivation, base, deepseq, ghc-typelits-knownnat
+     , ghc-typelits-natnormalise, matrix, semigroups, tasty, tasty-hunit
+     , vector
+     }:
+     mkDerivation {
+       pname = "matrix-static";
+       version = "0.1";
+       sha256 = "0l4p0ahlpgf39wjwrvr6ibxpj5b6kmyn2li6yjbddi0af137ii4q";
+       libraryHaskellDepends = [
+         base deepseq ghc-typelits-knownnat ghc-typelits-natnormalise matrix
+         semigroups vector
+       ];
+       testHaskellDepends = [
+         base deepseq ghc-typelits-knownnat ghc-typelits-natnormalise matrix
+         semigroups tasty tasty-hunit vector
+       ];
+       description = "Wrapper around matrix that adds matrix sizes to the type-level";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "matsuri" = callPackage
     ({ mkDerivation, base, ConfigFile, containers, directory, MissingH
      , mtl, network, old-locale, split, time, vty, vty-ui, XMPP
@@ -137885,8 +138595,8 @@ self: {
        pname = "megaparsec";
        version = "6.5.0";
        sha256 = "12iggy7qpf8x93jm64zf0g215xwy779bqyfyjk2bhmxqqr1yzgdy";
-       revision = "3";
-       editedCabalFile = "137ap53bgvnc0bdhkyv84290i3fzngryijsv33h7fb0q9k6dmb6h";
+       revision = "4";
+       editedCabalFile = "0ij3asi5vwlhbgwsy6nhli9a0qb7926mg809fsgyl1rnhs9fvpx1";
        libraryHaskellDepends = [
          base bytestring case-insensitive containers deepseq mtl
          parser-combinators scientific text transformers
@@ -137901,6 +138611,33 @@ self: {
        license = stdenv.lib.licenses.bsd2;
      }) {};
 
+  "megaparsec_7_0_0" = callPackage
+    ({ mkDerivation, base, bytestring, case-insensitive, containers
+     , criterion, deepseq, hspec, hspec-expectations, mtl
+     , parser-combinators, QuickCheck, scientific, text, transformers
+     , weigh
+     }:
+     mkDerivation {
+       pname = "megaparsec";
+       version = "7.0.0";
+       sha256 = "101kri8w4wf30xs9fnp938il13hxhy6gnnl4m1f0ws4d8q6qgmmz";
+       libraryHaskellDepends = [
+         base bytestring case-insensitive containers deepseq mtl
+         parser-combinators scientific text transformers
+       ];
+       testHaskellDepends = [
+         base bytestring case-insensitive containers hspec
+         hspec-expectations mtl parser-combinators QuickCheck scientific
+         text transformers
+       ];
+       benchmarkHaskellDepends = [
+         base containers criterion deepseq text weigh
+       ];
+       description = "Monadic parser combinators";
+       license = stdenv.lib.licenses.bsd2;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "meldable-heap" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -138922,21 +139659,6 @@ self: {
      }:
      mkDerivation {
        pname = "microlens-ghc";
-       version = "0.4.9";
-       sha256 = "0wdwra9s7gllw0i7sf7d371h6d5qwlk6jrvhdm8hafj4fxagafma";
-       libraryHaskellDepends = [
-         array base bytestring containers microlens transformers
-       ];
-       description = "microlens + array, bytestring, containers, transformers";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "microlens-ghc_0_4_9_1" = callPackage
-    ({ mkDerivation, array, base, bytestring, containers, microlens
-     , transformers
-     }:
-     mkDerivation {
-       pname = "microlens-ghc";
        version = "0.4.9.1";
        sha256 = "03iwgg8zww9irv59l70c8yy7vzxir1zf66y12210xk91k5hq6jrj";
        libraryHaskellDepends = [
@@ -138944,7 +139666,6 @@ self: {
        ];
        description = "microlens + array, bytestring, containers, transformers";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "microlens-mtl" = callPackage
@@ -138984,23 +139705,6 @@ self: {
      }:
      mkDerivation {
        pname = "microlens-th";
-       version = "0.4.2.1";
-       sha256 = "0hpwwk50a826s87ad0k6liw40qp6av0hmdhnsdfhhk5mka710mzc";
-       libraryHaskellDepends = [
-         base containers microlens template-haskell th-abstraction
-         transformers
-       ];
-       testHaskellDepends = [ base microlens ];
-       description = "Automatic generation of record lenses for microlens";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "microlens-th_0_4_2_2" = callPackage
-    ({ mkDerivation, base, containers, microlens, template-haskell
-     , th-abstraction, transformers
-     }:
-     mkDerivation {
-       pname = "microlens-th";
        version = "0.4.2.2";
        sha256 = "02nj7lnl61yffi3c6wn341arxhld5r0vj6nzcb5zmqjhnqsv8c05";
        libraryHaskellDepends = [
@@ -139010,7 +139714,6 @@ self: {
        testHaskellDepends = [ base microlens ];
        description = "Automatic generation of record lenses for microlens";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "micrologger" = callPackage
@@ -139055,18 +139758,20 @@ self: {
        pname = "microspec";
        version = "0.1.0.0";
        sha256 = "0hykarba8ccwkslh8cfsxbriw043f8pa4jyhr3hqc5yqfijibr71";
+       revision = "1";
+       editedCabalFile = "0cnfj3v6fzck57bgrsnmgz8a9azvz04pm3hv17fg12xzchmp07cq";
        libraryHaskellDepends = [ base QuickCheck ];
        description = "Tiny QuickCheck test library with minimal dependencies";
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "microspec_0_2_0_0" = callPackage
-    ({ mkDerivation, base, QuickCheck }:
+  "microspec_0_2_0_1" = callPackage
+    ({ mkDerivation, base, QuickCheck, time }:
      mkDerivation {
        pname = "microspec";
-       version = "0.2.0.0";
-       sha256 = "0nz9achmckza9n6hx7ix7yyh9fhhfjnbszzjssz4mnghcmm8l0wv";
-       libraryHaskellDepends = [ base QuickCheck ];
+       version = "0.2.0.1";
+       sha256 = "1ygkxsj7rm42f245qip8893lm189immmd5ajimp5d1pkzfkw4dnp";
+       libraryHaskellDepends = [ base QuickCheck time ];
        description = "Tiny QuickCheck test library with minimal dependencies";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -139192,8 +139897,8 @@ self: {
      }:
      mkDerivation {
        pname = "midi-music-box";
-       version = "0.0.0.4";
-       sha256 = "0l8nv3bfbncjbh80dav7qps5aqd20g88sx00xhqr6j9m66znfg1p";
+       version = "0.0.0.5";
+       sha256 = "1zgskam31akqi58wvjxqfgag937fczskyvzanivvxd7p6gvj5l0g";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -139957,6 +140662,26 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "miso_0_21_2_0" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, containers, http-api-data
+     , http-types, lucid, network-uri, servant, servant-lucid, text
+     , transformers, vector
+     }:
+     mkDerivation {
+       pname = "miso";
+       version = "0.21.2.0";
+       sha256 = "061bjvxcs6psh8hj947p4jm9ki9ngrwvn23szvk8i3x4xd87jbfm";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson base bytestring containers http-api-data http-types lucid
+         network-uri servant servant-lucid text transformers vector
+       ];
+       description = "A tasty Haskell front-end framework";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "missing-foreign" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -140400,6 +141125,33 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "modern-uri_0_3_0_0" = callPackage
+    ({ mkDerivation, base, bytestring, containers, contravariant
+     , criterion, deepseq, exceptions, hspec, hspec-discover
+     , hspec-megaparsec, megaparsec, mtl, profunctors, QuickCheck
+     , reflection, tagged, template-haskell, text, weigh
+     }:
+     mkDerivation {
+       pname = "modern-uri";
+       version = "0.3.0.0";
+       sha256 = "059p1lzfk7bwshlgy0sgms651003992jgxv2lr7r714sy5brfwb4";
+       libraryHaskellDepends = [
+         base bytestring containers contravariant deepseq exceptions
+         megaparsec mtl profunctors QuickCheck reflection tagged
+         template-haskell text
+       ];
+       testHaskellDepends = [
+         base bytestring hspec hspec-megaparsec megaparsec QuickCheck text
+       ];
+       testToolDepends = [ hspec-discover ];
+       benchmarkHaskellDepends = [
+         base bytestring criterion deepseq megaparsec text weigh
+       ];
+       description = "Modern library for working with URIs";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "modify-fasta" = callPackage
     ({ mkDerivation, base, containers, fasta, mtl, optparse-applicative
      , pipes, pipes-text, regex-tdfa, regex-tdfa-text, semigroups, split
@@ -140602,8 +141354,8 @@ self: {
      }:
      mkDerivation {
        pname = "mohws";
-       version = "0.2.1.5";
-       sha256 = "1xkkkb1ili45icvlmz2r5i42qf1fib01ywqywgq4n53cyx1ncqa9";
+       version = "0.2.1.6";
+       sha256 = "0rnb6nq99bav0z5dxzc4xkb2ai6ifm5v2ijd76sgzbs2032v6wqs";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -141221,15 +141973,15 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "monad-memo_0_5_0" = callPackage
+  "monad-memo_0_5_1" = callPackage
     ({ mkDerivation, array, base, containers, criterion, primitive
      , QuickCheck, random, test-framework, test-framework-quickcheck2
      , transformers, vector
      }:
      mkDerivation {
        pname = "monad-memo";
-       version = "0.5.0";
-       sha256 = "1ax1myhgnpy7gyb7pxn98424mda317zvji47bdwj2h58rpldqhjm";
+       version = "0.5.1";
+       sha256 = "1zsvp0g2kzjf5zkv1js65jfc1p3yrkr95csp2ljpqx857qy4lnn6";
        libraryHaskellDepends = [
          array base containers primitive transformers vector
        ];
@@ -141966,6 +142718,8 @@ self: {
        pname = "monadplus";
        version = "1.4.2";
        sha256 = "15b5320wdpmdp5slpphnc1x4rhjch3igw245dp2jxbqyvchdavin";
+       revision = "1";
+       editedCabalFile = "11v5zdsb9mp1rxvgcrxcr2xnc610xi16krwa9r4i5d6njmphfbdp";
        libraryHaskellDepends = [ base ];
        description = "Haskell98 partial maps and filters over MonadPlus";
        license = stdenv.lib.licenses.bsd3;
@@ -142053,8 +142807,8 @@ self: {
     ({ mkDerivation, base, bindings-monetdb-mapi }:
      mkDerivation {
        pname = "monetdb-mapi";
-       version = "0.1.0.0";
-       sha256 = "0v7709zvx2q07zymdk2hi4nwaby4a5i02qgs97l5f9s4nwwb5qmr";
+       version = "0.1.0.1";
+       sha256 = "1r035w349js424x0864xghvs79v4wsf9br4rwqpfqkyz2hxsqhx0";
        libraryHaskellDepends = [ base bindings-monetdb-mapi ];
        description = "Mid-level bindings for the MonetDB API (mapi)";
        license = stdenv.lib.licenses.bsd3;
@@ -143613,8 +144367,8 @@ self: {
     ({ mkDerivation, base, doctest }:
      mkDerivation {
        pname = "multi-instance";
-       version = "0.0.0.2";
-       sha256 = "11r7wy143zy9drjrz7l57bdsbaj2fd3sjwbiz7pcmcdr1bxxga63";
+       version = "0.0.0.3";
+       sha256 = "197jrq0r7va89z2hzhna0v4xmrranq1lgv4ncmbzlzliis6j7m22";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [ base doctest ];
        description = "Typeclasses augmented with a phantom type parameter";
@@ -144627,8 +145381,8 @@ self: {
     ({ mkDerivation, base, safe-exceptions }:
      mkDerivation {
        pname = "mvar-lock";
-       version = "0.1.0.1";
-       sha256 = "0kdf7811kxwfj032d8g18za0nn9jlssh7dpvvr8kzjk01b77804r";
+       version = "0.1.0.2";
+       sha256 = "09diqzb4vp7bcg6v16fgjb70mi68i8srnyxf6qga58va6avbc4wg";
        libraryHaskellDepends = [ base safe-exceptions ];
        description = "A trivial lock based on MVar";
        license = stdenv.lib.licenses.asl20;
@@ -146841,16 +147595,14 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "network_2_7_0_2" = callPackage
+  "network_2_8_0_0" = callPackage
     ({ mkDerivation, base, bytestring, directory, doctest, hspec, HUnit
      , unix
      }:
      mkDerivation {
        pname = "network";
-       version = "2.7.0.2";
-       sha256 = "1fsdcwz7w1g1gznr62a6za8jc2g8cq5asrcq2vc14x9plf31s2vf";
-       revision = "2";
-       editedCabalFile = "04h5wq6116brd2r3182g65crrbidn43wi43qz1n99gl042ydgf3w";
+       version = "2.8.0.0";
+       sha256 = "00skcish0xmm67ax999nv1nll9rm3gqmn92099iczd73nxl55468";
        libraryHaskellDepends = [ base bytestring unix ];
        testHaskellDepends = [
          base bytestring directory doctest hspec HUnit
@@ -146938,8 +147690,8 @@ self: {
      }:
      mkDerivation {
        pname = "network-api-support";
-       version = "0.3.3";
-       sha256 = "1dp9fp907sc1r0mshby18vlbkji9bggikbycjbdlb6mzg7mjmiav";
+       version = "0.3.4";
+       sha256 = "0zzb5jxb6zxwq88qwldzy7qy5b4arz4vnn82ilcz2214w21bhzlp";
        libraryHaskellDepends = [
          aeson attoparsec base bytestring case-insensitive http-client
          http-client-tls http-types text time tls
@@ -148091,6 +148843,27 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {nfc = null;};
 
+  "ngram" = callPackage
+    ({ mkDerivation, base, bytestring, cereal, cereal-text, containers
+     , optparse-generic, text, zlib
+     }:
+     mkDerivation {
+       pname = "ngram";
+       version = "0.1.0.0";
+       sha256 = "0qk5wgkr69jd9gdy524nsx6r9ss328ynq65k6wn5k7pjkmnfym26";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base cereal cereal-text containers text
+       ];
+       executableHaskellDepends = [
+         base bytestring cereal cereal-text containers optparse-generic text
+         zlib
+       ];
+       description = "Ngram models for compressing and classifying text";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "ngrams-loader" = callPackage
     ({ mkDerivation, attoparsec, base, machines, mtl, parseargs
      , resourcet, sqlite-simple, text
@@ -148864,12 +149637,12 @@ self: {
      }) {};
 
   "non-empty-containers" = callPackage
-    ({ mkDerivation, base, containers }:
+    ({ mkDerivation, base, containers, semigroupoids }:
      mkDerivation {
        pname = "non-empty-containers";
-       version = "0.1.1.0";
-       sha256 = "1m4js4z27x43bkccbaqnlrmknfdiwqgdvvkfad7r4kgwdmil3mnc";
-       libraryHaskellDepends = [ base containers ];
+       version = "0.1.2.0";
+       sha256 = "0lqyz0xn34byx8f71klj21ficjpy6c049x3fngs7x765vam2dmii";
+       libraryHaskellDepends = [ base containers semigroupoids ];
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
@@ -149231,6 +150004,18 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "nowdoc" = callPackage
+    ({ mkDerivation, base, bytestring, template-haskell }:
+     mkDerivation {
+       pname = "nowdoc";
+       version = "0.1.1.0";
+       sha256 = "0s2j7z9zyb3y3k5hviqjnb3l2z9mvxll5m9nsvq566hn5h5lkzjg";
+       libraryHaskellDepends = [ base bytestring template-haskell ];
+       testHaskellDepends = [ base bytestring template-haskell ];
+       description = "Here document without variable expansion like PHP Nowdoc";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "np-extras" = callPackage
     ({ mkDerivation, base, containers, numeric-prelude, primes }:
      mkDerivation {
@@ -149281,14 +150066,15 @@ self: {
 
   "nqe" = callPackage
     ({ mkDerivation, base, bytestring, conduit, conduit-extra
-     , containers, exceptions, hspec, stm, stm-conduit, text, unliftio
+     , containers, exceptions, hspec, mtl, stm, stm-conduit, text
+     , unliftio
      }:
      mkDerivation {
        pname = "nqe";
-       version = "0.3.0.0";
-       sha256 = "1ggss61zym8ramf3yavmsgn013nlcv40kp6r2v1ax7ccdqyzjh98";
+       version = "0.4.1";
+       sha256 = "1x6ila806i1b1smiby47c1sfj3m09xlxcqpg3ywdibh31znbhhqj";
        libraryHaskellDepends = [
-         base bytestring conduit conduit-extra containers stm unliftio
+         base conduit containers mtl stm unliftio
        ];
        testHaskellDepends = [
          base bytestring conduit conduit-extra exceptions hspec stm
@@ -149406,6 +150192,17 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "ntype" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "ntype";
+       version = "0.1.0.0";
+       sha256 = "0raz6azyj7a3fygpmylhz38b75zy57xdrginbhj2d6vwzxhkmscd";
+       libraryHaskellDepends = [ base ];
+       description = "N-ary sum/product types";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "null-canvas" = callPackage
     ({ mkDerivation, aeson, base, containers, filepath, scotty, split
      , stm, text, transformers, wai-extra, warp
@@ -149632,8 +150429,8 @@ self: {
      }:
      mkDerivation {
        pname = "numeric-prelude";
-       version = "0.4.3";
-       sha256 = "0bc937gblm8rz68fr3q2ms19hqjwi20wkmn1k1c0b675c2kgky5q";
+       version = "0.4.3.1";
+       sha256 = "0531yjw1rzbv3snv1lc955350frgf8526slsxbx3ias71krbdr69";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -150334,8 +151131,8 @@ self: {
      }:
      mkDerivation {
        pname = "ochintin-daicho";
-       version = "0.3.1.1";
-       sha256 = "06xdr5763xipzpl83190p8ha1rm9akqa49dh0588ibbhk2zbk0ln";
+       version = "0.3.4.2";
+       sha256 = "0k7k4rj3356n9d8waw5sjiq97w9wbrhq3bwqr0hr3zh2h5imy5sy";
        libraryHaskellDepends = [
          base bookkeeping mono-traversable text transaction
        ];
@@ -151395,23 +152192,6 @@ self: {
      }:
      mkDerivation {
        pname = "openexr-write";
-       version = "0.1.0.1";
-       sha256 = "0f45jgj08fmrj30f167xldapm5lqma4yy95y9mjx6appb7cg5qvd";
-       libraryHaskellDepends = [
-         base binary bytestring data-binary-ieee754 deepseq split vector
-         vector-split zlib
-       ];
-       testHaskellDepends = [ base bytestring directory hspec vector ];
-       description = "Library for writing images in OpenEXR HDR file format";
-       license = stdenv.lib.licenses.gpl3;
-     }) {};
-
-  "openexr-write_0_1_0_2" = callPackage
-    ({ mkDerivation, base, binary, bytestring, data-binary-ieee754
-     , deepseq, directory, hspec, split, vector, vector-split, zlib
-     }:
-     mkDerivation {
-       pname = "openexr-write";
        version = "0.1.0.2";
        sha256 = "1qh5kb3gj746y6s2jggccjgp8qyzdydz016z62854vg39sk5a1ib";
        libraryHaskellDepends = [
@@ -151421,7 +152201,6 @@ self: {
        testHaskellDepends = [ base bytestring directory hspec vector ];
        description = "Library for writing images in OpenEXR HDR file format";
        license = stdenv.lib.licenses.publicDomain;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "openflow" = callPackage
@@ -151901,14 +152680,16 @@ self: {
   "opentok" = callPackage
     ({ mkDerivation, aeson, aeson-casing, aeson-compat, base
      , base-compat, base64-string, bytestring, containers, convertible
-     , either, hscolour, http-client, http-client-tls, http-conduit
-     , http-types, iproute, jose, lens, monad-time, SHA, strings, text
-     , time, transformers, unordered-containers, utf8-string, uuid
+     , either, hscolour, hspec, http-client, http-client-tls
+     , http-conduit, http-types, iproute, jose, lens, monad-time
+     , QuickCheck, quickcheck-instances, SHA, split, strings, tasty
+     , tasty-hspec, tasty-quickcheck, text, time, transformers
+     , unordered-containers, utf8-string, uuid
      }:
      mkDerivation {
        pname = "opentok";
-       version = "0.0.4";
-       sha256 = "1wzl7ra1y3998kp54j9hpnv58kzk1ysx9qivi4fsg0psyvhqf17j";
+       version = "0.0.5";
+       sha256 = "1jcqsa9p1794hgf5ywq605i4rb85dm5qpvznn4n3s4y8d409k6wq";
        libraryHaskellDepends = [
          aeson aeson-casing aeson-compat base base-compat base64-string
          bytestring containers convertible either hscolour http-client
@@ -151916,6 +152697,14 @@ self: {
          monad-time SHA strings text time transformers unordered-containers
          utf8-string uuid
        ];
+       testHaskellDepends = [
+         aeson aeson-casing aeson-compat base base-compat base64-string
+         bytestring containers convertible either hspec http-client
+         http-client-tls http-conduit http-types iproute jose lens
+         monad-time QuickCheck quickcheck-instances SHA split strings tasty
+         tasty-hspec tasty-quickcheck text time transformers
+         unordered-containers utf8-string uuid
+       ];
        description = "An OpenTok SDK for Haskell";
        license = stdenv.lib.licenses.mit;
      }) {};
@@ -152094,8 +152883,8 @@ self: {
      }:
      mkDerivation {
        pname = "optima";
-       version = "0.3.0.1";
-       sha256 = "10xacn6myg486hk3i4a586xnwsjqjd1r29pyw1plgmb7yjp75z85";
+       version = "0.3.0.2";
+       sha256 = "116h7rdv7g2h5bjxr883s15hg9l194q3nkyn045w2ygapk4xsimg";
        libraryHaskellDepends = [
          attoparsec attoparsec-data base optparse-applicative text
          text-builder
@@ -153531,6 +154320,8 @@ self: {
        pname = "pandoc-citeproc";
        version = "0.14.3.1";
        sha256 = "0yj6rckwsc9vig40cm15ry0j3d01xpk04qma9n4byhal6v4b5h22";
+       revision = "1";
+       editedCabalFile = "1lqz432ij7yp6l412vcfk400nmxzbix6qckgmir46k1jm4glyqwk";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -154090,6 +154881,8 @@ self: {
        pname = "papa-bifunctors-export";
        version = "0.3.1";
        sha256 = "070br6i23pdhha9kakfw4sq8rslyrjsf1n0iikm60ca5ldbl8vn0";
+       revision = "1";
+       editedCabalFile = "1d5jvb35as6kb9nmv99gv38v7rzl7c9mdg3ypwzmdqg0646m9k7m";
        libraryHaskellDepends = [ base bifunctors ];
        description = "export useful functions from `bifunctors`";
        license = stdenv.lib.licenses.bsd3;
@@ -154713,6 +155506,29 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "paripari" = callPackage
+    ({ mkDerivation, base, bytestring, parser-combinators, random
+     , tasty, tasty-hunit, text
+     }:
+     mkDerivation {
+       pname = "paripari";
+       version = "0.2.1.0";
+       sha256 = "002sr369102k2wwzy3adav52vvz7d0yyy07lqzqf8b7fw6ffjcy2";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base bytestring parser-combinators text
+       ];
+       executableHaskellDepends = [
+         base bytestring parser-combinators text
+       ];
+       testHaskellDepends = [
+         base bytestring parser-combinators random tasty tasty-hunit text
+       ];
+       description = "Parser combinators with fast-path and slower fallback for error reporting";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "parport" = callPackage
     ({ mkDerivation, array, base }:
      mkDerivation {
@@ -155452,21 +156268,22 @@ self: {
 
   "patat" = callPackage
     ({ mkDerivation, aeson, ansi-terminal, ansi-wl-pprint, base
-     , bytestring, containers, directory, filepath, mtl, network
-     , network-uri, optparse-applicative, pandoc, skylighting
-     , terminal-size, text, time, unordered-containers, yaml
+     , base64-bytestring, bytestring, colour, containers, directory
+     , filepath, mtl, network, network-uri, optparse-applicative, pandoc
+     , process, skylighting, terminal-size, text, time
+     , unordered-containers, yaml
      }:
      mkDerivation {
        pname = "patat";
-       version = "0.7.2.0";
-       sha256 = "1kn739dywchvvvcp972yyxg7r4n81s3qbrni684ag7493nck12iw";
+       version = "0.8.0.0";
+       sha256 = "1xbddlc73b0sgd02vxkbhra04wz77q0dn1937k6aq5l1vx663i81";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
-         aeson ansi-terminal ansi-wl-pprint base bytestring containers
-         directory filepath mtl network network-uri optparse-applicative
-         pandoc skylighting terminal-size text time unordered-containers
-         yaml
+         aeson ansi-terminal ansi-wl-pprint base base64-bytestring
+         bytestring colour containers directory filepath mtl network
+         network-uri optparse-applicative pandoc process skylighting
+         terminal-size text time unordered-containers yaml
        ];
        description = "Terminal-based presentations using Pandoc";
        license = stdenv.lib.licenses.gpl2;
@@ -157291,31 +158108,6 @@ self: {
      }:
      mkDerivation {
        pname = "persistent-mysql-haskell";
-       version = "0.4.1";
-       sha256 = "1wp8va21l03i0wlchlmzik7npvrm4gma4wly0p9rljdwizhgh291";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         aeson base bytestring conduit containers io-streams monad-logger
-         mysql-haskell network persistent resource-pool resourcet text time
-         tls transformers unliftio-core
-       ];
-       executableHaskellDepends = [
-         base monad-logger persistent persistent-template transformers
-       ];
-       description = "A pure haskell backend for the persistent library using MySQL database server";
-       license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
-     }) {};
-
-  "persistent-mysql-haskell_0_4_2" = callPackage
-    ({ mkDerivation, aeson, base, bytestring, conduit, containers
-     , io-streams, monad-logger, mysql-haskell, network, persistent
-     , persistent-template, resource-pool, resourcet, text, time, tls
-     , transformers, unliftio-core
-     }:
-     mkDerivation {
-       pname = "persistent-mysql-haskell";
        version = "0.4.2";
        sha256 = "012vnfxjqlp352jm5s8glvypgyjligsqfrhb3y0kpzvxlsw4a653";
        isLibrary = true;
@@ -157513,34 +158305,6 @@ self: {
      }:
      mkDerivation {
        pname = "persistent-sqlite";
-       version = "2.8.1.2";
-       sha256 = "035dz64h35s7ry39yd57ybqcllkwkfj0wj9ngh6gcw03hgrmfw9g";
-       configureFlags = [ "-fsystemlib" ];
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         aeson base bytestring conduit containers microlens-th monad-logger
-         old-locale persistent resource-pool resourcet text time
-         transformers unliftio-core unordered-containers
-       ];
-       librarySystemDepends = [ sqlite ];
-       testHaskellDepends = [
-         base hspec persistent persistent-template temporary text time
-         transformers
-       ];
-       description = "Backend for the persistent library using sqlite3";
-       license = stdenv.lib.licenses.mit;
-       maintainers = with stdenv.lib.maintainers; [ psibi ];
-     }) {inherit (pkgs) sqlite;};
-
-  "persistent-sqlite_2_8_2" = callPackage
-    ({ mkDerivation, aeson, base, bytestring, conduit, containers
-     , hspec, microlens-th, monad-logger, old-locale, persistent
-     , persistent-template, resource-pool, resourcet, sqlite, temporary
-     , text, time, transformers, unliftio-core, unordered-containers
-     }:
-     mkDerivation {
-       pname = "persistent-sqlite";
        version = "2.8.2";
        sha256 = "1chbmvjz46smhgnzhha3bbkhys3fys6dip1jr4v7xp1jf78zbyp6";
        configureFlags = [ "-fsystemlib" ];
@@ -157558,7 +158322,6 @@ self: {
        ];
        description = "Backend for the persistent library using sqlite3";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
        maintainers = with stdenv.lib.maintainers; [ psibi ];
      }) {inherit (pkgs) sqlite;};
 
@@ -161245,8 +162008,8 @@ self: {
      }:
      mkDerivation {
        pname = "pomaps";
-       version = "0.0.1.0";
-       sha256 = "1vvvpqr3gnps425mv00scmab0hc8h93ylsiw07vm8cpafwkfxii8";
+       version = "0.0.2.0";
+       sha256 = "08mlj61archpiqq8375gi5ha9mpxgpnsfpsx3kqja92dgj0aq5q6";
        libraryHaskellDepends = [
          base containers deepseq ghc-prim lattices
        ];
@@ -161460,8 +162223,8 @@ self: {
      }:
      mkDerivation {
        pname = "pooled-io";
-       version = "0.0.2.1";
-       sha256 = "1l7rgwlkhgxxh9y3ag341zifdjabhmwd6k9hg83rqnnmfs45lh3x";
+       version = "0.0.2.2";
+       sha256 = "1g8zppj2s1wfzg5rpdgz15m44ihxhmrx16jx12n4821cdhsm2nrs";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -162386,15 +163149,15 @@ self: {
      , hspec-wai, hspec-wai-json, HTTP, http-types
      , insert-ordered-containers, interpolatedstring-perl6, jose, lens
      , lens-aeson, monad-control, network-uri, optparse-applicative
-     , parsec, process, protolude, Ranged-sets, regex-tdfa, retry, safe
+     , parsec, process, protolude, Ranged-sets, regex-tdfa, retry
      , scientific, swagger2, text, time, transformers-base, unix
      , unordered-containers, vector, wai, wai-cors, wai-extra
      , wai-middleware-static, warp
      }:
      mkDerivation {
        pname = "postgrest";
-       version = "0.5.0.0";
-       sha256 = "1sixscxpx6dl7hj87yk6zz4a8rg4qwlcchqrxxg1m0gjhln0aqx3";
+       version = "5.1.0";
+       sha256 = "1x6jipc8ixv9wic5l0nlsirm3baddmrhphrr3snil1by5kz208g6";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -162403,7 +163166,7 @@ self: {
          contravariant-extras cookie either gitrev hasql hasql-pool
          hasql-transaction heredoc HTTP http-types insert-ordered-containers
          interpolatedstring-perl6 jose lens lens-aeson network-uri
-         optparse-applicative parsec protolude Ranged-sets regex-tdfa safe
+         optparse-applicative parsec protolude Ranged-sets regex-tdfa
          scientific swagger2 text time unordered-containers vector wai
          wai-cors wai-extra wai-middleware-static
        ];
@@ -162485,8 +163248,8 @@ self: {
      }:
      mkDerivation {
        pname = "postmark";
-       version = "0.2.3";
-       sha256 = "140z6r01byld665471dbk5zdqaf6lrcxwqp0wvbs5fbpjq37mfmp";
+       version = "0.2.6";
+       sha256 = "0x8nvxhw6wwq9w9dl16gvh6j6la224s2ldakx694518amqd4avrx";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -162551,8 +163314,8 @@ self: {
     ({ mkDerivation, potoki-core }:
      mkDerivation {
        pname = "potoki";
-       version = "2.0.6";
-       sha256 = "1gjjs03kpvq544pada5a1r9vjv3dwiqkkgp7hb6ync41mpwvhssl";
+       version = "2.0.15";
+       sha256 = "09220lqyl4rd7al03349r6wbp8hd85rjfbr6kq1swzn3yja2zhsz";
        libraryHaskellDepends = [ potoki-core ];
        description = "Simple streaming in IO";
        license = stdenv.lib.licenses.mit;
@@ -162583,25 +163346,26 @@ self: {
      }) {};
 
   "potoki-core" = callPackage
-    ({ mkDerivation, acquire, attoparsec, base, bytestring, directory
-     , foldl, hashable, ilist, primitive, profunctors, ptr, QuickCheck
-     , quickcheck-instances, random, rerebase, scanner, stm, tasty
-     , tasty-hunit, tasty-quickcheck, text, transformers
-     , unordered-containers, vector
+    ({ mkDerivation, acquire, attoparsec, base, bytestring, criterion
+     , directory, foldl, hashable, ilist, primitive, profunctors, ptr
+     , QuickCheck, quickcheck-instances, random, rerebase, scanner
+     , split, stm, tasty, tasty-hunit, tasty-quickcheck, text, time
+     , transformers, unordered-containers, vector
      }:
      mkDerivation {
        pname = "potoki-core";
-       version = "2.2.8.2";
-       sha256 = "11d75dm2y1fw5kzbkf5vx55b0xa2sn1picbykfl6zypqbqmpa86g";
+       version = "2.2.16";
+       sha256 = "0xjrbv087qyqqd3h3lam2jgrikp5lvsb716ndmqv0i1s4qlzxa6d";
        libraryHaskellDepends = [
          acquire attoparsec base bytestring directory foldl hashable
-         primitive profunctors ptr scanner stm text transformers
+         primitive profunctors ptr scanner stm text time transformers
          unordered-containers vector
        ];
        testHaskellDepends = [
          acquire attoparsec foldl ilist QuickCheck quickcheck-instances
-         random rerebase tasty tasty-hunit tasty-quickcheck
+         random rerebase split tasty tasty-hunit tasty-quickcheck
        ];
+       benchmarkHaskellDepends = [ criterion rerebase ];
        description = "Low-level components of \"potoki\"";
        license = stdenv.lib.licenses.mit;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -163938,24 +164702,27 @@ self: {
      }) {};
 
   "primitive-containers" = callPackage
-    ({ mkDerivation, base, containers, contiguous, gauge, ghc-prim
-     , primitive, primitive-sort, QuickCheck, quickcheck-classes, random
-     , tasty, tasty-quickcheck
+    ({ mkDerivation, aeson, base, containers, contiguous, deepseq
+     , gauge, ghc-prim, hashable, HUnit, primitive, primitive-sort
+     , quantification, QuickCheck, quickcheck-classes, random, tasty
+     , tasty-hunit, tasty-quickcheck, text, unordered-containers, vector
      }:
      mkDerivation {
        pname = "primitive-containers";
-       version = "0.2.0";
-       sha256 = "11q0dvlsdabmsjsr0gznr8ndx1fyvbvv8jxfszj6na8jhrz7x84b";
+       version = "0.3.0";
+       sha256 = "0yk7gqngdkm3s3pmmzbvrjd52hiqjn0gg2j60iw7wnaalagcap6x";
        libraryHaskellDepends = [
-         base contiguous primitive primitive-sort
+         aeson base contiguous deepseq hashable primitive primitive-sort
+         quantification text unordered-containers vector
        ];
        testHaskellDepends = [
-         base containers primitive QuickCheck quickcheck-classes tasty
-         tasty-quickcheck
+         aeson base containers HUnit primitive quantification QuickCheck
+         quickcheck-classes tasty tasty-hunit tasty-quickcheck text
        ];
        benchmarkHaskellDepends = [
          base containers gauge ghc-prim primitive random
        ];
+       description = "containers backed by arrays";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
@@ -163968,8 +164735,8 @@ self: {
      }:
      mkDerivation {
        pname = "primitive-extras";
-       version = "0.6.7";
-       sha256 = "0kh2cccy1pmvvsrl9sjvcar4l1i3igk9vf8lxxxlwypj43nm32ny";
+       version = "0.7.0.2";
+       sha256 = "01xjis2y8gpa1f45g3nf9lminy3yhbsb10fzhk23z5n8205jh77d";
        libraryHaskellDepends = [
          base bytestring cereal deferred-folds focus foldl list-t primitive
          profunctors vector
@@ -164032,8 +164799,8 @@ self: {
        pname = "primitive-sort";
        version = "0.1.0.0";
        sha256 = "147y4y8v00yggfgyf70kzd3pd9r6jvgxkzjsy3xpbp6mjdnzrbm3";
-       revision = "1";
-       editedCabalFile = "0b148bc30nbfrmdx1k7d4ky6k129w8vy146di90v9q12rvsdaz8w";
+       revision = "2";
+       editedCabalFile = "1yn5nwdw5jmzg603ln626gz2ifjn8fssgzq17g4nyriscqfg1aki";
        libraryHaskellDepends = [ base contiguous ghc-prim primitive ];
        testHaskellDepends = [
          base containers doctest HUnit primitive QuickCheck smallcheck tasty
@@ -164273,8 +165040,8 @@ self: {
      }:
      mkDerivation {
        pname = "probability";
-       version = "0.2.5.1";
-       sha256 = "0bgdyx562x91a3s79p293pz4qimwd2k35mfxap23ia6x6a5prrnk";
+       version = "0.2.5.2";
+       sha256 = "059l9by2zxb92dd2vshxx9f3sm1kazc2i2ll168hfsya9rrqqaqg";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          base containers random transformers utility-ht
@@ -164640,25 +165407,12 @@ self: {
     ({ mkDerivation, base, template-haskell, th-data-compat }:
      mkDerivation {
        pname = "product-isomorphic";
-       version = "0.0.3.2";
-       sha256 = "1yqpfdbdq0zh69mbpgns8faj0ajc9a8wgp3c8sgn373py2as9jxl";
-       libraryHaskellDepends = [ base template-haskell th-data-compat ];
-       testHaskellDepends = [ base template-haskell ];
-       description = "Weaken applicative functor on products";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "product-isomorphic_0_0_3_3" = callPackage
-    ({ mkDerivation, base, template-haskell, th-data-compat }:
-     mkDerivation {
-       pname = "product-isomorphic";
        version = "0.0.3.3";
        sha256 = "1fy1a7xvnz47120z7vq5hrdllgard7cd1whkwwmgpwdsmhn3my8y";
        libraryHaskellDepends = [ base template-haskell th-data-compat ];
        testHaskellDepends = [ base template-haskell ];
        description = "Weaken applicative functor on products";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "product-profunctors" = callPackage
@@ -165470,14 +166224,33 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "proto-lens_0_4_0_0" = callPackage
+    ({ mkDerivation, attoparsec, base, bytestring, containers, deepseq
+     , lens-family, lens-labels, parsec, pretty, text, transformers
+     , void
+     }:
+     mkDerivation {
+       pname = "proto-lens";
+       version = "0.4.0.0";
+       sha256 = "1yj86mnjc3509ad9g19fr9fdkblwfyilb5ydv1isn6xs7llq3c3r";
+       enableSeparateDataOutput = true;
+       libraryHaskellDepends = [
+         attoparsec base bytestring containers deepseq lens-family
+         lens-labels parsec pretty text transformers void
+       ];
+       description = "A lens-based implementation of protocol buffers in Haskell";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "proto-lens-arbitrary" = callPackage
     ({ mkDerivation, base, bytestring, containers, lens-family
      , proto-lens, QuickCheck, text
      }:
      mkDerivation {
        pname = "proto-lens-arbitrary";
-       version = "0.1.2.1";
-       sha256 = "08qwn60pih64lk6xnqwzx3q1qja46pvaw6539r1m4kbw3wyh2kl2";
+       version = "0.1.2.2";
+       sha256 = "128r7g82yx4rs38yd9s4bwcpyiqm5yr4lyci3z88bhqsvkn4438i";
        libraryHaskellDepends = [
          base bytestring containers lens-family proto-lens QuickCheck text
        ];
@@ -165485,14 +166258,14 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "proto-lens-arbitrary_0_1_2_2" = callPackage
+  "proto-lens-arbitrary_0_1_2_3" = callPackage
     ({ mkDerivation, base, bytestring, containers, lens-family
      , proto-lens, QuickCheck, text
      }:
      mkDerivation {
        pname = "proto-lens-arbitrary";
-       version = "0.1.2.2";
-       sha256 = "128r7g82yx4rs38yd9s4bwcpyiqm5yr4lyci3z88bhqsvkn4438i";
+       version = "0.1.2.3";
+       sha256 = "0ljr6iyqrdlfay0yd2j6q2wm5k79wnn4ay4kbmzmw2fdy0p73gyn";
        libraryHaskellDepends = [
          base bytestring containers lens-family proto-lens QuickCheck text
        ];
@@ -165508,8 +166281,8 @@ self: {
      }:
      mkDerivation {
        pname = "proto-lens-combinators";
-       version = "0.1.0.10";
-       sha256 = "0yv6wrg3wsp6617mw02n3d9gmlb9nyvfabffrznpvlaywwk8cnir";
+       version = "0.1.0.11";
+       sha256 = "1i2rbvhdvglqg6b4iwr5a0pk7iq78nap491bqg77y4dwd45ipcpb";
        setupHaskellDepends = [ base Cabal proto-lens-protoc ];
        libraryHaskellDepends = [
          base data-default-class lens-family proto-lens-protoc transformers
@@ -165523,22 +166296,22 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "proto-lens-combinators_0_1_0_11" = callPackage
-    ({ mkDerivation, base, Cabal, data-default-class, HUnit
-     , lens-family, lens-family-core, proto-lens, proto-lens-protoc
-     , test-framework, test-framework-hunit, transformers
+  "proto-lens-combinators_0_4" = callPackage
+    ({ mkDerivation, base, Cabal, HUnit, lens-family, lens-family-core
+     , proto-lens, proto-lens-runtime, proto-lens-setup, test-framework
+     , test-framework-hunit, transformers
      }:
      mkDerivation {
        pname = "proto-lens-combinators";
-       version = "0.1.0.11";
-       sha256 = "1i2rbvhdvglqg6b4iwr5a0pk7iq78nap491bqg77y4dwd45ipcpb";
-       setupHaskellDepends = [ base Cabal proto-lens-protoc ];
+       version = "0.4";
+       sha256 = "1fc98ynjx0b9x4v56pzkf3h9y46a583aw3lf7l9ij4ck87y83q6b";
+       setupHaskellDepends = [ base Cabal proto-lens-setup ];
        libraryHaskellDepends = [
-         base data-default-class lens-family proto-lens-protoc transformers
+         base lens-family proto-lens transformers
        ];
        testHaskellDepends = [
          base HUnit lens-family lens-family-core proto-lens
-         proto-lens-protoc test-framework test-framework-hunit
+         proto-lens-runtime test-framework test-framework-hunit
        ];
        description = "Utilities functions to proto-lens";
        license = stdenv.lib.licenses.bsd3;
@@ -165566,8 +166339,8 @@ self: {
     ({ mkDerivation, base, optparse-applicative, proto-lens, text }:
      mkDerivation {
        pname = "proto-lens-optparse";
-       version = "0.1.1.1";
-       sha256 = "1zi6kv6af39bbbcf2v7d1l2fc2f3m6r1i2yvv4ddm6w0i7vhd1qw";
+       version = "0.1.1.2";
+       sha256 = "1hagdb7m3wqv6w8m0aaf8cfsj4lryqighj2ah5qpmi8hspy1mg55";
        libraryHaskellDepends = [
          base optparse-applicative proto-lens text
        ];
@@ -165575,12 +166348,12 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "proto-lens-optparse_0_1_1_2" = callPackage
+  "proto-lens-optparse_0_1_1_3" = callPackage
     ({ mkDerivation, base, optparse-applicative, proto-lens, text }:
      mkDerivation {
        pname = "proto-lens-optparse";
-       version = "0.1.1.2";
-       sha256 = "1hagdb7m3wqv6w8m0aaf8cfsj4lryqighj2ah5qpmi8hspy1mg55";
+       version = "0.1.1.3";
+       sha256 = "0dciwsc1qa9iisym5702a0kjwfiikqgfijdzpf21q2aiffagkacd";
        libraryHaskellDepends = [
          base optparse-applicative proto-lens text
        ];
@@ -165624,17 +166397,17 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {inherit (pkgs) protobuf;};
 
-  "proto-lens-protobuf-types_0_3_0_2" = callPackage
+  "proto-lens-protobuf-types_0_4_0_0" = callPackage
     ({ mkDerivation, base, Cabal, lens-labels, proto-lens
-     , proto-lens-protoc, protobuf, text
+     , proto-lens-runtime, proto-lens-setup, protobuf, text
      }:
      mkDerivation {
        pname = "proto-lens-protobuf-types";
-       version = "0.3.0.2";
-       sha256 = "0vslpjrhvkyz10g4fg1fbfkqggg7x0jd3vp68419aflgk293pgsx";
-       setupHaskellDepends = [ base Cabal proto-lens-protoc ];
+       version = "0.4.0.0";
+       sha256 = "1h2ss8nn569g97cvq3lflgcc6sz3k9y3gx0ini69d1lrkccd8jmg";
+       setupHaskellDepends = [ base Cabal proto-lens-setup ];
        libraryHaskellDepends = [
-         base lens-labels proto-lens proto-lens-protoc text
+         base lens-labels proto-lens proto-lens-runtime text
        ];
        libraryToolDepends = [ protobuf ];
        description = "Basic protocol buffer message types";
@@ -165673,18 +166446,18 @@ self: {
     ({ mkDerivation, base, bytestring, Cabal, containers
      , data-default-class, deepseq, directory, filepath
      , haskell-src-exts, lens-family, lens-labels, pretty, process
-     , proto-lens, protobuf, text
+     , proto-lens, protobuf, temporary, text
      }:
      mkDerivation {
        pname = "proto-lens-protoc";
-       version = "0.3.1.0";
-       sha256 = "0hihwynqlxhbc7280v7syag0p5php4gdvchbpzvwl54hvcjakgvx";
+       version = "0.3.1.2";
+       sha256 = "15qypl2z5mccmxhq2bl86frzdalpcnsjiw6vypvnr6gxlr7mwhm7";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          base bytestring Cabal containers data-default-class deepseq
          directory filepath haskell-src-exts lens-family lens-labels pretty
-         process proto-lens text
+         process proto-lens temporary text
        ];
        libraryToolDepends = [ protobuf ];
        executableHaskellDepends = [
@@ -165695,33 +166468,61 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {inherit (pkgs) protobuf;};
 
-  "proto-lens-protoc_0_3_1_2" = callPackage
-    ({ mkDerivation, base, bytestring, Cabal, containers
-     , data-default-class, deepseq, directory, filepath
-     , haskell-src-exts, lens-family, lens-labels, pretty, process
-     , proto-lens, protobuf, temporary, text
+  "proto-lens-protoc_0_4_0_0" = callPackage
+    ({ mkDerivation, base, bytestring, containers, filepath
+     , haskell-src-exts, lens-family, pretty, proto-lens, protobuf, text
      }:
      mkDerivation {
        pname = "proto-lens-protoc";
-       version = "0.3.1.2";
-       sha256 = "15qypl2z5mccmxhq2bl86frzdalpcnsjiw6vypvnr6gxlr7mwhm7";
+       version = "0.4.0.0";
+       sha256 = "1w22278jjcyj9z4lwpkxws9v97maqrwacmd5d0pl8d2byh8jqry8";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         base bytestring Cabal containers data-default-class deepseq
-         directory filepath haskell-src-exts lens-family lens-labels pretty
-         process proto-lens temporary text
+         base containers filepath haskell-src-exts lens-family pretty
+         proto-lens text
        ];
        libraryToolDepends = [ protobuf ];
        executableHaskellDepends = [
-         base bytestring containers data-default-class deepseq filepath
-         haskell-src-exts lens-family proto-lens text
+         base bytestring containers lens-family proto-lens text
        ];
        description = "Protocol buffer compiler for the proto-lens library";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {inherit (pkgs) protobuf;};
 
+  "proto-lens-runtime" = callPackage
+    ({ mkDerivation, base, bytestring, containers, deepseq, filepath
+     , lens-family, lens-labels, proto-lens, text
+     }:
+     mkDerivation {
+       pname = "proto-lens-runtime";
+       version = "0.4.0.1";
+       sha256 = "0kyd2y4jhzb0isclk5gw98c4n49kjnl27rlywmajmbfwf2d6w4yc";
+       libraryHaskellDepends = [
+         base bytestring containers deepseq filepath lens-family lens-labels
+         proto-lens text
+       ];
+       doHaddock = false;
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
+  "proto-lens-setup" = callPackage
+    ({ mkDerivation, base, bytestring, Cabal, containers, deepseq
+     , directory, filepath, process, proto-lens-protoc, temporary, text
+     }:
+     mkDerivation {
+       pname = "proto-lens-setup";
+       version = "0.4.0.0";
+       sha256 = "0j0a2jq9axq8v4h918lnrvjg0zyb0gvr5v3x9c6lajv8fb8bxmlf";
+       libraryHaskellDepends = [
+         base bytestring Cabal containers deepseq directory filepath process
+         proto-lens-protoc temporary text
+       ];
+       description = "Cabal support for codegen with proto-lens";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "protobuf" = callPackage
     ({ mkDerivation, base, base-orphans, bytestring, cereal, containers
      , data-binary-ieee754, deepseq, hex, HUnit, mtl, QuickCheck, tagged
@@ -165792,6 +166593,32 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "protobuf-simple_0_1_1_0" = callPackage
+    ({ mkDerivation, base, binary, bytestring, containers
+     , data-binary-ieee754, directory, filepath, hspec, mtl, parsec
+     , QuickCheck, quickcheck-instances, split, text
+     }:
+     mkDerivation {
+       pname = "protobuf-simple";
+       version = "0.1.1.0";
+       sha256 = "1i6dmf9nppjk2xd2s91bmbnb9r915h5ypq5923jpralry2ax6ach";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base binary bytestring containers data-binary-ieee754 mtl text
+       ];
+       executableHaskellDepends = [
+         base containers directory filepath mtl parsec split text
+       ];
+       testHaskellDepends = [
+         base binary bytestring containers data-binary-ieee754 filepath
+         hspec parsec QuickCheck quickcheck-instances split text
+       ];
+       description = "Simple Protocol Buffers library (proto2)";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "protocol-buffers" = callPackage
     ({ mkDerivation, array, base, binary, bytestring, containers
      , directory, filepath, mtl, parsec, syb, utf8-string
@@ -165862,22 +166689,6 @@ self: {
      }:
      mkDerivation {
        pname = "protocol-radius";
-       version = "0.0.1.0";
-       sha256 = "1ygn7kd6rdmgb4hy4iby0l9m1hm6w0linhjipgv7vczd8b0mw35f";
-       libraryHaskellDepends = [
-         base bytestring cereal containers cryptonite dlist memory
-         template-haskell text transformers
-       ];
-       description = "parser and printer for radius protocol packet";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "protocol-radius_0_0_1_1" = callPackage
-    ({ mkDerivation, base, bytestring, cereal, containers, cryptonite
-     , dlist, memory, template-haskell, text, transformers
-     }:
-     mkDerivation {
-       pname = "protocol-radius";
        version = "0.0.1.1";
        sha256 = "0cd1qr5c2s25136lljqj2xfl8anrrc6m1yf8dpscjil2y4r27629";
        libraryHaskellDepends = [
@@ -165886,7 +166697,6 @@ self: {
        ];
        description = "parser and printer for radius protocol packet";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "protocol-radius-test" = callPackage
@@ -166774,23 +167584,27 @@ self: {
      }) {};
 
   "purescript-iso" = callPackage
-    ({ mkDerivation, aeson, async, attoparsec-uri, base, bytestring
-     , containers, monad-control, mtl, QuickCheck, quickcheck-instances
-     , stm, strict, tasty, tasty-quickcheck, text, time, utf8-string
-     , uuid, zeromq4-haskell, zeromq4-simple
+    ({ mkDerivation, aeson, aeson-attoparsec, aeson-diff, async
+     , attoparsec, attoparsec-uri, base, bytestring, containers, deepseq
+     , emailaddress, monad-control, mtl, QuickCheck
+     , quickcheck-instances, scientific, stm, strict, tasty
+     , tasty-quickcheck, text, time, utf8-string, uuid, zeromq4-haskell
+     , zeromq4-simple
      }:
      mkDerivation {
        pname = "purescript-iso";
-       version = "0.0.1.2";
-       sha256 = "0mlrj4q40d71r61lc5h9a7wfycmj1kgn6appaqbffrdjz64hmrfh";
+       version = "0.0.3";
+       sha256 = "15y761jk2r95gdkv85p7ij9npf3a6dlsyidf8y8djzk3m7j8ya2g";
        libraryHaskellDepends = [
-         aeson async attoparsec-uri base bytestring containers monad-control
-         mtl QuickCheck quickcheck-instances stm strict text time
+         aeson aeson-attoparsec aeson-diff async attoparsec attoparsec-uri
+         base bytestring containers deepseq emailaddress monad-control mtl
+         QuickCheck quickcheck-instances scientific stm strict text time
          utf8-string uuid zeromq4-haskell zeromq4-simple
        ];
        testHaskellDepends = [
-         aeson async attoparsec-uri base bytestring containers monad-control
-         mtl QuickCheck quickcheck-instances stm strict tasty
+         aeson aeson-attoparsec aeson-diff async attoparsec attoparsec-uri
+         base bytestring containers deepseq emailaddress monad-control mtl
+         QuickCheck quickcheck-instances scientific stm strict tasty
          tasty-quickcheck text time utf8-string uuid zeromq4-haskell
          zeromq4-simple
        ];
@@ -167557,8 +168371,8 @@ self: {
      }:
      mkDerivation {
        pname = "qtah-cpp-qt5";
-       version = "0.5.0";
-       sha256 = "14349jf69wvbcp18xi5jb0281qhrz38pw68qw91hwfr8vmqdx8h7";
+       version = "0.5.1";
+       sha256 = "1pwqc5i6viyk3ik8vh2zd9k25vj9y1r9mmikxwzjhv6jwc8sb5pb";
        setupHaskellDepends = [ base Cabal directory filepath process ];
        libraryHaskellDepends = [ base process qtah-generator ];
        librarySystemDepends = [ qtbase ];
@@ -167615,8 +168429,8 @@ self: {
      }:
      mkDerivation {
        pname = "qtah-qt5";
-       version = "0.5.0";
-       sha256 = "0c4z56siw1kkqiyzmbpjk6jkzmcxqv6ji52rnivlavlyw3b4s2a3";
+       version = "0.5.1";
+       sha256 = "082mz3j3bk7hlagwdw0y399r8jid2wf6xzsdd2wnc4n6z6w6p8gx";
        setupHaskellDepends = [ base Cabal directory filepath ];
        libraryHaskellDepends = [
          base binary bytestring hoppy-runtime qtah-cpp-qt5 qtah-generator
@@ -167648,8 +168462,8 @@ self: {
      }:
      mkDerivation {
        pname = "quadratic-irrational";
-       version = "0.0.5";
-       sha256 = "1z9a1q8px4sx7fq9i1lwfx98kz0nv8zhkz5vsfn31krvd4xvkndz";
+       version = "0.0.6";
+       sha256 = "02hdxi9kjp7dccmb7ix3a0yqr7fvl2vpc588ibxq6gjd5v3716r0";
        libraryHaskellDepends = [
          arithmoi base containers mtl transformers
        ];
@@ -167700,15 +168514,15 @@ self: {
      }) {};
 
   "quantification" = callPackage
-    ({ mkDerivation, aeson, base, containers, ghc-prim, hashable
-     , path-pieces, text, unordered-containers, vector
+    ({ mkDerivation, aeson, base, binary, containers, ghc-prim
+     , hashable, path-pieces, text, unordered-containers, vector
      }:
      mkDerivation {
        pname = "quantification";
-       version = "0.4";
-       sha256 = "0bsdfmzaaxq2mf6bbbphg2dy8q6lhc7n3mfcy20fp4la0cj49aj2";
+       version = "0.5.0";
+       sha256 = "0ls8rhy0idrgj9dnd5ajjfi55bhz4qsyncj3ghw3nyrbr0q7j0bk";
        libraryHaskellDepends = [
-         aeson base containers ghc-prim hashable path-pieces text
+         aeson base binary containers ghc-prim hashable path-pieces text
          unordered-containers vector
        ];
        description = "Rage against the quantification";
@@ -168091,6 +168905,8 @@ self: {
        pname = "quickcheck-classes";
        version = "0.4.14.1";
        sha256 = "0qk7nx855lrb9z1nkc74dshsij6p704rmggx0f9akwcpscsvhiim";
+       revision = "1";
+       editedCabalFile = "1jsqd19gwd5hizqlabk0haly9slri4m7bhj32vqvi0lk4mync94l";
        libraryHaskellDepends = [
          aeson base bifunctors containers primitive QuickCheck semigroupoids
          semigroups semirings tagged transformers
@@ -168125,8 +168941,8 @@ self: {
        pname = "quickcheck-instances";
        version = "0.3.18";
        sha256 = "1bh1pzz5fdcqvzdcirqxna6fnjms02min5md716299g5niz46w55";
-       revision = "1";
-       editedCabalFile = "1sngfq3v71bvgjsl8cj5kh65m3fziwy8dkvwjzs0kxfrzr87faly";
+       revision = "2";
+       editedCabalFile = "02mhzd7dkhmbd8ljm114j7ixp1lcllblz3zfkz0i7n976rac86w7";
        libraryHaskellDepends = [
          array base base-compat bytestring case-insensitive containers
          hashable old-time QuickCheck scientific tagged text time
@@ -168140,6 +168956,30 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "quickcheck-instances_0_3_19" = callPackage
+    ({ mkDerivation, array, base, base-compat, bytestring
+     , case-insensitive, containers, hashable, old-time, QuickCheck
+     , scientific, tagged, text, time, transformers, transformers-compat
+     , unordered-containers, uuid-types, vector
+     }:
+     mkDerivation {
+       pname = "quickcheck-instances";
+       version = "0.3.19";
+       sha256 = "0mls8095ylk5pq2j787ary5lyn4as64414silq3zn4sky3zsx92p";
+       libraryHaskellDepends = [
+         array base base-compat bytestring case-insensitive containers
+         hashable old-time QuickCheck scientific tagged text time
+         transformers transformers-compat unordered-containers uuid-types
+         vector
+       ];
+       testHaskellDepends = [
+         base containers QuickCheck tagged uuid-types
+       ];
+       description = "Common quickcheck instances";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "quickcheck-io" = callPackage
     ({ mkDerivation, base, HUnit, QuickCheck }:
      mkDerivation {
@@ -168302,31 +169142,30 @@ self: {
      }) {};
 
   "quickcheck-state-machine" = callPackage
-    ({ mkDerivation, ansi-wl-pprint, async, base, bytestring
-     , containers, directory, exceptions, filelock, filepath
-     , http-client, lifted-async, lifted-base, matrix, monad-control
-     , monad-logger, mtl, network, persistent, persistent-postgresql
-     , persistent-template, pretty-show, process, QuickCheck
-     , quickcheck-instances, random, resourcet, servant, servant-client
-     , servant-server, split, stm, strict, string-conversions, tasty
-     , tasty-quickcheck, text, tree-diff, vector, wai, warp
+    ({ mkDerivation, ansi-wl-pprint, base, bytestring, containers
+     , directory, doctest, exceptions, filelock, filepath, http-client
+     , lifted-async, matrix, monad-control, monad-logger, mtl, network
+     , persistent, persistent-postgresql, persistent-template
+     , pretty-show, process, QuickCheck, quickcheck-instances, random
+     , resourcet, servant, servant-client, servant-server, split, stm
+     , strict, string-conversions, tasty, tasty-hunit, tasty-quickcheck
+     , text, tree-diff, vector, wai, warp
      }:
      mkDerivation {
        pname = "quickcheck-state-machine";
-       version = "0.4.0";
-       sha256 = "1dzkqpl873hj2by15hlkf61x6a7fjzkhl6h4cwhg9krj2bh2lv5q";
+       version = "0.4.2";
+       sha256 = "1sa243hysdnlv8326jnbnmmlkbxhxmbhfssya5qx925x56qhd2d3";
        libraryHaskellDepends = [
-         ansi-wl-pprint async base containers exceptions lifted-async
-         lifted-base matrix monad-control mtl pretty-show QuickCheck random
-         split stm tree-diff vector
+         ansi-wl-pprint base containers exceptions lifted-async matrix
+         monad-control mtl pretty-show QuickCheck split stm tree-diff vector
        ];
        testHaskellDepends = [
-         base bytestring directory filelock filepath http-client
+         base bytestring directory doctest filelock filepath http-client
          lifted-async matrix monad-control monad-logger mtl network
          persistent persistent-postgresql persistent-template process
          QuickCheck quickcheck-instances random resourcet servant
-         servant-client servant-server strict string-conversions tasty
-         tasty-quickcheck text tree-diff vector wai warp
+         servant-client servant-server stm strict string-conversions tasty
+         tasty-hunit tasty-quickcheck text tree-diff vector wai warp
        ];
        description = "Test monadic programs using state machine based models";
        license = stdenv.lib.licenses.bsd3;
@@ -168412,10 +169251,8 @@ self: {
     ({ mkDerivation, base, QuickCheck, template-haskell }:
      mkDerivation {
        pname = "quickcheck-with-counterexamples";
-       version = "1.0";
-       sha256 = "0pny7whz16mdmh51jpa7p9f8pa7jpcqqjks797wnj8848ia7ax87";
-       revision = "3";
-       editedCabalFile = "0wz7iwpgxx977y46xis4imrhds1i341fv6mpwydr1mzhzazifvz8";
+       version = "1.1";
+       sha256 = "13vnr98g9cds2jbg76z528lji5mfcxghwjj4sry0011wlrwrx1fd";
        libraryHaskellDepends = [ base QuickCheck template-haskell ];
        description = "Get counterexamples from QuickCheck as Haskell values";
        license = stdenv.lib.licenses.bsd3;
@@ -169639,14 +170476,14 @@ self: {
      }:
      mkDerivation {
        pname = "range";
-       version = "0.1.2.0";
-       sha256 = "028bigaq4vk5ykzf04f5hi3g37gxzzp6q24bjcb3gjfzcgy7z6ab";
+       version = "0.2.1.1";
+       sha256 = "13gfhzplk2ji1d8x4944lv4dy4qg69wjvdwkica407nm10j0lxmc";
        libraryHaskellDepends = [ base free parsec ];
        testHaskellDepends = [
          base Cabal free QuickCheck random test-framework
          test-framework-quickcheck2
        ];
-       description = "This has a bunch of code for specifying and managing ranges in your code";
+       description = "An efficient and versatile range library";
        license = stdenv.lib.licenses.mit;
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
@@ -170142,6 +170979,37 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "rattletrap_6_0_1" = callPackage
+    ({ mkDerivation, aeson, aeson-pretty, base, binary, binary-bits
+     , bytestring, containers, filepath, http-client, http-client-tls
+     , HUnit, template-haskell, temporary, text, transformers
+     }:
+     mkDerivation {
+       pname = "rattletrap";
+       version = "6.0.1";
+       sha256 = "1chpivz9iprnj5p3kbqsgpviqg5d3dx41596ki1dydm1wmpn3bcj";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson aeson-pretty base binary binary-bits bytestring containers
+         filepath http-client http-client-tls template-haskell text
+         transformers
+       ];
+       executableHaskellDepends = [
+         aeson aeson-pretty base binary binary-bits bytestring containers
+         filepath http-client http-client-tls template-haskell text
+         transformers
+       ];
+       testHaskellDepends = [
+         aeson aeson-pretty base binary binary-bits bytestring containers
+         filepath http-client http-client-tls HUnit template-haskell
+         temporary text transformers
+       ];
+       description = "Parse and generate Rocket League replays";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "raven-haskell" = callPackage
     ({ mkDerivation, aeson, base, bytestring, hspec, http-conduit, mtl
      , network, random, resourcet, text, time, unordered-containers
@@ -170416,19 +171284,20 @@ self: {
   "rdf4h" = callPackage
     ({ mkDerivation, attoparsec, base, binary, bytestring, containers
      , criterion, deepseq, directory, filepath, hashable, hgal, HTTP
-     , HUnit, hxt, mtl, network-uri, parsec, parsers, QuickCheck, safe
-     , tasty, tasty-hunit, tasty-quickcheck, text, unordered-containers
+     , http-conduit, HUnit, hxt, lifted-base, mtl, network-uri, parsec
+     , parsers, QuickCheck, safe, tasty, tasty-hunit, tasty-quickcheck
+     , text, unordered-containers
      }:
      mkDerivation {
        pname = "rdf4h";
-       version = "3.1.0";
-       sha256 = "1hsa96a11mi8zlhfp9mhg4m13r4iwyhp9rhsgmpcq4g06ff1d6n8";
+       version = "3.1.1";
+       sha256 = "0r93mra0r8xdqi062xpsv5svzcinq31k4jjbjay53an6zd1qg9n4";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          attoparsec base binary bytestring containers deepseq filepath
-         hashable hgal HTTP hxt mtl network-uri parsec parsers text
-         unordered-containers
+         hashable hgal HTTP http-conduit hxt lifted-base mtl network-uri
+         parsec parsers text unordered-containers
        ];
        executableHaskellDepends = [ base containers text ];
        testHaskellDepends = [
@@ -170620,8 +171489,8 @@ self: {
      }:
      mkDerivation {
        pname = "reactive-balsa";
-       version = "0.4";
-       sha256 = "0cmk386wjs6i7bnmawz0kcpm4sx5xa2ms9xhjisg83xhmacvqg7h";
+       version = "0.4.0.1";
+       sha256 = "1fhn7bxfrwaa5xb2ckfy2v4aw5cdzclayprjr40zg09s77qxclc1";
        libraryHaskellDepends = [
          alsa-core alsa-seq base containers data-accessor
          data-accessor-transformers event-list extensible-exceptions midi
@@ -170677,8 +171546,8 @@ self: {
      }:
      mkDerivation {
        pname = "reactive-banana-bunch";
-       version = "1.0";
-       sha256 = "11lfbf5gn8friwgkmm3vl3b3hqfxm1vww0a3aq9949irvrplajzn";
+       version = "1.0.0.1";
+       sha256 = "1k4l1zk7jm26iyaa2srillrq8qnwnqkwhpy6shdw6mg4nfby706c";
        libraryHaskellDepends = [
          base non-empty reactive-banana transformers utility-ht
        ];
@@ -170829,8 +171698,8 @@ self: {
      }:
      mkDerivation {
        pname = "reactive-jack";
-       version = "0.4.1";
-       sha256 = "124fpfv486dm8cpgfdnrmckkk8y6ia4nwzapvnfghkslizzlbfab";
+       version = "0.4.1.1";
+       sha256 = "0kcb4sjj8499i5igl1fv8bjbz5d2zvs5nbqijfaw9pcg5zx7a0rr";
        libraryHaskellDepends = [
          base containers data-accessor event-list explicit-exception
          extensible-exceptions jack midi non-negative random
@@ -170850,8 +171719,8 @@ self: {
      }:
      mkDerivation {
        pname = "reactive-midyim";
-       version = "0.4.1";
-       sha256 = "1dx07c4d4sw7a797d1ap9ja48lhx37hbizhajgcf1qpilxgd4lvv";
+       version = "0.4.1.1";
+       sha256 = "1hsa7d79mf7r36grl9i41x84kg3s9j5gj2fy40mb1mhvr221pi9v";
        libraryHaskellDepends = [
          base containers data-accessor data-accessor-transformers event-list
          midi non-negative random reactive-banana-bunch semigroups
@@ -171207,6 +172076,20 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "record-dot-preprocessor_0_1_4" = callPackage
+    ({ mkDerivation, base, extra, filepath }:
+     mkDerivation {
+       pname = "record-dot-preprocessor";
+       version = "0.1.4";
+       sha256 = "1mj39kdnf3978cc51hh1fnnr0ax3gnqw4fan0f099b7li5y2xlwx";
+       isLibrary = false;
+       isExecutable = true;
+       executableHaskellDepends = [ base extra filepath ];
+       description = "Preprocessor to allow record.field syntax";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "record-encode" = callPackage
     ({ mkDerivation, base, generics-sop, hspec, QuickCheck, vector }:
      mkDerivation {
@@ -171307,8 +172190,8 @@ self: {
      }:
      mkDerivation {
        pname = "records-sop";
-       version = "0.1.0.0";
-       sha256 = "0ipxs13mlkhndbssa218fiajj2c26l5q5dl8n0p3h1qk6gjyfqa1";
+       version = "0.1.0.1";
+       sha256 = "1832cgh1ry1slj10ff2qpxr6ibbvii7z1hvvdcwhyj55c31zrhlc";
        libraryHaskellDepends = [ base deepseq generics-sop ghc-prim ];
        testHaskellDepends = [
          base deepseq generics-sop hspec should-not-typecheck
@@ -171339,8 +172222,8 @@ self: {
     ({ mkDerivation, base, composition-prelude }:
      mkDerivation {
        pname = "recursion";
-       version = "1.2.0.1";
-       sha256 = "1j36fyyfml7i0dxxfammaaqmg6yg1whdar1ffsvpkjg4b8lkxlr4";
+       version = "1.2.1.1";
+       sha256 = "0dh50664y470281gjiwkmdz8abiwgqin9r1ymznldwm37c3jljv5";
        libraryHaskellDepends = [ base composition-prelude ];
        description = "A recursion schemes library for GHC";
        license = stdenv.lib.licenses.bsd3;
@@ -171505,8 +172388,8 @@ self: {
      }:
      mkDerivation {
        pname = "redis-io";
-       version = "0.7.0";
-       sha256 = "06g630jrb0zxbai4n251plprafn5s9nywd3hgg14vz999wccns0z";
+       version = "1.0.0";
+       sha256 = "119qga77xv0kq6cppgz6ry3f1ql4slswqwqg7qyiyg639sli9nfp";
        libraryHaskellDepends = [
          attoparsec auto-update base bytestring containers exceptions
          iproute monad-control mtl network operational redis-resp
@@ -171543,8 +172426,8 @@ self: {
      }:
      mkDerivation {
        pname = "redis-resp";
-       version = "0.4.0";
-       sha256 = "0clj5b6lbkdc64arb9z4qhbiqkx7mifja8ns7xxc619yhj9dbh4b";
+       version = "1.0.0";
+       sha256 = "12w00zjf901xi6wwb0g6wzbxkbh1iyyd7glxijx9sajv6jgd5365";
        libraryHaskellDepends = [
          attoparsec base bytestring bytestring-conversion containers dlist
          double-conversion operational semigroups split transformers
@@ -173332,7 +174215,7 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "relude_0_2_0" = callPackage
+  "relude_0_3_0" = callPackage
     ({ mkDerivation, base, bytestring, containers, deepseq, doctest
      , gauge, ghc-prim, Glob, hashable, hedgehog, mtl, stm, tasty
      , tasty-hedgehog, text, transformers, unordered-containers
@@ -173340,10 +174223,8 @@ self: {
      }:
      mkDerivation {
        pname = "relude";
-       version = "0.2.0";
-       sha256 = "097kiflrwvkb3mxpkydh6a6x84azv4xla9nlm5qscacl4kn5z3q5";
-       revision = "1";
-       editedCabalFile = "10zqh8j0k7q6l5ag009c432has7zpwbi57drr12dpyqa1ldrk6h0";
+       version = "0.3.0";
+       sha256 = "10cbgz1xzw67q3y9fw8px7wwxblv5qym51qpdljmjz4ilpy0k35j";
        libraryHaskellDepends = [
          base bytestring containers deepseq ghc-prim hashable mtl stm text
          transformers unordered-containers utf8-string
@@ -175022,8 +175903,8 @@ self: {
      }:
      mkDerivation {
        pname = "retry";
-       version = "0.7.6.3";
-       sha256 = "19h3y5j2wim32cail0pix11vjhfbj3xiivlw2kyz1iqv4fxx8mby";
+       version = "0.7.7.0";
+       sha256 = "0v6irf01xykhv0mwr1k5i08jn77irqbz8h116j8p435d11xc5jrw";
        libraryHaskellDepends = [
          base data-default-class exceptions ghc-prim random transformers
        ];
@@ -176180,6 +177061,24 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {inherit (pkgs) rocksdb;};
 
+  "rocksdb-query" = callPackage
+    ({ mkDerivation, base, bytestring, cereal, conduit, hspec
+     , resourcet, rocksdb-haskell, unliftio
+     }:
+     mkDerivation {
+       pname = "rocksdb-query";
+       version = "0.1.1";
+       sha256 = "17sgac07f6vc1ffp8ynlrjn1n0ww0dsdr43jha10d1n5564a2lyw";
+       libraryHaskellDepends = [
+         base bytestring cereal conduit resourcet rocksdb-haskell unliftio
+       ];
+       testHaskellDepends = [
+         base cereal hspec rocksdb-haskell unliftio
+       ];
+       description = "RocksDB database querying library for Haskell";
+       license = stdenv.lib.licenses.publicDomain;
+     }) {};
+
   "roguestar" = callPackage
     ({ mkDerivation, base, bytestring, directory, filepath, old-time
      , process
@@ -176759,6 +177658,22 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "row" = callPackage
+    ({ mkDerivation, base, base-unicode-symbols, criterion, smallcheck
+     , tasty, tasty-smallcheck, util
+     }:
+     mkDerivation {
+       pname = "row";
+       version = "0.0.0.0";
+       sha256 = "16iy0b0aqvpn1dnw96h8vp4354774c0lp7fq4qibqwd8bv99mmps";
+       libraryHaskellDepends = [ base base-unicode-symbols util ];
+       testHaskellDepends = [ base smallcheck tasty tasty-smallcheck ];
+       benchmarkHaskellDepends = [ base criterion ];
+       doHaddock = false;
+       description = "Row types";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "row-types" = callPackage
     ({ mkDerivation, base, constraints, criterion, deepseq, hashable
      , text, unordered-containers
@@ -178110,6 +179025,27 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "salak" = callPackage
+    ({ mkDerivation, aeson, aeson-pretty, base, bytestring, directory
+     , filepath, hspec, QuickCheck, scientific, text
+     , unordered-containers, vector, yaml
+     }:
+     mkDerivation {
+       pname = "salak";
+       version = "0.1.4";
+       sha256 = "17zlgk85yp6ihfppf0simrvc70sk2a3jkjzxzzsgibyxmsm2jmxr";
+       libraryHaskellDepends = [
+         aeson base directory filepath scientific text unordered-containers
+         vector yaml
+       ];
+       testHaskellDepends = [
+         aeson aeson-pretty base bytestring directory filepath hspec
+         QuickCheck scientific text unordered-containers vector yaml
+       ];
+       description = "Configuration Loader";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "saltine" = callPackage
     ({ mkDerivation, base, bytestring, libsodium, profunctors
      , QuickCheck, semigroups, test-framework
@@ -179545,6 +180481,8 @@ self: {
        pname = "scotty";
        version = "0.11.2";
        sha256 = "18lxgnj05p4hk7pp4a84biz2dn387a5vxwzyh1kslns1bra6zn0x";
+       revision = "1";
+       editedCabalFile = "1h4fk7q8x7cvlqq4bbmdh465s6a8955bgchm121fvk08x7rm3yz3";
        libraryHaskellDepends = [
          aeson base blaze-builder bytestring case-insensitive
          data-default-class exceptions fail http-types monad-control mtl
@@ -180453,27 +181391,50 @@ self: {
      }) {};
 
   "secp256k1" = callPackage
-    ({ mkDerivation, base, base16-bytestring, bytestring, Cabal, cereal
-     , cryptohash, entropy, HUnit, mtl, QuickCheck, string-conversions
-     , test-framework, test-framework-hunit, test-framework-quickcheck2
+    ({ mkDerivation, base, base16-bytestring, bytestring, cereal
+     , cryptohash, entropy, hspec, hspec-discover, HUnit, mtl
+     , QuickCheck, secp256k1, string-conversions
      }:
      mkDerivation {
        pname = "secp256k1";
-       version = "0.5.3";
-       sha256 = "1fb9n7r64h35822zsa0w2jb214gdfg85ib20ni3caszc1k8rsmck";
-       setupHaskellDepends = [ base Cabal ];
+       version = "1.1.2";
+       sha256 = "0nm8xx9cfn5gj2rqhcmikdkl3grj88xs4wikjbrlazvpyj4rc0q2";
+       libraryHaskellDepends = [
+         base base16-bytestring bytestring cereal cryptohash entropy hspec
+         HUnit mtl QuickCheck string-conversions
+       ];
+       librarySystemDepends = [ secp256k1 ];
+       testHaskellDepends = [
+         base base16-bytestring bytestring cereal cryptohash entropy hspec
+         HUnit mtl QuickCheck string-conversions
+       ];
+       testToolDepends = [ hspec-discover ];
+       description = "Bindings for secp256k1 library from Bitcoin Core";
+       license = stdenv.lib.licenses.publicDomain;
+     }) {inherit (pkgs) secp256k1;};
+
+  "secp256k1-haskell" = callPackage
+    ({ mkDerivation, base, base16-bytestring, bytestring, cereal
+     , entropy, hspec, hspec-discover, HUnit, mtl, QuickCheck, secp256k1
+     , string-conversions
+     }:
+     mkDerivation {
+       pname = "secp256k1-haskell";
+       version = "0.1.2";
+       sha256 = "1kap1jjhqqmp8f067z9z8dw39gswn37bkj5j3byyvv4cn077ihva";
        libraryHaskellDepends = [
-         base base16-bytestring bytestring cereal entropy mtl QuickCheck
+         base base16-bytestring bytestring cereal entropy QuickCheck
          string-conversions
        ];
+       librarySystemDepends = [ secp256k1 ];
        testHaskellDepends = [
-         base base16-bytestring bytestring cereal cryptohash entropy HUnit
-         mtl QuickCheck string-conversions test-framework
-         test-framework-hunit test-framework-quickcheck2
+         base base16-bytestring bytestring cereal entropy hspec HUnit mtl
+         QuickCheck string-conversions
        ];
+       testToolDepends = [ hspec-discover ];
        description = "Bindings for secp256k1 library from Bitcoin Core";
        license = stdenv.lib.licenses.publicDomain;
-     }) {};
+     }) {inherit (pkgs) secp256k1;};
 
   "secret-santa" = callPackage
     ({ mkDerivation, base, containers, diagrams-cairo, diagrams-lib
@@ -180602,14 +181563,14 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "selda_0_3_2_0" = callPackage
+  "selda_0_3_3_1" = callPackage
     ({ mkDerivation, base, bytestring, exceptions, hashable, mtl
      , psqueues, text, time, unordered-containers
      }:
      mkDerivation {
        pname = "selda";
-       version = "0.3.2.0";
-       sha256 = "1ngvh7w4s0w57qaizzxin641x9v4v2rm03lnkfcxklq93l3khgp6";
+       version = "0.3.3.1";
+       sha256 = "1rxwyls59mpmvb5f2l47ak5cnzmws847kgmn8fwbxb69h6a87bwr";
        libraryHaskellDepends = [
          base bytestring exceptions hashable mtl psqueues text time
          unordered-containers
@@ -181180,8 +182141,8 @@ self: {
      }:
      mkDerivation {
        pname = "sensu-run";
-       version = "0.6.0";
-       sha256 = "1hzi5bkzc3wl031jhpr7j639zxijb33sdwg7zrb5xqdrpmfhg1zm";
+       version = "0.6.0.2";
+       sha256 = "1lxz3cr04f4bqlm4jph66ckab494vqlaf6jc67dbmmwia6if2fpw";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -182257,8 +183218,8 @@ self: {
        pname = "servant-dhall";
        version = "0.1.0.1";
        sha256 = "1yriifnflvh4f0vv2mrfv6qw0cv35isrq03q4h43g096ml2wl3ll";
-       revision = "1";
-       editedCabalFile = "0p8ygb5l79zzawnmy992wnicxv2cbbr0860063mbchmjwjf39x33";
+       revision = "2";
+       editedCabalFile = "1zdvk0cx8s1n107yx95vdv0xziwjmr1d6kypr36f1cqdvdh02jir";
        libraryHaskellDepends = [
          base base-compat bytestring dhall http-media megaparsec
          prettyprinter servant text
@@ -182547,6 +183508,32 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "servant-hmac-auth" = callPackage
+    ({ mkDerivation, aeson, base, base64-bytestring, binary, bytestring
+     , case-insensitive, containers, cryptonite, http-client, http-types
+     , markdown-unlit, memory, mtl, servant, servant-client
+     , servant-client-core, servant-server, transformers, wai, warp
+     }:
+     mkDerivation {
+       pname = "servant-hmac-auth";
+       version = "0.0.0";
+       sha256 = "08873pwmn2wzhl2r87gx6db3f2j8848g4xq2i4gnwqj23s7sfy0z";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base base64-bytestring binary bytestring case-insensitive
+         containers cryptonite http-client http-types memory mtl servant
+         servant-client servant-client-core servant-server transformers wai
+       ];
+       executableHaskellDepends = [
+         aeson base http-client servant servant-client servant-server warp
+       ];
+       executableToolDepends = [ markdown-unlit ];
+       testHaskellDepends = [ base ];
+       description = "Servant authentication with HMAC";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "servant-iCalendar" = callPackage
     ({ mkDerivation, base, data-default, http-media, iCalendar, servant
      }:
@@ -182983,24 +183970,26 @@ self: {
   "servant-rawm" = callPackage
     ({ mkDerivation, base, bytestring, doctest, filepath, Glob
      , hspec-wai, http-client, http-media, http-types, lens, resourcet
-     , servant, servant-client, servant-docs, servant-server, tasty
-     , tasty-hspec, tasty-hunit, transformers, wai, wai-app-static, warp
+     , 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.2.0.2";
-       sha256 = "0nkwi6jxwx8hwsf7fazvr9xffjsy99y4pb3ikw27f8ag8dx8frm2";
+       version = "0.3.0.0";
+       sha256 = "09va9glqkyarxsq9296br55ka8j5jd5nlb833hndpf4ib10yxzp9";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          base bytestring filepath http-client http-media http-types lens
-         resourcet servant-client servant-docs servant-server wai
-         wai-app-static
+         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-server tasty tasty-hspec
-         tasty-hunit transformers wai warp
+         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;
@@ -183046,27 +184035,12 @@ self: {
      }:
      mkDerivation {
        pname = "servant-ruby";
-       version = "0.8.0.1";
-       sha256 = "07pdz6zdax415virbx30cjbiywlzfwzsaq9426l14zwmgf7pw155";
-       libraryHaskellDepends = [ base casing servant-foreign text ];
-       testHaskellDepends = [ base doctest QuickCheck ];
-       description = "Generate a Ruby client from a Servant API with Net::HTTP";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "servant-ruby_0_8_0_2" = callPackage
-    ({ mkDerivation, base, casing, doctest, QuickCheck, servant-foreign
-     , text
-     }:
-     mkDerivation {
-       pname = "servant-ruby";
        version = "0.8.0.2";
        sha256 = "11h70gpar931qh3v1llp8zzk5922p31bmmfp5ynp7nzxv3zdrim6";
        libraryHaskellDepends = [ base casing servant-foreign text ];
        testHaskellDepends = [ base doctest QuickCheck ];
        description = "Generate a Ruby client from a Servant API with Net::HTTP";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "servant-scotty" = callPackage
@@ -183976,6 +184950,8 @@ self: {
        pname = "set-cover";
        version = "0.0.9";
        sha256 = "1qbk5y2pg6jlclszd2nras5240r0ahapsibykkcqrxhgq0hgvsxg";
+       revision = "1";
+       editedCabalFile = "0mcg15645maj1ymfrgs9ghi8n3hwwd72441zxcg9gn1w3pq7zsaw";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -184079,23 +185055,11 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "setlocale";
-       version = "1.0.0.6";
-       sha256 = "1rl8qb8vzv8fdbczy2dxwgn4cb68lfrjdxf2w8nn9wy1acqzcyjq";
-       libraryHaskellDepends = [ base ];
-       description = "Haskell bindings to setlocale";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "setlocale_1_0_0_8" = callPackage
-    ({ mkDerivation, base }:
-     mkDerivation {
-       pname = "setlocale";
        version = "1.0.0.8";
        sha256 = "0sdrsmkhw08483d73ysgm2926fdbhii61br03lqpqw0lfzj4ilbd";
        libraryHaskellDepends = [ base ];
        description = "Haskell bindings to setlocale";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "setoid" = callPackage
@@ -184557,8 +185521,8 @@ self: {
      }:
      mkDerivation {
        pname = "shake-ats";
-       version = "1.9.0.3";
-       sha256 = "1c1vphg9vv4lizcsg681wxq5dmvg5fkhp6x15738j7sfbd0k87ja";
+       version = "1.9.0.5";
+       sha256 = "1j417h6nkwkjgprcaf59lilv6d151qhc8ibzd0jimkx08pv414rz";
        libraryHaskellDepends = [
          base binary dependency directory hs2ats language-ats microlens
          shake shake-c shake-cabal shake-ext text
@@ -184580,14 +185544,15 @@ self: {
      }) {};
 
   "shake-cabal" = callPackage
-    ({ mkDerivation, base, Cabal, composition-prelude, directory, shake
+    ({ mkDerivation, base, Cabal, composition-prelude, directory
+     , filepath, shake
      }:
      mkDerivation {
        pname = "shake-cabal";
-       version = "0.1.0.4";
-       sha256 = "1in3f31pm253vzcds66pa2ddjl983l2w8j3vj52rykg2dynl625q";
+       version = "0.1.0.5";
+       sha256 = "1h8a3c3fwg2jz1p6k5253hjfaqbwwwdygrj2hdsgwn6laq75kd6s";
        libraryHaskellDepends = [
-         base Cabal composition-prelude directory shake
+         base Cabal composition-prelude directory filepath shake
        ];
        description = "Shake library for use with cabal";
        license = stdenv.lib.licenses.bsd3;
@@ -184821,6 +185786,32 @@ self: {
        maintainers = with stdenv.lib.maintainers; [ psibi ];
      }) {};
 
+  "shakespeare_2_0_17" = callPackage
+    ({ mkDerivation, aeson, base, blaze-html, blaze-markup, bytestring
+     , containers, directory, exceptions, ghc-prim, hspec, HUnit, parsec
+     , process, scientific, template-haskell, text, time, transformers
+     , unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "shakespeare";
+       version = "2.0.17";
+       sha256 = "1j6habv4glf8bvxiil9f59b553lfsi7mr7i30r63sy3g85qi09jg";
+       libraryHaskellDepends = [
+         aeson base blaze-html blaze-markup bytestring containers directory
+         exceptions ghc-prim parsec process scientific template-haskell text
+         time transformers unordered-containers vector
+       ];
+       testHaskellDepends = [
+         aeson base blaze-html blaze-markup bytestring containers directory
+         exceptions ghc-prim hspec HUnit parsec process template-haskell
+         text time transformers
+       ];
+       description = "A toolkit for making compile-time interpolated templates";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       maintainers = with stdenv.lib.maintainers; [ psibi ];
+     }) {};
+
   "shakespeare-babel" = callPackage
     ({ mkDerivation, base, classy-prelude, data-default, directory
      , process, shakespeare, template-haskell
@@ -185308,6 +186299,8 @@ self: {
        pname = "shelly";
        version = "1.8.1";
        sha256 = "023fbvbqs5gdwm30j5517gbdcc7fvz0md70dgwgpypkskj3i926y";
+       revision = "1";
+       editedCabalFile = "0crf0m077wky76f5nav2p9q4fa5q4yhv5l4bq9hd073dzdaywhz0";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -186308,10 +187301,8 @@ self: {
      }:
      mkDerivation {
        pname = "simple-log";
-       version = "0.9.6";
-       sha256 = "0cbzc5ib63x2m4xz88ks6xfg99c2plp2y6y7bzx3i3rrhd3y1pjn";
-       revision = "1";
-       editedCabalFile = "0qifmlqxd2pwh5rm7pzfwn6nq09yvjs7nfg8si4b3q7xlgal2sbx";
+       version = "0.9.7";
+       sha256 = "018rzapbmkkfhqzwdv2vgj4wbqi4wn2bgml0kd3khq3p06mhpnc5";
        libraryHaskellDepends = [
          async base base-unicode-symbols containers data-default deepseq
          directory exceptions filepath hformat microlens microlens-platform
@@ -186352,8 +187343,8 @@ self: {
      }:
      mkDerivation {
        pname = "simple-logging";
-       version = "0.2.0.3";
-       sha256 = "12ayxv1j2zzql01gka1p8m7pixjh6f87r5hamz3ydcyzn4vrl5j1";
+       version = "0.2.0.4";
+       sha256 = "13f6562rhk5bb5b2rmn0zsw2pil6qis463kx9d684j2m0qnqifdm";
        libraryHaskellDepends = [
          aeson base bytestring directory exceptions filepath hscolour
          iso8601-time lens mtl simple-effects string-conv text time uuid
@@ -187550,8 +188541,8 @@ self: {
      }:
      mkDerivation {
        pname = "skylighting";
-       version = "0.7.2";
-       sha256 = "1rh3z1a7a4clvksdw1qlpmhxqkfahwypi70k91whgfamzsqpxdch";
+       version = "0.7.3";
+       sha256 = "1pwawhfl2w9d06sv44lxa5hvh4lz9d5l0n8j7zjm08jibl30fc8g";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -187574,10 +188565,8 @@ self: {
      }:
      mkDerivation {
        pname = "skylighting-core";
-       version = "0.7.2";
-       sha256 = "066fwmwsd7xcvwlinfk2izlzq0xp8697i6lnbgsbl71jdybyackq";
-       revision = "1";
-       editedCabalFile = "0qjmk3i9kjnd3195fhphjgqvsgbw6blfjl40mdyiblw1piyvc6yw";
+       version = "0.7.3";
+       sha256 = "0qk2g86b0avd24q7hbkdjj0l2r5ma7kbzf3cj4sjwmh7wmx0ss7c";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -187827,8 +188816,8 @@ self: {
      }:
      mkDerivation {
        pname = "slick";
-       version = "0.1.0.2";
-       sha256 = "1s5ya5h253h599m3hkcilq7fya9ghgz4b5mlk8v1ywpdm1jab3dm";
+       version = "0.1.1.0";
+       sha256 = "0gqc9z8w9m1dvsnv7g1rsi367akkzp95w96lvx20sdg1gnzbx5rc";
        libraryHaskellDepends = [
          aeson base binary bytestring containers lens lens-aeson mustache
          pandoc shake text time
@@ -190415,12 +191404,15 @@ self: {
      }) {};
 
   "solve" = callPackage
-    ({ mkDerivation, base, containers }:
+    ({ mkDerivation, base, containers, filepath }:
      mkDerivation {
        pname = "solve";
-       version = "1.0";
-       sha256 = "06sk2imqgzk9zjr10ignigs04avnjjxfsi2qkk7vqfslhcfzgqnq";
-       libraryHaskellDepends = [ base containers ];
+       version = "1.1";
+       sha256 = "045bj6wskglwg0j0jk0jsqkp4m809g2fy350bi6m84smg64rr3y4";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base containers filepath ];
+       executableHaskellDepends = [ base containers filepath ];
        description = "Solving simple games";
        license = stdenv.lib.licenses.mit;
      }) {};
@@ -190674,6 +191666,24 @@ self: {
        license = "GPL";
      }) {};
 
+  "sox_0_2_3_1" = callPackage
+    ({ mkDerivation, base, containers, explicit-exception
+     , extensible-exceptions, process, sample-frame, semigroups
+     , transformers, unix, utility-ht
+     }:
+     mkDerivation {
+       pname = "sox";
+       version = "0.2.3.1";
+       sha256 = "0idab4rsqj4zjm7dlzbf38rzpvkp1z9psrkl4lrp2qp1s53sp9kh";
+       libraryHaskellDepends = [
+         base containers explicit-exception extensible-exceptions process
+         sample-frame semigroups transformers unix utility-ht
+       ];
+       description = "Play, write, read, convert audio signals using Sox";
+       license = "GPL";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "soxlib" = callPackage
     ({ mkDerivation, base, bytestring, containers, explicit-exception
      , extensible-exceptions, sample-frame, sox, storablevector
@@ -190694,6 +191704,27 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {inherit (pkgs) sox;};
 
+  "soxlib_0_0_3_1" = callPackage
+    ({ mkDerivation, base, bytestring, explicit-exception
+     , extensible-exceptions, sample-frame, sox, storablevector
+     , transformers, utility-ht
+     }:
+     mkDerivation {
+       pname = "soxlib";
+       version = "0.0.3.1";
+       sha256 = "0f7ci58yls5rhq1vy1q1imlsgkbvadv8646fvvymg0jq2mjwgsfd";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base bytestring explicit-exception extensible-exceptions
+         sample-frame storablevector transformers utility-ht
+       ];
+       libraryPkgconfigDepends = [ sox ];
+       description = "Write, read, convert audio signals using libsox";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {inherit (pkgs) sox;};
+
   "soyuz" = callPackage
     ({ mkDerivation, base, bytestring, cereal, cmdargs, containers
      , pretty, QuickCheck, trifecta, uniplate, vector
@@ -190867,23 +191898,24 @@ self: {
      , attoparsec-uri, base, bytestring, deepseq, exceptions
      , extractable-singleton, hashable, http-client, http-client-tls
      , http-types, list-t, monad-control, monad-control-aligned, mtl
-     , nested-routes, path, path-extra, pred-trie, stm, strict, text
-     , tmapchan, tmapmvar, transformers, unordered-containers, urlpath
-     , uuid, wai, wai-middleware-content-type, wai-transformers
-     , websockets, websockets-simple, wuss
+     , nested-routes, path, path-extra, pred-trie, purescript-iso, stm
+     , strict, text, tmapchan, tmapmvar, transformers
+     , unordered-containers, urlpath, uuid, wai
+     , wai-middleware-content-type, wai-transformers, websockets
+     , websockets-simple, wuss
      }:
      mkDerivation {
        pname = "sparrow";
-       version = "0.0.2.1";
-       sha256 = "1j20536pjp4m26l8zvsaf8wv0vvj0fkwid1nkljl6zkggaqq5b8f";
+       version = "0.0.2.2";
+       sha256 = "0y1s22nfy234jgvvkxc77x0gcrlqb1g5vqni6vdwls6ww9n1jwba";
        libraryHaskellDepends = [
          aeson aeson-attoparsec async attoparsec attoparsec-uri base
          bytestring deepseq exceptions extractable-singleton hashable
          http-client http-client-tls http-types list-t monad-control
          monad-control-aligned mtl nested-routes path path-extra pred-trie
-         stm strict text tmapchan tmapmvar transformers unordered-containers
-         urlpath uuid wai wai-middleware-content-type wai-transformers
-         websockets websockets-simple wuss
+         purescript-iso stm strict text tmapchan tmapmvar transformers
+         unordered-containers urlpath uuid wai wai-middleware-content-type
+         wai-transformers websockets websockets-simple wuss
        ];
        description = "Unified streaming dependency management for web apps";
        license = stdenv.lib.licenses.bsd3;
@@ -191182,27 +192214,13 @@ self: {
     ({ mkDerivation, base, cmdargs, containers, leancheck }:
      mkDerivation {
        pname = "speculate";
-       version = "0.3.2";
-       sha256 = "0cf8121hfmyj1jrklf2i1bp2q4517627vgaz1flf363n93jnckfk";
-       libraryHaskellDepends = [ base cmdargs containers leancheck ];
-       testHaskellDepends = [ base leancheck ];
-       benchmarkHaskellDepends = [ base leancheck ];
-       description = "discovery of properties about Haskell functions";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "speculate_0_3_4" = callPackage
-    ({ mkDerivation, base, cmdargs, containers, leancheck }:
-     mkDerivation {
-       pname = "speculate";
-       version = "0.3.4";
-       sha256 = "10b6ka8rws62byxi4whncs77hl2jcx6pr3gibbh804v07dnl2dnv";
+       version = "0.3.5";
+       sha256 = "0i7a6mq0f46iihq7kd3a1780pqqhmmdi706c42y4dmmj32nb4v3h";
        libraryHaskellDepends = [ base cmdargs containers leancheck ];
        testHaskellDepends = [ base leancheck ];
        benchmarkHaskellDepends = [ base leancheck ];
        description = "discovery of properties about Haskell functions";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "speculation" = callPackage
@@ -191298,6 +192316,17 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "spherical" = callPackage
+    ({ mkDerivation, base, composition-prelude }:
+     mkDerivation {
+       pname = "spherical";
+       version = "0.1.2.1";
+       sha256 = "0c6c5pf39dd9zpk8g3kcbg6hagsjvxcmqxmfk1imv5fmd2g8cv8p";
+       libraryHaskellDepends = [ base composition-prelude ];
+       description = "Geometry on a sphere";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "sphero" = callPackage
     ({ mkDerivation, base, bytestring, cereal, containers, mtl
      , simple-bluetooth
@@ -191728,6 +192757,23 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "spreadsheet_0_1_3_8" = callPackage
+    ({ mkDerivation, base, explicit-exception, transformers, utility-ht
+     }:
+     mkDerivation {
+       pname = "spreadsheet";
+       version = "0.1.3.8";
+       sha256 = "0rd7qi6wy17fcz1a6pfqjxl3z816r8p6gyvz4zq85kgkjpkicrv4";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base explicit-exception transformers utility-ht
+       ];
+       description = "Read and write spreadsheets from and to CSV files in a lazy way";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "sprinkles" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, array, base, bytestring
      , Cabal, case-insensitive, cereal, classy-prelude, containers, curl
@@ -192170,6 +193216,40 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "squeal-postgresql_0_4_0_0" = callPackage
+    ({ mkDerivation, aeson, base, binary-parser, bytestring
+     , bytestring-strict-builder, deepseq, doctest, generics-sop, hspec
+     , lifted-base, mmorph, monad-control, mtl, network-ip
+     , postgresql-binary, postgresql-libpq, records-sop, resource-pool
+     , scientific, text, time, transformers, transformers-base
+     , uuid-types, vector
+     }:
+     mkDerivation {
+       pname = "squeal-postgresql";
+       version = "0.4.0.0";
+       sha256 = "10z1rq6jz8g6sv52bh9hjmjsw0pml9m4l04gzi19zxnwa597xk2b";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson base binary-parser bytestring bytestring-strict-builder
+         deepseq generics-sop lifted-base mmorph monad-control mtl
+         network-ip postgresql-binary postgresql-libpq records-sop
+         resource-pool scientific text time transformers transformers-base
+         uuid-types vector
+       ];
+       executableHaskellDepends = [
+         base bytestring generics-sop mtl text transformers
+         transformers-base vector
+       ];
+       testHaskellDepends = [
+         base bytestring doctest generics-sop hspec text transformers
+         transformers-base vector
+       ];
+       description = "Squeal PostgreSQL Library";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "squeeze" = callPackage
     ({ mkDerivation, base, Cabal, data-default, directory, extra
      , factory, filepath, mtl, QuickCheck, random, toolshed
@@ -192592,6 +193672,34 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "stache_2_0_0" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, containers, criterion
+     , deepseq, directory, file-embed, filepath, hspec, hspec-discover
+     , hspec-megaparsec, megaparsec, mtl, template-haskell, text
+     , unordered-containers, vector, yaml
+     }:
+     mkDerivation {
+       pname = "stache";
+       version = "2.0.0";
+       sha256 = "11j8rvl9dqda73hwd4p7rwmf36w6xc86ls53v9ip6ag2052j1cll";
+       enableSeparateDataOutput = true;
+       libraryHaskellDepends = [
+         aeson base bytestring containers deepseq directory filepath
+         megaparsec mtl template-haskell text unordered-containers vector
+       ];
+       testHaskellDepends = [
+         aeson base bytestring containers file-embed hspec hspec-megaparsec
+         megaparsec template-haskell text yaml
+       ];
+       testToolDepends = [ hspec-discover ];
+       benchmarkHaskellDepends = [
+         aeson base criterion deepseq megaparsec text
+       ];
+       description = "Mustache templates for Haskell";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "stack" = callPackage
     ({ mkDerivation, aeson, annotated-wl-pprint, ansi-terminal, async
      , attoparsec, base, base64-bytestring, bindings-uname, bytestring
@@ -192615,8 +193723,8 @@ self: {
        pname = "stack";
        version = "1.7.1";
        sha256 = "17rjc9fz1hn56jz4bnhhm50h5x71r69jizlw6dx7kfvm57hg5i0r";
-       revision = "9";
-       editedCabalFile = "12gbrnhmci2kpz42x7nwfzcq3syp0z2l14fjcakw8bhjmgd9wp34";
+       revision = "10";
+       editedCabalFile = "1985lm9m6pm9mi4h4m2nrn9v2rnnfh14slcnqgyxy6k934xqvg35";
        isLibrary = true;
        isExecutable = true;
        setupHaskellDepends = [ base Cabal filepath ];
@@ -192893,8 +194001,8 @@ self: {
      }:
      mkDerivation {
        pname = "stack2nix";
-       version = "0.2";
-       sha256 = "103cimrwr8j0b1zjpw195mjkfrgcgkicrpygcc5y82nyrl1cc74f";
+       version = "0.2.1";
+       sha256 = "0rwl6fzxv2ly20mn0pgv63r0ik4zpjigbkc4771ni7zazkxvx1gy";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -194134,12 +195242,12 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "stm_2_4_5_0" = callPackage
+  "stm_2_4_5_1" = callPackage
     ({ mkDerivation, array, base }:
      mkDerivation {
        pname = "stm";
-       version = "2.4.5.0";
-       sha256 = "19sr11a0hqikhvf561b38phz6k3zg9s157a0f5ffvghk7wcdpmri";
+       version = "2.4.5.1";
+       sha256 = "1x53lg07j6d42vnmmk2f9sfqx2v4hxjk3hm11fccjdi70s0c5w3c";
        libraryHaskellDepends = [ array base ];
        description = "Software Transactional Memory";
        license = stdenv.lib.licenses.bsd3;
@@ -194238,15 +195346,15 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "stm-containers_1_0_1_1" = callPackage
+  "stm-containers_1_1_0_2" = callPackage
     ({ mkDerivation, base, deferred-folds, focus, foldl, free, hashable
      , HTF, list-t, QuickCheck, quickcheck-text, rerebase, stm-hamt
      , transformers
      }:
      mkDerivation {
        pname = "stm-containers";
-       version = "1.0.1.1";
-       sha256 = "16yds93abv9nmrbd5dcwbvmrq2ag0hdprs01khvnn9qg0nqs3lfn";
+       version = "1.1.0.2";
+       sha256 = "1yhivblfxycr2vk09gwg904n6fqkzn5g5rvg3whm40fnabdfa9av";
        libraryHaskellDepends = [
          base deferred-folds focus hashable list-t stm-hamt transformers
        ];
@@ -194309,8 +195417,8 @@ self: {
      }:
      mkDerivation {
        pname = "stm-hamt";
-       version = "1.1.2.1";
-       sha256 = "1xbd1kcmiq1qah8hc3bkzf9wlhwrnf2qlh8rah8dyln0dcwapi6q";
+       version = "1.2.0.2";
+       sha256 = "17ywv40vxclkg2lgl52r3j30r1n0jcvahamcfnr3n5a1lh86149w";
        libraryHaskellDepends = [
          base deferred-folds focus hashable list-t primitive
          primitive-extras transformers
@@ -195050,6 +196158,8 @@ self: {
        pname = "streaming";
        version = "0.2.1.0";
        sha256 = "0xah2cn12dxqc54wa5yxx0g0b9n0xy0czc0c32awql63qhw5w7g1";
+       revision = "2";
+       editedCabalFile = "124nccw28cwzjzl82anbwk7phcyfzlz8yx6wyl4baymzdikvbpgq";
        libraryHaskellDepends = [
          base containers ghc-prim mmorph mtl semigroups transformers
          transformers-base
@@ -195482,6 +196592,8 @@ self: {
        pname = "streaming-with";
        version = "0.2.2.1";
        sha256 = "005krn43z92x1v8w8pgfx489h3livkklgrr7s2i2wijgsz55xp09";
+       revision = "1";
+       editedCabalFile = "0z1jy02hc4k1xv0bd4981cblnm4pr022hakrj6zmi4zds74m9wzm";
        libraryHaskellDepends = [
          base exceptions managed streaming-bytestring temporary transformers
        ];
@@ -195512,28 +196624,28 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "streamly_0_4_1" = callPackage
-    ({ mkDerivation, atomic-primops, base, containers, deepseq
+  "streamly_0_5_0" = callPackage
+    ({ mkDerivation, atomic-primops, base, clock, containers, deepseq
      , exceptions, gauge, ghc-prim, heaps, hspec, lockfree-queue
      , monad-control, mtl, QuickCheck, random, transformers
      , transformers-base
      }:
      mkDerivation {
        pname = "streamly";
-       version = "0.4.1";
-       sha256 = "0xxkb8vdnbyq5l590wh3ig68xw4ny44aymx4k816cbif2da5w7zy";
+       version = "0.5.0";
+       sha256 = "1kzgrwnr2w6w4yjmx4qm325d0hf4wy21gb7a1cv0db4jkha3672s";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         atomic-primops base containers exceptions ghc-prim heaps
+         atomic-primops base clock containers exceptions ghc-prim heaps
          lockfree-queue monad-control mtl transformers transformers-base
        ];
        testHaskellDepends = [
          base containers exceptions hspec mtl QuickCheck random transformers
        ];
        benchmarkHaskellDepends = [
-         atomic-primops base containers deepseq exceptions gauge ghc-prim
-         heaps lockfree-queue monad-control mtl random transformers
+         atomic-primops base clock containers deepseq exceptions gauge
+         ghc-prim heaps lockfree-queue monad-control mtl random transformers
          transformers-base
        ];
        description = "Beautiful Streaming, Concurrent and Reactive Composition";
@@ -196877,6 +197989,33 @@ self: {
        license = stdenv.lib.licenses.mpl20;
      }) {};
 
+  "summoner_1_1_0_1" = callPackage
+    ({ mkDerivation, aeson, ansi-terminal, base-noprelude, bytestring
+     , directory, filepath, generic-deriving, gitrev, hedgehog
+     , neat-interpolation, optparse-applicative, process, relude, tasty
+     , tasty-discover, tasty-hedgehog, text, time, tomland
+     }:
+     mkDerivation {
+       pname = "summoner";
+       version = "1.1.0.1";
+       sha256 = "0l9v85d9s5n6lz9k2k44pxx8yqqmrxnvz9q0pi5rhvwq53c50x83";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson ansi-terminal base-noprelude bytestring directory filepath
+         generic-deriving gitrev neat-interpolation optparse-applicative
+         process relude text time tomland
+       ];
+       executableHaskellDepends = [ base-noprelude relude ];
+       testHaskellDepends = [
+         base-noprelude hedgehog relude tasty tasty-hedgehog tomland
+       ];
+       testToolDepends = [ tasty-discover ];
+       description = "Tool for creating completely configured production Haskell projects";
+       license = stdenv.lib.licenses.mpl20;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "sump" = callPackage
     ({ mkDerivation, base, bytestring, data-default, lens, serialport
      , transformers, vector
@@ -197956,8 +199095,8 @@ self: {
      }:
      mkDerivation {
        pname = "symantic";
-       version = "6.3.1.20180213";
-       sha256 = "16bbby4lcyna842gvf95ss8fvsp5kgzpn996yxzv3jjhxg00ls5d";
+       version = "6.3.2.20180208";
+       sha256 = "1a6ifwhrn35wfx0lf2gbq203rb882p7hl0yji7rwfrvxrp4ax518";
        libraryHaskellDepends = [
          base containers mono-traversable symantic-document symantic-grammar
          text transformers
@@ -197966,13 +199105,33 @@ self: {
        license = stdenv.lib.licenses.gpl3;
      }) {};
 
+  "symantic-cli" = callPackage
+    ({ mkDerivation, base, containers, megaparsec, symantic-document
+     , text, transformers
+     }:
+     mkDerivation {
+       pname = "symantic-cli";
+       version = "0.0.0.20180410";
+       sha256 = "0025rgjjz198sh6gb8zzy7283pnb6vza3q3d7x5xl27c77mpivpx";
+       libraryHaskellDepends = [
+         base containers megaparsec symantic-document text transformers
+       ];
+       description = "Library for Command Line Interface (CLI)";
+       license = stdenv.lib.licenses.gpl3;
+     }) {};
+
   "symantic-document" = callPackage
-    ({ mkDerivation, ansi-terminal, base, text }:
+    ({ mkDerivation, ansi-terminal, base, containers, tasty
+     , tasty-hunit, text, transformers
+     }:
      mkDerivation {
        pname = "symantic-document";
-       version = "0.0.0.20180213";
-       sha256 = "0f3rr8117cr78nkcw7kpddcpisbmvsyw03ym7cq6ms0z8zqynwpm";
-       libraryHaskellDepends = [ ansi-terminal base text ];
+       version = "0.1.2.20180831";
+       sha256 = "1vlxgn9gdd03azqf2csxjiyqsplg68wv3qr6d08zj5dvqskz27by";
+       libraryHaskellDepends = [ ansi-terminal base text transformers ];
+       testHaskellDepends = [
+         base containers tasty tasty-hunit text transformers
+       ];
        description = "Document symantics";
        license = stdenv.lib.licenses.gpl3;
      }) {};
@@ -197983,8 +199142,8 @@ self: {
      }:
      mkDerivation {
        pname = "symantic-grammar";
-       version = "0.3.0.20180213";
-       sha256 = "0kqy27c4ix16v7n7zqhc57alrg1n1xksdf7ijsbvpjs4597vpwih";
+       version = "0.3.1.20180831";
+       sha256 = "0n2x5sb5gv9lkhfmq9yfjxfk6q19h71xqbskkg7ar8nglz0jhldp";
        libraryHaskellDepends = [ base text ];
        testHaskellDepends = [
          base megaparsec tasty tasty-hunit text transformers
@@ -198000,8 +199159,8 @@ self: {
      }:
      mkDerivation {
        pname = "symantic-lib";
-       version = "0.0.3.20180213";
-       sha256 = "17y4rmw9l4j3j9g2i60las3q6y7rlklzr48xr8arkhi0i5zi1qw2";
+       version = "0.0.4.20180831";
+       sha256 = "1agqlz7drckjm8a2swvqiryy7y6kdahq8d24rwkbzn3nw1bnyvk1";
        libraryHaskellDepends = [
          base containers mono-traversable symantic symantic-grammar text
          transformers
@@ -198449,8 +199608,8 @@ self: {
      }:
      mkDerivation {
        pname = "synthesizer-core";
-       version = "0.8.2";
-       sha256 = "0r8lik2gmaxn1ay0wyjvq2r51jb8vy99hypvrnhbc6hsjybdh8aa";
+       version = "0.8.2.1";
+       sha256 = "1sdvqabxlgiqqb3kppxwyvmkmvcqrmrzicbmcmy6mr5c4npjxffj";
        libraryHaskellDepends = [
          array base binary bytestring containers deepseq event-list
          explicit-exception filepath non-empty non-negative numeric-prelude
@@ -198497,8 +199656,8 @@ self: {
      }:
      mkDerivation {
        pname = "synthesizer-filter";
-       version = "0.4.1";
-       sha256 = "1gbyb50lj5k69vn316lzb27jx5l2p8jn90b4k6zlqb050sp9c26s";
+       version = "0.4.1.1";
+       sha256 = "0130y7v7r6fhclyg4fg4jj07x1lvn8cvh40w43m2j3sdcmzaa25a";
        libraryHaskellDepends = [
          base containers numeric-prelude numeric-quest synthesizer-core
          transformers utility-ht
@@ -198564,8 +199723,8 @@ self: {
      }:
      mkDerivation {
        pname = "synthesizer-midi";
-       version = "0.6.1";
-       sha256 = "02z6sywk047vn2is9fq9nr4agdy9xis9ydbl15pmrb0vlmvpx3qr";
+       version = "0.6.1.1";
+       sha256 = "1f57i0lz8wy9kz6qkpbrpywlf0lxwq44yqgzc9kgrb4gy97p0cm5";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -198719,6 +199878,26 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "system-fileio_0_3_16_4" = callPackage
+    ({ mkDerivation, base, bytestring, chell, system-filepath
+     , temporary, text, time, transformers, unix
+     }:
+     mkDerivation {
+       pname = "system-fileio";
+       version = "0.3.16.4";
+       sha256 = "1iy6g1f35gzyj12g9mdiw4zf75mmxpv1l8cyaldgyscsl648pr9l";
+       libraryHaskellDepends = [
+         base bytestring system-filepath text time unix
+       ];
+       testHaskellDepends = [
+         base bytestring chell system-filepath temporary text time
+         transformers unix
+       ];
+       description = "Consistent filesystem interaction across GHC versions (deprecated)";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "system-filepath" = callPackage
     ({ mkDerivation, base, bytestring, Cabal, chell, chell-quickcheck
      , deepseq, QuickCheck, text
@@ -199344,6 +200523,32 @@ self: {
        license = "GPL";
      }) {};
 
+  "tagchup_0_4_1_1" = callPackage
+    ({ mkDerivation, base, bytestring, containers, data-accessor
+     , explicit-exception, non-empty, old-time, transformers, utility-ht
+     , xml-basic
+     }:
+     mkDerivation {
+       pname = "tagchup";
+       version = "0.4.1.1";
+       sha256 = "127ffhggdcbapizddhzwy538h3znppvr28mh9y2lv9ihbwcfxd75";
+       isLibrary = true;
+       isExecutable = true;
+       enableSeparateDataOutput = true;
+       libraryHaskellDepends = [
+         base bytestring containers data-accessor explicit-exception
+         non-empty transformers utility-ht xml-basic
+       ];
+       testHaskellDepends = [ base xml-basic ];
+       benchmarkHaskellDepends = [
+         base bytestring containers data-accessor explicit-exception
+         old-time transformers utility-ht xml-basic
+       ];
+       description = "alternative package for processing of tag soups";
+       license = "GPL";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "tagged" = callPackage
     ({ mkDerivation, base, deepseq, template-haskell, transformers
      , transformers-compat
@@ -200001,8 +201206,8 @@ self: {
      }:
      mkDerivation {
        pname = "tar-conduit";
-       version = "0.2.3.1";
-       sha256 = "0z108pzvh4r87dykapxl36bhby4jhkya53dy2pglb891m54wswpc";
+       version = "0.2.5";
+       sha256 = "0gnklkw9qv496m8nxm1mlfddyiw8c5lsj5pcshxv7c6rv9n3vva3";
        libraryHaskellDepends = [
          base bytestring conduit conduit-combinators directory filepath
          safe-exceptions text unix
@@ -200019,6 +201224,32 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "tar-conduit_0_3_0" = callPackage
+    ({ mkDerivation, base, bytestring, conduit, conduit-combinators
+     , conduit-extra, containers, criterion, deepseq, directory
+     , filepath, hspec, QuickCheck, safe-exceptions, text, unix, weigh
+     }:
+     mkDerivation {
+       pname = "tar-conduit";
+       version = "0.3.0";
+       sha256 = "0g35wiqn0bi31sqnzknq90iy265c7lw15rkyrzc6c2vp6nl86j08";
+       libraryHaskellDepends = [
+         base bytestring conduit conduit-combinators directory filepath
+         safe-exceptions text unix
+       ];
+       testHaskellDepends = [
+         base bytestring conduit conduit-combinators conduit-extra
+         containers deepseq directory filepath hspec QuickCheck weigh
+       ];
+       benchmarkHaskellDepends = [
+         base bytestring conduit conduit-combinators containers criterion
+         deepseq directory filepath hspec
+       ];
+       description = "Extract and create tar files using conduit for streaming";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "tardis" = callPackage
     ({ mkDerivation, base, mmorph, mtl }:
      mkDerivation {
@@ -200373,8 +201604,8 @@ self: {
        pname = "tasty-hspec";
        version = "1.1.5";
        sha256 = "0m0ip2l4rg4pnrvk3mjxkbq2l683psv1x3v9l4rglk2k3pvxq36v";
-       revision = "1";
-       editedCabalFile = "0zgbcrahzfg37bnni6fj0qb0fpbk5rdha589mh960d5sbq58pljf";
+       revision = "2";
+       editedCabalFile = "0rya3dnhrci40nsf3fd5jdzn875n3awpy2xzb99jfl9i2cs3krc2";
        libraryHaskellDepends = [
          base hspec hspec-core QuickCheck tasty tasty-quickcheck
          tasty-smallcheck
@@ -200508,6 +201739,18 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "tasty-leancheck" = callPackage
+    ({ mkDerivation, base, leancheck, tasty }:
+     mkDerivation {
+       pname = "tasty-leancheck";
+       version = "0.0.1";
+       sha256 = "06nki1l05hh5r0q2lkn4rmj0cl8hz7r7zc71r64fx2k9z65n5497";
+       libraryHaskellDepends = [ base leancheck tasty ];
+       testHaskellDepends = [ base leancheck tasty ];
+       description = "LeanCheck support for the Tasty test framework";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "tasty-lens" = callPackage
     ({ mkDerivation, base, lens, smallcheck, smallcheck-lens, tasty
      , tasty-smallcheck
@@ -200659,8 +201902,8 @@ self: {
     ({ mkDerivation, base, tasty, tasty-hunit }:
      mkDerivation {
        pname = "tasty-travis";
-       version = "0.2.0.1";
-       sha256 = "05k9zddmhbcs2xf9n6ln3591cscxix7pakc42j4arw4iwrfiqp17";
+       version = "0.2.0.2";
+       sha256 = "0g1qwmr11rgpvm964367mskgrjzbi34lbxzf9c0knx5ij9565gfg";
        libraryHaskellDepends = [ base tasty ];
        testHaskellDepends = [ base tasty tasty-hunit ];
        description = "Fancy Travis CI output for tasty tests";
@@ -201566,7 +202809,6 @@ self: {
        ];
        description = "TensorFlow bindings";
        license = stdenv.lib.licenses.asl20;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {inherit (pkgs) libtensorflow;};
 
   "tensorflow-core-ops" = callPackage
@@ -201587,7 +202829,6 @@ self: {
        ];
        description = "Haskell wrappers for Core Tensorflow Ops";
        license = stdenv.lib.licenses.asl20;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "tensorflow-logging" = callPackage
@@ -201616,7 +202857,6 @@ self: {
        ];
        description = "TensorBoard related functionality";
        license = stdenv.lib.licenses.asl20;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "tensorflow-mnist" = callPackage
@@ -201669,7 +202909,6 @@ self: {
        ];
        description = "Code generation for TensorFlow operations";
        license = stdenv.lib.licenses.asl20;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "tensorflow-ops" = callPackage
@@ -201699,7 +202938,6 @@ self: {
        ];
        description = "Friendly layer around TensorFlow bindings";
        license = stdenv.lib.licenses.asl20;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "tensorflow-proto" = callPackage
@@ -201717,7 +202955,6 @@ self: {
        libraryToolDepends = [ protobuf ];
        description = "TensorFlow protocol buffers";
        license = stdenv.lib.licenses.asl20;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {inherit (pkgs) protobuf;};
 
   "tensorflow-records" = callPackage
@@ -201953,7 +203190,6 @@ self: {
        ];
        description = "Terminal emulator configurable in Haskell";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {gtk3 = pkgs.gnome3.gtk;};
 
   "termplot" = callPackage
@@ -202121,6 +203357,18 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "test-framework-leancheck" = callPackage
+    ({ mkDerivation, base, leancheck, test-framework }:
+     mkDerivation {
+       pname = "test-framework-leancheck";
+       version = "0.0.1";
+       sha256 = "0bwzc0vq28cmy5r966jxhacijd2hkna4magd9aw5wz34dcp4qv13";
+       libraryHaskellDepends = [ base leancheck test-framework ];
+       testHaskellDepends = [ base leancheck test-framework ];
+       description = "LeanCheck support for test-framework";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "test-framework-program" = callPackage
     ({ mkDerivation, base, directory, process, test-framework }:
      mkDerivation {
@@ -202165,6 +203413,22 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "test-framework-quickcheck2_0_3_0_5" = callPackage
+    ({ mkDerivation, base, extensible-exceptions, QuickCheck, random
+     , test-framework
+     }:
+     mkDerivation {
+       pname = "test-framework-quickcheck2";
+       version = "0.3.0.5";
+       sha256 = "0ngf9vvby4nrdf1i7dxf5m9jn0g2pkq32w48xdr92n9hxka7ixn9";
+       libraryHaskellDepends = [
+         base extensible-exceptions QuickCheck random test-framework
+       ];
+       description = "QuickCheck-2 support for the test-framework package";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "test-framework-sandbox" = callPackage
     ({ mkDerivation, ansi-terminal, base, HUnit, lifted-base, mtl
      , temporary, test-framework, test-sandbox, test-sandbox-hunit
@@ -202651,6 +203915,29 @@ self: {
        license = stdenv.lib.licenses.gpl2;
      }) {};
 
+  "texmath_0_11_1" = callPackage
+    ({ mkDerivation, base, bytestring, containers, directory, filepath
+     , mtl, pandoc-types, parsec, process, split, syb, temporary, text
+     , utf8-string, xml
+     }:
+     mkDerivation {
+       pname = "texmath";
+       version = "0.11.1";
+       sha256 = "169jp9y6azpkkcbx0h03kbjg7f58wsk7bs18dn3h9m3sia6bnw99";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base containers mtl pandoc-types parsec syb xml
+       ];
+       testHaskellDepends = [
+         base bytestring directory filepath process split temporary text
+         utf8-string xml
+       ];
+       description = "Conversion between formats used to represent mathematics";
+       license = stdenv.lib.licenses.gpl2;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "texrunner" = callPackage
     ({ mkDerivation, attoparsec, base, bytestring, directory, filepath
      , HUnit, io-streams, lens, mtl, process, semigroups, temporary
@@ -202745,8 +204032,8 @@ self: {
      }:
      mkDerivation {
        pname = "text-builder";
-       version = "0.5.3.1";
-       sha256 = "04vqh30m4vi9d4b4g311fb861qijbmf9zmn9ldsrdb1rrgjk2y9q";
+       version = "0.5.4.3";
+       sha256 = "1xcyi3bw44anzah5c4c0wm18vnyqsr3q7ww2kp2psk41ql6gan2h";
        libraryHaskellDepends = [
          base base-prelude bytestring semigroups text
        ];
@@ -202760,17 +204047,19 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "text-builder_0_5_4_1" = callPackage
+  "text-builder_0_6_3" = callPackage
     ({ mkDerivation, base, base-prelude, bytestring, criterion
-     , QuickCheck, quickcheck-instances, rerebase, semigroups, tasty
-     , tasty-hunit, tasty-quickcheck, text
+     , deferred-folds, QuickCheck, quickcheck-instances, rerebase
+     , semigroups, tasty, tasty-hunit, tasty-quickcheck, text
+     , transformers
      }:
      mkDerivation {
        pname = "text-builder";
-       version = "0.5.4.1";
-       sha256 = "1ipmfnjbkp2qllqdahdf9jwbks6vhalaw65clv9izbhp7d20gjai";
+       version = "0.6.3";
+       sha256 = "00i0p155sfii0pl3300xa4af57nhhcz690qr0drwby34xqjy2c1z";
        libraryHaskellDepends = [
-         base base-prelude bytestring semigroups text
+         base base-prelude bytestring deferred-folds semigroups text
+         transformers
        ];
        testHaskellDepends = [
          QuickCheck quickcheck-instances rerebase tasty tasty-hunit
@@ -202891,6 +204180,8 @@ self: {
        pname = "text-generic-pretty";
        version = "1.2.1";
        sha256 = "1isj8wccd0yrgpmlggd2zykb8d9r77blngsqlbwmqs9gxbyk3wyg";
+       revision = "1";
+       editedCabalFile = "1m512nd5w4z6f12qy10bpjqfmpwkm5wg0kdrvvzc45s4dxmzwbxz";
        libraryHaskellDepends = [
          base containers ghc-prim groom ixset-typed protolude QuickCheck
          string-conversions text time unordered-containers wl-pprint-text
@@ -203004,27 +204295,6 @@ self: {
      }:
      mkDerivation {
        pname = "text-ldap";
-       version = "0.1.1.12";
-       sha256 = "1kfp77nm8mvzi6h44334djr88z2w6syrwrvrqy2jfb65d0p9crbx";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         attoparsec base bytestring containers dlist memory transformers
-       ];
-       executableHaskellDepends = [ base bytestring ];
-       testHaskellDepends = [
-         base bytestring QuickCheck quickcheck-simple random
-       ];
-       description = "Parser and Printer for LDAP text data stream";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "text-ldap_0_1_1_13" = callPackage
-    ({ mkDerivation, attoparsec, base, bytestring, containers, dlist
-     , memory, QuickCheck, quickcheck-simple, random, transformers
-     }:
-     mkDerivation {
-       pname = "text-ldap";
        version = "0.1.1.13";
        sha256 = "0d1a7932999yx98hjvnrap1lpm9jcfg34m2m0hdy4j1m6cq4q5zc";
        isLibrary = true;
@@ -203038,7 +204308,6 @@ self: {
        ];
        description = "Parser and Printer for LDAP text data stream";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "text-lens" = callPackage
@@ -203286,8 +204555,8 @@ self: {
      }:
      mkDerivation {
        pname = "text-replace";
-       version = "0.0.0.2";
-       sha256 = "1qd3i8sj6z0vgb2yn345wh16w0lvmqdvywrkpcdsmbc00j8cwkjq";
+       version = "0.0.0.3";
+       sha256 = "0dj024y7qmkmv31n5h6li6wna3gpayr5gmyl6jiiiprdvild2i1n";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base containers ];
@@ -203333,6 +204602,8 @@ self: {
        pname = "text-show";
        version = "3.7.4";
        sha256 = "068yp74k4ybhvycivnr7x238dl1qdnkjdzf25pcz127294rn9yry";
+       revision = "1";
+       editedCabalFile = "0002han9bgcc8m64a3k5wgfmzlma4j3qxqd7m2illyza19hijsj9";
        libraryHaskellDepends = [
          array base base-compat-batteries bifunctors bytestring
          bytestring-builder containers contravariant generic-deriving
@@ -203365,8 +204636,8 @@ self: {
        pname = "text-show-instances";
        version = "3.6.5";
        sha256 = "0hljqh31m3199w8ppcihggcya8cj4zmrav5z6fvcn6xn2hzz1cql";
-       revision = "1";
-       editedCabalFile = "12k3hmn36w2mffhxjb5bx1g1gh3y0y4fync9hvk4gklh1w6dbs0a";
+       revision = "2";
+       editedCabalFile = "1lqvwm9ciazk13jabyr81rl4hsmwksjmks7ckxrdgz3jk201yr6i";
        libraryHaskellDepends = [
          base base-compat-batteries bifunctors binary containers directory
          ghc-boot-th haskeline hoopl hpc old-locale old-time pretty random
@@ -203803,23 +205074,11 @@ self: {
     ({ mkDerivation, base, template-haskell }:
      mkDerivation {
        pname = "th-data-compat";
-       version = "0.0.2.6";
-       sha256 = "1gbqrrpib065yw53063i7ydvm9ghwja30zc6s13mr2pp1l5a4bs2";
-       libraryHaskellDepends = [ base template-haskell ];
-       description = "Compatibility for data definition template of TH";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "th-data-compat_0_0_2_7" = callPackage
-    ({ mkDerivation, base, template-haskell }:
-     mkDerivation {
-       pname = "th-data-compat";
        version = "0.0.2.7";
        sha256 = "0yjfz9iwz0n2wx2c7wjazhwh23ny43fmnjp7dn7m37p320jgzahk";
        libraryHaskellDepends = [ base template-haskell ];
        description = "Compatibility for data definition template of TH";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "th-desugar" = callPackage
@@ -204000,21 +205259,6 @@ self: {
      }:
      mkDerivation {
        pname = "th-lift";
-       version = "0.7.10";
-       sha256 = "13c89mr9g4jwrmqxx882ygr1lkvj1chw29p80qv2f3g5wnhlgkmr";
-       libraryHaskellDepends = [
-         base ghc-prim template-haskell th-abstraction
-       ];
-       testHaskellDepends = [ base ghc-prim template-haskell ];
-       description = "Derive Template Haskell's Lift class for datatypes";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "th-lift_0_7_11" = callPackage
-    ({ mkDerivation, base, ghc-prim, template-haskell, th-abstraction
-     }:
-     mkDerivation {
-       pname = "th-lift";
        version = "0.7.11";
        sha256 = "131360zxb0hazbqwbkk6ab2p77jkxr79bwwm618mrwrwkm3x2g6m";
        libraryHaskellDepends = [
@@ -204023,7 +205267,6 @@ self: {
        testHaskellDepends = [ base ghc-prim template-haskell ];
        description = "Derive Template Haskell's Lift class for datatypes";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "th-lift-instances" = callPackage
@@ -204131,23 +205374,11 @@ self: {
     ({ mkDerivation, base, template-haskell }:
      mkDerivation {
        pname = "th-reify-compat";
-       version = "0.0.1.4";
-       sha256 = "08lal845ixcw62skw2rsi98y9v3dgj7bq4ygmlxm6k3lfgd9v7q8";
-       libraryHaskellDepends = [ base template-haskell ];
-       description = "Compatibility for the result type of TH reify";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "th-reify-compat_0_0_1_5" = callPackage
-    ({ mkDerivation, base, template-haskell }:
-     mkDerivation {
-       pname = "th-reify-compat";
        version = "0.0.1.5";
        sha256 = "171m4fibjq4ml33xvbb0qdm625adknsdgz8flb4xhag075z2w6xg";
        libraryHaskellDepends = [ base template-haskell ];
        description = "Compatibility for the result type of TH reify";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "th-reify-many" = callPackage
@@ -204962,8 +206193,8 @@ self: {
        pname = "tibetan-utils";
        version = "0.1.1.5";
        sha256 = "09bqix2a2js98rhp748qx2i0vnxya3c6zvpjizbbnf5fwpspy01q";
-       revision = "1";
-       editedCabalFile = "0wmfv4dxjhjwsnkc8n7jfhbkvc7zwgcmkj7pvabmhcjzn5ch0dck";
+       revision = "2";
+       editedCabalFile = "17zyhdxwnq85kr60bnxirmyvw3b1679j5mhm3i30ri65896pjdwf";
        libraryHaskellDepends = [
          base composition-prelude either megaparsec text text-show
        ];
@@ -204974,6 +206205,25 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "tibetan-utils_0_1_1_9" = callPackage
+    ({ mkDerivation, base, composition-prelude, either, hspec
+     , hspec-megaparsec, megaparsec, text, text-show
+     }:
+     mkDerivation {
+       pname = "tibetan-utils";
+       version = "0.1.1.9";
+       sha256 = "04xpncn9nnc51mzyvw1naydk47acbpkzpxipq1fgvvgclzda2gn8";
+       libraryHaskellDepends = [
+         base composition-prelude either megaparsec text text-show
+       ];
+       testHaskellDepends = [
+         base hspec hspec-megaparsec megaparsec text
+       ];
+       description = "Parse and display tibetan numerals";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "tic-tac-toe" = callPackage
     ({ mkDerivation, base, glade, gtk, haskell98 }:
      mkDerivation {
@@ -205367,23 +206617,11 @@ self: {
     ({ mkDerivation, base, old-locale, time }:
      mkDerivation {
        pname = "time-locale-compat";
-       version = "0.1.1.4";
-       sha256 = "0qmyxf8nz0q6brvplc4s2wsb1bbpq7kb65b69m503g9bgranblgj";
-       libraryHaskellDepends = [ base old-locale time ];
-       description = "Compatibile module for time-format locale";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "time-locale-compat_0_1_1_5" = callPackage
-    ({ mkDerivation, base, old-locale, time }:
-     mkDerivation {
-       pname = "time-locale-compat";
        version = "0.1.1.5";
        sha256 = "0b2hmj8wwrfkndwzgm11qr496ca2ahwdxcj3m0ii91bxvrk1bzq7";
        libraryHaskellDepends = [ base old-locale time ];
        description = "Compatibile module for time-format locale";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "time-locale-vietnamese" = callPackage
@@ -206870,8 +208108,8 @@ self: {
      }:
      mkDerivation {
        pname = "tomlcheck";
-       version = "0.1.0.29";
-       sha256 = "1blq3yjzd39fjpavjl5k3567algdl424l0al0rvr25xd239kvwzg";
+       version = "0.1.0.36";
+       sha256 = "16a15449pfdlan93ynrv3gh42vjlv95160nr1lwvqh91m7fvpnc3";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -207017,8 +208255,8 @@ self: {
     ({ mkDerivation, base, containers }:
      mkDerivation {
        pname = "total-map";
-       version = "0.0.6";
-       sha256 = "11dgcl7ab7akkfnmprnmphj4kazh3x3k09lz7m5glyg39kw8pzrj";
+       version = "0.0.7";
+       sha256 = "0chcnvsn3bzjmmp2bq6kxli1c73d477i49jbvnmqwz56an84ink1";
        libraryHaskellDepends = [ base containers ];
        description = "Finitely represented /total/ maps";
        license = stdenv.lib.licenses.bsd3;
@@ -209220,8 +210458,8 @@ self: {
      }:
      mkDerivation {
        pname = "tweet-hs";
-       version = "1.0.1.41";
-       sha256 = "1ybrsnppy7lnj5z2f8m38cd6ix89j6dlvgc2icl7lj3w14g6cfxm";
+       version = "1.0.1.42";
+       sha256 = "1jf3w8cw9nmg6b2wxs5agxxi1igfsykj857cjkqjsfr04z060v37";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -211691,6 +212929,21 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "unicode_0_0_1_1" = callPackage
+    ({ mkDerivation, base, containers, semigroups, utility-ht }:
+     mkDerivation {
+       pname = "unicode";
+       version = "0.0.1.1";
+       sha256 = "1hgqnplpgaw0pwz0lfr59vmljcf4l5b4ynrhdcic94g18lpsmnvg";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base containers semigroups ];
+       testHaskellDepends = [ base containers utility-ht ];
+       description = "Construct and transform unicode characters";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "unicode-names" = callPackage
     ({ mkDerivation, array, base, containers, unicode-properties }:
      mkDerivation {
@@ -211858,13 +213111,17 @@ self: {
      }) {inherit (pkgs) openssl;};
 
   "uniform-pair" = callPackage
-    ({ mkDerivation, base, deepseq, prelude-extras }:
+    ({ mkDerivation, adjunctions, base, deepseq, distributive
+     , prelude-extras
+     }:
      mkDerivation {
        pname = "uniform-pair";
-       version = "0.1.13";
-       sha256 = "17dz0car02w2x5m23hlqlgjnpl86darc8vvr4axpsc9xim4sf7nk";
+       version = "0.1.15";
+       sha256 = "087wwdhkma76akzjzi053by43xv18c2a4q1babdsxapzjqpnr19k";
        enableSeparateDataOutput = true;
-       libraryHaskellDepends = [ base deepseq prelude-extras ];
+       libraryHaskellDepends = [
+         adjunctions base deepseq distributive prelude-extras
+       ];
        description = "Uniform pairs with class instances";
        license = stdenv.lib.licenses.bsd3;
      }) {};
@@ -211944,6 +213201,8 @@ self: {
        pname = "uniprot-kb";
        version = "0.1.2.0";
        sha256 = "0hh6fnnmr6i4mgli07hgaagswdipa0p3ckr3jzzfcw4y5x98036l";
+       revision = "1";
+       editedCabalFile = "0kvw9mzgjz6m1sslywn09n4axkjnwqpi4c5p00p9c81mr9fpbild";
        libraryHaskellDepends = [ attoparsec base text ];
        testHaskellDepends = [
          attoparsec base hspec neat-interpolation QuickCheck text
@@ -212002,8 +213261,8 @@ self: {
      }:
      mkDerivation {
        pname = "unique-logic-tf";
-       version = "0.5";
-       sha256 = "05v9ky3lrh4yzjsfgxa2sz44l7dlsvi5iv4h9rnsj2sd3hj2xcsa";
+       version = "0.5.0.1";
+       sha256 = "1v37bv5bjpkm5085sg4rf7ssbigsivib6fdxjhxyd36zhh08pdjy";
        libraryHaskellDepends = [
          base containers data-ref semigroups transformers utility-ht
        ];
@@ -212210,6 +213469,22 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "universal" = callPackage
+    ({ mkDerivation, base, base-unicode-symbols, criterion, smallcheck
+     , tasty, tasty-smallcheck, util
+     }:
+     mkDerivation {
+       pname = "universal";
+       version = "0.0.0.0";
+       sha256 = "0qcv0xi65l782yvn25an0qiavn942szs16j8p328i2pc6ggfymb2";
+       libraryHaskellDepends = [ base base-unicode-symbols util ];
+       testHaskellDepends = [ base smallcheck tasty tasty-smallcheck ];
+       benchmarkHaskellDepends = [ base criterion ];
+       doHaddock = false;
+       description = "Universal";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "universal-binary" = callPackage
     ({ mkDerivation, base, binary, bytestring }:
      mkDerivation {
@@ -212418,25 +213693,11 @@ self: {
     ({ mkDerivation, base, unix }:
      mkDerivation {
        pname = "unix-compat";
-       version = "0.5.0.1";
-       sha256 = "1gdf3h2knbymkivm784vq51mbcyj5y91r480awyxj5cw8gh9kwn2";
-       revision = "1";
-       editedCabalFile = "0yrdy4dz0zskgpw7c4wgkwskgayqxvch37axwka5z4g5gmic4mnn";
-       libraryHaskellDepends = [ base unix ];
-       description = "Portable POSIX-compatibility layer";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "unix-compat_0_5_1" = callPackage
-    ({ mkDerivation, base, unix }:
-     mkDerivation {
-       pname = "unix-compat";
        version = "0.5.1";
        sha256 = "0llwl7rp63fy2ychwdclz1afj45pbin5pfl01dvn6rwhvmwhr7d3";
        libraryHaskellDepends = [ base unix ];
        description = "Portable POSIX-compatibility layer";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "unix-fcntl" = callPackage
@@ -212587,8 +213848,8 @@ self: {
      }:
      mkDerivation {
        pname = "unliftio";
-       version = "0.2.7.0";
-       sha256 = "0qql93lq5w7qghl454cc3s1i8v1jb4h08n82fqkw0kli4g3g9njs";
+       version = "0.2.7.1";
+       sha256 = "1rif0r52qw2g8kxnbxpcdsmy925py47f8gspfvkbp16nrpxk7k63";
        libraryHaskellDepends = [
          async base deepseq directory filepath process stm time transformers
          unix unliftio-core
@@ -212601,14 +213862,33 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "unliftio_0_2_8_0" = callPackage
+    ({ mkDerivation, async, base, deepseq, directory, filepath, hspec
+     , process, stm, time, transformers, unix, unliftio-core
+     }:
+     mkDerivation {
+       pname = "unliftio";
+       version = "0.2.8.0";
+       sha256 = "04i03j1ffa3babh0i79zzvxk7xnm4v8ci0mpfzc4dm7m65cwk1h5";
+       libraryHaskellDepends = [
+         async base deepseq directory filepath process stm time transformers
+         unix unliftio-core
+       ];
+       testHaskellDepends = [
+         async base deepseq directory filepath hspec process stm time
+         transformers unix unliftio-core
+       ];
+       description = "The MonadUnliftIO typeclass for unlifting monads to IO (batteries included)";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "unliftio-core" = callPackage
     ({ mkDerivation, base, transformers }:
      mkDerivation {
        pname = "unliftio-core";
-       version = "0.1.1.0";
-       sha256 = "1193fplsjm1lcr05xwvkj1rsyzx74i755f6kw3ikmxbsv0bv0l3m";
-       revision = "1";
-       editedCabalFile = "16bjwcsaghqqmyi69rq65dn3ydifyfaabq3ns37apdm00mwqbcj2";
+       version = "0.1.2.0";
+       sha256 = "0y3siyx3drkw7igs380a87h8qfbbgcyxxlcnshp698hcc4yqphr4";
        libraryHaskellDepends = [ base transformers ];
        description = "The MonadUnliftIO typeclass for unlifting monads to IO";
        license = stdenv.lib.licenses.mit;
@@ -212958,8 +214238,8 @@ self: {
      }:
      mkDerivation {
        pname = "unused";
-       version = "0.8.0.0";
-       sha256 = "1bs87ii03dydrcyx70drmbd1nrb5z1xj5bzrrqgbq2fzhh7rmb1n";
+       version = "0.9.0.0";
+       sha256 = "1qxz70a9gry1d4a2bgixssq29hkdvck3s0yccbjgksiy98rk463y";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -213039,6 +214319,16 @@ self: {
        license = "unknown";
      }) {};
 
+  "update-monad" = callPackage
+    ({ mkDerivation, base, mtl }:
+     mkDerivation {
+       pname = "update-monad";
+       version = "0.1.0.0";
+       sha256 = "0l6gbfw0rmhkk2iq3wd2zzyld2nvjmbrlg7rqqv962cahs5mydns";
+       libraryHaskellDepends = [ base mtl ];
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "update-nix-fetchgit" = callPackage
     ({ mkDerivation, aeson, ansi-wl-pprint, async, base, bytestring
      , data-fix, errors, hnix, process, text, time, transformers
@@ -213829,23 +215119,11 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "util";
-       version = "0.1.10.1";
-       sha256 = "1z3k6x6ap1hjp53w9dnqx8d7pwpbgsabj3dlxcdg5pvr6m3ns184";
-       libraryHaskellDepends = [ base ];
-       description = "Utilities";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "util_0_1_11_0" = callPackage
-    ({ mkDerivation, base }:
-     mkDerivation {
-       pname = "util";
        version = "0.1.11.0";
        sha256 = "16qi0w19hy7y4az4dxnsvn5cjc7lg5zb9vv0jjzifky9dkssbicb";
        libraryHaskellDepends = [ base ];
        description = "Utilities";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "util-exception" = callPackage
@@ -213886,6 +215164,37 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "util-primitive-control" = callPackage
+    ({ mkDerivation, base, control, primitive, smallcheck, tasty
+     , tasty-smallcheck, util
+     }:
+     mkDerivation {
+       pname = "util-primitive-control";
+       version = "0.1.0.0";
+       sha256 = "104p69sw8jyc2dvarv7573cks3p6fvk5d61qhp9y47nylp4q8iqx";
+       libraryHaskellDepends = [ base control primitive util ];
+       testHaskellDepends = [ base smallcheck tasty tasty-smallcheck ];
+       doHaddock = false;
+       description = "Utilities for stateful primitive types and types based on them";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
+  "util-universe" = callPackage
+    ({ mkDerivation, base, smallcheck, tasty, tasty-smallcheck
+     , universe-base, universe-instances-base
+     }:
+     mkDerivation {
+       pname = "util-universe";
+       version = "0.1.0.0";
+       sha256 = "1jpi5ic14knr3g8qmz6ls430ll4m9wi5ag1ngmlz46h1zlw53l8y";
+       libraryHaskellDepends = [
+         base universe-base universe-instances-base
+       ];
+       testHaskellDepends = [ base smallcheck tasty tasty-smallcheck ];
+       description = "Utilities for universal types";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "utility-ht" = callPackage
     ({ mkDerivation, base, QuickCheck }:
      mkDerivation {
@@ -214432,12 +215741,18 @@ self: {
      }) {};
 
   "validated-literals" = callPackage
-    ({ mkDerivation, base, bytestring, template-haskell }:
+    ({ mkDerivation, base, bytestring, deepseq, tasty, tasty-hunit
+     , tasty-travis, template-haskell
+     }:
      mkDerivation {
        pname = "validated-literals";
-       version = "0.2.0";
-       sha256 = "0wd4dyv2gfmcxqbhmcil884bdcw8a1qw441280j7rrqy6fp442q2";
-       libraryHaskellDepends = [ base bytestring template-haskell ];
+       version = "0.2.0.1";
+       sha256 = "0gvqsmyhcjf1l5a6vkhr7ffnw81l01y0dp05lzkmy8n177412pr4";
+       libraryHaskellDepends = [ base template-haskell ];
+       testHaskellDepends = [
+         base bytestring deepseq tasty tasty-hunit tasty-travis
+         template-haskell
+       ];
        description = "Compile-time checking for partial smart-constructors";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -214580,22 +215895,6 @@ self: {
      }:
      mkDerivation {
        pname = "validity-path";
-       version = "0.3.0.1";
-       sha256 = "1mfd062p9wh63qnz4a06rj7179lyllfc97g60cmpnjspmcdgy1ky";
-       libraryHaskellDepends = [ base filepath path validity ];
-       testHaskellDepends = [
-         base filepath genvalidity-hspec hspec path validity
-       ];
-       description = "Validity instances for Path";
-       license = stdenv.lib.licenses.mit;
-     }) {};
-
-  "validity-path_0_3_0_2" = callPackage
-    ({ mkDerivation, base, filepath, genvalidity-hspec, hspec, path
-     , validity
-     }:
-     mkDerivation {
-       pname = "validity-path";
        version = "0.3.0.2";
        sha256 = "0ip1qm6sip1yxbrcx9zn2saipd6bfs88cgn5jd3pw9ffkydxm74p";
        libraryHaskellDepends = [ base filepath path validity ];
@@ -214604,7 +215903,6 @@ self: {
        ];
        description = "Validity instances for Path";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "validity-primitive" = callPackage
@@ -214622,88 +215920,39 @@ self: {
     ({ mkDerivation, base, scientific, validity }:
      mkDerivation {
        pname = "validity-scientific";
-       version = "0.2.0.1";
-       sha256 = "1iphzdh9vqa51im1mx3sg7gpqczm39bcdc6li84lssyflg20kraw";
-       libraryHaskellDepends = [ base scientific validity ];
-       description = "Validity instances for scientific";
-       license = stdenv.lib.licenses.mit;
-     }) {};
-
-  "validity-scientific_0_2_0_2" = callPackage
-    ({ mkDerivation, base, scientific, validity }:
-     mkDerivation {
-       pname = "validity-scientific";
        version = "0.2.0.2";
        sha256 = "1hcdv8s7qfcrgc8hn335dzxx3q5qqbviwp4bf4lwnzbw611slcl1";
        libraryHaskellDepends = [ base scientific validity ];
        description = "Validity instances for scientific";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "validity-text" = callPackage
     ({ mkDerivation, base, bytestring, text, validity }:
      mkDerivation {
        pname = "validity-text";
-       version = "0.3.0.1";
-       sha256 = "0ccy6b21lxgqp9q2cmddip1r0axwh6ny4c2vrw1a16712yrhrcdf";
-       libraryHaskellDepends = [ base bytestring text validity ];
-       description = "Validity instances for text";
-       license = stdenv.lib.licenses.mit;
-     }) {};
-
-  "validity-text_0_3_1_0" = callPackage
-    ({ mkDerivation, base, bytestring, text, validity }:
-     mkDerivation {
-       pname = "validity-text";
        version = "0.3.1.0";
        sha256 = "0r22pipimzlznkv164n3pw3063v7yxz2l04m74y5j1zajxpg5lzd";
        libraryHaskellDepends = [ base bytestring text validity ];
        description = "Validity instances for text";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "validity-time" = callPackage
     ({ mkDerivation, base, time, validity }:
      mkDerivation {
        pname = "validity-time";
-       version = "0.2.0.1";
-       sha256 = "1m8wsm97s7cwax183qsbmr8p010k9czigwlqbqr6qha3bk83n4bf";
-       libraryHaskellDepends = [ base time validity ];
-       description = "Validity instances for time";
-       license = stdenv.lib.licenses.mit;
-     }) {};
-
-  "validity-time_0_2_0_2" = callPackage
-    ({ mkDerivation, base, time, validity }:
-     mkDerivation {
-       pname = "validity-time";
        version = "0.2.0.2";
        sha256 = "0rg28pgicn8ycdswszbc070587pblbxdzl6mc082l9rgz3g4mcji";
        libraryHaskellDepends = [ base time validity ];
        description = "Validity instances for time";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "validity-unordered-containers" = callPackage
     ({ mkDerivation, base, hashable, unordered-containers, validity }:
      mkDerivation {
        pname = "validity-unordered-containers";
-       version = "0.2.0.1";
-       sha256 = "11pwrd1jbxdffw1lqq6zxgpgzvxrg4y01wnrn5bzwksiqzach742";
-       libraryHaskellDepends = [
-         base hashable unordered-containers validity
-       ];
-       description = "Validity instances for unordered-containers";
-       license = stdenv.lib.licenses.mit;
-     }) {};
-
-  "validity-unordered-containers_0_2_0_2" = callPackage
-    ({ mkDerivation, base, hashable, unordered-containers, validity }:
-     mkDerivation {
-       pname = "validity-unordered-containers";
        version = "0.2.0.2";
        sha256 = "06qq6rdzcb0l145653fdrbyf18fci49v85mq8c0sjhhfr22pwm2h";
        libraryHaskellDepends = [
@@ -214711,53 +215960,28 @@ self: {
        ];
        description = "Validity instances for unordered-containers";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "validity-uuid" = callPackage
     ({ mkDerivation, base, uuid, validity }:
      mkDerivation {
        pname = "validity-uuid";
-       version = "0.1.0.1";
-       sha256 = "15lk4hig0j6xhz1b7m2hwpvyfwhlrvncgwb1830lpmgvvg18qb9n";
-       libraryHaskellDepends = [ base uuid validity ];
-       description = "Validity instances for uuid";
-       license = stdenv.lib.licenses.mit;
-     }) {};
-
-  "validity-uuid_0_1_0_2" = callPackage
-    ({ mkDerivation, base, uuid, validity }:
-     mkDerivation {
-       pname = "validity-uuid";
        version = "0.1.0.2";
        sha256 = "0k2nkkc69m2j4aj3fjfd1i0cg4nli1g44nxdf5liv59hhvk33p4m";
        libraryHaskellDepends = [ base uuid validity ];
        description = "Validity instances for uuid";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "validity-vector" = callPackage
     ({ mkDerivation, base, hashable, validity, vector }:
      mkDerivation {
        pname = "validity-vector";
-       version = "0.2.0.1";
-       sha256 = "0ljihk6qdb52c44hf39wigf3b0f0xs1z7adgxg4fqfxq8zq2a3k4";
-       libraryHaskellDepends = [ base hashable validity vector ];
-       description = "Validity instances for vector";
-       license = stdenv.lib.licenses.mit;
-     }) {};
-
-  "validity-vector_0_2_0_2" = callPackage
-    ({ mkDerivation, base, hashable, validity, vector }:
-     mkDerivation {
-       pname = "validity-vector";
        version = "0.2.0.2";
        sha256 = "0y6fhcdyd42nynf2lavdx9pnhy8ylqfkq1yickx2ap4w5hc61k57";
        libraryHaskellDepends = [ base hashable validity vector ];
        description = "Validity instances for vector";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "valor" = callPackage
@@ -215275,26 +216499,6 @@ self: {
      }:
      mkDerivation {
        pname = "vector-algorithms";
-       version = "0.7.0.1";
-       sha256 = "0w4hf598lpxfg58rnimcqxrbnpqq2jmpjx82qa5md3q6r90hlipd";
-       revision = "2";
-       editedCabalFile = "186nxwg02m16v68gi186f0z99cafp4g87flhfccnzlrvshlfb83m";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [ base bytestring primitive vector ];
-       testHaskellDepends = [
-         base bytestring containers QuickCheck vector
-       ];
-       description = "Efficient algorithms for vector arrays";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "vector-algorithms_0_7_0_4" = callPackage
-    ({ mkDerivation, base, bytestring, containers, primitive
-     , QuickCheck, vector
-     }:
-     mkDerivation {
-       pname = "vector-algorithms";
        version = "0.7.0.4";
        sha256 = "0mfa8ig9v69l41p2vb5jl4qmaln5y1rlzarr2mlgm8g1nvq8qqdg";
        isLibrary = true;
@@ -215305,7 +216509,6 @@ self: {
        ];
        description = "Efficient algorithms for vector arrays";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "vector-binary" = callPackage
@@ -215580,11 +216783,25 @@ self: {
        pname = "vector-space";
        version = "0.13";
        sha256 = "05yn93vnhzhpp2i6qb4b3dasvmpk71rab6vhssqvpb3qhdvxb482";
+       revision = "1";
+       editedCabalFile = "0iakf0srv3lpkyjvivj7w5swv2ybwas0kx59igkq2b7bwp0y82wn";
        libraryHaskellDepends = [ base Boolean MemoTrie NumInstances ];
        description = "Vector & affine spaces, linear maps, and derivatives";
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "vector-space_0_14" = callPackage
+    ({ mkDerivation, base, Boolean, MemoTrie, NumInstances }:
+     mkDerivation {
+       pname = "vector-space";
+       version = "0.14";
+       sha256 = "1kfziqdnsjr540y8iajpfmdkarhmjnc5xm897bswjhrpgyh2k6h3";
+       libraryHaskellDepends = [ base Boolean MemoTrie NumInstances ];
+       description = "Vector & affine spaces, linear maps, and derivatives";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "vector-space-map" = callPackage
     ({ mkDerivation, base, containers, doctest, vector-space }:
      mkDerivation {
@@ -216013,6 +217230,25 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "viewprof_0_0_0_23" = callPackage
+    ({ mkDerivation, base, brick, containers, directory, ghc-prof, lens
+     , scientific, text, vector, vector-algorithms, vty
+     }:
+     mkDerivation {
+       pname = "viewprof";
+       version = "0.0.0.23";
+       sha256 = "0nxivlnzvnhsk9gn2d7x240n7803fy14pb5knjkxvsw0h0pj8kc6";
+       isLibrary = false;
+       isExecutable = true;
+       executableHaskellDepends = [
+         base brick containers directory ghc-prof lens scientific text
+         vector vector-algorithms vty
+       ];
+       description = "Text-based interactive GHC .prof viewer";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "views" = callPackage
     ({ mkDerivation, base, mtl }:
      mkDerivation {
@@ -216164,18 +217400,20 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "vinyl_0_9_3" = callPackage
-    ({ mkDerivation, array, base, criterion, doctest, ghc-prim, hspec
-     , lens, linear, microlens, mwc-random, primitive
-     , should-not-typecheck, singletons, tagged, vector
+  "vinyl_0_10_0" = callPackage
+    ({ mkDerivation, aeson, array, base, criterion, doctest, ghc-prim
+     , hspec, lens, lens-aeson, linear, microlens, mtl, mwc-random
+     , primitive, should-not-typecheck, singletons, tagged, text
+     , unordered-containers, vector
      }:
      mkDerivation {
        pname = "vinyl";
-       version = "0.9.3";
-       sha256 = "1sxkkmnq7vl5bmpljs3riaqb2kqpx1kkkllqiz4zawmhw6wmw1nj";
+       version = "0.10.0";
+       sha256 = "1d1lm9mi9gkcaw0lczbmbn81c3kc5yji3jbp2rjabiwhyi61mj4m";
        libraryHaskellDepends = [ array base ghc-prim ];
        testHaskellDepends = [
-         base doctest hspec lens microlens should-not-typecheck singletons
+         aeson base doctest hspec lens lens-aeson microlens mtl
+         should-not-typecheck singletons text unordered-containers vector
        ];
        benchmarkHaskellDepends = [
          base criterion linear microlens mwc-random primitive tagged vector
@@ -216192,8 +217430,8 @@ self: {
      }:
      mkDerivation {
        pname = "vinyl-gl";
-       version = "0.3.3";
-       sha256 = "09nd2v7550ivgjfby3kd27rf4b5b5ih8l7nx6v5h7r9s42vadb0r";
+       version = "0.3.4";
+       sha256 = "1r4vpilk8l0fm1v5n5lz27l57ciglbr82g5wsj3g4j7rghr14jpf";
        libraryHaskellDepends = [
          base containers GLUtil linear OpenGL tagged transformers vector
          vinyl
@@ -216513,8 +217751,8 @@ self: {
      }:
      mkDerivation {
        pname = "voicebase";
-       version = "0.1.1.1";
-       sha256 = "1nc2cmfmdalggb7f9xw4xrhms31cky478wxxkq50as6bryl3k3q3";
+       version = "0.1.1.2";
+       sha256 = "1kw988gbx9vvrfybz3k1qxm3hyqxrfi0dyy5iwmq191y7x2scbj6";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -216681,7 +217919,7 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "vty_5_23_1" = callPackage
+  "vty_5_24" = callPackage
     ({ mkDerivation, base, blaze-builder, bytestring, Cabal, containers
      , deepseq, directory, filepath, hashable, HUnit, microlens
      , microlens-mtl, microlens-th, mtl, parallel, parsec, QuickCheck
@@ -216692,8 +217930,8 @@ self: {
      }:
      mkDerivation {
        pname = "vty";
-       version = "5.23.1";
-       sha256 = "1cd328prv1pddza87a2kfh93l101jg1afs5s951yhr9z93mgd7d9";
+       version = "5.24";
+       sha256 = "177yj12cgvmiq62z7kdkqbhmr98awyi3njp1xsbdr3p81k5arwrw";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -217111,36 +218349,6 @@ self: {
      }:
      mkDerivation {
        pname = "wai-extra";
-       version = "3.0.24.1";
-       sha256 = "0bb6837cgq4p9sn3mkaf6p9kf57k0mvkdjcc1vsnj87nvphls604";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         aeson ansi-terminal base base64-bytestring bytestring
-         case-insensitive containers cookie data-default-class deepseq
-         directory fast-logger http-types iproute lifted-base network
-         old-locale resourcet streaming-commons stringsearch text time
-         transformers unix unix-compat vault void wai wai-logger word8 zlib
-       ];
-       testHaskellDepends = [
-         base bytestring case-insensitive cookie fast-logger hspec
-         http-types HUnit resourcet text time transformers wai zlib
-       ];
-       description = "Provides some basic WAI handlers and middleware";
-       license = stdenv.lib.licenses.mit;
-     }) {};
-
-  "wai-extra_3_0_24_2" = callPackage
-    ({ mkDerivation, aeson, ansi-terminal, base, base64-bytestring
-     , bytestring, case-insensitive, containers, cookie
-     , data-default-class, deepseq, directory, fast-logger, hspec
-     , http-types, HUnit, iproute, lifted-base, network, old-locale
-     , resourcet, streaming-commons, stringsearch, text, time
-     , transformers, unix, unix-compat, vault, void, wai, wai-logger
-     , word8, zlib
-     }:
-     mkDerivation {
-       pname = "wai-extra";
        version = "3.0.24.2";
        sha256 = "07gcgq59dki5drkjci9ka34xjsy3bqilbsx0lsc4905w9jlyfbci";
        isLibrary = true;
@@ -217158,7 +218366,6 @@ self: {
        ];
        description = "Provides some basic WAI handlers and middleware";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "wai-frontend-monadcgi" = callPackage
@@ -218664,6 +219871,41 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "warp_3_2_25" = callPackage
+    ({ mkDerivation, array, async, auto-update, base, bsb-http-chunked
+     , bytestring, case-insensitive, containers, directory, doctest
+     , gauge, ghc-prim, hashable, hspec, http-client, http-date
+     , http-types, http2, HUnit, iproute, lifted-base, network, process
+     , QuickCheck, silently, simple-sendfile, stm, streaming-commons
+     , text, time, transformers, unix, unix-compat, vault, wai, word8
+     }:
+     mkDerivation {
+       pname = "warp";
+       version = "3.2.25";
+       sha256 = "0rl59bs99c3wwwyc1ibq0v11mkc7pxpy28r9hdlmjsqmdwn8y2vy";
+       libraryHaskellDepends = [
+         array async auto-update base bsb-http-chunked bytestring
+         case-insensitive containers ghc-prim hashable http-date http-types
+         http2 iproute network simple-sendfile stm streaming-commons text
+         unix unix-compat vault wai word8
+       ];
+       testHaskellDepends = [
+         array async auto-update base bsb-http-chunked bytestring
+         case-insensitive containers directory doctest ghc-prim hashable
+         hspec http-client http-date http-types http2 HUnit iproute
+         lifted-base network process QuickCheck silently simple-sendfile stm
+         streaming-commons text time transformers unix unix-compat vault wai
+         word8
+       ];
+       benchmarkHaskellDepends = [
+         auto-update base bytestring containers gauge hashable http-date
+         http-types network unix unix-compat
+       ];
+       description = "A fast, light-weight web server for WAI applications";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "warp-dynamic" = callPackage
     ({ mkDerivation, base, data-default, dyre, http-types, wai, warp }:
      mkDerivation {
@@ -218681,6 +219923,22 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "warp-grpc" = callPackage
+    ({ mkDerivation, async, base, binary, bytestring, case-insensitive
+     , http-types, http2-grpc-types, proto-lens, wai, warp, warp-tls
+     }:
+     mkDerivation {
+       pname = "warp-grpc";
+       version = "0.1.0.3";
+       sha256 = "1x40jskp4c2dj4w3pfrw4f3ys9c64nlas2068s7zl05qayw21srf";
+       libraryHaskellDepends = [
+         async base binary bytestring case-insensitive http-types
+         http2-grpc-types proto-lens wai warp warp-tls
+       ];
+       description = "A minimal gRPC server on top of Warp";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "warp-static" = callPackage
     ({ mkDerivation, base, bytestring, cmdargs, containers, directory
      , mime-types, text, wai-app-static, wai-extra, warp
@@ -220434,8 +221692,8 @@ self: {
     ({ mkDerivation, aeson, base, bytestring, utf8-string }:
      mkDerivation {
        pname = "wilton-ffi";
-       version = "0.2.0.0";
-       sha256 = "1n2cgf0cnpr7f9rgf2369qnz3mm1qvylpzncc7s42vcrrq4x3wj7";
+       version = "0.3.0.2";
+       sha256 = "1qnsdj9676ifg9z67qdzblsszrzvhihwaww4s03jpy2324q42qhk";
        libraryHaskellDepends = [ aeson base bytestring utf8-string ];
        description = "Haskell modules support for Wilton JavaScript runtime";
        license = stdenv.lib.licenses.mit;
@@ -220504,35 +221762,35 @@ self: {
     ({ mkDerivation, aeson, base, binary, bytestring, cassava
      , containers, cpu, deepseq, directory, gauge, hashable, megaparsec
      , mtl, prettyprinter, prettyprinter-ansi-terminal, QuickCheck
-     , scientific, serialise, text, transformers, unordered-containers
-     , vector
+     , scientific, semigroups, serialise, text, time, transformers
+     , unordered-containers, vector
      }:
      mkDerivation {
        pname = "winery";
-       version = "0.2.1";
-       sha256 = "09j7s44j5v6754g1v10yvmb7l9azn2p738x3c4p1iv6qlwghilbj";
+       version = "0.3.1";
+       sha256 = "1f63fgw7ky6kd0dk41rhqjxgvi33pa5ffrv0vk2i7dr88bmc1wgy";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          aeson base bytestring containers cpu hashable megaparsec mtl
-         prettyprinter prettyprinter-ansi-terminal scientific text
-         transformers unordered-containers vector
+         prettyprinter prettyprinter-ansi-terminal scientific semigroups
+         text time transformers unordered-containers vector
        ];
        executableHaskellDepends = [
          aeson base bytestring containers cpu hashable megaparsec mtl
-         prettyprinter prettyprinter-ansi-terminal scientific text
-         transformers unordered-containers vector
+         prettyprinter prettyprinter-ansi-terminal scientific semigroups
+         text time transformers unordered-containers vector
        ];
        testHaskellDepends = [
          aeson base bytestring containers cpu hashable megaparsec mtl
          prettyprinter prettyprinter-ansi-terminal QuickCheck scientific
-         text transformers unordered-containers vector
+         semigroups text time transformers unordered-containers vector
        ];
        benchmarkHaskellDepends = [
          aeson base binary bytestring cassava containers cpu deepseq
          directory gauge hashable megaparsec mtl prettyprinter
-         prettyprinter-ansi-terminal scientific serialise text transformers
-         unordered-containers vector
+         prettyprinter-ansi-terminal scientific semigroups serialise text
+         time transformers unordered-containers vector
        ];
        description = "Sustainable serialisation library";
        license = stdenv.lib.licenses.bsd3;
@@ -222926,6 +224184,23 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "xml-basic_0_1_3_1" = callPackage
+    ({ mkDerivation, base, containers, data-accessor
+     , explicit-exception, semigroups, utility-ht
+     }:
+     mkDerivation {
+       pname = "xml-basic";
+       version = "0.1.3.1";
+       sha256 = "1qm3g00zavdal1f1yj2jrg7lb6b845fbf63b4pym5p49wkw3yx4d";
+       libraryHaskellDepends = [
+         base containers data-accessor explicit-exception semigroups
+         utility-ht
+       ];
+       description = "Basics for XML/HTML representation and processing";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "xml-catalog" = callPackage
     ({ mkDerivation, base, bytestring, conduit, containers, text
      , transformers, uri-conduit, xml-conduit
@@ -223885,16 +225160,12 @@ self: {
      }) {};
 
   "xmonad-spotify" = callPackage
-    ({ mkDerivation, base, containers, dbus, X11, xmonad
-     , xmonad-contrib
-     }:
+    ({ mkDerivation, base, containers, dbus, X11 }:
      mkDerivation {
        pname = "xmonad-spotify";
-       version = "0.1.0.0";
-       sha256 = "1sl26ffaklasgyns8iz4jwm4736vfkflcv3gayn9bvb1kfr6g7rm";
-       libraryHaskellDepends = [
-         base containers dbus X11 xmonad xmonad-contrib
-       ];
+       version = "0.1.0.1";
+       sha256 = "11j2kd3l8yh3fn7smcggmi8jv66x80df52vwa7kmxchbsxf5qrpi";
+       libraryHaskellDepends = [ base containers dbus X11 ];
        description = "Bind media keys to work with Spotify";
        license = stdenv.lib.licenses.bsd3;
      }) {};
@@ -223938,14 +225209,14 @@ self: {
 
   "xmonad-volume" = callPackage
     ({ mkDerivation, alsa-mixer, base, composition-prelude, containers
-     , X11, xmonad
+     , X11
      }:
      mkDerivation {
        pname = "xmonad-volume";
-       version = "0.1.0.0";
-       sha256 = "0n517ddbjpy6ylg3d1amz7asgc6sww2yy0bxasp0xsd40jc77cfx";
+       version = "0.1.0.1";
+       sha256 = "0lv1009d8w2xyx98c6g65z4mxp31jz79lqayvdw26a02kq63cild";
        libraryHaskellDepends = [
-         alsa-mixer base composition-prelude containers X11 xmonad
+         alsa-mixer base composition-prelude containers X11
        ];
        description = "XMonad volume controls";
        license = stdenv.lib.licenses.bsd3;
@@ -224625,15 +225896,15 @@ self: {
 
   "yaml" = callPackage
     ({ mkDerivation, aeson, attoparsec, base, base-compat, bytestring
-     , conduit, containers, directory, filepath, hspec, HUnit, libyaml
-     , mockery, resourcet, scientific, semigroups, template-haskell
-     , temporary, text, transformers, unordered-containers, vector
+     , conduit, containers, directory, filepath, hspec, HUnit, mockery
+     , resourcet, scientific, semigroups, template-haskell, temporary
+     , text, transformers, unordered-containers, vector
      }:
      mkDerivation {
        pname = "yaml";
        version = "0.8.32";
        sha256 = "0cbsyh4ilvjzq1q7pxls43k6pdqxg1l85xzibcwpbvmlvrizh86w";
-       configureFlags = [ "-fsystem-libyaml" ];
+       configureFlags = [ "-f-system-libyaml" ];
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -224641,7 +225912,6 @@ self: {
          filepath resourcet scientific semigroups template-haskell text
          transformers unordered-containers vector
        ];
-       librarySystemDepends = [ libyaml ];
        testHaskellDepends = [
          aeson attoparsec base base-compat bytestring conduit containers
          directory filepath hspec HUnit mockery resourcet scientific
@@ -224650,32 +225920,32 @@ self: {
        ];
        description = "Support for parsing and rendering YAML documents";
        license = stdenv.lib.licenses.bsd3;
-     }) {inherit (pkgs) libyaml;};
+     }) {};
 
-  "yaml_0_10_0" = callPackage
+  "yaml_0_10_1_1" = callPackage
     ({ mkDerivation, aeson, attoparsec, base, base-compat, bytestring
      , conduit, containers, directory, filepath, hspec, HUnit, libyaml
-     , mockery, mtl, raw-strings-qq, resourcet, scientific, semigroups
+     , mockery, mtl, raw-strings-qq, resourcet, scientific
      , template-haskell, temporary, text, transformers
      , unordered-containers, vector
      }:
      mkDerivation {
        pname = "yaml";
-       version = "0.10.0";
-       sha256 = "0kyfzcp3hlb44rpf28ipz0m5cpanj91hlhvr9kidvg71826s9xcm";
+       version = "0.10.1.1";
+       sha256 = "1rbmflr1yfcg147v544laq9vybn4kidjlc7v96ddaamx8sg32192";
        configureFlags = [ "-fsystem-libyaml" ];
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          aeson attoparsec base bytestring conduit containers directory
-         filepath mtl resourcet scientific semigroups template-haskell text
+         filepath mtl resourcet scientific template-haskell text
          transformers unordered-containers vector
        ];
        librarySystemDepends = [ libyaml ];
        testHaskellDepends = [
          aeson attoparsec base base-compat bytestring conduit containers
          directory filepath hspec HUnit mockery mtl raw-strings-qq resourcet
-         scientific semigroups template-haskell temporary text transformers
+         scientific template-haskell temporary text transformers
          unordered-containers vector
        ];
        description = "Support for parsing and rendering YAML documents";
@@ -227399,6 +228669,22 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "yggdrasil" = callPackage
+    ({ mkDerivation, base, cryptonite, hspec, memory, mtl, QuickCheck
+     , transformers
+     }:
+     mkDerivation {
+       pname = "yggdrasil";
+       version = "0.1.0.0";
+       sha256 = "1w1nlas5fb7zmd0kvzb68ihylpsg7pf084vd1xk60l6n60cc9m4j";
+       libraryHaskellDepends = [
+         base cryptonite memory mtl transformers
+       ];
+       testHaskellDepends = [ base cryptonite hspec QuickCheck ];
+       description = "Executable specifications of composable cryptographic protocols";
+       license = stdenv.lib.licenses.agpl3;
+     }) {};
+
   "yhccore" = callPackage
     ({ mkDerivation, base, containers, mtl, pretty, uniplate }:
      mkDerivation {
diff --git a/pkgs/development/haskell-modules/make-package-set.nix b/pkgs/development/haskell-modules/make-package-set.nix
index 45cc37117883..b6fe399058c3 100644
--- a/pkgs/development/haskell-modules/make-package-set.nix
+++ b/pkgs/development/haskell-modules/make-package-set.nix
@@ -176,19 +176,22 @@ in package-set { inherit pkgs stdenv callPackage; } self // {
     callHackage = name: version: callPackageKeepDeriver (self.hackage2nix name version);
 
     # Creates a Haskell package from a source package by calling cabal2nix on the source.
-    callCabal2nix = name: src: args: let
-      filter = path: type:
-                 pkgs.lib.hasSuffix "${name}.cabal" path ||
-                 baseNameOf path == "package.yaml";
-      expr = self.haskellSrc2nix {
-        inherit name;
-        src = if pkgs.lib.canCleanSource src
-                then pkgs.lib.cleanSourceWith { inherit src filter; }
-              else src;
-      };
-    in overrideCabal (callPackageKeepDeriver expr args) (orig: {
-         inherit src;
-       });
+    callCabal2nixWithOptions = name: src: extraCabal2nixOptions: args:
+      let
+        filter = path: type:
+                   pkgs.lib.hasSuffix "${name}.cabal" path ||
+                   baseNameOf path == "package.yaml";
+        expr = self.haskellSrc2nix {
+          inherit name extraCabal2nixOptions;
+          src = if pkgs.lib.canCleanSource src
+                  then pkgs.lib.cleanSourceWith { inherit src filter; }
+                else src;
+        };
+      in overrideCabal (callPackageKeepDeriver expr args) (orig: {
+           inherit src;
+         });
+
+    callCabal2nix = name: src: args: self.callCabal2nixWithOptions name src "" args;
 
     # : { root : Path
     #   , source-overrides : Defaulted (Either Path VersionNumber)
diff --git a/pkgs/development/interpreters/erlang/generic-builder.nix b/pkgs/development/interpreters/erlang/generic-builder.nix
index eb685f1d7185..9393c87b0a88 100644
--- a/pkgs/development/interpreters/erlang/generic-builder.nix
+++ b/pkgs/development/interpreters/erlang/generic-builder.nix
@@ -3,6 +3,7 @@
 , openjdk ? null # javacSupport
 , unixODBC ? null # odbcSupport
 , libGLU_combined ? null, wxGTK ? null, wxmac ? null, xorg ? null # wxSupport
+, withSystemd ? stdenv.isLinux, systemd # systemd support in epmd
 }:
 
 { baseName ? "erlang"
@@ -53,6 +54,7 @@ in stdenv.mkDerivation ({
     ++ optionals wxSupport wxPackages2
     ++ optionals odbcSupport odbcPackages
     ++ optionals javacSupport javacPackages
+    ++ optional withSystemd systemd
     ++ optionals stdenv.isDarwin (with pkgs.darwin.apple_sdk.frameworks; [ Carbon Cocoa ]);
 
   debugInfo = enableDebugInfo;
@@ -84,6 +86,7 @@ in stdenv.mkDerivation ({
     ++ optional javacSupport "--with-javac"
     ++ optional odbcSupport "--with-odbc=${unixODBC}"
     ++ optional wxSupport "--enable-wx"
+    ++ optional withSystemd "--enable-systemd"
     ++ optional stdenv.isDarwin "--enable-darwin-64bit";
 
   # install-docs will generate and install manpages and html docs
diff --git a/pkgs/development/interpreters/joker/default.nix b/pkgs/development/interpreters/joker/default.nix
index 5b8ae7e9eccf..1342d6c34d2e 100644
--- a/pkgs/development/interpreters/joker/default.nix
+++ b/pkgs/development/interpreters/joker/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   name = "joker-${version}";
-  version = "0.9.5";
+  version = "0.9.7";
 
   goPackagePath = "github.com/candid82/joker";
 
@@ -10,7 +10,7 @@ buildGoPackage rec {
     rev = "v${version}";
     owner = "candid82";
     repo = "joker";
-    sha256 = "1sgxz0z6p92k1rhs5095l952a2db5w9yb2jy6cgglxw2arihxxb7";
+    sha256 = "0fl04xdpqmr5xpd4pvj72gdy3v1fr9z6h3ja7dmkama8fw2x4diz";
   };
 
   preBuild = "go generate ./...";
diff --git a/pkgs/development/interpreters/php/default.nix b/pkgs/development/interpreters/php/default.nix
index 37a51ffded31..adffe647c365 100644
--- a/pkgs/development/interpreters/php/default.nix
+++ b/pkgs/development/interpreters/php/default.nix
@@ -3,7 +3,7 @@
 , mysql, libxml2, readline, zlib, curl, postgresql, gettext
 , openssl, pcre, pkgconfig, sqlite, config, libjpeg, libpng, freetype
 , libxslt, libmcrypt, bzip2, icu, openldap, cyrus_sasl, libmhash, freetds
-, uwimap, pam, gmp, apacheHttpd, libiconv, systemd, libsodium, html-tidy
+, uwimap, pam, gmp, apacheHttpd, libiconv, systemd, libsodium, html-tidy, libargon2
 }:
 
 with lib;
@@ -37,7 +37,10 @@ let
   , opensslSupport ? config.php.openssl or true
   , mbstringSupport ? config.php.mbstring or true
   , gdSupport ? config.php.gd or true
-  , intlSupport ? config.php.intl or true
+  # Because of an upstream bug: https://bugs.php.net/bug.php?id=76826
+  # We need to disable the intl support on darwin. Whenever the upstream bug is
+  # fixed we should revert this to just just "config.php.intl or true".
+  , intlSupport ? (config.php.intl or true) && (!stdenv.isDarwin)
   , exifSupport ? config.php.exif or true
   , xslSupport ? config.php.xsl or false
   , mcryptSupport ? config.php.mcrypt or true
@@ -51,6 +54,7 @@ let
   , calendarSupport ? config.php.calendar or true
   , sodiumSupport ? (config.php.sodium or true) && (versionAtLeast version "7.2")
   , tidySupport ? (config.php.tidy or false)
+  , argon2Support ? (config.php.argon2 or true) && (versionAtLeast version "7.2")
   }:
 
     let
@@ -92,7 +96,8 @@ let
         ++ optional bz2Support bzip2
         ++ optional (mssqlSupport && !stdenv.isDarwin) freetds
         ++ optional sodiumSupport libsodium
-        ++ optional tidySupport html-tidy;
+        ++ optional tidySupport html-tidy
+        ++ optional argon2Support libargon2;
 
       CXXFLAGS = optional stdenv.cc.isClang "-std=c++11";
 
@@ -157,7 +162,8 @@ let
       ++ optional ztsSupport "--enable-maintainer-zts"
       ++ optional calendarSupport "--enable-calendar"
       ++ optional sodiumSupport "--with-sodium=${libsodium.dev}"
-      ++ optional tidySupport "--with-tidy=${html-tidy}";
+      ++ optional tidySupport "--with-tidy=${html-tidy}"
+      ++ optional argon2Support "--with-password-argon2=${libargon2}";
 
 
       hardeningDisable = [ "bindnow" ];
@@ -220,12 +226,12 @@ let
 
 in {
   php71 = generic {
-    version = "7.1.21";
-    sha256 = "104mn4kppklb21hgz1a50kgmc0ak5y996sx990xpc8yy9dbrqh62";
+    version = "7.1.22";
+    sha256 = "0qz74qdlk19cw478f42ckyw5r074y0fg73r2bzlhm0dar0cizsf8";
   };
 
   php72 = generic {
-    version = "7.2.8";
-    sha256 = "1rky321gcvjm0npbfd4bznh36an0y14viqcvn4yzy3x643sni00z";
+    version = "7.2.10";
+    sha256 = "17fsvdi6ihjghjsz9kk2li2rwrknm2ccb6ys0xmn789116d15dh1";
   };
 }
diff --git a/pkgs/development/interpreters/racket/default.nix b/pkgs/development/interpreters/racket/default.nix
index e8b6cc93c2c1..1f2a28cb8fb8 100644
--- a/pkgs/development/interpreters/racket/default.nix
+++ b/pkgs/development/interpreters/racket/default.nix
@@ -36,7 +36,7 @@ in
 
 stdenv.mkDerivation rec {
   name = "racket-${version}";
-  version = "7.0";
+  version = "7.0"; # always change at once with ./minimal.nix
 
   src = (stdenv.lib.makeOverridable ({ name, sha256 }:
     fetchurl rec {
diff --git a/pkgs/development/interpreters/spidermonkey/52.nix b/pkgs/development/interpreters/spidermonkey/52.nix
index ecbb1abb40ca..7c6844fdec09 100644
--- a/pkgs/development/interpreters/spidermonkey/52.nix
+++ b/pkgs/development/interpreters/spidermonkey/52.nix
@@ -45,7 +45,7 @@ in stdenv.mkDerivation rec {
     "--with-intl-api"
     "--enable-readline"
     "--enable-shared-js"
-  ];
+  ] ++ stdenv.lib.optional stdenv.hostPlatform.isMusl "--disable-jemalloc";
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/development/libraries/appstream-glib/default.nix b/pkgs/development/libraries/appstream-glib/default.nix
index 48dfe9ad894e..39b3d6aba6bd 100644
--- a/pkgs/development/libraries/appstream-glib/default.nix
+++ b/pkgs/development/libraries/appstream-glib/default.nix
@@ -4,7 +4,7 @@
 , libuuid, json-glib, meson, gperf, ninja
 }:
 stdenv.mkDerivation rec {
-  name = "appstream-glib-0.7.10";
+  name = "appstream-glib-0.7.12";
 
   outputs = [ "out" "dev" "man" "installedTests" ];
   outputBin = "dev";
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
     owner = "hughsie";
     repo = "appstream-glib";
     rev = stdenv.lib.replaceStrings ["." "-"] ["_" "_"] name;
-    sha256 = "1m4gww09id7hwzh4hri1y3hp7p0mdrf6fk9f924r2w66hlsdil0d";
+    sha256 = "0kqhm3j0nmf9pp9mpykzs2hg3nr6126ibrq1ap21hpasnq4rzlax";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/arrow-cpp/default.nix b/pkgs/development/libraries/arrow-cpp/default.nix
index 8e89aeb21a24..952f7435c069 100644
--- a/pkgs/development/libraries/arrow-cpp/default.nix
+++ b/pkgs/development/libraries/arrow-cpp/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "arrow-cpp-${version}";
-  version = "0.10.0";
+  version = "0.9.0";
 
   src = fetchurl {
     url = "mirror://apache/arrow/arrow-${version}/apache-arrow-${version}.tar.gz";
-    sha256 = "0bc4krapz1kzdm16npzmgdz7zvg9lip6rnqbwph8vfn7zji0fcll";
+    sha256 = "16l91fixb5dgx3v6xc73ipn1w1hjgbmijyvs81j7ywzpna2cdcdy";
   };
 
   sourceRoot = "apache-arrow-${version}/cpp";
diff --git a/pkgs/development/libraries/asio/generic.nix b/pkgs/development/libraries/asio/generic.nix
index 58dd4f614231..72305cb633fb 100644
--- a/pkgs/development/libraries/asio/generic.nix
+++ b/pkgs/development/libraries/asio/generic.nix
@@ -20,6 +20,7 @@ stdenv.mkDerivation {
     homepage = http://asio.sourceforge.net/;
     description = "Cross-platform C++ library for network and low-level I/O programming";
     license = licenses.boost;
+    broken = stdenv.isDarwin;  # test when updating to >=1.12.1
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/bullet/default.nix b/pkgs/development/libraries/bullet/default.nix
index 4d94faa9566a..fca5e8d70a3b 100644
--- a/pkgs/development/libraries/bullet/default.nix
+++ b/pkgs/development/libraries/bullet/default.nix
@@ -1,4 +1,6 @@
-{ stdenv, fetchFromGitHub, cmake, libGLU_combined, freeglut, darwin }:
+{ stdenv, fetchFromGitHub, cmake, libGLU_combined, freeglut
+, Cocoa,  OpenGL
+}:
 
 stdenv.mkDerivation rec {
   name = "bullet-${version}";
@@ -11,10 +13,9 @@ stdenv.mkDerivation rec {
     sha256 = "1msp7w3563vb43w70myjmqsdb97kna54dcfa7yvi9l3bvamb92w3";
   };
 
-  buildInputs = [ cmake ] ++
-    (if stdenv.isDarwin
-     then with darwin.apple_sdk.frameworks; [ Cocoa OpenGL ]
-     else [libGLU_combined freeglut]);
+  nativeBuildInputs = [ cmake ];
+  buildInputs = stdenv.lib.optionals stdenv.isLinux [ libGLU_combined freeglut ]
+    ++ stdenv.lib.optionals stdenv.isDarwin [ Cocoa OpenGL ];
 
   patches = [ ./gwen-narrowing.patch ];
 
@@ -28,25 +29,26 @@ stdenv.mkDerivation rec {
     "-DBUILD_CPU_DEMOS=OFF"
     "-DINSTALL_EXTRA_LIBS=ON"
   ] ++ stdenv.lib.optionals stdenv.isDarwin [
-    "-DMACOSX_DEPLOYMENT_TARGET=\"10.9\""
     "-DOPENGL_FOUND=true"
-    "-DOPENGL_LIBRARIES=${darwin.apple_sdk.frameworks.OpenGL}/Library/Frameworks/OpenGL.framework"
-    "-DOPENGL_INCLUDE_DIR=${darwin.apple_sdk.frameworks.OpenGL}/Library/Frameworks/OpenGL.framework"
-    "-DOPENGL_gl_LIBRARY=${darwin.apple_sdk.frameworks.OpenGL}/Library/Frameworks/OpenGL.framework"
-    "-DCOCOA_LIBRARY=${darwin.apple_sdk.frameworks.Cocoa}/Library/Frameworks/Cocoa.framework"
+    "-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 = {
+  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 = stdenv.lib.licenses.zlib;
-    maintainers = with stdenv.lib.maintainers; [ aforemny ];
-    platforms = with stdenv.lib.platforms; unix;
+    license = licenses.zlib;
+    maintainers = with maintainers; [ aforemny ];
+    platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/ceres-solver/default.nix b/pkgs/development/libraries/ceres-solver/default.nix
index 432e49c4354f..043b9e263d8a 100644
--- a/pkgs/development/libraries/ceres-solver/default.nix
+++ b/pkgs/development/libraries/ceres-solver/default.nix
@@ -2,7 +2,7 @@
 , eigen
 , fetchurl
 , cmake
-, google-gflags ? null
+, google-gflags
 , glog
 , runTests ? false
 }:
@@ -21,7 +21,13 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ cmake ];
   buildInputs = [ eigen glog ]
-    ++ stdenv.lib.optional (google-gflags != null) google-gflags;
+    ++ stdenv.lib.optional runTests google-gflags;
+
+  # The Basel BUILD file conflicts with the cmake build directory on
+  # case-insensitive filesystems, eg. darwin.
+  preConfigure = ''
+    rm BUILD
+  '';
 
   doCheck = runTests;
 
diff --git a/pkgs/development/libraries/clutter/default.nix b/pkgs/development/libraries/clutter/default.nix
index 705aa7252d1f..d8150fd11508 100644
--- a/pkgs/development/libraries/clutter/default.nix
+++ b/pkgs/development/libraries/clutter/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, pkgconfig, libGLU_combined, libX11, libXext, libXfixes
-, libXdamage, libXcomposite, libXi, libxcb, cogl, pango, atk, json-glib,
-gobjectIntrospection, gtk3, gnome3
+, libXdamage, libXcomposite, libXi, libxcb, cogl, pango, atk, json-glib
+, gobjectIntrospection, gtk3, gnome3, libinput, libgudev, libxkbcommon
 }:
 
 let
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ pkgconfig ];
   propagatedBuildInputs =
     [ libX11 libGLU_combined libXext libXfixes libXdamage libXcomposite libXi cogl pango
-      atk json-glib gobjectIntrospection libxcb
+      atk json-glib gobjectIntrospection libxcb libinput libgudev libxkbcommon
     ];
 
   configureFlags = [ "--enable-introspection" ]; # needed by muffin AFAIK
diff --git a/pkgs/development/libraries/cogl/default.nix b/pkgs/development/libraries/cogl/default.nix
index e06c71c15db4..c624f9537fb3 100644
--- a/pkgs/development/libraries/cogl/default.nix
+++ b/pkgs/development/libraries/cogl/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, libGL, glib, gdk_pixbuf, xorg, libintl
+{ stdenv, fetchurl, fetchpatch, pkgconfig, libGL, glib, gdk_pixbuf, xorg, libintl
 , pangoSupport ? true, pango, cairo, gobjectIntrospection, wayland, gnome3
 , mesa_noglu
 , gstreamerSupport ? true, gst_all_1 }:
@@ -14,6 +14,23 @@ in stdenv.mkDerivation rec {
     sha256 = "03f0ha3qk7ca0nnkkcr1garrm1n1vvfqhkz9lwjm592fnv6ii9rr";
   };
 
+  patches = [
+    # Some deepin packages need the following patches. They have been
+    # submitted by Fedora on the GNOME Bugzilla
+    # (https://bugzilla.gnome.org/787443). Upstream thinks the patch
+    # could be merged, but dev can not make a new release.
+
+    (fetchpatch {
+      url = https://bug787443.bugzilla-attachments.gnome.org/attachment.cgi?id=359589;
+      sha256 = "0f0d9iddg8zwy853phh7swikg4yzhxxv71fcag36f8gis0j5p998";
+    })
+
+    (fetchpatch {
+      url = https://bug787443.bugzilla-attachments.gnome.org/attachment.cgi?id=361056;
+      sha256 = "09fyrdci4727fg6qm5aaapsbv71sf4wgfaqz8jqlyy61dibgg490";
+    })
+  ];
+
   nativeBuildInputs = [ pkgconfig libintl ];
 
   configureFlags = [
diff --git a/pkgs/development/libraries/csfml/default.nix b/pkgs/development/libraries/csfml/default.nix
index 8f66b65e49ac..6ec18b9514d7 100644
--- a/pkgs/development/libraries/csfml/default.nix
+++ b/pkgs/development/libraries/csfml/default.nix
@@ -25,7 +25,6 @@ stdenv.mkDerivation {
     '';
     license = licenses.zlib;
     maintainers = [ maintainers.jpdoyle ];
-
-    platforms = platforms.linux ++ platforms.darwin;
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/dbus-sharp/default.nix b/pkgs/development/libraries/dbus-sharp/default.nix
index 40c633dda523..855dd9f3832e 100644
--- a/pkgs/development/libraries/dbus-sharp/default.nix
+++ b/pkgs/development/libraries/dbus-sharp/default.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchFromGitHub, pkgconfig, mono, autoreconfHook }:
+{stdenv, fetchFromGitHub, pkgconfig, mono48, autoreconfHook }:
 
 stdenv.mkDerivation rec {
   name = "dbus-sharp-${version}";
@@ -13,7 +13,10 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ pkgconfig autoreconfHook ];
-  buildInputs = [ mono ];
+
+  # Use msbuild when https://github.com/NixOS/nixpkgs/pull/43680 is merged
+  # See: https://github.com/NixOS/nixpkgs/pull/46060
+  buildInputs = [ mono48 ];
 
   dontStrip = true;
 
diff --git a/pkgs/development/libraries/flatpak/default.nix b/pkgs/development/libraries/flatpak/default.nix
index 6591b13834e0..c8cd420f6e7b 100644
--- a/pkgs/development/libraries/flatpak/default.nix
+++ b/pkgs/development/libraries/flatpak/default.nix
@@ -1,27 +1,32 @@
 { stdenv, fetchurl, autoreconfHook, docbook_xml_dtd_412, docbook_xml_dtd_42, docbook_xml_dtd_43, docbook_xsl, which, libxml2
-, gobjectIntrospection, gtk-doc, intltool, libxslt, pkgconfig, xmlto, appstream-glib, substituteAll, glibcLocales, yacc
+, gobjectIntrospection, gtk-doc, intltool, libxslt, pkgconfig, xmlto, appstream-glib, substituteAll, glibcLocales, yacc, xdg-dbus-proxy, p11-kit
 , bubblewrap, bzip2, dbus, glib, gpgme, json-glib, libarchive, libcap, libseccomp, coreutils, python2, hicolor-icon-theme
 , libsoup, lzma, ostree, polkit, python3, systemd, xorg, valgrind, glib-networking, makeWrapper, gnome3 }:
 
 let
-  version = "0.99.3";
+  version = "1.0.2";
   desktop_schemas = gnome3.gsettings-desktop-schemas;
 in stdenv.mkDerivation rec {
   name = "flatpak-${version}";
 
+  # TODO: split out lib once we figure out what to do with triggerdir
   outputs = [ "out" "man" "doc" "installedTests" ];
 
   src = fetchurl {
     url = "https://github.com/flatpak/flatpak/releases/download/${version}/${name}.tar.xz";
-    sha256 = "0wd6ix1qyz8wmjkfrmr6j99gwywqs7ak1ilsn1ljp72g2z449ayk";
+    sha256 = "0d0nnymb4p3njc24j0p6f74x7cdfi7jac714gxzzz5y5lrd651gn";
   };
 
   patches = [
     (substituteAll {
       src = ./fix-test-paths.patch;
-      inherit coreutils python2 glibcLocales;
+      inherit coreutils glibcLocales;
       hicolorIconTheme = hicolor-icon-theme;
     })
+    (substituteAll {
+      src = ./fix-paths.patch;
+      p11 = p11-kit;
+    })
     # patch taken from gtk_doc
     ./respect-xml-catalog-files-var.patch
     ./use-flatpak-from-path.patch
@@ -30,7 +35,7 @@ in stdenv.mkDerivation rec {
   nativeBuildInputs = [
     autoreconfHook libxml2 docbook_xml_dtd_412 docbook_xml_dtd_42 docbook_xml_dtd_43 docbook_xsl which gobjectIntrospection
     gtk-doc intltool libxslt pkgconfig xmlto appstream-glib yacc makeWrapper
-  ] ++ stdenv.lib.optionals doCheck checkInputs;
+  ];
 
   buildInputs = [
     bubblewrap bzip2 dbus glib gpgme json-glib libarchive libcap libseccomp
@@ -45,6 +50,7 @@ in stdenv.mkDerivation rec {
 
   configureFlags = [
     "--with-system-bubblewrap=${bubblewrap}/bin/bwrap"
+    "--with-system-dbus-proxy=${xdg-dbus-proxy}/bin/xdg-dbus-proxy"
     "--localstatedir=/var"
     "--enable-installed-tests"
   ];
diff --git a/pkgs/development/libraries/flatpak/fix-paths.patch b/pkgs/development/libraries/flatpak/fix-paths.patch
new file mode 100644
index 000000000000..49fcaa2b3f9b
--- /dev/null
+++ b/pkgs/development/libraries/flatpak/fix-paths.patch
@@ -0,0 +1,20 @@
+--- a/session-helper/flatpak-session-helper.c
++++ b/session-helper/flatpak-session-helper.c
+@@ -624,7 +624,7 @@
+   g_auto(GStrv) stdout_lines = NULL;
+   int i;
+   char *p11_argv[] = {
+-    "p11-kit", "server",
++    "@p11@/bin/p11-kit", "server",
+     /* We explicitly request --sh here, because we then fail on earlier versions that doesn't support
+      * this flag. This is good, because those earlier versions did not properly daemonize and caused
+      * the spawn_sync to hang forever, waiting for the pipe to close.
+@@ -770,7 +770,7 @@
+       exit (1);
+     }
+ 
+-  if (g_find_program_in_path ("p11-kit"))
++  if (TRUE)
+     start_p11_kit_server (flatpak_dir);
+   else
+     g_debug ("p11-kit not found");
diff --git a/pkgs/development/libraries/flatpak/fix-test-paths.patch b/pkgs/development/libraries/flatpak/fix-test-paths.patch
index 3f4bc56721ee..d00e4fa7f895 100644
--- a/pkgs/development/libraries/flatpak/fix-test-paths.patch
+++ b/pkgs/development/libraries/flatpak/fix-test-paths.patch
@@ -1,6 +1,6 @@
 --- a/tests/libtest.sh
 +++ b/tests/libtest.sh
-@@ -315,7 +315,7 @@
+@@ -296,7 +296,7 @@
          # running installed-tests: assume we know what we're doing
          :
      elif ! "$FLATPAK_BWRAP" --unshare-ipc --unshare-net --unshare-pid \
@@ -9,16 +9,7 @@
          sed -e 's/^/# /' < bwrap-result
          echo "1..0 # SKIP Cannot run bwrap"
          exit 0
-@@ -323,7 +323,7 @@
- }
- 
- skip_without_python2 () {
--    if ! test -f /usr/bin/python2 || ! /usr/bin/python2 -c "import sys; sys.exit(0 if sys.version_info >= (2, 7) else 1)" ; then
-+    if ! test -f @python2@/bin/python2 || ! @python2@/bin/python2 -c "import sys; sys.exit(0 if sys.version_info >= (2, 7) else 1)" ; then
-         echo "1..0 # SKIP this test requires /usr/bin/python2 (2.7) support"
-         exit 0
-     fi
-@@ -335,12 +335,12 @@
+@@ -309,12 +309,12 @@
  export DBUS_SESSION_BUS_ADDRESS="$(cat dbus-session-bus-address)"
  DBUS_SESSION_BUS_PID="$(cat dbus-session-bus-pid)"
  
@@ -43,7 +34,7 @@
  mkdir -p ${DIR}/usr/bin
  mkdir -p ${DIR}/usr/lib
  ln -s ../lib ${DIR}/usr/lib64
-@@ -35,73 +36,27 @@
+@@ -35,48 +36,27 @@
  else
      cp `which ldconfig` ${DIR}/usr/bin
  fi
@@ -73,31 +64,6 @@
  for i in $@; do
 -    I=`which $i`
 -    add_bin $I
--    if test $i == python2; then
--        mkdir -p ${DIR}/usr/lib/python2.7/lib-dynload
--        # This is a hardcoded minimal set of modules we need in the current tests.
--        # Pretty hacky stuff. Add modules as needed.
--        PYDIR=/usr/lib/python2.7
--        if test -d /usr/lib64/python2.7; then PYDIR=/usr/lib64/python2.7; fi
--        for py in site os stat posixpath genericpath warnings \
--                       linecache types UserDict abc _abcoll \
--                       _weakrefset copy_reg traceback sysconfig \
--                       re sre_compile sre_parse sre_constants \
--                       _sysconfigdata ; do
--            cp ${PYDIR}/$py.py ${DIR}/usr/lib/python2.7
--        done
--        # These might not exist, depending how Python was configured; and the
--        # part after ${so} might be "module" or ".x86_64-linux-gnu" or
--        # something else
--        for so in _locale strop ; do
--            cp ${PYDIR}/lib-dynload/${so}*.so ${DIR}/usr/lib/python2.7/lib-dynload || :
--        done
--        for plat in $( cd ${PYDIR} && echo plat-* ); do
--            test -e ${PYDIR}/${plat} || continue
--            mkdir -p ${DIR}/usr/lib/python2.7/${plat}
--            cp ${PYDIR}/${plat}/*.py ${DIR}/usr/lib/python2.7/${plat}/
--        done
--    fi
 -done
 -for i in `cat $BINS`; do
 -    echo Adding binary $i 1>&2
diff --git a/pkgs/development/libraries/flatpak/use-flatpak-from-path.patch b/pkgs/development/libraries/flatpak/use-flatpak-from-path.patch
index e855902a9301..408198bda5cb 100644
--- a/pkgs/development/libraries/flatpak/use-flatpak-from-path.patch
+++ b/pkgs/development/libraries/flatpak/use-flatpak-from-path.patch
@@ -1,6 +1,6 @@
 --- a/common/flatpak-dir.c
 +++ b/common/flatpak-dir.c
-@@ -5467,7 +5467,7 @@ export_desktop_file (const char   *app,
+@@ -5758,7 +5758,7 @@ export_desktop_file (const char   *app,
  
        new_exec = g_string_new ("");
        g_string_append_printf (new_exec,
@@ -9,7 +9,7 @@
                                escaped_branch,
                                escaped_arch);
  
-@@ -6644,8 +6644,8 @@ flatpak_dir_deploy (FlatpakDir          *self,
+@@ -6935,8 +6935,8 @@ flatpak_dir_deploy (FlatpakDir          *self,
                                         error))
          return FALSE;
  
diff --git a/pkgs/development/libraries/geis/default.nix b/pkgs/development/libraries/geis/default.nix
index 56d8cd21f844..fa3aa77cd3ad 100644
--- a/pkgs/development/libraries/geis/default.nix
+++ b/pkgs/development/libraries/geis/default.nix
@@ -29,7 +29,9 @@ stdenv.mkDerivation rec {
     sha256 = "1svhbjibm448ybq6gnjjzj0ak42srhihssafj0w402aj71lgaq4a";
   };
 
-  NIX_CFLAGS_COMPILE = "-Wno-format -Wno-misleading-indentation -Wno-error";
+  NIX_CFLAGS_COMPILE = [ "-Wno-error=misleading-indentation" "-Wno-error=pointer-compare" ];
+
+  hardeningDisable = [ "format" ];
 
   pythonPath = with python3Packages;
     [ pygobject3  ];
diff --git a/pkgs/development/libraries/goffice/default.nix b/pkgs/development/libraries/goffice/default.nix
index 6155b8b18bd0..4795f45812b2 100644
--- a/pkgs/development/libraries/goffice/default.nix
+++ b/pkgs/development/libraries/goffice/default.nix
@@ -2,11 +2,11 @@
 , libgsf, libxml2, libxslt, cairo, pango, librsvg }:
 
 stdenv.mkDerivation rec {
-  name = "goffice-0.10.39";
+  name = "goffice-0.10.43";
 
   src = fetchurl {
     url = "mirror://gnome/sources/goffice/0.10/${name}.tar.xz";
-    sha256 = "73f23fbf05f3fa98343208b751db04b31a7ff743c2d828e1a0a130c566f1bc4f";
+    sha256 = "550fceefa74622b8fe57dd0b030003e31db50edf7f87068ff5e146365108b64e";
   };
 
   nativeBuildInputs = [ pkgconfig intltool ];
diff --git a/pkgs/development/libraries/gssdp/default.nix b/pkgs/development/libraries/gssdp/default.nix
index d48ba9082af2..0d77018eee5f 100644
--- a/pkgs/development/libraries/gssdp/default.nix
+++ b/pkgs/development/libraries/gssdp/default.nix
@@ -1,22 +1,30 @@
-{ stdenv, fetchurl, pkgconfig, libsoup, glib }:
+{ stdenv, fetchurl, pkgconfig, gobjectIntrospection, vala, gtk-doc, docbook_xsl, docbook_xml_dtd_412, libsoup, gtk3, glib }:
 
 stdenv.mkDerivation rec {
   name = "gssdp-${version}";
   version = "1.0.2";
 
+  outputs = [ "out" "bin" "dev" "devdoc" ];
+
   src = fetchurl {
-    url = "mirror://gnome/sources/gssdp/1.0/${name}.tar.xz";
+    url = "mirror://gnome/sources/gssdp/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
     sha256 = "1p1m2m3ndzr2whipqw4vfb6s6ia0g7rnzzc4pnq8b8g1qw4prqd1";
   };
 
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ libsoup ];
+  nativeBuildInputs = [ pkgconfig gobjectIntrospection vala gtk-doc docbook_xsl docbook_xml_dtd_412 ];
+  buildInputs = [ libsoup gtk3 ];
   propagatedBuildInputs = [ glib ];
 
+  configureFlags = [
+    "--enable-gtk-doc"
+  ];
+
+  doCheck = true;
+
   meta = with stdenv.lib; {
     description = "GObject-based API for handling resource discovery and announcement over SSDP";
     homepage = http://www.gupnp.org/;
-    license = licenses.lgpl2;
+    license = licenses.lgpl2Plus;
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/development/libraries/gtkspellmm/default.nix b/pkgs/development/libraries/gtkspellmm/default.nix
index 04456b440193..cb141f8c5569 100644
--- a/pkgs/development/libraries/gtkspellmm/default.nix
+++ b/pkgs/development/libraries/gtkspellmm/default.nix
@@ -3,18 +3,14 @@
 , gtk3, glib, glibmm, gtkmm3, gtkspell3
 }:
 
-let
-  version = "3.0.4";
-
-in
-
 stdenv.mkDerivation rec {
   name = "gtkspellmm-${version}";
+  version = "3.0.5";
 
   src = fetchurl {
     url = "mirror://sourceforge/project/gtkspell/gtkspellmm/" +
-          "${name}.tar.gz";
-    sha256 = "0x6zx928dl62f0c0x6b2s32i06lvn18wx7crrgs1j9yjgkim4k4k";
+          "${name}.tar.xz";
+    sha256 = "0i8mxwyfv5mskachafa4qlh315q0cfph7s66s1s34nffadbmm1sv";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/libraries/gupnp-av/default.nix b/pkgs/development/libraries/gupnp-av/default.nix
index 9b61f4b648e1..7491da7c3e2f 100644
--- a/pkgs/development/libraries/gupnp-av/default.nix
+++ b/pkgs/development/libraries/gupnp-av/default.nix
@@ -1,22 +1,29 @@
-{ stdenv, fetchurl, pkgconfig, gupnp, glib, libxml2 }:
+{ stdenv, fetchurl, pkgconfig, gobjectIntrospection, vala, gtk-doc, docbook_xsl, docbook_xml_dtd_412, gupnp, glib, libxml2 }:
 
 stdenv.mkDerivation rec {
   name = "gupnp-av-${version}";
-  majorVersion = "0.12";
-  version = "${majorVersion}.10";
+  version = "0.12.10";
+
+  outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
-    url = "mirror://gnome/sources/gupnp-av/${majorVersion}/${name}.tar.xz";
+    url = "mirror://gnome/sources/gupnp-av/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
     sha256 = "0nmq6wlbfsssanv3jgv2z0nhfkv8vzfr3gq5qa8svryvvn2fyf40";
   };
-  
-  nativeBuildInputs = [ pkgconfig ];
+
+  nativeBuildInputs = [ pkgconfig gobjectIntrospection vala gtk-doc docbook_xsl docbook_xml_dtd_412 ];
   buildInputs = [ gupnp glib libxml2 ];
 
-  meta = {
+  configureFlags = [
+    "--enable-gtk-doc"
+  ];
+
+  doCheck = true;
+
+  meta = with stdenv.lib; {
     homepage = http://gupnp.org/;
     description = "A collection of helpers for building AV (audio/video) applications using GUPnP";
-    license = stdenv.lib.licenses.gpl2;
-    platforms = stdenv.lib.platforms.linux;
+    license = licenses.lgpl2Plus;
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/gupnp-dlna/default.nix b/pkgs/development/libraries/gupnp-dlna/default.nix
index 75818f756921..aba95889b698 100644
--- a/pkgs/development/libraries/gupnp-dlna/default.nix
+++ b/pkgs/development/libraries/gupnp-dlna/default.nix
@@ -1,22 +1,34 @@
-{ stdenv, fetchurl, pkgconfig,  gobjectIntrospection, gupnp, gst-plugins-base }:
+{ stdenv, fetchurl, pkgconfig, gobjectIntrospection, vala, gtk-doc, docbook_xsl, docbook_xml_dtd_412, gupnp, gst_all_1 }:
 
 stdenv.mkDerivation rec {
   name = "gupnp-dlna-${version}";
-  majorVersion = "0.10";
-  version = "${majorVersion}.5";
+  version = "0.10.5";
+
+  outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
-    url = "mirror://gnome/sources/gupnp-dlna/${majorVersion}/${name}.tar.xz";
+    url = "mirror://gnome/sources/gupnp-dlna/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
     sha256 = "0spzd2saax7w776p5laixdam6d7smyynr9qszhbmq7f14y13cghj";
   };
 
-  nativeBuildInputs = [ pkgconfig gobjectIntrospection ];
-  buildInputs = [ gupnp gst-plugins-base ];
+  nativeBuildInputs = [ pkgconfig gobjectIntrospection vala gtk-doc docbook_xsl docbook_xml_dtd_412 ];
+  buildInputs = [ gupnp gst_all_1.gst-plugins-base ];
+
+  configureFlags = [
+    "--enable-gtk-doc"
+  ];
+
+  doCheck = true;
+
+  postPatch = ''
+    chmod +x tests/test-discoverer.sh.in
+    patchShebangs tests/test-discoverer.sh.in
+  '';
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = https://wiki.gnome.org/Projects/GUPnP/;
     description = "Library to ease DLNA-related bits for applications using GUPnP";
-    license = stdenv.lib.licenses.gpl2;
-    platforms = stdenv.lib.platforms.linux;
+    license = licenses.lgpl2Plus;
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/gupnp-igd/default.nix b/pkgs/development/libraries/gupnp-igd/default.nix
index 182905e9546a..50107959786d 100644
--- a/pkgs/development/libraries/gupnp-igd/default.nix
+++ b/pkgs/development/libraries/gupnp-igd/default.nix
@@ -1,22 +1,29 @@
-{ stdenv, fetchurl, pkgconfig, glib, gupnp }:
- 
+{ stdenv, fetchurl, pkgconfig, gettext, gobjectIntrospection, gtk-doc, docbook_xsl, docbook_xml_dtd_412, glib, gupnp }:
+
 stdenv.mkDerivation rec {
   name = "gupnp-igd-${version}";
-  majorVersion = "0.2";
-  version = "${majorVersion}.4";
+  version = "0.2.5";
+
+  outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
-    url = "mirror://gnome/sources/gupnp-igd/${majorVersion}/${name}.tar.xz";
-    sha256 = "38c4a6d7718d17eac17df95a3a8c337677eda77e58978129ad3182d769c38e44";
+    url = "mirror://gnome/sources/gupnp-igd/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
+    sha256 = "081v1vhkbz3wayv49xfiskvrmvnpx93k25am2wnarg5cifiiljlb";
   };
 
-  nativeBuildInputs = [ pkgconfig ];
+  nativeBuildInputs = [ pkgconfig gettext gobjectIntrospection gtk-doc docbook_xsl docbook_xml_dtd_412 ];
   propagatedBuildInputs = [ glib gupnp ];
 
-  meta = {
+  configureFlags = [
+    "--enable-gtk-doc"
+  ];
+
+  doCheck = true;
+
+  meta = with stdenv.lib; {
+    description = "Library to handle UPnP IGD port mapping";
     homepage = http://www.gupnp.org/;
-    license = stdenv.lib.licenses.lgpl21;
-    platforms = stdenv.lib.platforms.linux;
+    license = licenses.lgpl21;
+    platforms = platforms.linux;
   };
 }
-
diff --git a/pkgs/development/libraries/gupnp/default.nix b/pkgs/development/libraries/gupnp/default.nix
index 963b93ef6917..45adf46ff36f 100644
--- a/pkgs/development/libraries/gupnp/default.nix
+++ b/pkgs/development/libraries/gupnp/default.nix
@@ -1,28 +1,39 @@
-{ stdenv, fetchurl, pkgconfig, glib, gssdp, libsoup, libxml2, libuuid }:
- 
+{ stdenv, fetchurl, pkgconfig, gobjectIntrospection, vala, gtk-doc, docbook_xsl, docbook_xml_dtd_412, docbook_xml_dtd_44, glib, gssdp, libsoup, libxml2, libuuid }:
+
 stdenv.mkDerivation rec {
   name = "gupnp-${version}";
-  majorVersion = "1.0";
-  version = "${majorVersion}.2";
+  version = "1.0.3";
+
+  outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
-    url = "mirror://gnome/sources/gupnp/${majorVersion}/gupnp-${version}.tar.xz";
-    sha256 = "043nqxlj030a3wvd6x4c9z8fjarjjjsl2pjarl0nn70ig6kzswsi";
+    url = "mirror://gnome/sources/gupnp/${stdenv.lib.versions.majorMinor version}/gupnp-${version}.tar.xz";
+    sha256 = "1fyb6yn75vf2y1b8nbc1df572swzr74yiwy3v3g5xn36wlp1cjvr";
   };
 
-  nativeBuildInputs = [ pkgconfig ];
+  patches = [
+    # Nix’s pkg-config ignores Requires.private
+    # https://github.com/NixOS/nixpkgs/commit/1e6622f4d5d500d6e701bd81dd4a22977d10637d
+    # We are essentialy reverting the following patch for now
+    # https://bugzilla.gnome.org/show_bug.cgi?id=685477
+    # at least until Requires.internal or something is implemented
+    # https://gitlab.freedesktop.org/pkg-config/pkg-config/issues/7
+    ./fix-requires.patch
+  ];
+
+  nativeBuildInputs = [ pkgconfig gobjectIntrospection vala gtk-doc docbook_xsl docbook_xml_dtd_412 docbook_xml_dtd_44 ];
   propagatedBuildInputs = [ glib gssdp libsoup libxml2 libuuid ];
 
-  postInstall = ''
-    ln -sv ${libsoup.dev}/include/libsoup-2*/libsoup $out/include
-    ln -sv ${libxml2.dev}/include/*/libxml $out/include
-    ln -sv ${gssdp}/include/*/libgssdp $out/include
-  '';
+  configureFlags = [
+    "--enable-gtk-doc"
+  ];
+
+  doCheck = true;
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = http://www.gupnp.org/;
     description = "An implementation of the UPnP specification";
-    license = stdenv.lib.licenses.gpl2;
-    platforms = stdenv.lib.platforms.linux;
+    license = licenses.lgpl2Plus;
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/gupnp/fix-requires.patch b/pkgs/development/libraries/gupnp/fix-requires.patch
new file mode 100644
index 000000000000..4538fc55460f
--- /dev/null
+++ b/pkgs/development/libraries/gupnp/fix-requires.patch
@@ -0,0 +1,9 @@
+--- a/gupnp-1.0.pc.in
++++ b/gupnp-1.0.pc.in
+@@ -8,4 +8,5 @@
+ Version: @VERSION@
+ Libs: -L${libdir} -lgupnp-1.0
+ Cflags: -I${includedir}/gupnp-1.0
+-Requires.private: gssdp-1.0 libxml-2.0 libsoup-2.4 @UUID_LIBS@
++Requires: glib-2.0 gobject-2.0 gssdp-1.0 libxml-2.0 libsoup-2.4
++Requires.private: @UUID_LIBS@
diff --git a/pkgs/development/libraries/ilixi/default.nix b/pkgs/development/libraries/ilixi/default.nix
index 99f6df9c5f06..bb6e23937c05 100644
--- a/pkgs/development/libraries/ilixi/default.nix
+++ b/pkgs/development/libraries/ilixi/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Lightweight C++ GUI toolkit for embedded Linux systems";
-    homepage = http://ilixi.org/;
+    homepage = https://github.com/ilixi/ilixi;
     license = licenses.lgpl3;
     platforms = platforms.linux;
     maintainers = [ maintainers.bjornfor ];
diff --git a/pkgs/development/libraries/iso-codes/default.nix b/pkgs/development/libraries/iso-codes/default.nix
index d78c59e9c25a..80154f504d41 100644
--- a/pkgs/development/libraries/iso-codes/default.nix
+++ b/pkgs/development/libraries/iso-codes/default.nix
@@ -17,9 +17,9 @@ stdenv.mkDerivation rec {
   buildInputs = [ gettext python3 ];
 
   meta = with stdenv.lib; {
-    homepage = http://pkg-isocodes.alioth.debian.org/;
+    homepage = https://salsa.debian.org/iso-codes-team/iso-codes;
     description = "Various ISO codes packaged as XML files";
-    maintainers = [ ];
+    license = licenses.lgpl21;
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/development/libraries/jbig2dec/default.nix b/pkgs/development/libraries/jbig2dec/default.nix
index cc838be0f4f0..04a165866faf 100644
--- a/pkgs/development/libraries/jbig2dec/default.nix
+++ b/pkgs/development/libraries/jbig2dec/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation rec {
   name = "jbig2dec-0.14";
 
   src = fetchurl {
-    url = "http://downloads.ghostscript.com/public/jbig2dec/${name}.tar.gz";
+    url = "https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs922/${name}.tar.gz";
     sha256 = "0k01hp0q4275fj4rbr1gy64svfraw5w7wvwl08yjhvsnpb1rid11";
   };
 
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   doCheck = false; # fails 1 of 4 tests
 
   meta = {
-    homepage = https://www.ghostscript.com/jbig2dec.html;
+    homepage = https://www.jbig2dec.com/;
     description = "Decoder implementation of the JBIG2 image compression format";
     license = stdenv.lib.licenses.gpl2Plus;
     platforms = stdenv.lib.platforms.unix;
diff --git a/pkgs/development/libraries/kde-frameworks/default.nix b/pkgs/development/libraries/kde-frameworks/default.nix
index ea8f30f0bba2..62ae433ff710 100644
--- a/pkgs/development/libraries/kde-frameworks/default.nix
+++ b/pkgs/development/libraries/kde-frameworks/default.nix
@@ -145,6 +145,7 @@ let
       kpackage = callPackage ./kpackage {};
       kpty = callPackage ./kpty.nix {};
       kunitconversion = callPackage ./kunitconversion.nix {};
+      syndication = callPackage ./syndication.nix {};
 
     # TIER 3
       baloo = callPackage ./baloo.nix {};
diff --git a/pkgs/development/libraries/kde-frameworks/fetch.sh b/pkgs/development/libraries/kde-frameworks/fetch.sh
index 48f009f8d3e0..1292d9cc7b33 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.49/ -A '*.tar.xz' )
+WGET_ARGS=( https://download.kde.org/stable/frameworks/5.50/ -A '*.tar.xz' )
diff --git a/pkgs/development/libraries/kde-frameworks/srcs.nix b/pkgs/development/libraries/kde-frameworks/srcs.nix
index 4f866974b61b..278de2d2a1ff 100644
--- a/pkgs/development/libraries/kde-frameworks/srcs.nix
+++ b/pkgs/development/libraries/kde-frameworks/srcs.nix
@@ -3,627 +3,635 @@
 
 {
   attica = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/attica-5.49.0.tar.xz";
-      sha256 = "1iqclahs9yzyjnkzbzr8hl9j6q8m2djdm6mix92xwrakgirnl3gn";
-      name = "attica-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/attica-5.50.0.tar.xz";
+      sha256 = "0iyaxh92qsh25dl3y18235x9c39jvxgzvfmz96vs5rjkyjnnh88w";
+      name = "attica-5.50.0.tar.xz";
     };
   };
   baloo = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/baloo-5.49.0.tar.xz";
-      sha256 = "0xj12v0k58sr3snxyj4vx7dqhinrvk6qm0ikymscqgbmw9ijwxph";
-      name = "baloo-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/baloo-5.50.0.tar.xz";
+      sha256 = "07n90b2mz1d0anknwf271dp2w9hn2kdb0903zqsqnhmix1jqpfy6";
+      name = "baloo-5.50.0.tar.xz";
     };
   };
   bluez-qt = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/bluez-qt-5.49.0.tar.xz";
-      sha256 = "0mgnq7w52ksr8b7ys2f1m3irnviy011bsaggh489fjy0xlzk5ard";
-      name = "bluez-qt-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/bluez-qt-5.50.0.tar.xz";
+      sha256 = "028rdw97c042c1xcb2gwa6n4fcpn0wx4ilgh5j584afps6rg2k3b";
+      name = "bluez-qt-5.50.0.tar.xz";
     };
   };
   breeze-icons = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/breeze-icons-5.49.0.tar.xz";
-      sha256 = "178620hhqlv6dl8qal2bmiw55s8b3p4h16q8cgkmq5q5i59nzcph";
-      name = "breeze-icons-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/breeze-icons-5.50.0.tar.xz";
+      sha256 = "1zhlylry01w3x72q8ipjgijkicjp3wyv9p183awvg3znkblghhgw";
+      name = "breeze-icons-5.50.0.tar.xz";
     };
   };
   extra-cmake-modules = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/extra-cmake-modules-5.49.0.tar.xz";
-      sha256 = "07pdgjyrxniacqcfvrzw8ij3kasx5pkbq38k6491qbhzfm8vi7y0";
-      name = "extra-cmake-modules-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/extra-cmake-modules-5.50.0.tar.xz";
+      sha256 = "1284gv6l1cck0y6phc9xphs1bl4ayk5a0nwzykhc8ncnkjqb0cyx";
+      name = "extra-cmake-modules-5.50.0.tar.xz";
     };
   };
   frameworkintegration = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/frameworkintegration-5.49.0.tar.xz";
-      sha256 = "1ni4jrny630zf3zwmqbm8z7dqgiar58992lylfv7kspdg5crcgfx";
-      name = "frameworkintegration-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/frameworkintegration-5.50.0.tar.xz";
+      sha256 = "14nq6v5xnznc7c7zdfvals4998cmlgdw4i7pz9hfbs35v0pswd03";
+      name = "frameworkintegration-5.50.0.tar.xz";
     };
   };
   kactivities = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kactivities-5.49.0.tar.xz";
-      sha256 = "117f3zrdbs0pa10wn7vy691n02m01h6x4pm8m1q3f4pjm0k4kqim";
-      name = "kactivities-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kactivities-5.50.0.tar.xz";
+      sha256 = "0jbri8whf91skxc0zg72bx0m7aym8ka801ncp9kxbjdcj1mbz451";
+      name = "kactivities-5.50.0.tar.xz";
     };
   };
   kactivities-stats = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kactivities-stats-5.49.0.tar.xz";
-      sha256 = "129z2m5330j0l1nw8g3qjib60xmx54c6d2g9vnp4w8z0agnihs5f";
-      name = "kactivities-stats-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kactivities-stats-5.50.0.tar.xz";
+      sha256 = "0h6dl0522sl7glzk4rz7qj5642il2nr2jwmknbwv3ljhxba9qdrs";
+      name = "kactivities-stats-5.50.0.tar.xz";
     };
   };
   kapidox = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kapidox-5.49.0.tar.xz";
-      sha256 = "09jph3hvasqx1ia0l7is9brc08nxvh9qmg8564nh5cmqaxdwj559";
-      name = "kapidox-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kapidox-5.50.0.tar.xz";
+      sha256 = "11hp0qpndy9s8g6x95s8lk7abkp1yvqraa1cdvvsdhn71izmsmqz";
+      name = "kapidox-5.50.0.tar.xz";
     };
   };
   karchive = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/karchive-5.49.0.tar.xz";
-      sha256 = "1p1gwqda2bsjdysp4ggwdsldbasyfl075xn3wchqyakdv2bdzmn0";
-      name = "karchive-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/karchive-5.50.0.tar.xz";
+      sha256 = "1jh1cyvdg680swyq2nmcpk4cfqmy67v49jl76nm1b5399zcs282l";
+      name = "karchive-5.50.0.tar.xz";
     };
   };
   kauth = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kauth-5.49.0.tar.xz";
-      sha256 = "0qg3zwg3kfx2snmvsw4ixr0qds7bd7992dxggvi9dcny7dm9q0n8";
-      name = "kauth-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kauth-5.50.0.tar.xz";
+      sha256 = "15pk78a76897y4rym5ln1l5zm3n64rprl7k5bwkp4qzhwy7gzv7p";
+      name = "kauth-5.50.0.tar.xz";
     };
   };
   kbookmarks = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kbookmarks-5.49.0.tar.xz";
-      sha256 = "0clmfdcc1fc98q3vbfjf8x140a6df88ixhz0mny3dpv1wcr5cz53";
-      name = "kbookmarks-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kbookmarks-5.50.0.tar.xz";
+      sha256 = "1lvsarcwjkmx14bni9akxrrr11zsvr9fv47ahw97kj9p3wdb1sy9";
+      name = "kbookmarks-5.50.0.tar.xz";
     };
   };
   kcmutils = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kcmutils-5.49.0.tar.xz";
-      sha256 = "0xv899p9f0hj6hd089mhn910qn66bihzpaa11ikrhbimckw8g19q";
-      name = "kcmutils-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kcmutils-5.50.0.tar.xz";
+      sha256 = "1q9z8p20fn6k8yrhy0nq77yg4ra5vnpq6hq9mr7jkjqni9b0h3np";
+      name = "kcmutils-5.50.0.tar.xz";
     };
   };
   kcodecs = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kcodecs-5.49.0.tar.xz";
-      sha256 = "07va63gsfjrc5ha9rdli923cwyzxpb3v8xgf1zfhw75cfkgda3nz";
-      name = "kcodecs-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kcodecs-5.50.0.tar.xz";
+      sha256 = "13gh7vys0xxpfqzjbxwr65p6d6jgcg0wr9ir1xqbkc368kay4n7b";
+      name = "kcodecs-5.50.0.tar.xz";
     };
   };
   kcompletion = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kcompletion-5.49.0.tar.xz";
-      sha256 = "16br6wnqzndk8v41im23h2ww4hypi2i1qfg6m9c49mpxflgmspbi";
-      name = "kcompletion-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kcompletion-5.50.0.tar.xz";
+      sha256 = "1n0frkk2phf6a0rcrsf011jb2f66sisjy9lmmiy1czy533y3iraz";
+      name = "kcompletion-5.50.0.tar.xz";
     };
   };
   kconfig = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kconfig-5.49.0.tar.xz";
-      sha256 = "0cb3crnlr8hr5npq3ykfxqd4yckmkykzrrizfs89ryhmznc2ngsf";
-      name = "kconfig-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kconfig-5.50.0.tar.xz";
+      sha256 = "0jb4lq3k8lyjksgj728hgf0h81v6fxy1kyp17sv0cjrs6n3z8ry8";
+      name = "kconfig-5.50.0.tar.xz";
     };
   };
   kconfigwidgets = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kconfigwidgets-5.49.0.tar.xz";
-      sha256 = "1nqcrqr67m3kvq2r83x45zcdghk12bas9fp0s43s68imrhy5xikz";
-      name = "kconfigwidgets-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kconfigwidgets-5.50.0.tar.xz";
+      sha256 = "102al35g2c6v091zm086lvhbym0j0f81zpn6wsk5wr0xc569lagj";
+      name = "kconfigwidgets-5.50.0.tar.xz";
     };
   };
   kcoreaddons = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kcoreaddons-5.49.0.tar.xz";
-      sha256 = "00s22jvbwav20cidnp8v9fgc6pqbp4wnqkb2spv18mjhg4pv3bqj";
-      name = "kcoreaddons-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kcoreaddons-5.50.0.tar.xz";
+      sha256 = "1b7m4an322hk89n1svy3345106kphhn0ha7q21k5b3bwphszrx28";
+      name = "kcoreaddons-5.50.0.tar.xz";
     };
   };
   kcrash = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kcrash-5.49.0.tar.xz";
-      sha256 = "0xmr9rrl0xahpnq1rw4bbar1nbr21x2bk4hhv79la6dsg9ha25b3";
-      name = "kcrash-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kcrash-5.50.0.tar.xz";
+      sha256 = "00n2ynhp1dbp75wkx9wm4mlyf5q3cbrk7k563mdihw88mzmmyvl4";
+      name = "kcrash-5.50.0.tar.xz";
     };
   };
   kdbusaddons = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kdbusaddons-5.49.0.tar.xz";
-      sha256 = "1fnmrrffp3kfwyjfzqkzlizflpyqgzbjljb51ppmdypcq8wy9ibh";
-      name = "kdbusaddons-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kdbusaddons-5.50.0.tar.xz";
+      sha256 = "0ijvg4j97j4fv063phg086s9db6nj5gfgic5gcqg99h9hznbqkym";
+      name = "kdbusaddons-5.50.0.tar.xz";
     };
   };
   kdeclarative = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kdeclarative-5.49.0.tar.xz";
-      sha256 = "0kgawb8wfx4snk2ckwxj0hmpgcvq3k1zpsxqdawi4cmsy4bxzfs9";
-      name = "kdeclarative-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kdeclarative-5.50.0.tar.xz";
+      sha256 = "1fwfzvadqh4rfyklygs17mkikh5m0m4flka91wbhw6jg6w7bvc4c";
+      name = "kdeclarative-5.50.0.tar.xz";
     };
   };
   kded = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kded-5.49.0.tar.xz";
-      sha256 = "1l6hs3spbs3618jwg3n7r3hrrkqxmmd43f0km8849x4641p72zyc";
-      name = "kded-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kded-5.50.0.tar.xz";
+      sha256 = "1hfh2l40s2mz4qh2wirfa8lnixvvl6y0agh3l5ii0jw93wvyci01";
+      name = "kded-5.50.0.tar.xz";
     };
   };
   kdelibs4support = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/portingAids/kdelibs4support-5.49.0.tar.xz";
-      sha256 = "1cz70c77l66lbw4fbgmfbq1fldybqxsiay2pg9risgqp3ra8wahi";
-      name = "kdelibs4support-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/portingAids/kdelibs4support-5.50.0.tar.xz";
+      sha256 = "12ilp1cnpfhd8f4zsnwwq428cip43yq3xj0px91ndfrgq8chg05l";
+      name = "kdelibs4support-5.50.0.tar.xz";
     };
   };
   kdesignerplugin = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kdesignerplugin-5.49.0.tar.xz";
-      sha256 = "0hj4ng0i22rvw4kl0irhqhww3kvn4c0pncn38w1j5vim4gxv0xcd";
-      name = "kdesignerplugin-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kdesignerplugin-5.50.0.tar.xz";
+      sha256 = "00dhhars7ab7zjsz992yswcns5zijzyy84fpym2hg1avxinm31x5";
+      name = "kdesignerplugin-5.50.0.tar.xz";
     };
   };
   kdesu = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kdesu-5.49.0.tar.xz";
-      sha256 = "1gwvby51qqbkrs2vjpnplxr6m6xa5ddfdjs1iygh8kpqsh8a765k";
-      name = "kdesu-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kdesu-5.50.0.tar.xz";
+      sha256 = "095vddhhlc8kyhrmygccvhzbhl6bkscnfrx3vf96anm68zyk4g3f";
+      name = "kdesu-5.50.0.tar.xz";
     };
   };
   kdewebkit = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kdewebkit-5.49.0.tar.xz";
-      sha256 = "05idyw94ayjh7qdia9pnjmx29r5lsch421kv8h5ivr7ixcbrgk6n";
-      name = "kdewebkit-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kdewebkit-5.50.0.tar.xz";
+      sha256 = "0p5h58mcwyjkrbyq66360blx001j4997dk7z85a3hf64hhv7k10h";
+      name = "kdewebkit-5.50.0.tar.xz";
     };
   };
   kdnssd = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kdnssd-5.49.0.tar.xz";
-      sha256 = "1n61id2x1iianshg8g6fw389mqihz4h8sj9hnng7cdg4csh72ffr";
-      name = "kdnssd-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kdnssd-5.50.0.tar.xz";
+      sha256 = "05d2y205mvdbgmmm0h4agbg4xf48x1xc2lgfvjnpgx8ilb5136pi";
+      name = "kdnssd-5.50.0.tar.xz";
     };
   };
   kdoctools = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kdoctools-5.49.0.tar.xz";
-      sha256 = "1dmpk453s71ls0q8hgpqqd5dcr7zlimf5wykizcy2wn7p77gzsgl";
-      name = "kdoctools-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kdoctools-5.50.0.tar.xz";
+      sha256 = "1zgjf7ib8qlgjkkhkgd3b679b672cgsbiqsshbp0f1hn25ig4dqy";
+      name = "kdoctools-5.50.0.tar.xz";
     };
   };
   kemoticons = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kemoticons-5.49.0.tar.xz";
-      sha256 = "0mz9hkhnprjbrfq54mqcvj8w87h025785m1bas80brsqzvni5krn";
-      name = "kemoticons-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kemoticons-5.50.0.tar.xz";
+      sha256 = "194rhxwf7h3mmb990l0p6l6lrf181c0scikj4h2ngmnjklgvajsg";
+      name = "kemoticons-5.50.0.tar.xz";
     };
   };
   kfilemetadata = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kfilemetadata-5.49.0.tar.xz";
-      sha256 = "045k1mgn8kg0qfsr5sl1499nzhzmbcvrqc205pmq6sh4r14nvk80";
-      name = "kfilemetadata-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kfilemetadata-5.50.0.tar.xz";
+      sha256 = "063148xbnrgplzfgqdiwyzdj2rix97xln1x72kn3qprxzc5y257l";
+      name = "kfilemetadata-5.50.0.tar.xz";
     };
   };
   kglobalaccel = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kglobalaccel-5.49.0.tar.xz";
-      sha256 = "1fk7wazfwr7smqiym3phm5yvw6cmiczag52y1vad8fgb3izd6zhl";
-      name = "kglobalaccel-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kglobalaccel-5.50.0.tar.xz";
+      sha256 = "1dwp9h7lf1lagwhm2yd2wx130s1kacjinw95f4sznxdw943vp1b3";
+      name = "kglobalaccel-5.50.0.tar.xz";
     };
   };
   kguiaddons = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kguiaddons-5.49.0.tar.xz";
-      sha256 = "1zkjd3l5pyvvilcc9lbdgqaxnpvh586yf0cndl90h3x89hy1d4xk";
-      name = "kguiaddons-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kguiaddons-5.50.0.tar.xz";
+      sha256 = "1apz11issmj8c8zw4l88grl38m6nhgwpxb1j9h9v6khjvkwxr987";
+      name = "kguiaddons-5.50.0.tar.xz";
     };
   };
   kholidays = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kholidays-5.49.0.tar.xz";
-      sha256 = "0yc4i4qsk3w1v0andw737ps1ad70696q140k0ycfhk6qmv1wvsdp";
-      name = "kholidays-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kholidays-5.50.0.tar.xz";
+      sha256 = "0zjkmsjq4m7d2gmsa0m613ny92xcb3w9zbkbsvnh8ci7ghiscz1j";
+      name = "kholidays-5.50.0.tar.xz";
     };
   };
   khtml = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/portingAids/khtml-5.49.0.tar.xz";
-      sha256 = "0k9m2pgq64grmgc6ywpzfnn65h8wfkkiwjbmz2mwbf2yi9c1ky64";
-      name = "khtml-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/portingAids/khtml-5.50.0.tar.xz";
+      sha256 = "1r1qz3pyqifrzinjz83rhb5fgw5si8xmac7jkmn8w82j2kb41bxa";
+      name = "khtml-5.50.0.tar.xz";
     };
   };
   ki18n = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/ki18n-5.49.0.tar.xz";
-      sha256 = "1i4rdrxann45zl6fkmfd1b96q52g0mpc5x19fx9h80crapkm8jjz";
-      name = "ki18n-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/ki18n-5.50.0.tar.xz";
+      sha256 = "1y6baizaynphbsfc2b93dh2nah23jh8a3rcbqn7whrdln0f31z19";
+      name = "ki18n-5.50.0.tar.xz";
     };
   };
   kiconthemes = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kiconthemes-5.49.0.tar.xz";
-      sha256 = "1f7pk6smi2f0mm7jkrw5ymmkhd9gi8vnmppyblp1v3pvmy571c2m";
-      name = "kiconthemes-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kiconthemes-5.50.0.tar.xz";
+      sha256 = "0ip0py0lx3rhjg6wzhdxrbzckmq4n1pnfbzm996wqka6aa4dwzry";
+      name = "kiconthemes-5.50.0.tar.xz";
     };
   };
   kidletime = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kidletime-5.49.0.tar.xz";
-      sha256 = "1fd02anlmaa0hnnp5q1s9973m3asy56qppwq1va1g6ga3csv3wrv";
-      name = "kidletime-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kidletime-5.50.0.tar.xz";
+      sha256 = "1kqghslwvis72h1sw6r4vrwsz0mwqzf5shj6m5mxqk6jv9wbfni1";
+      name = "kidletime-5.50.0.tar.xz";
     };
   };
   kimageformats = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kimageformats-5.49.0.tar.xz";
-      sha256 = "1q7019gbk59fwampna1ayjvw016c0q79hmldpaqh3xa9sh082wy4";
-      name = "kimageformats-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kimageformats-5.50.0.tar.xz";
+      sha256 = "0kndxzkcjm9syb6k7zzw2jxdfm1gw6gasq78issypxwc1zci5nvb";
+      name = "kimageformats-5.50.0.tar.xz";
     };
   };
   kinit = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kinit-5.49.0.tar.xz";
-      sha256 = "1rq9b59gdgcpvwd694l8h55sqahpdaky0n7ag5psjlfn5myf1d95";
-      name = "kinit-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kinit-5.50.0.tar.xz";
+      sha256 = "1lgalvd81skdncdhd0pwng0vvy54f5wi2wwpqcil22y3860jfb4i";
+      name = "kinit-5.50.0.tar.xz";
     };
   };
   kio = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kio-5.49.0.tar.xz";
-      sha256 = "0rrsg3g1b204cdp58vxd5dig1ggwyvk1382p1c86vn6w8qbrq27k";
-      name = "kio-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kio-5.50.0.tar.xz";
+      sha256 = "1bnjal43rpsbabwq756xswj1cbhbrqxgjpjccjgxqml7csa3yhh1";
+      name = "kio-5.50.0.tar.xz";
     };
   };
   kirigami2 = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kirigami2-5.49.0.tar.xz";
-      sha256 = "1wan9h7kvjzvyzfjfjd512lxiac5prhs493xjqwxgags6kxwglaz";
-      name = "kirigami2-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kirigami2-5.50.0.tar.xz";
+      sha256 = "0jc4xrs0il5b7s7hzi4ff7jn30r8kgg4fzqxrhwqix9rcxn3nrxl";
+      name = "kirigami2-5.50.0.tar.xz";
     };
   };
   kitemmodels = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kitemmodels-5.49.0.tar.xz";
-      sha256 = "1frha301540js45mrxiw034m9b2rwsa56xphkqn6cm4jmn48qdjg";
-      name = "kitemmodels-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kitemmodels-5.50.0.tar.xz";
+      sha256 = "1c4yfqibizrm0zw9kijgkx4pq0r9f12nrw2dnw90g8q7s0pg7q36";
+      name = "kitemmodels-5.50.0.tar.xz";
     };
   };
   kitemviews = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kitemviews-5.49.0.tar.xz";
-      sha256 = "1aj605q2p72w4rb9i0f2xb93bn5xfjq9sl5i4h6rqflcvvy7qpdp";
-      name = "kitemviews-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kitemviews-5.50.0.tar.xz";
+      sha256 = "0wghvj5f1xkm9rf6rg50m399z25m1rfvd67ixr0lqwnhag1r32n8";
+      name = "kitemviews-5.50.0.tar.xz";
     };
   };
   kjobwidgets = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kjobwidgets-5.49.0.tar.xz";
-      sha256 = "04i5cvbxii7n0jr3ai1dh44miqbdkxb6an5w8s7qvkv0xmkml35g";
-      name = "kjobwidgets-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kjobwidgets-5.50.0.tar.xz";
+      sha256 = "0jc7hiid2b2bpj0xw2clrzkplnqi7x1lhh5za2c37dlynndy609q";
+      name = "kjobwidgets-5.50.0.tar.xz";
     };
   };
   kjs = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/portingAids/kjs-5.49.0.tar.xz";
-      sha256 = "057ikyi4wffjvxdyk08hmj7h8vmbwbcxv98apmjzgsd611zvx5p0";
-      name = "kjs-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/portingAids/kjs-5.50.0.tar.xz";
+      sha256 = "1jfdcg725mwcfigqhp2srshvj7vhzxb3yhpwij8c0gwmzm0h1lxv";
+      name = "kjs-5.50.0.tar.xz";
     };
   };
   kjsembed = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/portingAids/kjsembed-5.49.0.tar.xz";
-      sha256 = "0qddjkfm6f0f5dynqvi3l23mgyfdbk4xzg967sj3a2qlq423ah0m";
-      name = "kjsembed-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/portingAids/kjsembed-5.50.0.tar.xz";
+      sha256 = "1iacz8x0idlswg0lwiv2i1k2qklhkk6ih6nhkajq4dy6ajnpbn7a";
+      name = "kjsembed-5.50.0.tar.xz";
     };
   };
   kmediaplayer = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/portingAids/kmediaplayer-5.49.0.tar.xz";
-      sha256 = "0hbx48ivj4i96yagd9n9vd22ycsljrvijm6nfms4x7z7jr49flrx";
-      name = "kmediaplayer-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/portingAids/kmediaplayer-5.50.0.tar.xz";
+      sha256 = "0wz8ln45wkslh5c7dq8dijj19xr1xqxi5svv58a3hr5vbcyw3sjm";
+      name = "kmediaplayer-5.50.0.tar.xz";
     };
   };
   knewstuff = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/knewstuff-5.49.0.tar.xz";
-      sha256 = "1vhcl2z9rcqg8390l1cwn3yyi1n17pn6mn8fsplp25qhzimb8bmk";
-      name = "knewstuff-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/knewstuff-5.50.0.tar.xz";
+      sha256 = "1imh0hl056hpmrvdlmb68v0wclx3isr6l8sdqrzh3snmjm3jdwhd";
+      name = "knewstuff-5.50.0.tar.xz";
     };
   };
   knotifications = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/knotifications-5.49.0.tar.xz";
-      sha256 = "10481j2irlqhqd16xi412xbglnyjl0ndanlv9s0d3fxirs95zdd9";
-      name = "knotifications-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/knotifications-5.50.0.tar.xz";
+      sha256 = "0xj62kbrlq4ib7kibwrmsbf84nv6klbh3v7rb34alacvvaf5lljs";
+      name = "knotifications-5.50.0.tar.xz";
     };
   };
   knotifyconfig = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/knotifyconfig-5.49.0.tar.xz";
-      sha256 = "09v4aq5x98sqg2awhw0n0y0rnjkr77kbf51xij0fiykd4llp9lfa";
-      name = "knotifyconfig-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/knotifyconfig-5.50.0.tar.xz";
+      sha256 = "01l4wn9khdd28rbi2qbpaqrgjp6achg6wbpaixwph2y2g9zgixdz";
+      name = "knotifyconfig-5.50.0.tar.xz";
     };
   };
   kpackage = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kpackage-5.49.0.tar.xz";
-      sha256 = "1xbfjwxb4gff8gg0hs5m9s0jcnzqk27rs2jr71g5ckhvs5psnkcd";
-      name = "kpackage-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kpackage-5.50.0.tar.xz";
+      sha256 = "0bx1hzjl5m9893s97mlhrrshagfkng36rxa0bwm7y8sbh4rnnj8p";
+      name = "kpackage-5.50.0.tar.xz";
     };
   };
   kparts = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kparts-5.49.0.tar.xz";
-      sha256 = "0zdz0byj0gsbgb007y8x37w8yf1gkw6dsp2s9bbdc4w6h9ipdj2k";
-      name = "kparts-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kparts-5.50.0.tar.xz";
+      sha256 = "1zwa0pyy0sa3j0yrdggl33gx3a48zvz68nl8r7b7ak445iwmx821";
+      name = "kparts-5.50.0.tar.xz";
     };
   };
   kpeople = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kpeople-5.49.0.tar.xz";
-      sha256 = "0i5pd1d2jphsvpc3dpdw28dsdal1qrnnrx3k6qx4wax3f8ph5khv";
-      name = "kpeople-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kpeople-5.50.0.tar.xz";
+      sha256 = "0vc81g2i5wznfav4nh5c8cp31aridiwg9ksg0gaa2q41882w560b";
+      name = "kpeople-5.50.0.tar.xz";
     };
   };
   kplotting = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kplotting-5.49.0.tar.xz";
-      sha256 = "13fzqqkyxs4ja6n5yb9lc5jx4qpsmrbsiihnwrgj3lhpzhlr91n0";
-      name = "kplotting-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kplotting-5.50.0.tar.xz";
+      sha256 = "18xw8q426sapim7532f0syb5nwf0vhx9h6xp52lyljj98l88vydw";
+      name = "kplotting-5.50.0.tar.xz";
     };
   };
   kpty = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kpty-5.49.0.tar.xz";
-      sha256 = "1pnj07079l6gkz6171fcvljh0dcdy9s77p1q0l9nnkknjbr102pg";
-      name = "kpty-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kpty-5.50.0.tar.xz";
+      sha256 = "0slk8nwh94p8xp3q91wmda2v3ipmsvd4fpdsdfz4w2j0kh6nd6w5";
+      name = "kpty-5.50.0.tar.xz";
     };
   };
   kross = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/portingAids/kross-5.49.0.tar.xz";
-      sha256 = "194zcf499fkwk3wcs3kc3l0fi9h8gn5yqh6gxrgiyn6iyy9a4qdz";
-      name = "kross-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/portingAids/kross-5.50.0.tar.xz";
+      sha256 = "1g0i34z4rhrsnq41plavq880r3c17fki69vs3wjvzmybfn0klha2";
+      name = "kross-5.50.0.tar.xz";
     };
   };
   krunner = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/krunner-5.49.0.tar.xz";
-      sha256 = "02l5gch9hpag1q5ixnb541g7m9lx25pbggldpa8zykp63apyca19";
-      name = "krunner-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/krunner-5.50.0.tar.xz";
+      sha256 = "03igg111n7c6ys0xm075hlr8k0g599pwgha7wi02k8dbbc2q20g8";
+      name = "krunner-5.50.0.tar.xz";
     };
   };
   kservice = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kservice-5.49.0.tar.xz";
-      sha256 = "1wwb6c6m8f3b16p47adkc05rrlszvvym7ckks5xp08s58pk1dm8z";
-      name = "kservice-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kservice-5.50.0.tar.xz";
+      sha256 = "0y0yk1gr7nd0svk4vkbyy1igy2klmwmsv8wwx1bvfkkg3yshz199";
+      name = "kservice-5.50.0.tar.xz";
     };
   };
   ktexteditor = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/ktexteditor-5.49.0.tar.xz";
-      sha256 = "14iss8svx49vav0h2kg8vhv8g5hg4ky30s7049csfwz7xhp7jmcj";
-      name = "ktexteditor-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/ktexteditor-5.50.0.tar.xz";
+      sha256 = "00h75yy17npwzhz572k1784h2gw5gynhl9gxbj0i9zbis1nfi1m2";
+      name = "ktexteditor-5.50.0.tar.xz";
     };
   };
   ktextwidgets = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/ktextwidgets-5.49.0.tar.xz";
-      sha256 = "14gclshmpwmfwkp2hzlnf823pjjmknd9q0gdclsh3yy268c2rsw1";
-      name = "ktextwidgets-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/ktextwidgets-5.50.0.tar.xz";
+      sha256 = "18z108si2cr38np3wcd7hkjjqhs661j2xv0zf8837mm9di4bgjiz";
+      name = "ktextwidgets-5.50.0.tar.xz";
     };
   };
   kunitconversion = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kunitconversion-5.49.0.tar.xz";
-      sha256 = "11jnqz218rga3f4ppf1d927c7qhh2qpghwjpsrnrxdkz5nrvnf79";
-      name = "kunitconversion-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kunitconversion-5.50.0.tar.xz";
+      sha256 = "0f37ap98rzc575vjf1hhh51bbjvgn00g9mdnp9x3lmi5l6npvwj4";
+      name = "kunitconversion-5.50.0.tar.xz";
     };
   };
   kwallet = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kwallet-5.49.0.tar.xz";
-      sha256 = "13bmks9jb3yhp6clv25qkqkrvbhfyk9z16laxsv79jdd82lxgn1z";
-      name = "kwallet-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kwallet-5.50.0.tar.xz";
+      sha256 = "14hlcly6x9ybczxg63nwsgv7kah1sx0haxlyllma4rwmh8a85ji5";
+      name = "kwallet-5.50.0.tar.xz";
     };
   };
   kwayland = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kwayland-5.49.0.tar.xz";
-      sha256 = "0d95l2i3j1xxkc15n57w4rhf3di02zna4zzn4gap9qdhfxlfbqi6";
-      name = "kwayland-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kwayland-5.50.0.tar.xz";
+      sha256 = "021pqsv59svj6j4g6alcgrsdi5bybx8i1skpf1v5nf5fc6f17bqb";
+      name = "kwayland-5.50.0.tar.xz";
     };
   };
   kwidgetsaddons = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kwidgetsaddons-5.49.0.tar.xz";
-      sha256 = "1frgqz9njbc81pfy6gl6p0hyh1977lg31ynrx5wy7lg7fwaxwl92";
-      name = "kwidgetsaddons-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kwidgetsaddons-5.50.0.tar.xz";
+      sha256 = "0yvd1b15vjk03jdwpyd97z1wn892amp3jkx3s7ff8nc8ax7fyc4m";
+      name = "kwidgetsaddons-5.50.0.tar.xz";
     };
   };
   kwindowsystem = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kwindowsystem-5.49.0.tar.xz";
-      sha256 = "175rzwrjndhawyy4x11lbihdr1r9gwxmxjpbz4x06hlz4g50wffp";
-      name = "kwindowsystem-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kwindowsystem-5.50.0.tar.xz";
+      sha256 = "0gmk7hp4z7ly6hm0z479hv5vqlmzfr4c9p6r572agzbpc8m682v9";
+      name = "kwindowsystem-5.50.0.tar.xz";
     };
   };
   kxmlgui = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kxmlgui-5.49.0.tar.xz";
-      sha256 = "0wsgs5ya3wnc5cryi1r9i30sq8dnnhh15p02skdjlhwjfvdhxmfa";
-      name = "kxmlgui-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kxmlgui-5.50.0.tar.xz";
+      sha256 = "1ga81jd0ad5jkb9wdh5hwzzq9axw6pcy4jz1vlc9s2xywyaq931l";
+      name = "kxmlgui-5.50.0.tar.xz";
     };
   };
   kxmlrpcclient = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/kxmlrpcclient-5.49.0.tar.xz";
-      sha256 = "0l4jnvn7s77jkvd2z44mz24mfzcw499plms79j21pjryc88drh06";
-      name = "kxmlrpcclient-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/kxmlrpcclient-5.50.0.tar.xz";
+      sha256 = "03xqxb08kbzs1m0sxpgq8lzf4809kkhl7yc17svq7y00xgq3h36r";
+      name = "kxmlrpcclient-5.50.0.tar.xz";
     };
   };
   modemmanager-qt = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/modemmanager-qt-5.49.0.tar.xz";
-      sha256 = "1wf3v552vbr4kh2d770zn3yn0q3bqjqbfrvnf813mnld7961m7p2";
-      name = "modemmanager-qt-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/modemmanager-qt-5.50.0.tar.xz";
+      sha256 = "1w7im3ihcpqvjiw7rj7iakxpyhzlaams0r900kh0mv4zfdyl9szs";
+      name = "modemmanager-qt-5.50.0.tar.xz";
     };
   };
   networkmanager-qt = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/networkmanager-qt-5.49.0.tar.xz";
-      sha256 = "16pnd52m9srcb2ml3vc3kd9k1yak5rq09yci39qp7z5jbdy7jk2z";
-      name = "networkmanager-qt-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/networkmanager-qt-5.50.0.tar.xz";
+      sha256 = "168bzsvsh3i1w3840nickg7rv0hncaiiv6sc1sycg4n6v7773dzl";
+      name = "networkmanager-qt-5.50.0.tar.xz";
     };
   };
   oxygen-icons5 = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/oxygen-icons5-5.49.0.tar.xz";
-      sha256 = "0llx06sr36cd6vgkgm3jw6k4cv1cfx3r6x6lmb477wpahis0n75g";
-      name = "oxygen-icons5-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/oxygen-icons5-5.50.0.tar.xz";
+      sha256 = "1ajx9y4wqzi55dmz360j7ha987m3wzs2zbnrm49lipgd55c8n3nc";
+      name = "oxygen-icons5-5.50.0.tar.xz";
     };
   };
   plasma-framework = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/plasma-framework-5.49.0.tar.xz";
-      sha256 = "1yrccbkdpnfbgn7fzpmzzxm5c7fhkv1vqygq1f96r30fia0cj5jv";
-      name = "plasma-framework-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/plasma-framework-5.50.0.tar.xz";
+      sha256 = "01p0friqdhzjkssd655rdsfxp2hdqaf34ypqzx7xwnw3wj1971r8";
+      name = "plasma-framework-5.50.0.tar.xz";
     };
   };
   prison = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/prison-5.49.0.tar.xz";
-      sha256 = "0dppz9x6k84sl0aiyjlh3xigqgda64r8mij3bzxcdkv2wbc4ld9d";
-      name = "prison-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/prison-5.50.0.tar.xz";
+      sha256 = "1v62dq44li0wwrgiiwad2hjj2vzcypa3i9qp0gwc8kkzg162b62d";
+      name = "prison-5.50.0.tar.xz";
     };
   };
   purpose = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/purpose-5.49.0.tar.xz";
-      sha256 = "014izz6vvk3vqw7s2qy33dqfflyylk8vqr9srkf391f6yfld9ygz";
-      name = "purpose-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/purpose-5.50.0.tar.xz";
+      sha256 = "11m5391mjf4r89frvvdq9jlkylp67h87x0g3mx00yfc004bsyi6f";
+      name = "purpose-5.50.0.tar.xz";
     };
   };
   qqc2-desktop-style = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/qqc2-desktop-style-5.49.0.tar.xz";
-      sha256 = "1vbms7b8x1y7yh8im8dv1q3wwl3j2x4r47yqg86f28grw2r2n2zj";
-      name = "qqc2-desktop-style-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/qqc2-desktop-style-5.50.0.tar.xz";
+      sha256 = "0ml88m6hb1llzl7kaykkny7v717grvzh8jnlwdyla2lv4rvvz7d8";
+      name = "qqc2-desktop-style-5.50.0.tar.xz";
     };
   };
   solid = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/solid-5.49.0.tar.xz";
-      sha256 = "1p7rdmf2f8520xc7zp7wxlcizyyjfxwq5mf95qsfpwc4dl0c43gp";
-      name = "solid-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/solid-5.50.0.tar.xz";
+      sha256 = "1y8sclp8lqf4hkqvbm1mmklrjvkxpvz3bb8qqbi5xhd5p9vf6z0h";
+      name = "solid-5.50.0.tar.xz";
     };
   };
   sonnet = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/sonnet-5.49.0.tar.xz";
-      sha256 = "0m5pmka1hwjsg3c3qvx087z3fjrfw0ayk7ylgjls5iwd39kkl1b3";
-      name = "sonnet-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/sonnet-5.50.0.tar.xz";
+      sha256 = "13ddp5l9vnyqg05xadc4d1j0xfl8ain4qprq3iw82ygrchyrzm0d";
+      name = "sonnet-5.50.0.tar.xz";
+    };
+  };
+  syndication = {
+    version = "5.50.0";
+    src = fetchurl {
+      url = "${mirror}/stable/frameworks/5.50/syndication-5.50.0.tar.xz";
+      sha256 = "1i73blq2fdzvzfg1p6715fv5m40yd6vcvnbg1pfmbr3696qy4mb3";
+      name = "syndication-5.50.0.tar.xz";
     };
   };
   syntax-highlighting = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/syntax-highlighting-5.49.0.tar.xz";
-      sha256 = "17rkgzkfiz5dv0xr67na7ikqszgwjnf2gc11b2h47qdsr7pgx95v";
-      name = "syntax-highlighting-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/syntax-highlighting-5.50.0.tar.xz";
+      sha256 = "10iw8fhqgvsn4jgf81d9xy8aac07acn45rysnvj9wpm3cmxqxmd4";
+      name = "syntax-highlighting-5.50.0.tar.xz";
     };
   };
   threadweaver = {
-    version = "5.49.0";
+    version = "5.50.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.49/threadweaver-5.49.0.tar.xz";
-      sha256 = "099bs429p71dzrqy25z61rvn48w3b73p7yag4q69jnxcpj0qcyz7";
-      name = "threadweaver-5.49.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.50/threadweaver-5.50.0.tar.xz";
+      sha256 = "11j82nq5pr7rk94bnfzanpj3b41dqjl9cgk2b3h326y7bphcrkyf";
+      name = "threadweaver-5.50.0.tar.xz";
     };
   };
 }
diff --git a/pkgs/development/libraries/kde-frameworks/syndication.nix b/pkgs/development/libraries/kde-frameworks/syndication.nix
new file mode 100644
index 000000000000..71ee520995c4
--- /dev/null
+++ b/pkgs/development/libraries/kde-frameworks/syndication.nix
@@ -0,0 +1,13 @@
+{ mkDerivation, lib
+, extra-cmake-modules
+, kcodecs
+}:
+
+mkDerivation {
+  name = "syndication";
+  meta = {
+    maintainers = [ lib.maintainers.bkchr ];
+  };
+  nativeBuildInputs = [ extra-cmake-modules ];
+  buildInputs = [ kcodecs ];
+}
diff --git a/pkgs/development/libraries/kerberos/heimdal.nix b/pkgs/development/libraries/kerberos/heimdal.nix
index 24adb2a141e8..5b92458d89e9 100644
--- a/pkgs/development/libraries/kerberos/heimdal.nix
+++ b/pkgs/development/libraries/kerberos/heimdal.nix
@@ -2,16 +2,11 @@
 , texinfo, perlPackages
 , openldap, libcap_ng, sqlite, openssl, db, libedit, pam
 , CoreFoundation, Security, SystemConfiguration
-# Extra Args
-, type ? ""
 }:
 
-let
-  libOnly = type == "lib";
-in
 with stdenv.lib;
 stdenv.mkDerivation rec {
-  name = "${type}heimdal-${version}";
+  name = "heimdal-${version}";
   version = "7.5.0";
 
   src = fetchFromGitHub {
@@ -21,28 +16,31 @@ stdenv.mkDerivation rec {
     sha256 = "1j38wjj4k0q8vx168k3d3k0fwa8j1q5q8f2688nnx1b9qgjd6w1d";
   };
 
+  outputs = [ "out" "dev" "man" "info" ];
+
   patches = [ ./heimdal-make-missing-headers.patch ];
 
-  nativeBuildInputs = [ autoreconfHook pkgconfig python2 perl yacc flex ]
-    ++ (with perlPackages; [ JSON ])
-    ++ optional (!libOnly) texinfo;
+  nativeBuildInputs = [ autoreconfHook pkgconfig python2 perl yacc flex texinfo ]
+    ++ (with perlPackages; [ JSON ]);
   buildInputs = optionals (stdenv.isLinux) [ libcap_ng ]
-    ++ [ db sqlite openssl libedit ]
-    ++ optionals (stdenv.isDarwin) [ CoreFoundation Security SystemConfiguration ]
-    ++ optionals (!libOnly) [ openldap pam ];
+    ++ [ db sqlite openssl libedit openldap pam]
+    ++ optionals (stdenv.isDarwin) [ CoreFoundation Security SystemConfiguration ];
 
   ## ugly, X should be made an option
   configureFlags = [
     "--sysconfdir=/etc"
     "--localstatedir=/var"
+    "--infodir=$info/share/info"
     "--enable-hdb-openldap-module"
     "--with-sqlite3=${sqlite.dev}"
-    "--with-libedit=${libedit}"
+
+  # ugly, --with-libedit is not enought, it fall back to bundled libedit
+    "--with-libedit-include=${libedit.dev}/include"
+    "--with-libedit-lib=${libedit}/lib"
     "--with-openssl=${openssl.dev}"
     "--without-x"
     "--with-berkeley-db"
     "--with-berkeley-db-include=${db.dev}/include"
-  ] ++ optionals (!libOnly) [
     "--with-openldap=${openldap.dev}"
   ] ++ optionals (stdenv.isLinux) [
     "--with-capng"
@@ -50,24 +48,17 @@ stdenv.mkDerivation rec {
 
   postUnpack = ''
     sed -i '/^DEFAULT_INCLUDES/ s,$, -I..,' source/cf/Makefile.am.common
+    sed -i -e 's/date/date --date="@$SOURCE_DATE_EPOCH"/' source/configure.ac 
   '';
 
-  buildPhase = optionalString libOnly ''
-    (cd include; make -j $NIX_BUILD_CORES)
-    (cd lib; make -j $NIX_BUILD_CORES)
-    (cd tools; make -j $NIX_BUILD_CORES)
-    (cd include/hcrypto; make -j $NIX_BUILD_CORES)
-    (cd lib/hcrypto; make -j $NIX_BUILD_CORES)
-  '';
-
-  installPhase = optionalString libOnly ''
-    (cd include; make -j $NIX_BUILD_CORES install)
-    (cd lib; make -j $NIX_BUILD_CORES install)
-    (cd tools; make -j $NIX_BUILD_CORES install)
-    (cd include/hcrypto; make -j $NIX_BUILD_CORES install)
-    (cd lib/hcrypto; make -j $NIX_BUILD_CORES install)
-    rm -rf $out/{libexec,sbin,share}
-    find $out/bin -type f | grep -v 'krb5-config' | xargs rm
+  preConfigure = ''
+    configureFlagsArray+=(
+      "--bindir=$out/bin"
+      "--sbindir=$out/sbin"
+      "--libexecdir=$out/libexec/heimdal"
+      "--mandir=$man/share/man"
+      "--infodir=$man/share/info"
+      "--includedir=$dev/include")
   '';
 
   # We need to build hcrypt for applications like samba
@@ -81,9 +72,15 @@ stdenv.mkDerivation rec {
     (cd include/hcrypto; make -j $NIX_BUILD_CORES install)
     (cd lib/hcrypto; make -j $NIX_BUILD_CORES install)
 
-    # Doesn't succeed with --libexec=$out/sbin, so
-    mv "$out/libexec/"* $out/sbin/
-    rmdir $out/libexec
+    # Do we need it?
+    rm $out/bin/su
+
+    mkdir -p $dev/bin
+    mv $out/bin/krb5-config $dev/bin/
+
+    # asn1 compilers, move them to $dev
+    mv $out/libexec/heimdal/heimdal/* $dev/bin
+    rmdir $out/libexec/heimdal/heimdal
   '';
 
   # Issues with hydra
diff --git a/pkgs/development/libraries/kmsxx/default.nix b/pkgs/development/libraries/kmsxx/default.nix
index 8be8eb713572..d270e2f0678d 100644
--- a/pkgs/development/libraries/kmsxx/default.nix
+++ b/pkgs/development/libraries/kmsxx/default.nix
@@ -2,15 +2,15 @@
 
 stdenv.mkDerivation rec {
   pname = "kmsxx";
-  version = "2017-10-10";
+  version = "2018-09-10";
   name = pname + "-" + version;
 
   src = fetchFromGitHub {
     owner = "tomba";
     repo = "kmsxx";
     fetchSubmodules = true;
-    rev = "f32b82c17cd357ae1c8ed2636266113955293feb";
-    sha256 = "14panqdqq83wh6wym5afdiyrr78mb12ga63pgrppj27kgv398yjj";
+    rev = "524176c33ee2b79f78d454fa621e0d32e7e72488";
+    sha256 = "0wyg0zv207h5a78cwmbg6fi8gr8blbbkwngjq8hayfbg45ww0jy8";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/development/libraries/libLAS/default.nix b/pkgs/development/libraries/libLAS/default.nix
index de796307de1a..7bd2a1ec5738 100644
--- a/pkgs/development/libraries/libLAS/default.nix
+++ b/pkgs/development/libraries/libLAS/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "LAS 1.0/1.1/1.2 ASPRS LiDAR data translation toolset";
-    homepage = https://www.liblas.org;
+    homepage = https://liblas.org;
     license = stdenv.lib.licenses.bsd3;
     platforms = stdenv.lib.platforms.unix;
     maintainers = [ stdenv.lib.maintainers.michelk ];
diff --git a/pkgs/development/libraries/libcouchbase/default.nix b/pkgs/development/libraries/libcouchbase/default.nix
index 347e3218c1dc..4da0738fde5e 100644
--- a/pkgs/development/libraries/libcouchbase/default.nix
+++ b/pkgs/development/libraries/libcouchbase/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "libcouchbase-${version}";
-  version = "2.9.2";
+  version = "2.9.4";
 
   src = fetchFromGitHub {
     owner = "couchbase";
     repo = "libcouchbase";
     rev = version;
-    sha256 = "1ca3jp1nr5dk2w35wwyhsf96pblbw6n6n7a3ja264ivc9nhpkz4z";
+    sha256 = "0d6lmnr5yfpkzr1yr6f2ilxprl6v9r4r7917k4iz0wc3jlcndwl3";
   };
 
   cmakeFlags = "-DLCB_NO_MOCK=ON";
diff --git a/pkgs/development/libraries/libguestfs/appliance.nix b/pkgs/development/libraries/libguestfs/appliance.nix
index d47b0902818d..9c2b317ab086 100644
--- a/pkgs/development/libraries/libguestfs/appliance.nix
+++ b/pkgs/development/libraries/libguestfs/appliance.nix
@@ -4,4 +4,8 @@ fetchzip {
   name = "libguestfs-appliance-1.38.0";
   url = "http://libguestfs.org/download/binaries/appliance/appliance-1.38.0.tar.xz";
   sha256 = "15rxwj5qjflizxk7slpbrj9lcwkd2lgm52f5yv101qba4yyn3g76";
+
+  meta = {
+    hydraPlatforms = []; # Hydra fails with "Output limit exceeded"
+  };
 }
diff --git a/pkgs/development/libraries/libiio/default.nix b/pkgs/development/libraries/libiio/default.nix
new file mode 100644
index 000000000000..defb17bcd88a
--- /dev/null
+++ b/pkgs/development/libraries/libiio/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchFromGitHub
+, cmake, flex, bison
+, libxml2
+}:
+
+stdenv.mkDerivation rec {
+  name = "libiio-${version}";
+  version = "0.15";
+
+  src = fetchFromGitHub {
+    owner  = "analogdevicesinc";
+    repo   = "libiio";
+    rev    = "refs/tags/v${version}";
+    sha256 = "05sbvvjka03qi080ad6g2y6gfwqp3n3zv7dpv237dym0zjyxqfa7";
+  };
+
+  outputs = [ "out" "lib" "dev" ];
+
+  nativeBuildInputs = [ cmake flex bison ];
+  buildInputs = [ libxml2 ];
+
+  meta = with stdenv.lib; {
+    description = "API for interfacing with the Linux Industrial I/O Subsystem";
+    homepage    = https://github.com/analogdevicesinc/libiio;
+    license     = licenses.lgpl21;
+    platforms   = platforms.linux;
+    maintainers = with maintainers; [ thoughtpolice ];
+  };
+}
diff --git a/pkgs/development/libraries/liblangtag/default.nix b/pkgs/development/libraries/liblangtag/default.nix
index 6d9085e1741b..8ebfa53b7d13 100644
--- a/pkgs/development/libraries/liblangtag/default.nix
+++ b/pkgs/development/libraries/liblangtag/default.nix
@@ -16,8 +16,8 @@ stdenv.mkDerivation rec {
 
   core_zip = fetchurl {
     # please update if an update is available
-    url = "http://www.unicode.org/Public/cldr/33/core.zip";
-    sha256 = "1faq1p5dmxpkczz6cjfsry7piksgym19cq2kf4jj2v885h490d7s";
+    url = "http://www.unicode.org/Public/cldr/33.1/core.zip";
+    sha256 = "0f195aald02ng3ch2q1wf59b5lwp2bi1cd8ia7572pbyy2w8w8cp";
   };
 
   language_subtag_registry = fetchurl {
diff --git a/pkgs/development/libraries/libmediainfo/default.nix b/pkgs/development/libraries/libmediainfo/default.nix
index 3ba513f90781..c4f41663c848 100644
--- a/pkgs/development/libraries/libmediainfo/default.nix
+++ b/pkgs/development/libraries/libmediainfo/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, autoreconfHook, pkgconfig, libzen, zlib }:
 
 stdenv.mkDerivation rec {
-  version = "18.05";
+  version = "18.08";
   name = "libmediainfo-${version}";
   src = fetchurl {
     url = "https://mediaarea.net/download/source/libmediainfo/${version}/libmediainfo_${version}.tar.xz";
-    sha256 = "08ajrmbvqn2cvfq3jjdh64lma77kx4di5vg632c6bmbir89rcxbn";
+    sha256 = "0h9fkfkil9y5xjxa7q4gxxihkn9kv9hak6ral2isvks5x3sy0ca8";
   };
 
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
diff --git a/pkgs/development/libraries/libmowgli/default.nix b/pkgs/development/libraries/libmowgli/default.nix
index b23701837fa0..512add5616a0 100644
--- a/pkgs/development/libraries/libmowgli/default.nix
+++ b/pkgs/development/libraries/libmowgli/default.nix
@@ -3,15 +3,16 @@
 stdenv.mkDerivation rec {
   name = "libmowgli-${version}";
   version = "2.1.3";
-  
+
   src = fetchurl {
     url = "https://github.com/atheme/libmowgli-2/archive/v${version}.tar.gz";
     sha256 = "0xx4vndmwz40pxa5gikl8z8cskpdl9a30i2i5fjncqzlp4pspymp";
   };
-  
-  meta = {
+
+  meta = with stdenv.lib; {
     description = "A development framework for C providing high performance and highly flexible algorithms";
-    homepage = http://www.atheme.org/projects/mowgli.shtml;
-    platforms = stdenv.lib.platforms.unix;
+    homepage = https://github.com/atheme/libmowgli-2;
+    license = licenses.isc;
+    platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/libndtypes/default.nix b/pkgs/development/libraries/libndtypes/default.nix
index 685518efbd22..925154e1d459 100644
--- a/pkgs/development/libraries/libndtypes/default.nix
+++ b/pkgs/development/libraries/libndtypes/default.nix
@@ -14,7 +14,9 @@ stdenv.mkDerivation rec {
     sha256 = "0dpvv13mrid8l5zkjlz18qvirz3nr0v98agx9bcvkqbiahlfgjli";
   };
 
-  makeFlags = [ "CONFIGURE_LDFLAGS='-shared'" ];
+  # Override linker with cc (symlink to either gcc or clang)
+  # Library expects to use cc for linking
+  configureFlags = [ "LD=${stdenv.cc.targetPrefix}cc" ];
 
   meta = {
     description = "Dynamic types for data description and in-memory computations";
@@ -22,4 +24,4 @@ stdenv.mkDerivation rec {
     license = lib.licenses.bsdOriginal;
     maintainers = with lib.maintainers; [ costrouc ];
   };
-}
\ No newline at end of file
+}
diff --git a/pkgs/development/libraries/libngspice/default.nix b/pkgs/development/libraries/libngspice/default.nix
index b6d5912581ba..5a34910924ce 100644
--- a/pkgs/development/libraries/libngspice/default.nix
+++ b/pkgs/development/libraries/libngspice/default.nix
@@ -3,11 +3,11 @@
 # Note that this does not provide the ngspice command-line utility. For that see
 # the ngspice derivation.
 stdenv.mkDerivation {
-  name = "libngspice-26";
+  name = "libngspice-28";
 
   src = fetchurl {
-    url = "mirror://sourceforge/ngspice/ngspice-26.tar.gz";
-    sha256 = "51e230c8b720802d93747bc580c0a29d1fb530f3dd06f213b6a700ca9a4d0108";
+    url = "mirror://sourceforge/ngspice/ngspice-28.tar.gz";
+    sha256 = "0rnz2rdgyav16w7wfn3sfrk2lwvvgz1fh0l9107zkcldijklz04l";
   };
 
   nativeBuildInputs = [ flex bison ];
diff --git a/pkgs/development/libraries/libsigcxx/1.2.nix b/pkgs/development/libraries/libsigcxx/1.2.nix
index 9fc6ff86773b..38e5ffcb4de0 100644
--- a/pkgs/development/libraries/libsigcxx/1.2.nix
+++ b/pkgs/development/libraries/libsigcxx/1.2.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ m4];
 
   meta = {
-    homepage = http://libsigc.sourceforge.net/;
+    homepage = https://libsigcplusplus.github.io/libsigcplusplus/;
     description = "A typesafe callback system for standard C++";
     branch = "1.2";
     platforms = stdenv.lib.platforms.unix;
diff --git a/pkgs/development/libraries/libsigcxx/default.nix b/pkgs/development/libraries/libsigcxx/default.nix
index def5ee0e19a2..8eba5377bc34 100644
--- a/pkgs/development/libraries/libsigcxx/default.nix
+++ b/pkgs/development/libraries/libsigcxx/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   doCheck = true;
 
   meta = with stdenv.lib; {
-    homepage = http://libsigc.sourceforge.net/;
+    homepage = https://libsigcplusplus.github.io/libsigcplusplus/;
     description = "A typesafe callback system for standard C++";
     license = licenses.lgpl21;
     platforms = platforms.all;
diff --git a/pkgs/development/libraries/libsignal-protocol-c/default.nix b/pkgs/development/libraries/libsignal-protocol-c/default.nix
new file mode 100644
index 000000000000..379361a7031e
--- /dev/null
+++ b/pkgs/development/libraries/libsignal-protocol-c/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchFromGitHub, cmake, openssl }:
+
+stdenv.mkDerivation rec {
+  name = "libsignal-protocol-c";
+  version = "2.3.2";
+
+  src = fetchFromGitHub {
+    owner = "signalapp";
+    repo = "libsignal-protocol-c";
+    rev = "v${version}";
+    sha256 = "1qj2w4csy6j9jg1jy66n1qwysx7hgjywk4n35hlqcnh1kpa14k3p";
+  };
+
+  nativeBuildInputs = [ cmake ];
+
+  buildInputs = [ openssl ];
+
+  cmakeFlags = [ "-DBUILD_SHARED_LIBS=ON" ];
+
+  outputs = [ "out" "dev" ];
+
+  meta = with stdenv.lib; {
+    description = "Signal Protocol C Library";
+    homepage = https://github.com/signalapp/libsignal-protocol-c;
+    license = licenses.gpl3;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ orivej ];
+  };
+}
diff --git a/pkgs/development/libraries/libtar/default.nix b/pkgs/development/libraries/libtar/default.nix
index 8123bf7ba84e..481e7ad83cc3 100644
--- a/pkgs/development/libraries/libtar/default.nix
+++ b/pkgs/development/libraries/libtar/default.nix
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "C library for manipulating POSIX tar files";
-    homepage = http://www.feep.net/libtar/;
+    homepage = http://repo.or.cz/libtar;
     license = licenses.bsd3;
     platforms = with platforms; linux ++ darwin;
     maintainers = [ maintainers.bjornfor ];
diff --git a/pkgs/development/libraries/libtensorflow/default.nix b/pkgs/development/libraries/libtensorflow/default.nix
index b4e616409c4f..e6cd140c4e4b 100644
--- a/pkgs/development/libraries/libtensorflow/default.nix
+++ b/pkgs/development/libraries/libtensorflow/default.nix
@@ -31,19 +31,19 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "libtensorflow";
-  version = "1.10.0";
+  version = "1.9.0";
   name = "${pname}-${version}";
   src = fetchurl {
     url = "https://storage.googleapis.com/tensorflow/${pname}/${pname}-${tfType}-${system}-${version}.tar.gz";
     sha256 =
       if system == "linux-x86_64" then
         if cudaSupport
-        then "0v66sscxpyixjrf9yjshl001nix233i6chc61akx0kx7ial4l1wn"
-        else "11sbpcbgdzj8v17mdppfv7v1fn3nbzkdad60gc42y2j6knjbmwxb"
+        then "1q3mh06x344im25z7r3vgrfksfdsi8fh8ldn6y2mf86h4d11yxc3"
+        else "0l9ps115ng5ffzdwphlqmj3jhidps2v5afppdzrbpzmy41xz0z21"
       else if system == "darwin-x86_64" then
         if cudaSupport
         then unavailable
-        else "11p0f77m4wycpc024mh7jx0kbdhgm0wp6ir6dsa8lkcpdb59bn59"
+        else "1qj0v1706w6mczycdsh38h2glyv5d25v62kdn98wxd5rw8f9v657"
       else unavailable;
   };
 
diff --git a/pkgs/development/libraries/libuv/default.nix b/pkgs/development/libraries/libuv/default.nix
index a0ace84bc67d..50b43c4e043d 100644
--- a/pkgs/development/libraries/libuv/default.nix
+++ b/pkgs/development/libraries/libuv/default.nix
@@ -41,6 +41,10 @@ stdenv.mkDerivation rec {
         "multiple_listen" "delayed_accept"
         "shutdown_close_tcp" "shutdown_eof" "shutdown_twice" "callback_stack"
         "tty_pty"
+      ] ++ stdenv.lib.optionals stdenv.isAarch32 [
+        # I observe this test failing with some regularity on ARMv7:
+        # https://github.com/libuv/libuv/issues/1871
+        "shutdown_close_pipe"
       ];
     tdRegexp = lib.concatStringsSep "\\|" toDisable;
     in lib.optionalString doCheck ''
diff --git a/pkgs/development/libraries/libvmi/default.nix b/pkgs/development/libraries/libvmi/default.nix
index 28cfe56d59b8..44b2a81b2d3c 100644
--- a/pkgs/development/libraries/libvmi/default.nix
+++ b/pkgs/development/libraries/libvmi/default.nix
@@ -15,6 +15,7 @@ with stdenv.lib;
 stdenv.mkDerivation rec {
   name = "libvmi-${version}";
   version = "0.12.0";
+  libVersion = "0.0.12";
 
   src = fetchFromGitHub {
     owner = "libvmi";
@@ -28,6 +29,13 @@ stdenv.mkDerivation rec {
 
   configureFlags = optional (!xenSupport) "--disable-xen";
 
+  # libvmi uses dlopen() for the xen libraries, however autoPatchelfHook doesn't work here
+  postFixup = optionalString xenSupport ''
+    libvmi="$out/lib/libvmi.so.${libVersion}"
+    oldrpath=$(patchelf --print-rpath "$libvmi")
+    patchelf --set-rpath "$oldrpath:${makeLibraryPath [ xen ]}" "$libvmi"
+  '';
+
   meta = with stdenv.lib; {
     homepage = "http://libvmi.com/";
     description = "A C library for virtual machine introspection";
diff --git a/pkgs/development/libraries/libwebsockets/default.nix b/pkgs/development/libraries/libwebsockets/default.nix
index 1147c9606ad4..9cd0aabcf097 100644
--- a/pkgs/development/libraries/libwebsockets/default.nix
+++ b/pkgs/development/libraries/libwebsockets/default.nix
@@ -21,9 +21,8 @@ stdenv.mkDerivation rec {
       use minimal CPU and memory resources, and provide fast
       throughput in both directions.
     '';
-    homepage = https://libwebsockets.org/trac/libwebsockets;
+    homepage = https://libwebsockets.org;
     license = stdenv.lib.licenses.lgpl21;
-    maintainers = [ ];
     platforms = stdenv.lib.platforms.all;
   };
 }
diff --git a/pkgs/development/libraries/libx86emu/default.nix b/pkgs/development/libraries/libx86emu/default.nix
index b0730452db89..591a3e451ab3 100644
--- a/pkgs/development/libraries/libx86emu/default.nix
+++ b/pkgs/development/libraries/libx86emu/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "libx86emu-${version}";
-  version = "2.0";
+  version = "2.1";
 
   src = fetchFromGitHub {
     owner = "wfeldt";
     repo = "libx86emu";
     rev = version;
-    sha256 = "12rlkwnl5zgmmpm6n6cqnkyhkji4jw1d27y8x1krvlpi1z4bjidx";
+    sha256 = "16k16xcw2w2c69sn04jfdy9fd7cxs463d2rwb948xchyvfla958j";
   };
 
   nativeBuildInputs = [ perl ];
diff --git a/pkgs/development/libraries/libxnd/default.nix b/pkgs/development/libraries/libxnd/default.nix
index c99c3f42bfc1..6b9375c73815 100644
--- a/pkgs/development/libraries/libxnd/default.nix
+++ b/pkgs/development/libraries/libxnd/default.nix
@@ -17,10 +17,9 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ libndtypes ];
 
-  configureFlags = [ "XND_INCLUDE='-I${libndtypes}/include'"
-                     "XND_LINK='-L${libndtypes}/lib'" ];
-
-  makeFlags = [ "CONFIGURE_LDFLAGS='-shared'" ];
+  # Override linker with cc (symlink to either gcc or clang)
+  # Library expects to use cc for linking
+  configureFlags = [ "LD=${stdenv.cc.targetPrefix}cc" ];
 
   meta = {
     description = "General container that maps a wide range of Python values directly to memory";
diff --git a/pkgs/development/libraries/log4cplus/default.nix b/pkgs/development/libraries/log4cplus/default.nix
index 3fdad73d9fa5..7a390021d1fa 100644
--- a/pkgs/development/libraries/log4cplus/default.nix
+++ b/pkgs/development/libraries/log4cplus/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchurl }:
 
 let
-  name = "log4cplus-1.2.0";
+  name = "log4cplus-2.0.2";
 in
 stdenv.mkDerivation {
   inherit name;
 
   src = fetchurl {
     url = "mirror://sourceforge/log4cplus/${name}.tar.bz2";
-    sha256 = "1fb3g9l12sps3mv4xjiql2kcvj439mww3skz735y7113cnlcf338";
+    sha256 = "0y9yy32lhgrcss8i2gcc9incdy55rcrr16dx051gkia1vdzfkay4";
   };
 
   meta = {
diff --git a/pkgs/development/libraries/mono-addins/default.nix b/pkgs/development/libraries/mono-addins/default.nix
index e68661b44ec3..780f68e7d485 100644
--- a/pkgs/development/libraries/mono-addins/default.nix
+++ b/pkgs/development/libraries/mono-addins/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, mono, gtk-sharp-2_0 }:
+{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, mono48, gtk-sharp-2_0 }:
 
 stdenv.mkDerivation rec {
   name = "mono-addins-${version}";
@@ -13,7 +13,9 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ pkgconfig autoreconfHook ];
-  buildInputs = [ mono gtk-sharp-2_0 ];
+
+  # Use msbuild when https://github.com/NixOS/nixpkgs/pull/43680 is merged
+  buildInputs = [ mono48 gtk-sharp-2_0 ];
 
   dontStrip = true;
 
diff --git a/pkgs/development/libraries/mtxclient/default.nix b/pkgs/development/libraries/mtxclient/default.nix
new file mode 100644
index 000000000000..465a70576356
--- /dev/null
+++ b/pkgs/development/libraries/mtxclient/default.nix
@@ -0,0 +1,31 @@
+{ stdenv, fetchFromGitHub, cmake, pkgconfig
+, boost, openssl, zlib, libsodium, olm, gtest, spdlog, nlohmann_json }:
+
+stdenv.mkDerivation rec {
+  name = "mtxclient-${version}";
+  version = "0.1.0";
+
+  src = fetchFromGitHub {
+    owner = "mujx";
+    repo = "mtxclient";
+    rev = "v${version}";
+    sha256 = "0i58y45diysayjzy5ick15356972z67dfxm0w41ay88nm42x1imp";
+  };
+
+  postPatch = ''
+    ln -s ${nlohmann_json}/include/nlohmann/json.hpp include/json.hpp
+  '';
+
+  cmakeFlags = [ "-DBUILD_LIB_TESTS=OFF" "-DBUILD_LIB_EXAMPLES=OFF" ];
+
+  nativeBuildInputs = [ cmake pkgconfig ];
+  buildInputs = [ boost openssl zlib libsodium olm ];
+
+  meta = with stdenv.lib; {
+    description = "Client API library for Matrix, built on top of Boost.Asio";
+    homepage = https://github.com/mujx/mtxclient;
+    license = licenses.mit;
+    maintainers = with maintainers; [ fpletz ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/development/libraries/nix-plugins/default.nix b/pkgs/development/libraries/nix-plugins/default.nix
index ff8a54f87f2a..d3a4b21b4b61 100644
--- a/pkgs/development/libraries/nix-plugins/default.nix
+++ b/pkgs/development/libraries/nix-plugins/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchFromGitHub, nix, cmake, pkgconfig, boost }:
-let version = "4.0.5"; in
+let version = "5.0.0"; in
 stdenv.mkDerivation {
   name = "nix-plugins-${version}";
 
@@ -7,7 +7,7 @@ stdenv.mkDerivation {
     owner = "shlevy";
     repo = "nix-plugins";
     rev = version;
-    sha256 = "170f365rnik62fp9wllbqlspr8lf1yb96pmn2z708i2wjlkdnrny";
+    sha256 = "0231j92504vx0f4wax9hwjdni1j4z0g8bx9wbakg6rbghl4svmdv";
   };
 
   nativeBuildInputs = [ cmake pkgconfig ];
diff --git a/pkgs/development/libraries/nsss/default.nix b/pkgs/development/libraries/nsss/default.nix
new file mode 100644
index 000000000000..6c4a23ccaf28
--- /dev/null
+++ b/pkgs/development/libraries/nsss/default.nix
@@ -0,0 +1,33 @@
+{ stdenv, skawarePackages }:
+
+with skawarePackages;
+
+buildPackage {
+  pname = "nsss";
+  version = "0.0.1.0";
+  sha256 = "0f285bvpvhk40cqjpkc1jb36il0fkzzzjmc89gbbq3awl3w4r1i0";
+
+  description = "An implementation of a subset of the pwd.h, group.h and shadow.h family of functions.";
+
+  # TODO: nsss support
+  configureFlags = [
+    "--libdir=\${lib}/lib"
+    "--dynlibdir=\${lib}/lib"
+    "--bindir=\${bin}/bin"
+    "--includedir=\${dev}/include"
+    "--with-sysdeps=${skalibs.lib}/lib/skalibs/sysdeps"
+    "--with-include=${skalibs.dev}/include"
+    "--with-lib=${skalibs.lib}/lib"
+    "--with-dynlib=${skalibs.lib}/lib"
+  ];
+
+  postInstall = ''
+    # remove all nsss executables from build directory
+    rm $(find -name "nsssd-*" -type f -mindepth 1 -maxdepth 1 -executable)
+    rm libnsss.* libnsssd.*
+
+    mv doc $doc/share/doc/nsss/html
+    mv examples $doc/share/doc/nsss/examples
+  '';
+
+}
diff --git a/pkgs/development/libraries/oniguruma/default.nix b/pkgs/development/libraries/oniguruma/default.nix
index f9a75801e101..956c8b58ffc1 100644
--- a/pkgs/development/libraries/oniguruma/default.nix
+++ b/pkgs/development/libraries/oniguruma/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "onig-${version}";
-  version = "6.8.2";
+  version = "6.9.0";
 
   src = fetchFromGitHub {
     owner = "kkos";
     repo = "oniguruma";
     rev = "v${version}";
-    sha256 = "00ly5i26n7wajhyhq3xadsc7dxrf7qllhwilk8dza2qj5dhld4nd";
+    sha256 = "064nk8nxygqrk5b6n7zvrksf5shrsapn12zdi6crbbfbw0s7pn8h";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/openbsm/default.nix b/pkgs/development/libraries/openbsm/default.nix
index a9559c6abfba..136665425280 100644
--- a/pkgs/development/libraries/openbsm/default.nix
+++ b/pkgs/development/libraries/openbsm/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
     sha256 = "0b98359hd8mm585sh145ss828pg2y8vgz38lqrb7nypapiyqdnd1";
   };
 
-  patches = [ ./bsm-add-audit_token_to_pid.patch ];
+  patches = lib.optional stdenv.isDarwin [ ./bsm-add-audit_token_to_pid.patch ];
 
   meta = {
     homepage = http://www.openbsm.org/;
diff --git a/pkgs/development/libraries/opencv/3.x.nix b/pkgs/development/libraries/opencv/3.x.nix
index 81d106a2a40c..dd87fa932604 100644
--- a/pkgs/development/libraries/opencv/3.x.nix
+++ b/pkgs/development/libraries/opencv/3.x.nix
@@ -35,20 +35,20 @@
 }:
 
 let
-  version = "3.4.2";
+  version = "3.4.3";
 
   src = fetchFromGitHub {
     owner  = "opencv";
     repo   = "opencv";
     rev    = version;
-    sha256 = "0q752s1ir6iyqbp3pn425fi215fi7bzjl4aa3arvgh6sridda9lx";
+    sha256 = "138q3wiv4g4xvqzsp93xaqayv7kz7bl2vrgppp8jm8w6m25cd4i2";
   };
 
   contribSrc = fetchFromGitHub {
     owner  = "opencv";
     repo   = "opencv_contrib";
     rev    = version;
-    sha256 = "1fbgbf9xdby9a5yy6bmnkzchdsfii0jagfd373y015cjpr1mrlvz";
+    sha256 = "1f334glf39nk42mpqq6j732h3ql2mpz89jd4mcl678s8n73nfjh2";
   };
 
   # Contrib must be built in order to enable Tesseract support:
@@ -145,11 +145,6 @@ stdenv.mkDerivation rec {
     cp --no-preserve=mode -r "${contribSrc}/modules" "$NIX_BUILD_TOP/opencv_contrib"
   '';
 
-  # TODO: remove the following patch once commit
-  # https://github.com/opencv/opencv/commit/e2b5d112909b9dfd764f14833b82e38e4bc2f81f
-  # is released.
-  patches = [ ./fix-dnn.patch ];
-
   # This prevents cmake from using libraries in impure paths (which
   # causes build failure on non NixOS)
   # Also, work around https://github.com/NixOS/nixpkgs/issues/26304 with
diff --git a/pkgs/development/libraries/opencv/fix-dnn.patch b/pkgs/development/libraries/opencv/fix-dnn.patch
deleted file mode 100644
index 62234a43e461..000000000000
--- a/pkgs/development/libraries/opencv/fix-dnn.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/modules/dnn/src/caffe/caffe_io.cpp b/modules/dnn/src/caffe/caffe_io.cpp
-index 730c752ce..abbce0453 100644
---- a/modules/dnn/src/caffe/caffe_io.cpp
-+++ b/modules/dnn/src/caffe/caffe_io.cpp
-@@ -1120,7 +1120,7 @@ bool ReadProtoFromTextFile(const char* filename, Message* proto) {
-     std::ifstream fs(filename, std::ifstream::in);
-     CHECK(fs.is_open()) << "Can't open \"" << filename << "\"";
-     IstreamInputStream input(&fs);
--    return google::protobuf::TextFormat::Parser(true).Parse(&input, proto);
-+    return google::protobuf::TextFormat::Parser().Parse(&input, proto);
- }
- 
- bool ReadProtoFromBinaryFile(const char* filename, Message* proto) {
diff --git a/pkgs/development/libraries/opendht/default.nix b/pkgs/development/libraries/opendht/default.nix
index bd7d252e1a08..49d70bc211a6 100644
--- a/pkgs/development/libraries/opendht/default.nix
+++ b/pkgs/development/libraries/opendht/default.nix
@@ -1,14 +1,6 @@
-{ stdenv
-, fetchFromGitHub
-, autoconf
-, automake
-, libtool
-, pkgconfig
-, nettle
-, gnutls
-, msgpack
-, readline
-, libargon2
+{ stdenv, fetchFromGitHub
+, autoreconfHook, pkgconfig
+, nettle, gnutls, msgpack, readline, libargon2
 }:
 
 stdenv.mkDerivation rec {
@@ -22,27 +14,26 @@ stdenv.mkDerivation rec {
     sha256 = "1wqib5plak9bw2bla7y4qyjqi0b00kf8mfwlml16qj3i0aq6h2cp";
   };
 
-  buildInputs = [
-    autoconf
-    automake
-    libtool
-    pkgconfig
-    nettle
-    gnutls
-    msgpack
-    readline
-    libargon2
-  ];
+  nativeBuildInputs =
+    [ autoreconfHook
+      pkgconfig
+    ];
 
-  preConfigure = ''
-    ./autogen.sh
-  '';
+  buildInputs =
+    [ nettle
+      gnutls
+      msgpack
+      readline
+      libargon2
+    ];
+
+  outputs = [ "out" "lib" "dev" "man" ];
 
   meta = with stdenv.lib; {
     description = "A C++11 Kademlia distributed hash table implementation";
-    homepage = https://github.com/savoirfairelinux/opendht;
-    license = licenses.gpl3Plus;
-    maintainers = with maintainers; [ taeer olynch ];
-    platforms = platforms.linux;
+    homepage    = https://github.com/savoirfairelinux/opendht;
+    license     = licenses.gpl3Plus;
+    maintainers = with maintainers; [ taeer olynch thoughtpolice ];
+    platforms   = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/openslp/default.nix b/pkgs/development/libraries/openslp/default.nix
index 3e178d92013e..537b67c5a3c3 100644
--- a/pkgs/development/libraries/openslp/default.nix
+++ b/pkgs/development/libraries/openslp/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation {
   ];
 
   meta = with stdenv.lib; {
-    homepage = http://openslp.org/;
+    homepage = http://www.openslp.org/;
     description = "An open-source implementation of the IETF Service Location Protocol";
     maintainers = with maintainers; [ ttuegel ];
     license = licenses.bsd3;
diff --git a/pkgs/development/libraries/openssl/default.nix b/pkgs/development/libraries/openssl/default.nix
index de13f963b674..87751188a03a 100644
--- a/pkgs/development/libraries/openssl/default.nix
+++ b/pkgs/development/libraries/openssl/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, buildPackages, perl
+{ stdenv, fetchurl, buildPackages, perl, coreutils
 , withCryptodev ? false, cryptodevHeaders
 , enableSSL2 ? false
 , static ? false
@@ -31,6 +31,8 @@ let
         substituteInPlace "$a" \
           --replace /bin/rm rm
       done
+    '' + optionalString (versionAtLeast version "1.1.1") ''
+      substituteInPlace config --replace '/usr/bin/env' '${coreutils}/bin/env'
     '' + optionalString (versionAtLeast version "1.1.0" && stdenv.hostPlatform.isMusl) ''
       substituteInPlace crypto/async/arch/async_posix.h \
         --replace '!defined(__ANDROID__) && !defined(__OpenBSD__)' \
@@ -125,9 +127,9 @@ in {
     sha256 = "003xh9f898i56344vpvpxxxzmikivxig4xwlm7vbi7m8n43qxaah";
   };
 
-  openssl_1_1_0 = common {
-    version = "1.1.0i";
-    sha256 = "16fgaf113p6s5ixw227sycvihh3zx6f6rf0hvjjhxk68m12cigzb";
+  openssl_1_1 = common {
+    version = "1.1.1";
+    sha256 = "0gbab2fjgms1kx5xjvqx8bxhr98k4r8l2fa8vw7kvh491xd8fdi8";
   };
 
 }
diff --git a/pkgs/development/libraries/physics/cernlib/default.nix b/pkgs/development/libraries/physics/cernlib/default.nix
index f837d807219f..92d2ab962323 100644
--- a/pkgs/development/libraries/physics/cernlib/default.nix
+++ b/pkgs/development/libraries/physics/cernlib/default.nix
@@ -56,6 +56,7 @@ stdenv.mkDerivation rec {
   meta = {
     homepage = http://cernlib.web.cern.ch;
     description = "Legacy collection of libraries and modules for data analysis in high energy physics";
+    broken = stdenv.isDarwin;
     platforms = stdenv.lib.platforms.unix;
     maintainers = with stdenv.lib.maintainers; [ veprbl ];
     license = stdenv.lib.licenses.gpl2;
diff --git a/pkgs/development/libraries/physics/geant4/default.nix b/pkgs/development/libraries/physics/geant4/default.nix
index 87af069c18a5..7123858b8edc 100644
--- a/pkgs/development/libraries/physics/geant4/default.nix
+++ b/pkgs/development/libraries/physics/geant4/default.nix
@@ -1,128 +1,101 @@
-{ enableMultiThreading ? false
+{ enableMultiThreading ? true
 , enableG3toG4         ? false
 , enableInventor       ? false
 , enableGDML           ? false
 , enableQT             ? false
 , enableXM             ? false
-, enableOpenGLX11      ? false
+, enableOpenGLX11      ? true
 , enableRaytracerX11   ? false
 
 # Standard build environment with cmake.
 , stdenv, fetchurl, cmake
 
 # Optional system packages, otherwise internal GEANT4 packages are used.
-, clhep ? null
-, expat ? null
-, zlib  ? null
+, clhep ? null # not packaged currently
+, expat
+, zlib
 
 # For enableGDML.
-, xercesc ? null
+, xercesc
 
 # For enableQT.
-, qt ? null # qt4SDK or qt5SDK
+, qtbase
 
 # For enableXM.
-, motif ? null # motif or lesstif
+, motif
 
 # For enableInventor
 , coin3d
 , soxt
-, libXpm ? null
+, libXpm
 
 # For enableQT, enableXM, enableOpenGLX11, enableRaytracerX11.
-, libGLU_combined ? null
-, xlibsWrapper ? null
-, libXmu ? null
+, libGLU_combined
+, xlibsWrapper
+, libXmu
 }:
 
-# G4persistency library with support for GDML
-assert enableGDML -> xercesc != null;
-
-# If enableQT, Qt4/5 User Interface and Visualization drivers.
-assert enableQT -> qt != null;
-
-# Motif User Interface and Visualisation drivers.
-assert enableXM -> motif != null;
-
-# OpenGL/X11 User Interface and Visualisation drivers.
-assert enableQT || enableXM || enableOpenGLX11 || enableRaytracerX11 -> libGLU_combined   != null;
-assert enableQT || enableXM || enableOpenGLX11 || enableRaytracerX11 -> xlibsWrapper    != null;
-assert enableQT || enableXM || enableOpenGLX11 || enableRaytracerX11 -> libXmu != null;
-assert enableInventor -> libXpm != null;
-
-let
-  buildGeant4 =
-    { version, src, multiThreadingCapable ? false }:
-
-    stdenv.mkDerivation rec {
-      inherit version src;
-      name = "geant4-${version}";
-
-      multiThreadingFlag = if multiThreadingCapable then "-DGEANT4_BUILD_MULTITHREADED=${if enableMultiThreading then "ON" else "OFF"}" else "";
-
-      cmakeFlags = ''
-        ${multiThreadingFlag}
-        -DGEANT4_INSTALL_DATA=OFF
-        -DGEANT4_USE_GDML=${if enableGDML then "ON" else "OFF"}
-        -DGEANT4_USE_G3TOG4=${if enableG3toG4 then "ON" else "OFF"}
-        -DGEANT4_USE_QT=${if enableQT then "ON" else "OFF"}
-        -DGEANT4_USE_XM=${if enableXM then "ON" else "OFF"}
-        -DGEANT4_USE_OPENGL_X11=${if enableOpenGLX11 then "ON" else "OFF"}
-        -DGEANT4_USE_INVENTOR=${if enableInventor then "ON" else "OFF"}
-        -DGEANT4_USE_RAYTRACER_X11=${if enableRaytracerX11 then "ON" else "OFF"}
-        -DGEANT4_USE_SYSTEM_CLHEP=${if clhep != null then "ON" else "OFF"}
-        -DGEANT4_USE_SYSTEM_EXPAT=${if expat != null then "ON" else "OFF"}
-        -DGEANT4_USE_SYSTEM_ZLIB=${if zlib != null then "ON" else "OFF"}
-        -DINVENTOR_INCLUDE_DIR=${coin3d}/include
-        -DINVENTOR_LIBRARY_RELEASE=${coin3d}/lib/libCoin.so
-      '';
-
-      enableParallelBuilding = true;
-      buildInputs = [ cmake clhep expat zlib xercesc qt motif libGLU_combined xlibsWrapper libXmu libXpm coin3d soxt ];
-      propagatedBuildInputs = [ clhep expat zlib xercesc qt motif libGLU_combined xlibsWrapper libXmu libXpm coin3d soxt ];
-
-      postFixup = ''
-        # Don't try to export invalid environment variables.
-        sed -i 's/export G4\([A-Z]*\)DATA/#export G4\1DATA/' "$out"/bin/geant4.sh
-      '';
-
-      setupHook = ./geant4-hook.sh;
-
-      passthru = {
-        data = import ./datasets.nix { inherit stdenv fetchurl; };
-      };
-
-      # Set the myriad of envars required by Geant4 if we use a nix-shell.
-      shellHook = ''
-        source $out/nix-support/setup-hook
-      '';
-
-      meta = with stdenv.lib; {
-        description = "A toolkit for the simulation of the passage of particles through matter";
-        longDescription = ''
-          Geant4 is a toolkit for the simulation of the passage of particles through matter.
-          Its areas of application include high energy, nuclear and accelerator physics, as well as studies in medical and space science.
-          The two main reference papers for Geant4 are published in Nuclear Instruments and Methods in Physics Research A 506 (2003) 250-303, and IEEE Transactions on Nuclear Science 53 No. 1 (2006) 270-278.
-        '';
-        homepage = http://www.geant4.org;
-        license = licenses.g4sl;
-        maintainers = with maintainers; [ tmplt ];
-        platforms = platforms.all;
-      };
-    };
-
-  fetchGeant4 = import ./fetch.nix {
-    inherit stdenv fetchurl;
+stdenv.mkDerivation rec {
+  version = "10.4.1";
+  name = "geant4-${version}";
+
+  src = fetchurl{
+    url = "http://cern.ch/geant4-data/releases/geant4.10.04.p01.tar.gz";
+    sha256 = "a3eb13e4f1217737b842d3869dc5b1fb978f761113e74bd4eaf6017307d234dd";
   };
 
-in {
-  v10_0_2 = buildGeant4 {
-    inherit (fetchGeant4.v10_0_2) version src;
-    multiThreadingCapable = true;
+  cmakeFlags = [
+    "-DGEANT4_INSTALL_DATA=OFF"
+    "-DGEANT4_USE_GDML=${if enableGDML then "ON" else "OFF"}"
+    "-DGEANT4_USE_G3TOG4=${if enableG3toG4 then "ON" else "OFF"}"
+    "-DGEANT4_USE_QT=${if enableQT then "ON" else "OFF"}"
+    "-DGEANT4_USE_XM=${if enableXM then "ON" else "OFF"}"
+    "-DGEANT4_USE_OPENGL_X11=${if enableOpenGLX11 then "ON" else "OFF"}"
+    "-DGEANT4_USE_INVENTOR=${if enableInventor then "ON" else "OFF"}"
+    "-DGEANT4_USE_RAYTRACER_X11=${if enableRaytracerX11 then "ON" else "OFF"}"
+    "-DGEANT4_USE_SYSTEM_CLHEP=${if clhep != null then "ON" else "OFF"}"
+    "-DGEANT4_USE_SYSTEM_EXPAT=${if expat != null then "ON" else "OFF"}"
+    "-DGEANT4_USE_SYSTEM_ZLIB=${if zlib != null then "ON" else "OFF"}"
+    "-DGEANT4_BUILD_MULTITHREADED=${if enableMultiThreading then "ON" else "OFF"}"
+  ] ++ stdenv.lib.optionals enableInventor [
+    "-DINVENTOR_INCLUDE_DIR=${coin3d}/include"
+    "-DINVENTOR_LIBRARY_RELEASE=${coin3d}/lib/libCoin.so"
+  ];
+
+  enableParallelBuilding = true;
+  nativeBuildInputs =  [ cmake ];
+  buildInputs = [ clhep expat zlib libGLU_combined xlibsWrapper libXmu ]
+    ++ stdenv.lib.optionals enableGDML [ xercesc ]
+    ++ stdenv.lib.optionals enableXM [ motif ]
+    ++ stdenv.lib.optionals enableQT [ qtbase ]
+    ++ stdenv.lib.optionals enableInventor [ libXpm coin3d soxt ];
+
+  postFixup = ''
+    # Don't try to export invalid environment variables.
+    sed -i 's/export G4\([A-Z]*\)DATA/#export G4\1DATA/' "$out"/bin/geant4.sh
+  '';
+
+  setupHook = ./geant4-hook.sh;
+
+  passthru = {
+    data = import ./datasets.nix { inherit stdenv fetchurl; };
   };
 
-  v10_4_1 = buildGeant4 {
-    inherit (fetchGeant4.v10_4_1) version src;
-    multiThreadingCapable = true;
+  # Set the myriad of envars required by Geant4 if we use a nix-shell.
+  shellHook = ''
+    source $out/nix-support/setup-hook
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A toolkit for the simulation of the passage of particles through matter";
+    longDescription = ''
+      Geant4 is a toolkit for the simulation of the passage of particles through matter.
+      Its areas of application include high energy, nuclear and accelerator physics, as well as studies in medical and space science.
+      The two main reference papers for Geant4 are published in Nuclear Instruments and Methods in Physics Research A 506 (2003) 250-303, and IEEE Transactions on Nuclear Science 53 No. 1 (2006) 270-278.
+    '';
+    homepage = http://www.geant4.org;
+    license = licenses.g4sl;
+    maintainers = with maintainers; [ tmplt ];
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/physics/geant4/fetch.nix b/pkgs/development/libraries/physics/geant4/fetch.nix
deleted file mode 100644
index 5d539b480d7d..000000000000
--- a/pkgs/development/libraries/physics/geant4/fetch.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-{ stdenv, fetchurl }:
-
-let
-  fetch = { version, src ? builtins.getAttr stdenv.hostPlatform.system sources, sources ? null }:
-  {
-    inherit version src;
-  };
-
-in {
-  v10_0_2 = fetch {
-    version = "10.0.2";
-
-    src = fetchurl{
-      url = "http://geant4.cern.ch/support/source/geant4.10.00.p02.tar.gz";
-      sha256 = "9d615200901f1a5760970e8f5970625ea146253e4f7c5ad9df2a9cf84549e848";
-    };
-  };
-
-  v10_4_1 = fetch {
-    version = "10.4.1";
-
-    src = fetchurl{
-      url = "http://cern.ch/geant4-data/releases/geant4.10.04.p01.tar.gz";
-      sha256 = "a3eb13e4f1217737b842d3869dc5b1fb978f761113e74bd4eaf6017307d234dd";
-    };
-  };
-
-}
-
diff --git a/pkgs/development/libraries/physics/geant4/g4py/configure.patch b/pkgs/development/libraries/physics/geant4/g4py/configure.patch
deleted file mode 100644
index 886618abd34a..000000000000
--- a/pkgs/development/libraries/physics/geant4/g4py/configure.patch
+++ /dev/null
@@ -1,12 +0,0 @@
---- environments/g4py/configure	2014-03-17 22:47:05.000000000 +1100
-+++ environments/g4py/configure	2014-09-01 15:33:46.523637686 +1000
-@@ -4,9 +4,6 @@
- # ======================================================================
- export LANG=C
- 
--PATH=/bin:/usr/bin
--export PATH
--
- # ======================================================================
- # testing the echo features
- # ======================================================================
diff --git a/pkgs/development/libraries/physics/geant4/g4py/default.nix b/pkgs/development/libraries/physics/geant4/g4py/default.nix
index ee332171158d..551d61af3ada 100644
--- a/pkgs/development/libraries/physics/geant4/g4py/default.nix
+++ b/pkgs/development/libraries/physics/geant4/g4py/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl
+{ stdenv, fetchurl, cmake, xercesc
 
 # The target version of Geant4
 , geant4
@@ -9,66 +9,55 @@
 }:
 
 let
-  buildG4py = 
-    { version, src, geant4}:
-
-    stdenv.mkDerivation rec {
-      inherit version src geant4;
-      name = "g4py-${version}";
-
-      # ./configure overwrites $PATH, which clobbers everything.
-      patches = [ ./configure.patch ];
-      patchFlags = "-p0";
-
-      configurePhase = ''
-        export PYTHONPATH=$PYTHONPATH:${geant4}/lib64:$prefix
-
-        source ${geant4}/share/Geant4-*/geant4make/geant4make.sh
-        cd environments/g4py
-
-        ./configure linux64 --prefix=$prefix \
-                            --with-g4install-dir=${geant4} \
-                            --with-python-incdir=${python}/include/python${python.majorVersion} \
-                            --with-python-libdir=${python}/lib \
-                            --with-boost-incdir=${boost.dev}/include \
-                            --with-boost-libdir=${boost.out}/lib
-      '';
-
-      enableParallelBuilding = true;
-      buildInputs = [ geant4 boost python ];
-
-      setupHook = ./setup-hook.sh;
-
-      # Make sure we set PYTHONPATH
-      shellHook = ''
-        source $out/nix-support/setup-hook
-      '';
-
-      meta = {
-        description = "Python bindings and utilities for Geant4";
-        longDescription = ''
-          Geant4 is a toolkit for the simulation of the passage of particles
-          through matter.  Its areas of application include high energy,
-          nuclear and accelerator physics, as well as studies in medical and
-          space science.  The two main reference papers for Geant4 are
-          published in Nuclear Instruments and Methods in Physics Research A
-          506 (2003) 250-303, and IEEE Transactions on Nuclear Science 53 No. 1
-          (2006) 270-278.
-        '';
-        homepage = http://www.geant4.org;
-        license = stdenv.lib.licenses.g4sl;
-        maintainers = [ ];
-        platforms = stdenv.lib.platforms.all;
-      };
-    };
-
-    fetchGeant4 = import ../fetch.nix {
-      inherit stdenv fetchurl;
-    };
-
-in {
-  v10_0_2 = buildG4py {
-    inherit (fetchGeant4.v10_0_2) version src;
-    geant4 = geant4.v10_0_2;
+  # g4py does not support MT and will fail to build against MT geant
+  geant4_nomt = geant4.override { enableMultiThreading = false; };
+  boost_python = boost.override { enablePython = true; inherit python; };
+in
+
+stdenv.mkDerivation rec {
+  inherit (geant4_nomt) version src;
+  name = "g4py-${version}";
+
+  sourceRoot = "geant4.10.04.p01/environments/g4py";
+
+  nativeBuildInputs = [ cmake ];
+  buildInputs = [ geant4_nomt xercesc boost_python python ];
+
+  GEANT4_INSTALL = geant4_nomt;
+
+  preConfigure = ''
+    # Fix for boost 1.67+
+    substituteInPlace CMakeLists.txt \
+    --replace "find_package(Boost)" "find_package(Boost 1.40 REQUIRED COMPONENTS python${builtins.replaceStrings ["."] [""] python.majorVersion})"
+    for f in `find . -name CMakeLists.txt`; do
+      substituteInPlace "$f" \
+        --replace "boost_python" "\''${Boost_LIBRARIES}"
+    done
+  '';
+
+  enableParallelBuilding = true;
+
+  setupHook = ./setup-hook.sh;
+
+  # Make sure we set PYTHONPATH
+  shellHook = ''
+    source $out/nix-support/setup-hook
+  '';
+
+  meta = {
+    description = "Python bindings and utilities for Geant4";
+    longDescription = ''
+      Geant4 is a toolkit for the simulation of the passage of particles
+      through matter.  Its areas of application include high energy,
+      nuclear and accelerator physics, as well as studies in medical and
+      space science.  The two main reference papers for Geant4 are
+      published in Nuclear Instruments and Methods in Physics Research A
+      506 (2003) 250-303, and IEEE Transactions on Nuclear Science 53 No. 1
+      (2006) 270-278.
+    '';
+    homepage = http://www.geant4.org;
+    license = stdenv.lib.licenses.g4sl;
+    maintainers = [ ];
+    platforms = stdenv.lib.platforms.all;
   };
 }
diff --git a/pkgs/development/libraries/pipewire/default.nix b/pkgs/development/libraries/pipewire/default.nix
index e87ed8e48a98..96b5239b7dbe 100644
--- a/pkgs/development/libraries/pipewire/default.nix
+++ b/pkgs/development/libraries/pipewire/default.nix
@@ -1,10 +1,10 @@
 { stdenv, fetchFromGitHub, meson, ninja, pkgconfig, doxygen, graphviz, valgrind
-, glib, dbus, gst_all_1, v4l_utils, alsaLib, ffmpeg, libjack2, udev, libva, xorg
+, glib, dbus, gst_all_1, libv4l, alsaLib, ffmpeg, libjack2, udev, libva, xorg
 , sbc, SDL2, makeFontsConf, freefont_ttf
 }:
 
 let
-  version = "0.1.9";
+  version = "0.2.3";
 
   fontsConf = makeFontsConf {
     fontDirectories = [ freefont_ttf ];
@@ -16,22 +16,22 @@ in stdenv.mkDerivation rec {
     owner = "PipeWire";
     repo = "pipewire";
     rev = version;
-    sha256 = "0r9mgwbggnnijhdz49fnv0qdka364xn1h8yml2jakyqpfrm3i2nm";
+    sha256 = "1y04brfi5bv4y0hdyqzrcbayr674njf6a5hiwjfv2yi6lazkqv1k";
   };
 
-  outputs = [ "out" "dev" "doc" ];
+  outputs = [ "out" "lib" "dev" "doc" ];
 
   nativeBuildInputs = [
     meson ninja pkgconfig doxygen graphviz valgrind
   ];
   buildInputs = [
-    glib dbus gst_all_1.gst-plugins-base gst_all_1.gstreamer v4l_utils
+    glib dbus gst_all_1.gst-plugins-base gst_all_1.gstreamer libv4l
     alsaLib ffmpeg libjack2 udev libva xorg.libX11 sbc SDL2
   ];
 
   mesonFlags = [
-    "-Denable_docs=true"
-    "-Denable_gstreamer=true"
+    "-Ddocs=true"
+    "-Dgstreamer=true"
   ];
 
   PKG_CONFIG_SYSTEMD_SYSTEMDUSERUNITDIR = "${placeholder "out"}/lib/systemd/user";
diff --git a/pkgs/development/libraries/poker-eval/default.nix b/pkgs/development/libraries/poker-eval/default.nix
index f6e7ed56adc4..51cc72ffd402 100644
--- a/pkgs/development/libraries/poker-eval/default.nix
+++ b/pkgs/development/libraries/poker-eval/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage = http://pokersource.org/poker-eval/;
+    homepage = http://pokersource.sourceforge.net;
     description = "Poker hand evaluator";
     license = stdenv.lib.licenses.gpl3;
     maintainers = [stdenv.lib.maintainers.mtreskin];
diff --git a/pkgs/development/libraries/qt-5/5.11/default.nix b/pkgs/development/libraries/qt-5/5.11/default.nix
index 2a706fc7b6e8..d65fe9d219c0 100644
--- a/pkgs/development/libraries/qt-5/5.11/default.nix
+++ b/pkgs/development/libraries/qt-5/5.11/default.nix
@@ -34,7 +34,18 @@ let
   qtCompatVersion = "5.11";
 
   mirror = "http://download.qt.io";
-  srcs = import ./srcs.nix { inherit fetchurl; inherit mirror; };
+  srcs = import ./srcs.nix { inherit fetchurl; inherit mirror; } // {
+    # Community port of the now unmaintained upstream qtwebkit.
+    qtwebkit = {
+      src = fetchFromGitHub {
+        owner = "annulen";
+        repo = "webkit";
+        rev = "4ce8ebc4094512b9916bfa5984065e95ac97c9d8";
+        sha256 = "05h1xnxzbf7sp3plw5dndsvpf6iigh0bi4vlj4svx0hkf1giakjf";
+      };
+      version = "5.212-alpha-01-26-2018";
+    };
+  };
 
   patches = {
     qtbase = [
@@ -102,15 +113,7 @@ let
       qtwayland = callPackage ../modules/qtwayland.nix {};
       qtwebchannel = callPackage ../modules/qtwebchannel.nix {};
       qtwebengine = callPackage ../modules/qtwebengine.nix {};
-      qtwebkit = callPackage ../modules/qtwebkit.nix {
-        src = fetchFromGitHub {
-          owner = "annulen";
-          repo = "webkit";
-          rev = "4ce8ebc4094512b9916bfa5984065e95ac97c9d8";
-          sha256 = "05h1xnxzbf7sp3plw5dndsvpf6iigh0bi4vlj4svx0hkf1giakjf";
-        };
-        version = "5.212-alpha-01-26-2018";
-      };
+      qtwebkit = callPackage ../modules/qtwebkit.nix {};
       qtwebsockets = callPackage ../modules/qtwebsockets.nix {};
       qtx11extras = callPackage ../modules/qtx11extras.nix {};
       qtxmlpatterns = callPackage ../modules/qtxmlpatterns.nix {};
diff --git a/pkgs/development/libraries/qt-5/modules/qtwebengine.nix b/pkgs/development/libraries/qt-5/modules/qtwebengine.nix
index aae15c62d73c..ad54a49e50b7 100644
--- a/pkgs/development/libraries/qt-5/modules/qtwebengine.nix
+++ b/pkgs/development/libraries/qt-5/modules/qtwebengine.nix
@@ -189,6 +189,7 @@ EOF
     description = "A web engine based on the Chromium web browser";
     maintainers = with maintainers; [ matthewbauer ];
     platforms = platforms.unix;
+    broken = qt56; # 2018-09-13, no successful build since 2018-04-25
   };
 
 }
diff --git a/pkgs/development/libraries/qt-5/modules/qtwebkit.nix b/pkgs/development/libraries/qt-5/modules/qtwebkit.nix
index 833433fabeca..970ee2e5c807 100644
--- a/pkgs/development/libraries/qt-5/modules/qtwebkit.nix
+++ b/pkgs/development/libraries/qt-5/modules/qtwebkit.nix
@@ -5,8 +5,6 @@
 , bison2, flex, gdb, gperf, perl, pkgconfig, python2, ruby
 , darwin
 , flashplayerFix ? false
-, src ? null
-, version ? null
 }:
 
 let
@@ -35,9 +33,6 @@ qtModule {
 
   cmakeFlags = optionals (lib.versionAtLeast qtbase.version "5.11.0") [ "-DPORT=Qt" ];
 
-  inherit src;
-  inherit version;
-
   __impureHostDeps = optionals (stdenv.isDarwin) [
     "/usr/lib/libicucore.dylib"
   ];
diff --git a/pkgs/development/libraries/qt-5/qtModule.nix b/pkgs/development/libraries/qt-5/qtModule.nix
index e18564aaabe2..84a9d30918b1 100644
--- a/pkgs/development/libraries/qt-5/qtModule.nix
+++ b/pkgs/development/libraries/qt-5/qtModule.nix
@@ -8,7 +8,7 @@ args:
 
 let
   inherit (args) name;
-  version = if (args.version or null) == null then srcs."${name}".version else args.version;
+  version = args.version or srcs."${name}".version;
   src = args.src or srcs."${name}".src;
 in
 
diff --git a/pkgs/development/libraries/qtkeychain/0001-Fixes-build-with-Qt4.patch b/pkgs/development/libraries/qtkeychain/0001-Fixes-build-with-Qt4.patch
new file mode 100644
index 000000000000..4cd7214e61e2
--- /dev/null
+++ b/pkgs/development/libraries/qtkeychain/0001-Fixes-build-with-Qt4.patch
@@ -0,0 +1,25 @@
+From f72e5b67ee1137a0ccd57db5d077a197b01b3cdc Mon Sep 17 00:00:00 2001
+From: Samuel Dionne-Riel <samuel@dionne-riel.com>
+Date: Tue, 4 Sep 2018 23:19:29 -0400
+Subject: [PATCH] Fixes build with Qt4.
+
+---
+ keychain_unix.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/keychain_unix.cpp b/keychain_unix.cpp
+index 30b26c3..b27ebef 100644
+--- a/keychain_unix.cpp
++++ b/keychain_unix.cpp
+@@ -91,7 +91,7 @@ static bool isKwallet5Available()
+     // a wallet can be opened.
+ 
+     iface.setTimeout(500);
+-    QDBusMessage reply = iface.call(QStringLiteral("networkWallet"));
++    QDBusMessage reply = iface.call("networkWallet");
+     return reply.type() == QDBusMessage::ReplyMessage;
+ }
+ 
+-- 
+2.16.4
+
diff --git a/pkgs/development/libraries/qtkeychain/default.nix b/pkgs/development/libraries/qtkeychain/default.nix
index 220c6241096d..2b3c88d58860 100644
--- a/pkgs/development/libraries/qtkeychain/default.nix
+++ b/pkgs/development/libraries/qtkeychain/default.nix
@@ -18,6 +18,8 @@ stdenv.mkDerivation rec {
     sha256 = "0h4wgngn2yl35hapbjs24amkjfbzsvnna4ixfhn87snjnq5lmjbc"; # v0.9.1
   };
 
+  patches = if withQt5 then null else [ ./0001-Fixes-build-with-Qt4.patch ];
+
   cmakeFlags = [ "-DQT_TRANSLATIONS_DIR=share/qt/translations" ]
     ++ stdenv.lib.optional stdenv.isDarwin [
        # correctly detect the compiler
diff --git a/pkgs/development/libraries/science/benchmark/papi/default.nix b/pkgs/development/libraries/science/benchmark/papi/default.nix
new file mode 100644
index 000000000000..f727728943bd
--- /dev/null
+++ b/pkgs/development/libraries/science/benchmark/papi/default.nix
@@ -0,0 +1,30 @@
+{ stdenv
+, fetchurl
+}:
+
+stdenv.mkDerivation rec {
+  version = "5.6.0";
+  name = "papi-${version}";
+
+  src = fetchurl {
+    url = "https://bitbucket.org/icl/papi/get/papi-5-6-0-t.tar.gz";
+    sha256 = "13mngf9kl0y2wfxqvkad0smdaag7k8fvw82b4312gx62nwhc1i6r";
+  };
+
+  buildInputs = [ stdenv ];
+
+  preConfigure = ''
+    cd src
+  '';
+
+  doCheck = true;
+  checkTarget = "test";
+
+  meta = with stdenv.lib; {
+    homepage = https://icl.utk.edu/papi/;
+    description = "PAPI provides the tool designer and application engineer with a consistent interface and methodology for use of the performance counter hardware found in most major microprocessors";
+    license = licenses.bsdOriginal;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.costrouc ];
+  };
+}
diff --git a/pkgs/development/libraries/science/math/atlas/default.nix b/pkgs/development/libraries/science/math/atlas/default.nix
index 8b740bdb6f6d..fb90ed754da9 100644
--- a/pkgs/development/libraries/science/math/atlas/default.nix
+++ b/pkgs/development/libraries/science/math/atlas/default.nix
@@ -110,6 +110,7 @@ stdenv.mkDerivation {
     homepage = http://math-atlas.sourceforge.net/;
     description = "Automatically Tuned Linear Algebra Software (ATLAS)";
     license = stdenv.lib.licenses.bsd3;
+    broken = stdenv.isDarwin;  # test when updating to >=3.10.3
     platforms = stdenv.lib.platforms.unix;
 
     longDescription = ''
diff --git a/pkgs/development/libraries/science/math/parmetis/default.nix b/pkgs/development/libraries/science/math/parmetis/default.nix
new file mode 100644
index 000000000000..ca35ce2f4134
--- /dev/null
+++ b/pkgs/development/libraries/science/math/parmetis/default.nix
@@ -0,0 +1,33 @@
+{ stdenv
+, fetchurl
+, cmake
+, mpi
+}:
+
+stdenv.mkDerivation rec {
+  name = "parmetis-${version}";
+  version = "4.0.3";
+
+  src = fetchurl {
+    url = "http://glaros.dtc.umn.edu/gkhome/fetch/sw/parmetis/parmetis-${version}.tar.gz";
+    sha256 = "0pvfpvb36djvqlcc3lq7si0c5xpb2cqndjg8wvzg35ygnwqs5ngj";
+  };
+
+  buildInputs = [ cmake mpi ];
+
+  # metis and GKlib are packaged with distribution
+  # AUR https://aur.archlinux.org/packages/parmetis/ has reported that
+  # it easier to build with the included packages as opposed to using the metis
+  # package. Compilation time is short.
+  configurePhase = ''
+    make config metis_path=$PWD/metis gklib_path=$PWD/metis/GKlib prefix=$out
+  '';
+
+  meta = with stdenv.lib; {
+    description = "ParMETIS is an MPI-based parallel library that implements a variety of algorithms for partitioning unstructured graphs, meshes, and for computing fill-reducing orderings of sparse matrices";
+    homepage = http://glaros.dtc.umn.edu/gkhome/metis/parmetis/overview;
+    platforms = platforms.all;
+    license = licenses.unfree;
+    maintainers = [ maintainers.costrouc ];
+  };
+}
diff --git a/pkgs/development/libraries/science/math/scalapack/default.nix b/pkgs/development/libraries/science/math/scalapack/default.nix
new file mode 100644
index 000000000000..83e177c66c18
--- /dev/null
+++ b/pkgs/development/libraries/science/math/scalapack/default.nix
@@ -0,0 +1,29 @@
+{ stdenv
+, fetchurl
+, gfortran
+, cmake
+, blas
+, liblapack
+, mpi
+}:
+
+stdenv.mkDerivation rec {
+  name = "scalapack-${version}";
+  version = "2.0.2";
+
+  src = fetchurl {
+    url = "http://www.netlib.org/scalapack/scalapack-${version}.tgz";
+    sha256 = "0p1r61ss1fq0bs8ynnx7xq4wwsdvs32ljvwjnx6yxr8gd6pawx0c";
+  };
+
+  buildInputs = [ cmake mpi liblapack blas gfortran ];
+
+  meta = with stdenv.lib; {
+    homepage = http://www.netlib.org/scalapack/;
+    description = "Library of high-performance linear algebra routines for parallel distributed memory machines";
+    license = licenses.bsdOriginal;
+    platforms = platforms.all;
+    maintainers = [ maintainers.costrouc ];
+  };
+
+}
diff --git a/pkgs/development/libraries/science/math/scs/default.nix b/pkgs/development/libraries/science/math/scs/default.nix
index 0539083e823c..f9d1a84b1f03 100644
--- a/pkgs/development/libraries/science/math/scs/default.nix
+++ b/pkgs/development/libraries/science/math/scs/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, blas, liblapack, gfortran }:
+{ stdenv, fetchFromGitHub, blas, liblapack, gfortran, fixDarwinDylibNames }:
 
 stdenv.mkDerivation rec {
   name = "scs-${version}";
@@ -11,24 +11,30 @@ stdenv.mkDerivation rec {
     sha256 = "17lbcmcsniqlyzgbzmjipfd0rrk25a8hzh7l5wl2wp1iwsd8c3a9";
   };
 
-  buildInputs = [ blas liblapack gfortran.cc.lib ];
-
   # Actually link and add libgfortran to the rpath
-  patchPhase = ''
-    sed -i 's/#-lgfortran/-lgfortran/' scs.mk
+  postPatch = ''
+    substituteInPlace scs.mk \
+      --replace "#-lgfortran" "-lgfortran" \
+      --replace "gcc" "cc"
   '';
 
+  nativeBuildInputs = stdenv.lib.optional stdenv.isDarwin fixDarwinDylibNames;
+
+  buildInputs = [ blas liblapack gfortran.cc.lib ];
+
   doCheck = true;
 
-  # Test demo requires passing any int as $1; 42 chosen arbitrarily
-  checkPhase = ''
-    ./out/demo_socp_indirect 42
+  # Test demo requires passing data and seed; numbers chosen arbitrarily.
+  postCheck = ''
+    ./out/demo_socp_indirect 42 0.42 0.42 42
   '';
 
   installPhase = ''
+    runHook preInstall
     mkdir -p $out/lib
     cp -r include $out/
-    cp out/*.a out/*.so $out/lib/
+    cp out/*.a out/*.so out/*.dylib $out/lib/
+    runHook postInstall
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/libraries/skalibs/default.nix b/pkgs/development/libraries/skalibs/default.nix
index 9d5bd170e20d..0667e1265b34 100644
--- a/pkgs/development/libraries/skalibs/default.nix
+++ b/pkgs/development/libraries/skalibs/default.nix
@@ -1,51 +1,30 @@
-{ stdenv, fetchgit }:
+{ stdenv, skawarePackages }:
 
-let
+with skawarePackages;
 
-  version = "2.6.4.0";
+buildPackage {
+  pname = "skalibs";
+  version = "2.7.0.0";
+  sha256 = "0mnprdf4w4ami0db22rwd111m037cdmn2p8xa4i8cbwxcrv4sjcn";
 
-in stdenv.mkDerivation rec {
-
-  name = "skalibs-${version}";
-
-  src = fetchgit {
-    url = "git://git.skarnet.org/skalibs";
-    rev = "refs/tags/v${version}";
-    sha256 = "13icrwxxb7k3cj37dl07h0apk6lwyrg1qrwjwh4l82i8f32bnjz2";
-  };
+  description = "A set of general-purpose C programming libraries";
 
   outputs = [ "lib" "dev" "doc" "out" ];
 
-  dontDisableStatic = true;
-
-  enableParallelBuilding = true;
-
   configureFlags = [
-    "--enable-force-devr"       # assume /dev/random works
+    # assume /dev/random works
+    "--enable-force-devr"
     "--libdir=\${lib}/lib"
     "--dynlibdir=\${lib}/lib"
     "--includedir=\${dev}/include"
     "--sysdepdir=\${lib}/lib/skalibs/sysdeps"
-  ]
-  ++ (if stdenv.isDarwin then [ "--disable-shared" ] else [ "--enable-shared" ])
-  # On darwin, the target triplet from -dumpmachine includes version number, but
-  # skarnet.org software uses the triplet to test binary compatibility.
-  # Explicitly setting target ensures code can be compiled against a skalibs
-  # binary built on a different version of darwin.
-  # http://www.skarnet.org/cgi-bin/archive.cgi?1:mss:623:heiodchokfjdkonfhdph
-  ++ (stdenv.lib.optional stdenv.isDarwin "--build=${stdenv.hostPlatform.system}");
+  ];
 
   postInstall = ''
-    mkdir -p $doc/share/doc/skalibs
+    rm -rf sysdeps.cfg
+    rm libskarnet.*
+
     mv doc $doc/share/doc/skalibs/html
   '';
 
-  meta = {
-    homepage = http://skarnet.org/software/skalibs/;
-    description = "A set of general-purpose C programming libraries";
-    platforms = stdenv.lib.platforms.all;
-    license = stdenv.lib.licenses.isc;
-    maintainers = with stdenv.lib.maintainers; [ pmahoney Profpatsch ];
-  };
-
 }
diff --git a/pkgs/development/libraries/soqt/default.nix b/pkgs/development/libraries/soqt/default.nix
index fdad4e21b0b6..9769596621b1 100644
--- a/pkgs/development/libraries/soqt/default.nix
+++ b/pkgs/development/libraries/soqt/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ pkgconfig ];
 
   meta = {
-    homepage = http://www.coin3d.org/;
+    homepage = https://bitbucket.org/Coin3D/coin/wiki/Home;
     license = stdenv.lib.licenses.gpl2Plus;
     description = "Glue between Coin high-level 3D visualization library and Qt";
 
diff --git a/pkgs/development/libraries/soxt/default.nix b/pkgs/development/libraries/soxt/default.nix
index 13f037960b08..c219d5bfb362 100644
--- a/pkgs/development/libraries/soxt/default.nix
+++ b/pkgs/development/libraries/soxt/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ coin3d motif xlibsWrapper libGLU_combined ];
 
   meta = with stdenv.lib; {
-    homepage = http://www.coin3d.org/;
+    homepage = https://bitbucket.org/Coin3D/coin/wiki/Home;
     license = licenses.bsd3;
     description = "A GUI binding for using Open Inventor with Xt/Motif";
     maintainers = with maintainers; [ tmplt ];
diff --git a/pkgs/development/libraries/spdlog/default.nix b/pkgs/development/libraries/spdlog/default.nix
index 1c9e67f87675..a96cd455f554 100644
--- a/pkgs/development/libraries/spdlog/default.nix
+++ b/pkgs/development/libraries/spdlog/default.nix
@@ -1,32 +1,46 @@
 { stdenv, fetchFromGitHub, cmake }:
 
-stdenv.mkDerivation rec {
-  name = "spdlog-${version}";
-  version = "0.14.0";
-
-  src = fetchFromGitHub {
-    owner  = "gabime";
-    repo   = "spdlog";
-    rev    = "v${version}";
-    sha256 = "13730429gwlabi432ilpnja3sfvy0nn2719vnhhmii34xcdyc57q";
-  };
+let
+  generic = { version, sha256 }:
+    stdenv.mkDerivation {
+      name = "spdlog-${version}";
+      inherit version;
+
+      src = fetchFromGitHub {
+        owner  = "gabime";
+        repo   = "spdlog";
+        rev    = "v${version}";
+        inherit sha256;
+      };
 
-  nativeBuildInputs = [ cmake ];
+      nativeBuildInputs = [ cmake ];
 
-  # cmakeFlags = [ "-DSPDLOG_BUILD_EXAMPLES=ON" ];
+      # cmakeFlags = [ "-DSPDLOG_BUILD_EXAMPLES=ON" ];
 
-  outputs = [ "out" "doc" ];
+      outputs = [ "out" "doc" ];
 
-  postInstall = ''
-    mkdir -p $out/share/doc/spdlog
-    cp -rv ../example $out/share/doc/spdlog
-  '';
+      postInstall = ''
+        mkdir -p $out/share/doc/spdlog
+        cp -rv ../example $out/share/doc/spdlog
+      '';
 
-  meta = with stdenv.lib; {
-    description    = "Very fast, header only, C++ logging library.";
-    homepage       = https://github.com/gabime/spdlog;
-    license        = licenses.mit;
-    maintainers    = with maintainers; [ obadz ];
-    platforms      = platforms.all;
+      meta = with stdenv.lib; {
+        description    = "Very fast, header only, C++ logging library.";
+        homepage       = https://github.com/gabime/spdlog;
+        license        = licenses.mit;
+        maintainers    = with maintainers; [ obadz ];
+        platforms      = platforms.all;
+      };
+    };
+in
+{
+  spdlog_1 = generic {
+    version = "1.1.0";
+    sha256 = "0yckz5w02v8193jhxihk9v4i8f6jafyg2a33amql0iclhk17da8f";
+  };
+
+  spdlog_0 = generic {
+    version = "0.14.0";
+    sha256 = "13730429gwlabi432ilpnja3sfvy0nn2719vnhhmii34xcdyc57q";
   };
 }
diff --git a/pkgs/development/libraries/tcllib/default.nix b/pkgs/development/libraries/tcllib/default.nix
index 6ffbe5dc60c5..24b1d477b8a0 100644
--- a/pkgs/development/libraries/tcllib/default.nix
+++ b/pkgs/development/libraries/tcllib/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ tcl ];
 
   meta = {
-    homepage = http://tcl.activestate.com/software/tcllib/;
+    homepage = https://sourceforge.net/projects/tcllib/;
     description = "Tcl-only library of standard routines for Tcl";
     license = stdenv.lib.licenses.tcltk;
     platforms = stdenv.lib.platforms.unix;
diff --git a/pkgs/development/libraries/vapoursynth-mvtools/default.nix b/pkgs/development/libraries/vapoursynth-mvtools/default.nix
index c2ab61c6bd17..ecc6b7c30fc7 100644
--- a/pkgs/development/libraries/vapoursynth-mvtools/default.nix
+++ b/pkgs/development/libraries/vapoursynth-mvtools/default.nix
@@ -1,22 +1,22 @@
 { stdenv, fetchFromGitHub, pkgconfig, autoreconfHook,
-  vapoursynth, yasm, fftwFloat
+  vapoursynth, nasm, fftwFloat
 }:
 
 stdenv.mkDerivation rec {
   name = "vapoursynth-mvtools-${version}";
-  version = "19";
+  version = "20";
 
   src = fetchFromGitHub {
-    owner = "dubhater";
-    repo  = "vapoursynth-mvtools";
+    owner  = "dubhater";
+    repo   = "vapoursynth-mvtools";
     rev    = "v${version}";
-    sha256 = "1wjwf1lgfkqz87s0j251g625mw9xmx79zzgrjyhq3wlii73m6qwp";
+    sha256 = "0nbq04wbmz7xqfcfpdvgg0p8xhh2xdcwhhx5gwr4j8bm611v0npz";
   };
 
   nativeBuildInputs = [ pkgconfig ];
   buildInputs = [
     autoreconfHook
-    yasm vapoursynth fftwFloat
+    nasm vapoursynth fftwFloat
   ];
 
   configureFlags = [ "--libdir=$(out)/lib/vapoursynth" ];
diff --git a/pkgs/development/libraries/vapoursynth/default.nix b/pkgs/development/libraries/vapoursynth/default.nix
index 7344f3a7e2bb..2d3af9b70c57 100644
--- a/pkgs/development/libraries/vapoursynth/default.nix
+++ b/pkgs/development/libraries/vapoursynth/default.nix
@@ -12,13 +12,13 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   name = "vapoursynth-${version}";
-  version = "R43";
+  version = "R44";
 
   src = fetchFromGitHub {
     owner  = "vapoursynth";
     repo   = "vapoursynth";
     rev    = version;
-    sha256 = "01yzxggjxr6fz3wj81z6vgp9m4jqddyk73i22kz2x620cpdgb9j9";
+    sha256 = "1270cggvk9nvy5g2z289nwhyvl4364yzirfn5jsa9i9ljfp00qml";
   };
 
   nativeBuildInputs = [ pkgconfig autoreconfHook nasm ];
diff --git a/pkgs/development/libraries/vrpn/default.nix b/pkgs/development/libraries/vrpn/default.nix
index ddeecce21c61..0ae5ba147cb7 100644
--- a/pkgs/development/libraries/vrpn/default.nix
+++ b/pkgs/development/libraries/vrpn/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
       set of physical devices (tracker, etc.) used in a virtual-reality
       (VR) system.
     '';
-    homepage    = http://www.vrpn.org/;
+    homepage    = https://github.com/vrpn/vrpn;
     license     = licenses.boost; # see https://github.com/vrpn/vrpn/wiki/License
     platforms   = platforms.linux;
     maintainers = with maintainers; [ ludo ];
diff --git a/pkgs/development/libraries/webkitgtk/2.4.nix b/pkgs/development/libraries/webkitgtk/2.4.nix
index 1a17ae53313b..7b62de69123d 100644
--- a/pkgs/development/libraries/webkitgtk/2.4.nix
+++ b/pkgs/development/libraries/webkitgtk/2.4.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, fetchpatch, perl, python, ruby, bison, gperf, flex
-, pkgconfig, which, gettext, gobjectIntrospection
+, pkgconfig, which, gettext, gobjectIntrospection, pruneLibtoolFiles
 , gtk2, gtk3, wayland, libwebp, enchant, sqlite
 , libxml2, libsoup, libsecret, libxslt, harfbuzz, xorg
 , gst-plugins-base, libobjc
@@ -77,13 +77,16 @@ stdenv.mkDerivation rec {
     "--disable-credential-storage"
   ];
 
-  NIX_CFLAGS_COMPILE = "-DU_NOEXCEPT=";
+  NIX_CFLAGS_COMPILE = [
+    "-DU_NOEXCEPT="
+    "-Wno-expansion-to-defined"
+  ];
 
   dontAddDisableDepTrack = true;
 
   nativeBuildInputs = [
     perl python ruby bison gperf flex
-    pkgconfig which gettext gobjectIntrospection
+    pkgconfig which gettext gobjectIntrospection pruneLibtoolFiles
   ];
 
   buildInputs = [
diff --git a/pkgs/development/libraries/wolfssl/default.nix b/pkgs/development/libraries/wolfssl/default.nix
index 2b69f6283d60..30291a180226 100644
--- a/pkgs/development/libraries/wolfssl/default.nix
+++ b/pkgs/development/libraries/wolfssl/default.nix
@@ -11,6 +11,8 @@ stdenv.mkDerivation rec {
     sha256 = "00mpq1z8j37a873dbk9knb835m3qlwqnd1rslirqkc44hpz1i64j";
   };
 
+  configureFlags = [ "--enable-all" ];
+
   outputs = [ "out" "dev" "doc" "lib" ];
 
   nativeBuildInputs = [ autoreconfHook ];
diff --git a/pkgs/development/libraries/xdg-dbus-proxy/default.nix b/pkgs/development/libraries/xdg-dbus-proxy/default.nix
new file mode 100644
index 000000000000..247b8ee45d0b
--- /dev/null
+++ b/pkgs/development/libraries/xdg-dbus-proxy/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, fetchurl, pkgconfig, glib }:
+
+let
+  version = "0.1.0";
+in stdenv.mkDerivation rec {
+  name = "xdg-dbus-proxy-${version}";
+
+  src = fetchurl {
+    url = "https://github.com/flatpak/xdg-dbus-proxy/releases/download/${version}/${name}.tar.xz";
+    sha256 = "055wli36lvdannp6qqwbvd78353n61wn9kp8y3dchh39wq7x7vwy";
+  };
+
+  nativeBuildInputs = [ pkgconfig ];
+
+  buildInputs = [ glib ];
+
+  meta = with stdenv.lib; {
+    description = "DBus proxy for Flatpak and others";
+    homepage = https://flatpak.org/;
+    license = licenses.lgpl21Plus;
+    maintainers = with maintainers; [ jtojnar ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix b/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix
index e6f23a8a2703..f81461b2ac8e 100644
--- a/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix
+++ b/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, libxml2, xdg-desktop-portal, gtk3, glib }:
 
 let
-  version = "0.99";
+  version = "1.0.2";
 in stdenv.mkDerivation rec {
   name = "xdg-desktop-portal-gtk-${version}";
 
@@ -9,7 +9,7 @@ in stdenv.mkDerivation rec {
     owner = "flatpak";
     repo = "xdg-desktop-portal-gtk";
     rev = version;
-    sha256 = "0jnmrl55gpvz06hy0832kcby4y84f0a1hiali6qy1lcmyqhm3v59";
+    sha256 = "06dzh3vzq5nw3r89kb1qi3r2z8wjh9zmzc0hfnva4vnx7mwgm7ax";
   };
 
   nativeBuildInputs = [ autoreconfHook pkgconfig libxml2 xdg-desktop-portal ];
diff --git a/pkgs/development/libraries/xdg-desktop-portal/default.nix b/pkgs/development/libraries/xdg-desktop-portal/default.nix
index 9651f642a011..171ef68cf569 100644
--- a/pkgs/development/libraries/xdg-desktop-portal/default.nix
+++ b/pkgs/development/libraries/xdg-desktop-portal/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, libxml2, glib, pipewire, fuse }:
 
 let
-  version = "0.99";
+  version = "1.0.2";
 in stdenv.mkDerivation rec {
   name = "xdg-desktop-portal-${version}";
 
@@ -11,7 +11,7 @@ in stdenv.mkDerivation rec {
     owner = "flatpak";
     repo = "xdg-desktop-portal";
     rev = version;
-    sha256 = "05garhdxylphrizyaqnz4sfpp28fd00v877q7cf1gyhpk1sr8i83";
+    sha256 = "1vl0150gz20x106di9yfa6l3zjw0nd2lr44rkq2147n2a254p79p";
   };
 
   patches = [
diff --git a/pkgs/development/lisp-modules/lisp-packages.nix b/pkgs/development/lisp-modules/lisp-packages.nix
index f208b47234c6..5769ee94a1be 100644
--- a/pkgs/development/lisp-modules/lisp-packages.nix
+++ b/pkgs/development/lisp-modules/lisp-packages.nix
@@ -24,8 +24,8 @@ let lispPackages = rec {
       quicklispdist = pkgs.fetchurl {
         # Will usually be replaced with a fresh version anyway, but needs to be
         # a valid distinfo.txt
-        url = "http://beta.quicklisp.org/dist/quicklisp/2018-04-30/distinfo.txt";
-        sha256 = "0zpabwgvsmy90yca25sfixi6waixqdchllayyvcsdl3jaibbz4rq";
+        url = "http://beta.quicklisp.org/dist/quicklisp/2018-08-31/distinfo.txt";
+        sha256 = "1im4p6vcxkp5hrim28cdf5isyw8a1v9aqsz2xfsfp3z3qd49dixd";
       };
       buildPhase = '' true; '';
       postInstall = ''
diff --git a/pkgs/development/lisp-modules/openssl-lib-marked.nix b/pkgs/development/lisp-modules/openssl-lib-marked.nix
new file mode 100644
index 000000000000..e2c632b8ebad
--- /dev/null
+++ b/pkgs/development/lisp-modules/openssl-lib-marked.nix
@@ -0,0 +1,18 @@
+with import ../../../default.nix {};
+runCommand "openssl-lib-marked" {} ''
+  mkdir -p "$out/lib"
+  for lib in ssl crypto; do
+    version="${(builtins.parseDrvName openssl.name).version}"
+    ln -s "${lib.getLib openssl}/lib/lib$lib.so" "$out/lib/lib$lib.so.$version"
+    version="$(echo "$version" | sed -re 's/[a-z]+$//')"
+    while test -n "$version"; do
+      ln -sfT "${lib.getLib openssl}/lib/lib$lib.so" "$out/lib/lib$lib.so.$version"
+      nextversion="''${version%.*}"
+      if test "$version" = "$nextversion"; then
+        version=
+      else
+        version="$nextversion"
+      fi
+    done
+  done
+''
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/alexandria.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/alexandria.nix
index 22aa818f8756..9b9486e9758c 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/alexandria.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/alexandria.nix
@@ -1,4 +1,4 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''alexandria'';
   version = ''20170830-git'';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/array-utils.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/array-utils.nix
index c90a9e091920..9daab46784d3 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/array-utils.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/array-utils.nix
@@ -1,15 +1,15 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''array-utils'';
-  version = ''20180131-git'';
+  version = ''20180831-git'';
 
   description = ''A few utilities for working with arrays.'';
 
   deps = [ ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/array-utils/2018-01-31/array-utils-20180131-git.tgz'';
-    sha256 = ''01vjb146lb1dp77xcpinq4r1jv2fvl3gzj50x9i04b5mhfaqpkd0'';
+    url = ''http://beta.quicklisp.org/archive/array-utils/2018-08-31/array-utils-20180831-git.tgz'';
+    sha256 = ''1m3ciz73psy3gln5f2q1c6igfmhxjjq97bqbjsvmyj2l9f6m6bl7'';
   };
 
   packageName = "array-utils";
@@ -18,8 +18,8 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM array-utils DESCRIPTION A few utilities for working with arrays.
-    SHA256 01vjb146lb1dp77xcpinq4r1jv2fvl3gzj50x9i04b5mhfaqpkd0 URL
-    http://beta.quicklisp.org/archive/array-utils/2018-01-31/array-utils-20180131-git.tgz
-    MD5 339670a03dd7d865cd045a6556d705c6 NAME array-utils FILENAME array-utils
-    DEPS NIL DEPENDENCIES NIL VERSION 20180131-git SIBLINGS (array-utils-test)
+    SHA256 1m3ciz73psy3gln5f2q1c6igfmhxjjq97bqbjsvmyj2l9f6m6bl7 URL
+    http://beta.quicklisp.org/archive/array-utils/2018-08-31/array-utils-20180831-git.tgz
+    MD5 fa07e8fac5263d4fed7acb3d53e5855a NAME array-utils FILENAME array-utils
+    DEPS NIL DEPENDENCIES NIL VERSION 20180831-git SIBLINGS (array-utils-test)
     PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/asdf-system-connections.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/asdf-system-connections.nix
index 4612e6175b91..65df45d95a50 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/asdf-system-connections.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/asdf-system-connections.nix
@@ -1,4 +1,4 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''asdf-system-connections'';
   version = ''20170124-git'';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/bordeaux-threads.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/bordeaux-threads.nix
index f0fc5d4d0c0f..c5305587a029 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/bordeaux-threads.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/bordeaux-threads.nix
@@ -1,7 +1,7 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''bordeaux-threads'';
-  version = ''v0.8.5'';
+  version = ''v0.8.6'';
 
   parasites = [ "bordeaux-threads/test" ];
 
@@ -10,8 +10,8 @@ rec {
   deps = [ args."alexandria" args."fiveam" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/bordeaux-threads/2016-03-18/bordeaux-threads-v0.8.5.tgz'';
-    sha256 = ''09q1xd3fca6ln6mh45cx24xzkrcnvhgl5nn9g2jv0rwj1m2xvbpd'';
+    url = ''http://beta.quicklisp.org/archive/bordeaux-threads/2018-07-11/bordeaux-threads-v0.8.6.tgz'';
+    sha256 = ''1q3b9dbyz02g6iav5rvzml7c8r0iad9j5kipgwkxj0b8qijjzr1y'';
   };
 
   packageName = "bordeaux-threads";
@@ -21,10 +21,10 @@ rec {
 }
 /* (SYSTEM bordeaux-threads DESCRIPTION
     Bordeaux Threads makes writing portable multi-threaded apps simple. SHA256
-    09q1xd3fca6ln6mh45cx24xzkrcnvhgl5nn9g2jv0rwj1m2xvbpd URL
-    http://beta.quicklisp.org/archive/bordeaux-threads/2016-03-18/bordeaux-threads-v0.8.5.tgz
-    MD5 67e363a363e164b6f61a047957b8554e NAME bordeaux-threads FILENAME
+    1q3b9dbyz02g6iav5rvzml7c8r0iad9j5kipgwkxj0b8qijjzr1y URL
+    http://beta.quicklisp.org/archive/bordeaux-threads/2018-07-11/bordeaux-threads-v0.8.6.tgz
+    MD5 f959d3902694b1fe6de450a854040f86 NAME bordeaux-threads FILENAME
     bordeaux-threads DEPS
     ((NAME alexandria FILENAME alexandria) (NAME fiveam FILENAME fiveam))
-    DEPENDENCIES (alexandria fiveam) VERSION v0.8.5 SIBLINGS NIL PARASITES
+    DEPENDENCIES (alexandria fiveam) VERSION v0.8.6 SIBLINGS NIL PARASITES
     (bordeaux-threads/test)) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/buildnode-xhtml.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/buildnode-xhtml.nix
index 6dbff1d6e56c..ec4e31013f92 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/buildnode-xhtml.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/buildnode-xhtml.nix
@@ -5,7 +5,7 @@ rec {
 
   description = ''Tool for building up an xml dom of an excel spreadsheet nicely.'';
 
-  deps = [ args."alexandria" args."babel" args."buildnode" args."cl-interpol" args."cl-ppcre" args."cl-unicode" args."closer-mop" args."closure-common" args."closure-html" args."collectors" args."cxml" args."cxml-dom" args."cxml-klacks" args."cxml-test" args."cxml-xml" args."flexi-streams" args."iterate" args."puri" args."split-sequence" args."swank" args."symbol-munger" args."trivial-features" args."trivial-gray-streams" ];
+  deps = [ args."alexandria" args."babel" args."buildnode" args."cl-interpol" args."cl-ppcre" args."cl-unicode" args."closer-mop" args."closure-common" args."closure-html" args."collectors" args."cxml" args."cxml-dom" args."cxml-klacks" args."cxml-test" args."cxml-xml" args."flexi-streams" args."iterate" args."named-readtables" args."puri" args."split-sequence" args."swank" args."symbol-munger" args."trivial-features" args."trivial-gray-streams" ];
 
   src = fetchurl {
     url = ''http://beta.quicklisp.org/archive/buildnode/2017-04-03/buildnode-20170403-git.tgz'';
@@ -34,16 +34,17 @@ rec {
      (NAME cxml-dom FILENAME cxml-dom) (NAME cxml-klacks FILENAME cxml-klacks)
      (NAME cxml-test FILENAME cxml-test) (NAME cxml-xml FILENAME cxml-xml)
      (NAME flexi-streams FILENAME flexi-streams)
-     (NAME iterate FILENAME iterate) (NAME puri FILENAME puri)
-     (NAME split-sequence FILENAME split-sequence) (NAME swank FILENAME swank)
-     (NAME symbol-munger FILENAME symbol-munger)
+     (NAME iterate FILENAME iterate)
+     (NAME named-readtables FILENAME named-readtables)
+     (NAME puri FILENAME puri) (NAME split-sequence FILENAME split-sequence)
+     (NAME swank FILENAME swank) (NAME symbol-munger FILENAME symbol-munger)
      (NAME trivial-features FILENAME trivial-features)
      (NAME trivial-gray-streams FILENAME trivial-gray-streams))
     DEPENDENCIES
     (alexandria babel buildnode cl-interpol cl-ppcre cl-unicode closer-mop
      closure-common closure-html collectors cxml cxml-dom cxml-klacks cxml-test
-     cxml-xml flexi-streams iterate puri split-sequence swank symbol-munger
-     trivial-features trivial-gray-streams)
+     cxml-xml flexi-streams iterate named-readtables puri split-sequence swank
+     symbol-munger trivial-features trivial-gray-streams)
     VERSION buildnode-20170403-git SIBLINGS
     (buildnode-excel buildnode-html5 buildnode-kml buildnode-xul buildnode)
     PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/buildnode.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/buildnode.nix
index ecc1634bfce0..86bdb36c8d23 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/buildnode.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/buildnode.nix
@@ -7,7 +7,7 @@ rec {
 
   description = ''Tool for building up an xml dom nicely.'';
 
-  deps = [ args."alexandria" args."babel" args."buildnode-xhtml" args."cl-interpol" args."cl-ppcre" args."cl-unicode" args."closer-mop" args."closure-common" args."closure-html" args."collectors" args."cxml" args."cxml-dom" args."cxml-klacks" args."cxml-test" args."cxml-xml" args."flexi-streams" args."iterate" args."lisp-unit2" args."puri" args."split-sequence" args."swank" args."symbol-munger" args."trivial-features" args."trivial-gray-streams" ];
+  deps = [ args."alexandria" args."babel" args."buildnode-xhtml" args."cl-interpol" args."cl-ppcre" args."cl-unicode" args."closer-mop" args."closure-common" args."closure-html" args."collectors" args."cxml" args."cxml-dom" args."cxml-klacks" args."cxml-test" args."cxml-xml" args."flexi-streams" args."iterate" args."lisp-unit2" args."named-readtables" args."puri" args."split-sequence" args."swank" args."symbol-munger" args."trivial-features" args."trivial-gray-streams" ];
 
   src = fetchurl {
     url = ''http://beta.quicklisp.org/archive/buildnode/2017-04-03/buildnode-20170403-git.tgz'';
@@ -35,6 +35,7 @@ rec {
      (NAME cxml-test FILENAME cxml-test) (NAME cxml-xml FILENAME cxml-xml)
      (NAME flexi-streams FILENAME flexi-streams)
      (NAME iterate FILENAME iterate) (NAME lisp-unit2 FILENAME lisp-unit2)
+     (NAME named-readtables FILENAME named-readtables)
      (NAME puri FILENAME puri) (NAME split-sequence FILENAME split-sequence)
      (NAME swank FILENAME swank) (NAME symbol-munger FILENAME symbol-munger)
      (NAME trivial-features FILENAME trivial-features)
@@ -42,8 +43,9 @@ rec {
     DEPENDENCIES
     (alexandria babel buildnode-xhtml cl-interpol cl-ppcre cl-unicode
      closer-mop closure-common closure-html collectors cxml cxml-dom
-     cxml-klacks cxml-test cxml-xml flexi-streams iterate lisp-unit2 puri
-     split-sequence swank symbol-munger trivial-features trivial-gray-streams)
+     cxml-klacks cxml-test cxml-xml flexi-streams iterate lisp-unit2
+     named-readtables puri split-sequence swank symbol-munger trivial-features
+     trivial-gray-streams)
     VERSION 20170403-git SIBLINGS
     (buildnode-excel buildnode-html5 buildnode-kml buildnode-xhtml
      buildnode-xul)
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/caveman.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/caveman.nix
index 02e6e2bf6045..f3e64cb965e4 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/caveman.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/caveman.nix
@@ -1,15 +1,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''caveman'';
-  version = ''20171019-git'';
+  version = ''20180831-git'';
 
   description = ''Web Application Framework for Common Lisp'';
 
-  deps = [ args."alexandria" args."anaphora" args."babel" args."babel-streams" args."bordeaux-threads" args."cffi" args."cffi-grovel" args."cffi-toolchain" args."chipz" args."chunga" args."circular-streams" args."cl_plus_ssl" args."cl-annot" args."cl-ansi-text" args."cl-base64" args."cl-colors" args."cl-cookie" args."cl-emb" args."cl-fad" args."cl-ppcre" args."cl-project" args."cl-reexport" args."cl-syntax" args."cl-syntax-annot" args."cl-utilities" args."clack" args."clack-test" args."clack-v1-compat" args."dexador" args."do-urlencode" args."fast-http" args."fast-io" args."flexi-streams" args."http-body" args."ironclad" args."jonathan" args."lack" args."lack-component" args."lack-middleware-backtrace" args."lack-util" args."let-plus" args."local-time" args."map-set" args."marshal" args."myway" args."named-readtables" args."nibbles" args."proc-parse" args."prove" args."quri" args."smart-buffer" args."split-sequence" args."static-vectors" args."trivial-backtrace" args."trivial-features" args."trivial-garbage" args."trivial-gray-streams" args."trivial-mimes" args."trivial-types" args."usocket" args."xsubseq" ];
+  deps = [ args."alexandria" args."anaphora" args."babel" args."babel-streams" args."bordeaux-threads" args."cffi" args."cffi-grovel" args."cffi-toolchain" args."chipz" args."chunga" args."circular-streams" args."cl_plus_ssl" args."cl-annot" args."cl-ansi-text" args."cl-base64" args."cl-colors" args."cl-cookie" args."cl-emb" args."cl-fad" args."cl-ppcre" args."cl-project" args."cl-reexport" args."cl-syntax" args."cl-syntax-annot" args."cl-utilities" args."clack" args."clack-handler-hunchentoot" args."clack-socket" args."clack-test" args."clack-v1-compat" args."dexador" args."do-urlencode" args."fast-http" args."fast-io" args."flexi-streams" args."http-body" args."hunchentoot" args."ironclad" args."jonathan" args."lack" args."lack-component" args."lack-middleware-backtrace" args."lack-util" args."let-plus" args."local-time" args."map-set" args."marshal" args."md5" args."myway" args."named-readtables" args."nibbles" args."proc-parse" args."prove" args."quri" args."rfc2388" args."smart-buffer" args."split-sequence" args."static-vectors" args."trivial-backtrace" args."trivial-features" args."trivial-garbage" args."trivial-gray-streams" args."trivial-mimes" args."trivial-types" args."usocket" args."xsubseq" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/caveman/2017-10-19/caveman-20171019-git.tgz'';
-    sha256 = ''0yjhjhjnq7l6z4fj9l470hgsa609adm216fss5xsf43pljv2h5ra'';
+    url = ''http://beta.quicklisp.org/archive/caveman/2018-08-31/caveman-20180831-git.tgz'';
+    sha256 = ''0c4qkvmjqdkm14cgdpsqcl1h5ixb92l6l08nkd4may2kpfh2xq0s'';
   };
 
   packageName = "caveman";
@@ -18,9 +18,9 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM caveman DESCRIPTION Web Application Framework for Common Lisp SHA256
-    0yjhjhjnq7l6z4fj9l470hgsa609adm216fss5xsf43pljv2h5ra URL
-    http://beta.quicklisp.org/archive/caveman/2017-10-19/caveman-20171019-git.tgz
-    MD5 41318d26a0825e504042fa693959feaf NAME caveman FILENAME caveman DEPS
+    0c4qkvmjqdkm14cgdpsqcl1h5ixb92l6l08nkd4may2kpfh2xq0s URL
+    http://beta.quicklisp.org/archive/caveman/2018-08-31/caveman-20180831-git.tgz
+    MD5 b417563f04b2619172127a6abeed786a NAME caveman FILENAME caveman DEPS
     ((NAME alexandria FILENAME alexandria) (NAME anaphora FILENAME anaphora)
      (NAME babel FILENAME babel) (NAME babel-streams FILENAME babel-streams)
      (NAME bordeaux-threads FILENAME bordeaux-threads)
@@ -38,22 +38,26 @@ rec {
      (NAME cl-syntax FILENAME cl-syntax)
      (NAME cl-syntax-annot FILENAME cl-syntax-annot)
      (NAME cl-utilities FILENAME cl-utilities) (NAME clack FILENAME clack)
+     (NAME clack-handler-hunchentoot FILENAME clack-handler-hunchentoot)
+     (NAME clack-socket FILENAME clack-socket)
      (NAME clack-test FILENAME clack-test)
      (NAME clack-v1-compat FILENAME clack-v1-compat)
      (NAME dexador FILENAME dexador) (NAME do-urlencode FILENAME do-urlencode)
      (NAME fast-http FILENAME fast-http) (NAME fast-io FILENAME fast-io)
      (NAME flexi-streams FILENAME flexi-streams)
-     (NAME http-body FILENAME http-body) (NAME ironclad FILENAME ironclad)
+     (NAME http-body FILENAME http-body)
+     (NAME hunchentoot FILENAME hunchentoot) (NAME ironclad FILENAME ironclad)
      (NAME jonathan FILENAME jonathan) (NAME lack FILENAME lack)
      (NAME lack-component FILENAME lack-component)
      (NAME lack-middleware-backtrace FILENAME lack-middleware-backtrace)
      (NAME lack-util FILENAME lack-util) (NAME let-plus FILENAME let-plus)
      (NAME local-time FILENAME local-time) (NAME map-set FILENAME map-set)
-     (NAME marshal FILENAME marshal) (NAME myway FILENAME myway)
+     (NAME marshal FILENAME marshal) (NAME md5 FILENAME md5)
+     (NAME myway FILENAME myway)
      (NAME named-readtables FILENAME named-readtables)
      (NAME nibbles FILENAME nibbles) (NAME proc-parse FILENAME proc-parse)
      (NAME prove FILENAME prove) (NAME quri FILENAME quri)
-     (NAME smart-buffer FILENAME smart-buffer)
+     (NAME rfc2388 FILENAME rfc2388) (NAME smart-buffer FILENAME smart-buffer)
      (NAME split-sequence FILENAME split-sequence)
      (NAME static-vectors FILENAME static-vectors)
      (NAME trivial-backtrace FILENAME trivial-backtrace)
@@ -67,14 +71,15 @@ rec {
     (alexandria anaphora babel babel-streams bordeaux-threads cffi cffi-grovel
      cffi-toolchain chipz chunga circular-streams cl+ssl cl-annot cl-ansi-text
      cl-base64 cl-colors cl-cookie cl-emb cl-fad cl-ppcre cl-project
-     cl-reexport cl-syntax cl-syntax-annot cl-utilities clack clack-test
-     clack-v1-compat dexador do-urlencode fast-http fast-io flexi-streams
-     http-body ironclad jonathan lack lack-component lack-middleware-backtrace
-     lack-util let-plus local-time map-set marshal myway named-readtables
-     nibbles proc-parse prove quri smart-buffer split-sequence static-vectors
+     cl-reexport cl-syntax cl-syntax-annot cl-utilities clack
+     clack-handler-hunchentoot clack-socket clack-test clack-v1-compat dexador
+     do-urlencode fast-http fast-io flexi-streams http-body hunchentoot
+     ironclad jonathan lack lack-component lack-middleware-backtrace lack-util
+     let-plus local-time map-set marshal md5 myway named-readtables nibbles
+     proc-parse prove quri rfc2388 smart-buffer split-sequence static-vectors
      trivial-backtrace trivial-features trivial-garbage trivial-gray-streams
      trivial-mimes trivial-types usocket xsubseq)
-    VERSION 20171019-git SIBLINGS
+    VERSION 20180831-git SIBLINGS
     (caveman-middleware-dbimanager caveman-test caveman2-db caveman2-test
      caveman2)
     PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/chipz.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/chipz.nix
index c8f34e0fa17f..a9808173b626 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/chipz.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/chipz.nix
@@ -1,4 +1,4 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''chipz'';
   version = ''20180328-git'';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-aa.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-aa.nix
index a420c22054f6..531d429df244 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-aa.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-aa.nix
@@ -1,4 +1,4 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''cl-aa'';
   version = ''cl-vectors-20180228-git'';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-anonfun.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-anonfun.nix
index 42a7bd595853..a413743eb8d5 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-anonfun.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-anonfun.nix
@@ -1,4 +1,4 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''cl-anonfun'';
   version = ''20111203-git'';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-async-repl.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-async-repl.nix
index d72a9c69ac0f..377c8c2209bc 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-async-repl.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-async-repl.nix
@@ -1,15 +1,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''cl-async-repl'';
-  version = ''cl-async-20171130-git'';
+  version = ''cl-async-20180711-git'';
 
   description = ''REPL integration for CL-ASYNC.'';
 
   deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."cffi-grovel" args."cffi-toolchain" args."cl-async" args."cl-async-base" args."cl-async-util" args."cl-libuv" args."cl-ppcre" args."fast-io" args."static-vectors" args."trivial-features" args."trivial-gray-streams" args."vom" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/cl-async/2017-11-30/cl-async-20171130-git.tgz'';
-    sha256 = ''0z3bxnzknb9dbisn9d0z1nw6qpswf8cn97v3mfrfq48q9hz11nvm'';
+    url = ''http://beta.quicklisp.org/archive/cl-async/2018-07-11/cl-async-20180711-git.tgz'';
+    sha256 = ''1fy7qd72n1x0h44l67rwln1mxdj1hnc1xp98zc702zywxm99qabz'';
   };
 
   packageName = "cl-async-repl";
@@ -18,9 +18,9 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM cl-async-repl DESCRIPTION REPL integration for CL-ASYNC. SHA256
-    0z3bxnzknb9dbisn9d0z1nw6qpswf8cn97v3mfrfq48q9hz11nvm URL
-    http://beta.quicklisp.org/archive/cl-async/2017-11-30/cl-async-20171130-git.tgz
-    MD5 4e54a593f8c7f02a2c7f7e0e07247c05 NAME cl-async-repl FILENAME
+    1fy7qd72n1x0h44l67rwln1mxdj1hnc1xp98zc702zywxm99qabz URL
+    http://beta.quicklisp.org/archive/cl-async/2018-07-11/cl-async-20180711-git.tgz
+    MD5 7347a187dde464b996f9c4abd8176d2c NAME cl-async-repl FILENAME
     cl-async-repl DEPS
     ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
      (NAME bordeaux-threads FILENAME bordeaux-threads)
@@ -39,5 +39,5 @@ rec {
     (alexandria babel bordeaux-threads cffi cffi-grovel cffi-toolchain cl-async
      cl-async-base cl-async-util cl-libuv cl-ppcre fast-io static-vectors
      trivial-features trivial-gray-streams vom)
-    VERSION cl-async-20171130-git SIBLINGS
+    VERSION cl-async-20180711-git SIBLINGS
     (cl-async-ssl cl-async-test cl-async) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-async-ssl.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-async-ssl.nix
index f7392b880d11..2129c7f83f7a 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-async-ssl.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-async-ssl.nix
@@ -1,15 +1,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''cl-async-ssl'';
-  version = ''cl-async-20171130-git'';
+  version = ''cl-async-20180711-git'';
 
   description = ''SSL Wrapper around cl-async socket implementation.'';
 
   deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."cffi-grovel" args."cffi-toolchain" args."cl-async" args."cl-async-base" args."cl-async-util" args."cl-libuv" args."cl-ppcre" args."fast-io" args."static-vectors" args."trivial-features" args."trivial-gray-streams" args."vom" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/cl-async/2017-11-30/cl-async-20171130-git.tgz'';
-    sha256 = ''0z3bxnzknb9dbisn9d0z1nw6qpswf8cn97v3mfrfq48q9hz11nvm'';
+    url = ''http://beta.quicklisp.org/archive/cl-async/2018-07-11/cl-async-20180711-git.tgz'';
+    sha256 = ''1fy7qd72n1x0h44l67rwln1mxdj1hnc1xp98zc702zywxm99qabz'';
   };
 
   packageName = "cl-async-ssl";
@@ -19,9 +19,9 @@ rec {
 }
 /* (SYSTEM cl-async-ssl DESCRIPTION
     SSL Wrapper around cl-async socket implementation. SHA256
-    0z3bxnzknb9dbisn9d0z1nw6qpswf8cn97v3mfrfq48q9hz11nvm URL
-    http://beta.quicklisp.org/archive/cl-async/2017-11-30/cl-async-20171130-git.tgz
-    MD5 4e54a593f8c7f02a2c7f7e0e07247c05 NAME cl-async-ssl FILENAME
+    1fy7qd72n1x0h44l67rwln1mxdj1hnc1xp98zc702zywxm99qabz URL
+    http://beta.quicklisp.org/archive/cl-async/2018-07-11/cl-async-20180711-git.tgz
+    MD5 7347a187dde464b996f9c4abd8176d2c NAME cl-async-ssl FILENAME
     cl-async-ssl DEPS
     ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
      (NAME bordeaux-threads FILENAME bordeaux-threads)
@@ -40,5 +40,5 @@ rec {
     (alexandria babel bordeaux-threads cffi cffi-grovel cffi-toolchain cl-async
      cl-async-base cl-async-util cl-libuv cl-ppcre fast-io static-vectors
      trivial-features trivial-gray-streams vom)
-    VERSION cl-async-20171130-git SIBLINGS
+    VERSION cl-async-20180711-git SIBLINGS
     (cl-async-repl cl-async-test cl-async) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-async.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-async.nix
index 90638ed56f16..e5a2a0bc7fd3 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-async.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-async.nix
@@ -1,7 +1,7 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''cl-async'';
-  version = ''20171130-git'';
+  version = ''20180711-git'';
 
   parasites = [ "cl-async-base" "cl-async-util" ];
 
@@ -10,8 +10,8 @@ rec {
   deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."cffi-grovel" args."cffi-toolchain" args."cl-libuv" args."cl-ppcre" args."fast-io" args."static-vectors" args."trivial-features" args."trivial-gray-streams" args."uiop" args."vom" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/cl-async/2017-11-30/cl-async-20171130-git.tgz'';
-    sha256 = ''0z3bxnzknb9dbisn9d0z1nw6qpswf8cn97v3mfrfq48q9hz11nvm'';
+    url = ''http://beta.quicklisp.org/archive/cl-async/2018-07-11/cl-async-20180711-git.tgz'';
+    sha256 = ''1fy7qd72n1x0h44l67rwln1mxdj1hnc1xp98zc702zywxm99qabz'';
   };
 
   packageName = "cl-async";
@@ -20,9 +20,9 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM cl-async DESCRIPTION Asynchronous operations for Common Lisp. SHA256
-    0z3bxnzknb9dbisn9d0z1nw6qpswf8cn97v3mfrfq48q9hz11nvm URL
-    http://beta.quicklisp.org/archive/cl-async/2017-11-30/cl-async-20171130-git.tgz
-    MD5 4e54a593f8c7f02a2c7f7e0e07247c05 NAME cl-async FILENAME cl-async DEPS
+    1fy7qd72n1x0h44l67rwln1mxdj1hnc1xp98zc702zywxm99qabz URL
+    http://beta.quicklisp.org/archive/cl-async/2018-07-11/cl-async-20180711-git.tgz
+    MD5 7347a187dde464b996f9c4abd8176d2c NAME cl-async FILENAME cl-async DEPS
     ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
      (NAME bordeaux-threads FILENAME bordeaux-threads)
      (NAME cffi FILENAME cffi) (NAME cffi-grovel FILENAME cffi-grovel)
@@ -37,5 +37,5 @@ rec {
     (alexandria babel bordeaux-threads cffi cffi-grovel cffi-toolchain cl-libuv
      cl-ppcre fast-io static-vectors trivial-features trivial-gray-streams uiop
      vom)
-    VERSION 20171130-git SIBLINGS (cl-async-repl cl-async-ssl cl-async-test)
+    VERSION 20180711-git SIBLINGS (cl-async-repl cl-async-ssl cl-async-test)
     PARASITES (cl-async-base cl-async-util)) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-csv.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-csv.nix
index b0fe8888dcfc..56ccab7b5cd5 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-csv.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-csv.nix
@@ -1,17 +1,17 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''cl-csv'';
-  version = ''20180228-git'';
+  version = ''20180831-git'';
 
   parasites = [ "cl-csv/speed-test" "cl-csv/test" ];
 
   description = ''Facilities for reading and writing CSV format files'';
 
-  deps = [ args."alexandria" args."cl-interpol" args."cl-ppcre" args."cl-unicode" args."flexi-streams" args."iterate" args."lisp-unit2" ];
+  deps = [ args."alexandria" args."cl-interpol" args."cl-ppcre" args."cl-unicode" args."flexi-streams" args."iterate" args."lisp-unit2" args."named-readtables" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/cl-csv/2018-02-28/cl-csv-20180228-git.tgz'';
-    sha256 = ''1xfdiyxj793inrlfqi1yi9sf6p29mg9h7qqhnjk94masmx5zq93r'';
+    url = ''http://beta.quicklisp.org/archive/cl-csv/2018-08-31/cl-csv-20180831-git.tgz'';
+    sha256 = ''0cy2pnzm3c6hmimp0kl5nz03rw6nzgy37i1ifpg9grmd3wipm9fd'';
   };
 
   packageName = "cl-csv";
@@ -21,16 +21,17 @@ rec {
 }
 /* (SYSTEM cl-csv DESCRIPTION
     Facilities for reading and writing CSV format files SHA256
-    1xfdiyxj793inrlfqi1yi9sf6p29mg9h7qqhnjk94masmx5zq93r URL
-    http://beta.quicklisp.org/archive/cl-csv/2018-02-28/cl-csv-20180228-git.tgz
-    MD5 be174a4d7cc2ea24418df63757daed94 NAME cl-csv FILENAME cl-csv DEPS
+    0cy2pnzm3c6hmimp0kl5nz03rw6nzgy37i1ifpg9grmd3wipm9fd URL
+    http://beta.quicklisp.org/archive/cl-csv/2018-08-31/cl-csv-20180831-git.tgz
+    MD5 4bd0ef366dea9d48c4581ed73a208cf3 NAME cl-csv FILENAME cl-csv DEPS
     ((NAME alexandria FILENAME alexandria)
      (NAME cl-interpol FILENAME cl-interpol) (NAME cl-ppcre FILENAME cl-ppcre)
      (NAME cl-unicode FILENAME cl-unicode)
      (NAME flexi-streams FILENAME flexi-streams)
-     (NAME iterate FILENAME iterate) (NAME lisp-unit2 FILENAME lisp-unit2))
+     (NAME iterate FILENAME iterate) (NAME lisp-unit2 FILENAME lisp-unit2)
+     (NAME named-readtables FILENAME named-readtables))
     DEPENDENCIES
     (alexandria cl-interpol cl-ppcre cl-unicode flexi-streams iterate
-     lisp-unit2)
-    VERSION 20180228-git SIBLINGS (cl-csv-clsql cl-csv-data-table) PARASITES
+     lisp-unit2 named-readtables)
+    VERSION 20180831-git SIBLINGS (cl-csv-clsql cl-csv-data-table) PARASITES
     (cl-csv/speed-test cl-csv/test)) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-dbi.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-dbi.nix
index 995ef9bc745e..40c1ac7d6a9a 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-dbi.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-dbi.nix
@@ -1,15 +1,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''cl-dbi'';
-  version = ''20180430-git'';
+  version = ''20180831-git'';
 
   description = '''';
 
   deps = [ args."alexandria" args."bordeaux-threads" args."cl-annot" args."cl-syntax" args."cl-syntax-annot" args."closer-mop" args."dbi" args."named-readtables" args."split-sequence" args."trivial-types" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/cl-dbi/2018-04-30/cl-dbi-20180430-git.tgz'';
-    sha256 = ''0bjkba9z93h2sf9n40dvmw1p6nq2p3d5zw9w3zw9k1crn7a601sv'';
+    url = ''http://beta.quicklisp.org/archive/cl-dbi/2018-08-31/cl-dbi-20180831-git.tgz'';
+    sha256 = ''19cpzdzjjzm0if77dycsk8lj91ihwr51mbjmf3fx0wqwr8k5y0g9'';
   };
 
   packageName = "cl-dbi";
@@ -18,9 +18,9 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM cl-dbi DESCRIPTION NIL SHA256
-    0bjkba9z93h2sf9n40dvmw1p6nq2p3d5zw9w3zw9k1crn7a601sv URL
-    http://beta.quicklisp.org/archive/cl-dbi/2018-04-30/cl-dbi-20180430-git.tgz
-    MD5 1bc845e8738c4987342cb0f56200ba50 NAME cl-dbi FILENAME cl-dbi DEPS
+    19cpzdzjjzm0if77dycsk8lj91ihwr51mbjmf3fx0wqwr8k5y0g9 URL
+    http://beta.quicklisp.org/archive/cl-dbi/2018-08-31/cl-dbi-20180831-git.tgz
+    MD5 2fc95bff95d3cd25e3afeb003ee009d2 NAME cl-dbi FILENAME cl-dbi DEPS
     ((NAME alexandria FILENAME alexandria)
      (NAME bordeaux-threads FILENAME bordeaux-threads)
      (NAME cl-annot FILENAME cl-annot) (NAME cl-syntax FILENAME cl-syntax)
@@ -32,5 +32,5 @@ rec {
     DEPENDENCIES
     (alexandria bordeaux-threads cl-annot cl-syntax cl-syntax-annot closer-mop
      dbi named-readtables split-sequence trivial-types)
-    VERSION 20180430-git SIBLINGS
+    VERSION 20180831-git SIBLINGS
     (dbd-mysql dbd-postgres dbd-sqlite3 dbi-test dbi) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-html-parse.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-html-parse.nix
index 0321572e72a6..61a35f2b58c6 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-html-parse.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-html-parse.nix
@@ -1,4 +1,4 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''cl-html-parse'';
   version = ''20161031-git'';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-interpol.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-interpol.nix
index d4ce8531291e..1f58be6c09e9 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-interpol.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-interpol.nix
@@ -1,17 +1,17 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''cl-interpol'';
-  version = ''20171227-git'';
+  version = ''20180711-git'';
 
   parasites = [ "cl-interpol-test" ];
 
   description = '''';
 
-  deps = [ args."cl-ppcre" args."cl-unicode" args."flexi-streams" ];
+  deps = [ args."cl-ppcre" args."cl-unicode" args."flexi-streams" args."named-readtables" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/cl-interpol/2017-12-27/cl-interpol-20171227-git.tgz'';
-    sha256 = ''1m4vxw8hskgqi0mnkm7qknwbnri2m69ab7qyd4kbpm2igsi02kzy'';
+    url = ''http://beta.quicklisp.org/archive/cl-interpol/2018-07-11/cl-interpol-20180711-git.tgz'';
+    sha256 = ''1s88m5kci9y9h3ycvqm0xjzbkbd8zhm9rxp2a674hmgrjfqras0r'';
   };
 
   packageName = "cl-interpol";
@@ -20,11 +20,12 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM cl-interpol DESCRIPTION NIL SHA256
-    1m4vxw8hskgqi0mnkm7qknwbnri2m69ab7qyd4kbpm2igsi02kzy URL
-    http://beta.quicklisp.org/archive/cl-interpol/2017-12-27/cl-interpol-20171227-git.tgz
-    MD5 e9d2f0238bb8f7a0c5b1ef1e6ef390ae NAME cl-interpol FILENAME cl-interpol
+    1s88m5kci9y9h3ycvqm0xjzbkbd8zhm9rxp2a674hmgrjfqras0r URL
+    http://beta.quicklisp.org/archive/cl-interpol/2018-07-11/cl-interpol-20180711-git.tgz
+    MD5 b2d6893ef703c5b6e5736fa33ba0794e NAME cl-interpol FILENAME cl-interpol
     DEPS
     ((NAME cl-ppcre FILENAME cl-ppcre) (NAME cl-unicode FILENAME cl-unicode)
-     (NAME flexi-streams FILENAME flexi-streams))
-    DEPENDENCIES (cl-ppcre cl-unicode flexi-streams) VERSION 20171227-git
-    SIBLINGS NIL PARASITES (cl-interpol-test)) */
+     (NAME flexi-streams FILENAME flexi-streams)
+     (NAME named-readtables FILENAME named-readtables))
+    DEPENDENCIES (cl-ppcre cl-unicode flexi-streams named-readtables) VERSION
+    20180711-git SIBLINGS NIL PARASITES (cl-interpol-test)) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-l10n-cldr.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-l10n-cldr.nix
index 825fea4eb906..dfabda0428f0 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-l10n-cldr.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-l10n-cldr.nix
@@ -1,4 +1,4 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''cl-l10n-cldr'';
   version = ''20120909-darcs'';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-libuv.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-libuv.nix
index 1aced09d34fd..c950fa292a8b 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-libuv.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-libuv.nix
@@ -1,15 +1,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''cl-libuv'';
-  version = ''20180328-git'';
+  version = ''20180831-git'';
 
   description = ''Low-level libuv bindings for Common Lisp.'';
 
   deps = [ args."alexandria" args."babel" args."cffi" args."cffi-grovel" args."cffi-toolchain" args."trivial-features" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/cl-libuv/2018-03-28/cl-libuv-20180328-git.tgz'';
-    sha256 = ''1pq0fsrhv6aa3fpq1ppwid8nmxaa3fs3dk4iq1bl28prpzzkkg0p'';
+    url = ''http://beta.quicklisp.org/archive/cl-libuv/2018-08-31/cl-libuv-20180831-git.tgz'';
+    sha256 = ''1dxay9vw0wmlmwjq5xcs622n4m7g9ivfr46z1igdrkfqvmdz411f'';
   };
 
   packageName = "cl-libuv";
@@ -18,13 +18,13 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM cl-libuv DESCRIPTION Low-level libuv bindings for Common Lisp.
-    SHA256 1pq0fsrhv6aa3fpq1ppwid8nmxaa3fs3dk4iq1bl28prpzzkkg0p URL
-    http://beta.quicklisp.org/archive/cl-libuv/2018-03-28/cl-libuv-20180328-git.tgz
-    MD5 c50f2cca0bd8d25db35b4ec176242858 NAME cl-libuv FILENAME cl-libuv DEPS
+    SHA256 1dxay9vw0wmlmwjq5xcs622n4m7g9ivfr46z1igdrkfqvmdz411f URL
+    http://beta.quicklisp.org/archive/cl-libuv/2018-08-31/cl-libuv-20180831-git.tgz
+    MD5 d755a060faac0d50a4500ae1628401ce NAME cl-libuv FILENAME cl-libuv DEPS
     ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
      (NAME cffi FILENAME cffi) (NAME cffi-grovel FILENAME cffi-grovel)
      (NAME cffi-toolchain FILENAME cffi-toolchain)
      (NAME trivial-features FILENAME trivial-features))
     DEPENDENCIES
     (alexandria babel cffi cffi-grovel cffi-toolchain trivial-features) VERSION
-    20180328-git SIBLINGS NIL PARASITES NIL) */
+    20180831-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-markup.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-markup.nix
index 67468edbb6cb..8967b0970c56 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-markup.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-markup.nix
@@ -1,4 +1,4 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''cl-markup'';
   version = ''20131003-git'';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-paths.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-paths.nix
index f546e4711acc..e8034b11c237 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-paths.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-paths.nix
@@ -1,4 +1,4 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''cl-paths'';
   version = ''cl-vectors-20180228-git'';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-postgres.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-postgres.nix
index 60e38a7de720..a0443cb5af08 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-postgres.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-postgres.nix
@@ -1,17 +1,17 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''cl-postgres'';
-  version = ''postmodern-20180430-git'';
+  version = ''postmodern-20180831-git'';
 
-  parasites = [ "cl-postgres/simple-date-tests" "cl-postgres/tests" ];
+  parasites = [ "cl-postgres/tests" ];
 
   description = ''Low-level client library for PostgreSQL'';
 
-  deps = [ args."fiveam" args."md5" args."simple-date_slash_postgres-glue" args."split-sequence" args."usocket" ];
+  deps = [ args."fiveam" args."md5" args."split-sequence" args."usocket" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/postmodern/2018-04-30/postmodern-20180430-git.tgz'';
-    sha256 = ''0b6w8f5ihbk036v1fclyskns615xhnib9q3cjn0ql6r6sk3nca7f'';
+    url = ''http://beta.quicklisp.org/archive/postmodern/2018-08-31/postmodern-20180831-git.tgz'';
+    sha256 = ''062xhy6aadzgmwpz8h0n7884yv5m4nwqmxrc75m3c60k1lmccpwx'';
   };
 
   packageName = "cl-postgres";
@@ -20,14 +20,13 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM cl-postgres DESCRIPTION Low-level client library for PostgreSQL
-    SHA256 0b6w8f5ihbk036v1fclyskns615xhnib9q3cjn0ql6r6sk3nca7f URL
-    http://beta.quicklisp.org/archive/postmodern/2018-04-30/postmodern-20180430-git.tgz
-    MD5 9ca2a4ccf4ea7dbcd14d69cb355a8214 NAME cl-postgres FILENAME cl-postgres
+    SHA256 062xhy6aadzgmwpz8h0n7884yv5m4nwqmxrc75m3c60k1lmccpwx URL
+    http://beta.quicklisp.org/archive/postmodern/2018-08-31/postmodern-20180831-git.tgz
+    MD5 78c3e998cff7305db5e4b4e90b9bbee6 NAME cl-postgres FILENAME cl-postgres
     DEPS
     ((NAME fiveam FILENAME fiveam) (NAME md5 FILENAME md5)
-     (NAME simple-date/postgres-glue FILENAME simple-date_slash_postgres-glue)
      (NAME split-sequence FILENAME split-sequence)
      (NAME usocket FILENAME usocket))
-    DEPENDENCIES (fiveam md5 simple-date/postgres-glue split-sequence usocket)
-    VERSION postmodern-20180430-git SIBLINGS (postmodern s-sql simple-date)
-    PARASITES (cl-postgres/simple-date-tests cl-postgres/tests)) */
+    DEPENDENCIES (fiveam md5 split-sequence usocket) VERSION
+    postmodern-20180831-git SIBLINGS (postmodern s-sql simple-date) PARASITES
+    (cl-postgres/tests)) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-ppcre-unicode.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-ppcre-unicode.nix
index 7853d5a279a2..e65c0a03ddc5 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-ppcre-unicode.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-ppcre-unicode.nix
@@ -1,7 +1,7 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''cl-ppcre-unicode'';
-  version = ''cl-ppcre-20171227-git'';
+  version = ''cl-ppcre-20180831-git'';
 
   parasites = [ "cl-ppcre-unicode-test" ];
 
@@ -10,8 +10,8 @@ rec {
   deps = [ args."cl-ppcre" args."cl-ppcre-test" args."cl-unicode" args."flexi-streams" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/cl-ppcre/2017-12-27/cl-ppcre-20171227-git.tgz'';
-    sha256 = ''0vdic9kxjslplafh6d00m7mab38hw09ps2sxxbg3adciwvspvmw4'';
+    url = ''http://beta.quicklisp.org/archive/cl-ppcre/2018-08-31/cl-ppcre-20180831-git.tgz'';
+    sha256 = ''03x6hg2wzjwx9znqpzs9mmbrz81380ac6jkyblnsafbzr3d0rgyb'';
   };
 
   packageName = "cl-ppcre-unicode";
@@ -21,13 +21,13 @@ rec {
 }
 /* (SYSTEM cl-ppcre-unicode DESCRIPTION
     Perl-compatible regular expression library (Unicode) SHA256
-    0vdic9kxjslplafh6d00m7mab38hw09ps2sxxbg3adciwvspvmw4 URL
-    http://beta.quicklisp.org/archive/cl-ppcre/2017-12-27/cl-ppcre-20171227-git.tgz
-    MD5 9d8ce62ef1a71a5e1e144a31be698d8c NAME cl-ppcre-unicode FILENAME
+    03x6hg2wzjwx9znqpzs9mmbrz81380ac6jkyblnsafbzr3d0rgyb URL
+    http://beta.quicklisp.org/archive/cl-ppcre/2018-08-31/cl-ppcre-20180831-git.tgz
+    MD5 021ef17563de8e5d5f5942629972785d NAME cl-ppcre-unicode FILENAME
     cl-ppcre-unicode DEPS
     ((NAME cl-ppcre FILENAME cl-ppcre)
      (NAME cl-ppcre-test FILENAME cl-ppcre-test)
      (NAME cl-unicode FILENAME cl-unicode)
      (NAME flexi-streams FILENAME flexi-streams))
     DEPENDENCIES (cl-ppcre cl-ppcre-test cl-unicode flexi-streams) VERSION
-    cl-ppcre-20171227-git SIBLINGS (cl-ppcre) PARASITES (cl-ppcre-unicode-test)) */
+    cl-ppcre-20180831-git SIBLINGS (cl-ppcre) PARASITES (cl-ppcre-unicode-test)) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-ppcre.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-ppcre.nix
index cbdf3a471461..3f56cf3dfaee 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-ppcre.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-ppcre.nix
@@ -1,7 +1,7 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''cl-ppcre'';
-  version = ''20171227-git'';
+  version = ''20180831-git'';
 
   parasites = [ "cl-ppcre-test" ];
 
@@ -10,8 +10,8 @@ rec {
   deps = [ args."flexi-streams" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/cl-ppcre/2017-12-27/cl-ppcre-20171227-git.tgz'';
-    sha256 = ''0vdic9kxjslplafh6d00m7mab38hw09ps2sxxbg3adciwvspvmw4'';
+    url = ''http://beta.quicklisp.org/archive/cl-ppcre/2018-08-31/cl-ppcre-20180831-git.tgz'';
+    sha256 = ''03x6hg2wzjwx9znqpzs9mmbrz81380ac6jkyblnsafbzr3d0rgyb'';
   };
 
   packageName = "cl-ppcre";
@@ -20,8 +20,8 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM cl-ppcre DESCRIPTION Perl-compatible regular expression library
-    SHA256 0vdic9kxjslplafh6d00m7mab38hw09ps2sxxbg3adciwvspvmw4 URL
-    http://beta.quicklisp.org/archive/cl-ppcre/2017-12-27/cl-ppcre-20171227-git.tgz
-    MD5 9d8ce62ef1a71a5e1e144a31be698d8c NAME cl-ppcre FILENAME cl-ppcre DEPS
+    SHA256 03x6hg2wzjwx9znqpzs9mmbrz81380ac6jkyblnsafbzr3d0rgyb URL
+    http://beta.quicklisp.org/archive/cl-ppcre/2018-08-31/cl-ppcre-20180831-git.tgz
+    MD5 021ef17563de8e5d5f5942629972785d NAME cl-ppcre FILENAME cl-ppcre DEPS
     ((NAME flexi-streams FILENAME flexi-streams)) DEPENDENCIES (flexi-streams)
-    VERSION 20171227-git SIBLINGS (cl-ppcre-unicode) PARASITES (cl-ppcre-test)) */
+    VERSION 20180831-git SIBLINGS (cl-ppcre-unicode) PARASITES (cl-ppcre-test)) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-project.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-project.nix
index 658ffdb51b82..15fd56107c82 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-project.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-project.nix
@@ -1,15 +1,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''cl-project'';
-  version = ''20171019-git'';
+  version = ''20180831-git'';
 
   description = ''Generate a skeleton for modern project'';
 
   deps = [ args."alexandria" args."anaphora" args."bordeaux-threads" args."cl-ansi-text" args."cl-colors" args."cl-emb" args."cl-fad" args."cl-ppcre" args."let-plus" args."local-time" args."prove" args."uiop" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/cl-project/2017-10-19/cl-project-20171019-git.tgz'';
-    sha256 = ''1phgpik46dvqxnd49kccy4fh653659qd86hv7km50m07nzm8fn7q'';
+    url = ''http://beta.quicklisp.org/archive/cl-project/2018-08-31/cl-project-20180831-git.tgz'';
+    sha256 = ''0iifc03sj982bjakvy0k3m6zsidc3k1ds6xaq36wzgzgw7x6lm0s'';
   };
 
   packageName = "cl-project";
@@ -18,9 +18,9 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM cl-project DESCRIPTION Generate a skeleton for modern project SHA256
-    1phgpik46dvqxnd49kccy4fh653659qd86hv7km50m07nzm8fn7q URL
-    http://beta.quicklisp.org/archive/cl-project/2017-10-19/cl-project-20171019-git.tgz
-    MD5 9dbfd7f9b0a83ca608031ebf32185a0f NAME cl-project FILENAME cl-project
+    0iifc03sj982bjakvy0k3m6zsidc3k1ds6xaq36wzgzgw7x6lm0s URL
+    http://beta.quicklisp.org/archive/cl-project/2018-08-31/cl-project-20180831-git.tgz
+    MD5 11fbcc0f4f5c6d7b921eb83ab5f3ee1b NAME cl-project FILENAME cl-project
     DEPS
     ((NAME alexandria FILENAME alexandria) (NAME anaphora FILENAME anaphora)
      (NAME bordeaux-threads FILENAME bordeaux-threads)
@@ -32,4 +32,4 @@ rec {
     DEPENDENCIES
     (alexandria anaphora bordeaux-threads cl-ansi-text cl-colors cl-emb cl-fad
      cl-ppcre let-plus local-time prove uiop)
-    VERSION 20171019-git SIBLINGS (cl-project-test) PARASITES NIL) */
+    VERSION 20180831-git SIBLINGS (cl-project-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-unification.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-unification.nix
index 4434e711d9de..6d284b7b0120 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-unification.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-unification.nix
@@ -1,4 +1,4 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''cl-unification'';
   version = ''20171227-git'';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-utilities.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-utilities.nix
index 1b78d0d28983..750da99d5d6a 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-utilities.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-utilities.nix
@@ -1,4 +1,4 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''cl-utilities'';
   version = ''1.2.4'';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl_plus_ssl.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl_plus_ssl.nix
index a757b3d4a8a0..af0e917425a1 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl_plus_ssl.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl_plus_ssl.nix
@@ -1,7 +1,7 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''cl_plus_ssl'';
-  version = ''cl+ssl-20180328-git'';
+  version = ''cl+ssl-20180831-git'';
 
   parasites = [ "openssl-1.1.0" ];
 
@@ -10,8 +10,8 @@ rec {
   deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."flexi-streams" args."trivial-features" args."trivial-garbage" args."trivial-gray-streams" args."uiop" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/cl+ssl/2018-03-28/cl+ssl-20180328-git.tgz'';
-    sha256 = ''095rn0dl0izjambjry4n4j72l9abijhlvs47h44a2mcgjc9alj62'';
+    url = ''http://beta.quicklisp.org/archive/cl+ssl/2018-08-31/cl+ssl-20180831-git.tgz'';
+    sha256 = ''1b35wz228kgcp9hc30mi38d004q2ixbv1b3krwycclnk4m65bl2r'';
   };
 
   packageName = "cl+ssl";
@@ -20,9 +20,9 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM cl+ssl DESCRIPTION Common Lisp interface to OpenSSL. SHA256
-    095rn0dl0izjambjry4n4j72l9abijhlvs47h44a2mcgjc9alj62 URL
-    http://beta.quicklisp.org/archive/cl+ssl/2018-03-28/cl+ssl-20180328-git.tgz
-    MD5 ec6f921505ba7bb8e35878b3ae9eea29 NAME cl+ssl FILENAME cl_plus_ssl DEPS
+    1b35wz228kgcp9hc30mi38d004q2ixbv1b3krwycclnk4m65bl2r URL
+    http://beta.quicklisp.org/archive/cl+ssl/2018-08-31/cl+ssl-20180831-git.tgz
+    MD5 56cd0b42cd9f7b8645db330ebc98600c NAME cl+ssl FILENAME cl_plus_ssl DEPS
     ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
      (NAME bordeaux-threads FILENAME bordeaux-threads)
      (NAME cffi FILENAME cffi) (NAME flexi-streams FILENAME flexi-streams)
@@ -33,5 +33,5 @@ rec {
     DEPENDENCIES
     (alexandria babel bordeaux-threads cffi flexi-streams trivial-features
      trivial-garbage trivial-gray-streams uiop)
-    VERSION cl+ssl-20180328-git SIBLINGS (cl+ssl.test) PARASITES
+    VERSION cl+ssl-20180831-git SIBLINGS (cl+ssl.test) PARASITES
     (openssl-1.1.0)) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack-handler-hunchentoot.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack-handler-hunchentoot.nix
new file mode 100644
index 000000000000..252f9794e769
--- /dev/null
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack-handler-hunchentoot.nix
@@ -0,0 +1,54 @@
+args @ { fetchurl, ... }:
+rec {
+  baseName = ''clack-handler-hunchentoot'';
+  version = ''clack-20180831-git'';
+
+  description = ''Clack handler for Hunchentoot.'';
+
+  deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."chunga" args."cl_plus_ssl" args."cl-base64" args."cl-fad" args."cl-ppcre" args."clack-socket" args."flexi-streams" args."hunchentoot" args."md5" args."rfc2388" args."split-sequence" args."trivial-backtrace" args."trivial-features" args."trivial-garbage" args."trivial-gray-streams" args."usocket" ];
+
+  src = fetchurl {
+    url = ''http://beta.quicklisp.org/archive/clack/2018-08-31/clack-20180831-git.tgz'';
+    sha256 = ''0pfpm3l7l47j0mmwimy7c61ym8lg5m1dkzmz394snyywzcx54647'';
+  };
+
+  packageName = "clack-handler-hunchentoot";
+
+  asdFilesToKeep = ["clack-handler-hunchentoot.asd"];
+  overrides = x: x;
+}
+/* (SYSTEM clack-handler-hunchentoot DESCRIPTION Clack handler for Hunchentoot.
+    SHA256 0pfpm3l7l47j0mmwimy7c61ym8lg5m1dkzmz394snyywzcx54647 URL
+    http://beta.quicklisp.org/archive/clack/2018-08-31/clack-20180831-git.tgz
+    MD5 5042ece3b0a8b07cb4b318fbc250b4fe NAME clack-handler-hunchentoot
+    FILENAME clack-handler-hunchentoot DEPS
+    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
+     (NAME bordeaux-threads FILENAME bordeaux-threads)
+     (NAME cffi FILENAME cffi) (NAME chunga FILENAME chunga)
+     (NAME cl+ssl FILENAME cl_plus_ssl) (NAME cl-base64 FILENAME cl-base64)
+     (NAME cl-fad FILENAME cl-fad) (NAME cl-ppcre FILENAME cl-ppcre)
+     (NAME clack-socket FILENAME clack-socket)
+     (NAME flexi-streams FILENAME flexi-streams)
+     (NAME hunchentoot FILENAME hunchentoot) (NAME md5 FILENAME md5)
+     (NAME rfc2388 FILENAME rfc2388)
+     (NAME split-sequence FILENAME split-sequence)
+     (NAME trivial-backtrace FILENAME trivial-backtrace)
+     (NAME trivial-features FILENAME trivial-features)
+     (NAME trivial-garbage FILENAME trivial-garbage)
+     (NAME trivial-gray-streams FILENAME trivial-gray-streams)
+     (NAME usocket FILENAME usocket))
+    DEPENDENCIES
+    (alexandria babel bordeaux-threads cffi chunga cl+ssl cl-base64 cl-fad
+     cl-ppcre clack-socket flexi-streams hunchentoot md5 rfc2388 split-sequence
+     trivial-backtrace trivial-features trivial-garbage trivial-gray-streams
+     usocket)
+    VERSION clack-20180831-git SIBLINGS
+    (clack-handler-fcgi clack-handler-toot clack-handler-wookie clack-socket
+     clack-test clack-v1-compat clack t-clack-handler-fcgi
+     t-clack-handler-hunchentoot t-clack-handler-toot t-clack-handler-wookie
+     t-clack-v1-compat clack-middleware-auth-basic clack-middleware-clsql
+     clack-middleware-csrf clack-middleware-dbi clack-middleware-oauth
+     clack-middleware-postmodern clack-middleware-rucksack
+     clack-session-store-dbi t-clack-middleware-auth-basic
+     t-clack-middleware-csrf)
+    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack-socket.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack-socket.nix
index a4a66ecfa64f..d5163cabe045 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack-socket.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack-socket.nix
@@ -1,15 +1,15 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''clack-socket'';
-  version = ''clack-20180328-git'';
+  version = ''clack-20180831-git'';
 
   description = '''';
 
   deps = [ ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/clack/2018-03-28/clack-20180328-git.tgz'';
-    sha256 = ''1appp17m7b5laxwgnidf9kral1476nl394mm10xzi1c0i18rssai'';
+    url = ''http://beta.quicklisp.org/archive/clack/2018-08-31/clack-20180831-git.tgz'';
+    sha256 = ''0pfpm3l7l47j0mmwimy7c61ym8lg5m1dkzmz394snyywzcx54647'';
   };
 
   packageName = "clack-socket";
@@ -18,10 +18,10 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM clack-socket DESCRIPTION NIL SHA256
-    1appp17m7b5laxwgnidf9kral1476nl394mm10xzi1c0i18rssai URL
-    http://beta.quicklisp.org/archive/clack/2018-03-28/clack-20180328-git.tgz
-    MD5 5cf75a5d908efcd779438dc13f917d57 NAME clack-socket FILENAME
-    clack-socket DEPS NIL DEPENDENCIES NIL VERSION clack-20180328-git SIBLINGS
+    0pfpm3l7l47j0mmwimy7c61ym8lg5m1dkzmz394snyywzcx54647 URL
+    http://beta.quicklisp.org/archive/clack/2018-08-31/clack-20180831-git.tgz
+    MD5 5042ece3b0a8b07cb4b318fbc250b4fe NAME clack-socket FILENAME
+    clack-socket DEPS NIL DEPENDENCIES NIL VERSION clack-20180831-git SIBLINGS
     (clack-handler-fcgi clack-handler-hunchentoot clack-handler-toot
      clack-handler-wookie clack-test clack-v1-compat clack t-clack-handler-fcgi
      t-clack-handler-hunchentoot t-clack-handler-toot t-clack-handler-wookie
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack-test.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack-test.nix
index be88069fd5d9..1d081fbef581 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack-test.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack-test.nix
@@ -1,15 +1,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''clack-test'';
-  version = ''clack-20180328-git'';
+  version = ''clack-20180831-git'';
 
   description = ''Testing Clack Applications.'';
 
-  deps = [ args."alexandria" args."anaphora" args."babel" args."bordeaux-threads" args."cffi" args."cffi-grovel" args."cffi-toolchain" args."chipz" args."chunga" args."cl_plus_ssl" args."cl-annot" args."cl-ansi-text" args."cl-base64" args."cl-colors" args."cl-cookie" args."cl-fad" args."cl-ppcre" args."cl-reexport" args."cl-syntax" args."cl-syntax-annot" args."cl-utilities" args."clack" args."dexador" args."fast-http" args."fast-io" args."flexi-streams" args."http-body" args."ironclad" args."jonathan" args."lack" args."lack-component" args."lack-middleware-backtrace" args."lack-util" args."let-plus" args."local-time" args."named-readtables" args."nibbles" args."proc-parse" args."prove" args."quri" args."smart-buffer" args."split-sequence" args."static-vectors" args."trivial-features" args."trivial-garbage" args."trivial-gray-streams" args."trivial-mimes" args."trivial-types" args."usocket" args."xsubseq" ];
+  deps = [ args."alexandria" args."anaphora" args."babel" args."bordeaux-threads" args."cffi" args."cffi-grovel" args."cffi-toolchain" args."chipz" args."chunga" args."cl_plus_ssl" args."cl-annot" args."cl-ansi-text" args."cl-base64" args."cl-colors" args."cl-cookie" args."cl-fad" args."cl-ppcre" args."cl-reexport" args."cl-syntax" args."cl-syntax-annot" args."cl-utilities" args."clack" args."clack-handler-hunchentoot" args."clack-socket" args."dexador" args."fast-http" args."fast-io" args."flexi-streams" args."http-body" args."hunchentoot" args."ironclad" args."jonathan" args."lack" args."lack-component" args."lack-middleware-backtrace" args."lack-util" args."let-plus" args."local-time" args."md5" args."named-readtables" args."nibbles" args."proc-parse" args."prove" args."quri" args."rfc2388" args."smart-buffer" args."split-sequence" args."static-vectors" args."trivial-backtrace" args."trivial-features" args."trivial-garbage" args."trivial-gray-streams" args."trivial-mimes" args."trivial-types" args."usocket" args."xsubseq" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/clack/2018-03-28/clack-20180328-git.tgz'';
-    sha256 = ''1appp17m7b5laxwgnidf9kral1476nl394mm10xzi1c0i18rssai'';
+    url = ''http://beta.quicklisp.org/archive/clack/2018-08-31/clack-20180831-git.tgz'';
+    sha256 = ''0pfpm3l7l47j0mmwimy7c61ym8lg5m1dkzmz394snyywzcx54647'';
   };
 
   packageName = "clack-test";
@@ -18,9 +18,9 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM clack-test DESCRIPTION Testing Clack Applications. SHA256
-    1appp17m7b5laxwgnidf9kral1476nl394mm10xzi1c0i18rssai URL
-    http://beta.quicklisp.org/archive/clack/2018-03-28/clack-20180328-git.tgz
-    MD5 5cf75a5d908efcd779438dc13f917d57 NAME clack-test FILENAME clack-test
+    0pfpm3l7l47j0mmwimy7c61ym8lg5m1dkzmz394snyywzcx54647 URL
+    http://beta.quicklisp.org/archive/clack/2018-08-31/clack-20180831-git.tgz
+    MD5 5042ece3b0a8b07cb4b318fbc250b4fe NAME clack-test FILENAME clack-test
     DEPS
     ((NAME alexandria FILENAME alexandria) (NAME anaphora FILENAME anaphora)
      (NAME babel FILENAME babel)
@@ -36,21 +36,24 @@ rec {
      (NAME cl-syntax FILENAME cl-syntax)
      (NAME cl-syntax-annot FILENAME cl-syntax-annot)
      (NAME cl-utilities FILENAME cl-utilities) (NAME clack FILENAME clack)
-     (NAME dexador FILENAME dexador) (NAME fast-http FILENAME fast-http)
-     (NAME fast-io FILENAME fast-io)
+     (NAME clack-handler-hunchentoot FILENAME clack-handler-hunchentoot)
+     (NAME clack-socket FILENAME clack-socket) (NAME dexador FILENAME dexador)
+     (NAME fast-http FILENAME fast-http) (NAME fast-io FILENAME fast-io)
      (NAME flexi-streams FILENAME flexi-streams)
-     (NAME http-body FILENAME http-body) (NAME ironclad FILENAME ironclad)
+     (NAME http-body FILENAME http-body)
+     (NAME hunchentoot FILENAME hunchentoot) (NAME ironclad FILENAME ironclad)
      (NAME jonathan FILENAME jonathan) (NAME lack FILENAME lack)
      (NAME lack-component FILENAME lack-component)
      (NAME lack-middleware-backtrace FILENAME lack-middleware-backtrace)
      (NAME lack-util FILENAME lack-util) (NAME let-plus FILENAME let-plus)
-     (NAME local-time FILENAME local-time)
+     (NAME local-time FILENAME local-time) (NAME md5 FILENAME md5)
      (NAME named-readtables FILENAME named-readtables)
      (NAME nibbles FILENAME nibbles) (NAME proc-parse FILENAME proc-parse)
      (NAME prove FILENAME prove) (NAME quri FILENAME quri)
-     (NAME smart-buffer FILENAME smart-buffer)
+     (NAME rfc2388 FILENAME rfc2388) (NAME smart-buffer FILENAME smart-buffer)
      (NAME split-sequence FILENAME split-sequence)
      (NAME static-vectors FILENAME static-vectors)
+     (NAME trivial-backtrace FILENAME trivial-backtrace)
      (NAME trivial-features FILENAME trivial-features)
      (NAME trivial-garbage FILENAME trivial-garbage)
      (NAME trivial-gray-streams FILENAME trivial-gray-streams)
@@ -61,12 +64,14 @@ rec {
     (alexandria anaphora babel bordeaux-threads cffi cffi-grovel cffi-toolchain
      chipz chunga cl+ssl cl-annot cl-ansi-text cl-base64 cl-colors cl-cookie
      cl-fad cl-ppcre cl-reexport cl-syntax cl-syntax-annot cl-utilities clack
-     dexador fast-http fast-io flexi-streams http-body ironclad jonathan lack
-     lack-component lack-middleware-backtrace lack-util let-plus local-time
-     named-readtables nibbles proc-parse prove quri smart-buffer split-sequence
-     static-vectors trivial-features trivial-garbage trivial-gray-streams
-     trivial-mimes trivial-types usocket xsubseq)
-    VERSION clack-20180328-git SIBLINGS
+     clack-handler-hunchentoot clack-socket dexador fast-http fast-io
+     flexi-streams http-body hunchentoot ironclad jonathan lack lack-component
+     lack-middleware-backtrace lack-util let-plus local-time md5
+     named-readtables nibbles proc-parse prove quri rfc2388 smart-buffer
+     split-sequence static-vectors trivial-backtrace trivial-features
+     trivial-garbage trivial-gray-streams trivial-mimes trivial-types usocket
+     xsubseq)
+    VERSION clack-20180831-git SIBLINGS
     (clack-handler-fcgi clack-handler-hunchentoot clack-handler-toot
      clack-handler-wookie clack-socket clack-v1-compat clack
      t-clack-handler-fcgi t-clack-handler-hunchentoot t-clack-handler-toot
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack-v1-compat.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack-v1-compat.nix
index b810de3fd1c8..8b2e2c70453a 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack-v1-compat.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack-v1-compat.nix
@@ -1,15 +1,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''clack-v1-compat'';
-  version = ''clack-20180328-git'';
+  version = ''clack-20180831-git'';
 
   description = '''';
 
-  deps = [ args."alexandria" args."anaphora" args."babel" args."bordeaux-threads" args."cffi" args."cffi-grovel" args."cffi-toolchain" args."chipz" args."chunga" args."circular-streams" args."cl_plus_ssl" args."cl-annot" args."cl-ansi-text" args."cl-base64" args."cl-colors" args."cl-cookie" args."cl-fad" args."cl-ppcre" args."cl-reexport" args."cl-syntax" args."cl-syntax-annot" args."cl-utilities" args."clack" args."clack-test" args."dexador" args."fast-http" args."fast-io" args."flexi-streams" args."http-body" args."ironclad" args."jonathan" args."lack" args."lack-component" args."lack-middleware-backtrace" args."lack-util" args."let-plus" args."local-time" args."marshal" args."named-readtables" args."nibbles" args."proc-parse" args."prove" args."quri" args."smart-buffer" args."split-sequence" args."static-vectors" args."trivial-backtrace" args."trivial-features" args."trivial-garbage" args."trivial-gray-streams" args."trivial-mimes" args."trivial-types" args."uiop" args."usocket" args."xsubseq" ];
+  deps = [ args."alexandria" args."anaphora" args."babel" args."bordeaux-threads" args."cffi" args."cffi-grovel" args."cffi-toolchain" args."chipz" args."chunga" args."circular-streams" args."cl_plus_ssl" args."cl-annot" args."cl-ansi-text" args."cl-base64" args."cl-colors" args."cl-cookie" args."cl-fad" args."cl-ppcre" args."cl-reexport" args."cl-syntax" args."cl-syntax-annot" args."cl-utilities" args."clack" args."clack-handler-hunchentoot" args."clack-socket" args."clack-test" args."dexador" args."fast-http" args."fast-io" args."flexi-streams" args."http-body" args."hunchentoot" args."ironclad" args."jonathan" args."lack" args."lack-component" args."lack-middleware-backtrace" args."lack-util" args."let-plus" args."local-time" args."marshal" args."md5" args."named-readtables" args."nibbles" args."proc-parse" args."prove" args."quri" args."rfc2388" args."smart-buffer" args."split-sequence" args."static-vectors" args."trivial-backtrace" args."trivial-features" args."trivial-garbage" args."trivial-gray-streams" args."trivial-mimes" args."trivial-types" args."uiop" args."usocket" args."xsubseq" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/clack/2018-03-28/clack-20180328-git.tgz'';
-    sha256 = ''1appp17m7b5laxwgnidf9kral1476nl394mm10xzi1c0i18rssai'';
+    url = ''http://beta.quicklisp.org/archive/clack/2018-08-31/clack-20180831-git.tgz'';
+    sha256 = ''0pfpm3l7l47j0mmwimy7c61ym8lg5m1dkzmz394snyywzcx54647'';
   };
 
   packageName = "clack-v1-compat";
@@ -18,9 +18,9 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM clack-v1-compat DESCRIPTION NIL SHA256
-    1appp17m7b5laxwgnidf9kral1476nl394mm10xzi1c0i18rssai URL
-    http://beta.quicklisp.org/archive/clack/2018-03-28/clack-20180328-git.tgz
-    MD5 5cf75a5d908efcd779438dc13f917d57 NAME clack-v1-compat FILENAME
+    0pfpm3l7l47j0mmwimy7c61ym8lg5m1dkzmz394snyywzcx54647 URL
+    http://beta.quicklisp.org/archive/clack/2018-08-31/clack-20180831-git.tgz
+    MD5 5042ece3b0a8b07cb4b318fbc250b4fe NAME clack-v1-compat FILENAME
     clack-v1-compat DEPS
     ((NAME alexandria FILENAME alexandria) (NAME anaphora FILENAME anaphora)
      (NAME babel FILENAME babel)
@@ -37,19 +37,22 @@ rec {
      (NAME cl-syntax FILENAME cl-syntax)
      (NAME cl-syntax-annot FILENAME cl-syntax-annot)
      (NAME cl-utilities FILENAME cl-utilities) (NAME clack FILENAME clack)
+     (NAME clack-handler-hunchentoot FILENAME clack-handler-hunchentoot)
+     (NAME clack-socket FILENAME clack-socket)
      (NAME clack-test FILENAME clack-test) (NAME dexador FILENAME dexador)
      (NAME fast-http FILENAME fast-http) (NAME fast-io FILENAME fast-io)
      (NAME flexi-streams FILENAME flexi-streams)
-     (NAME http-body FILENAME http-body) (NAME ironclad FILENAME ironclad)
+     (NAME http-body FILENAME http-body)
+     (NAME hunchentoot FILENAME hunchentoot) (NAME ironclad FILENAME ironclad)
      (NAME jonathan FILENAME jonathan) (NAME lack FILENAME lack)
      (NAME lack-component FILENAME lack-component)
      (NAME lack-middleware-backtrace FILENAME lack-middleware-backtrace)
      (NAME lack-util FILENAME lack-util) (NAME let-plus FILENAME let-plus)
      (NAME local-time FILENAME local-time) (NAME marshal FILENAME marshal)
-     (NAME named-readtables FILENAME named-readtables)
+     (NAME md5 FILENAME md5) (NAME named-readtables FILENAME named-readtables)
      (NAME nibbles FILENAME nibbles) (NAME proc-parse FILENAME proc-parse)
      (NAME prove FILENAME prove) (NAME quri FILENAME quri)
-     (NAME smart-buffer FILENAME smart-buffer)
+     (NAME rfc2388 FILENAME rfc2388) (NAME smart-buffer FILENAME smart-buffer)
      (NAME split-sequence FILENAME split-sequence)
      (NAME static-vectors FILENAME static-vectors)
      (NAME trivial-backtrace FILENAME trivial-backtrace)
@@ -63,13 +66,14 @@ rec {
     (alexandria anaphora babel bordeaux-threads cffi cffi-grovel cffi-toolchain
      chipz chunga circular-streams cl+ssl cl-annot cl-ansi-text cl-base64
      cl-colors cl-cookie cl-fad cl-ppcre cl-reexport cl-syntax cl-syntax-annot
-     cl-utilities clack clack-test dexador fast-http fast-io flexi-streams
-     http-body ironclad jonathan lack lack-component lack-middleware-backtrace
-     lack-util let-plus local-time marshal named-readtables nibbles proc-parse
-     prove quri smart-buffer split-sequence static-vectors trivial-backtrace
+     cl-utilities clack clack-handler-hunchentoot clack-socket clack-test
+     dexador fast-http fast-io flexi-streams http-body hunchentoot ironclad
+     jonathan lack lack-component lack-middleware-backtrace lack-util let-plus
+     local-time marshal md5 named-readtables nibbles proc-parse prove quri
+     rfc2388 smart-buffer split-sequence static-vectors trivial-backtrace
      trivial-features trivial-garbage trivial-gray-streams trivial-mimes
      trivial-types uiop usocket xsubseq)
-    VERSION clack-20180328-git SIBLINGS
+    VERSION clack-20180831-git SIBLINGS
     (clack-handler-fcgi clack-handler-hunchentoot clack-handler-toot
      clack-handler-wookie clack-socket clack-test clack t-clack-handler-fcgi
      t-clack-handler-hunchentoot t-clack-handler-toot t-clack-handler-wookie
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack.nix
index 08e5ff71cc5c..0b2828d06dfc 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack.nix
@@ -1,15 +1,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''clack'';
-  version = ''20180328-git'';
+  version = ''20180831-git'';
 
   description = ''Web application environment for Common Lisp'';
 
   deps = [ args."alexandria" args."bordeaux-threads" args."ironclad" args."lack" args."lack-component" args."lack-middleware-backtrace" args."lack-util" args."nibbles" args."uiop" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/clack/2018-03-28/clack-20180328-git.tgz'';
-    sha256 = ''1appp17m7b5laxwgnidf9kral1476nl394mm10xzi1c0i18rssai'';
+    url = ''http://beta.quicklisp.org/archive/clack/2018-08-31/clack-20180831-git.tgz'';
+    sha256 = ''0pfpm3l7l47j0mmwimy7c61ym8lg5m1dkzmz394snyywzcx54647'';
   };
 
   packageName = "clack";
@@ -18,9 +18,9 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM clack DESCRIPTION Web application environment for Common Lisp SHA256
-    1appp17m7b5laxwgnidf9kral1476nl394mm10xzi1c0i18rssai URL
-    http://beta.quicklisp.org/archive/clack/2018-03-28/clack-20180328-git.tgz
-    MD5 5cf75a5d908efcd779438dc13f917d57 NAME clack FILENAME clack DEPS
+    0pfpm3l7l47j0mmwimy7c61ym8lg5m1dkzmz394snyywzcx54647 URL
+    http://beta.quicklisp.org/archive/clack/2018-08-31/clack-20180831-git.tgz
+    MD5 5042ece3b0a8b07cb4b318fbc250b4fe NAME clack FILENAME clack DEPS
     ((NAME alexandria FILENAME alexandria)
      (NAME bordeaux-threads FILENAME bordeaux-threads)
      (NAME ironclad FILENAME ironclad) (NAME lack FILENAME lack)
@@ -31,7 +31,7 @@ rec {
     DEPENDENCIES
     (alexandria bordeaux-threads ironclad lack lack-component
      lack-middleware-backtrace lack-util nibbles uiop)
-    VERSION 20180328-git SIBLINGS
+    VERSION 20180831-git SIBLINGS
     (clack-handler-fcgi clack-handler-hunchentoot clack-handler-toot
      clack-handler-wookie clack-socket clack-test clack-v1-compat
      t-clack-handler-fcgi t-clack-handler-hunchentoot t-clack-handler-toot
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/closer-mop.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/closer-mop.nix
index ec7599f2bd3f..a13537d7e90f 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/closer-mop.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/closer-mop.nix
@@ -1,15 +1,15 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''closer-mop'';
-  version = ''20180430-git'';
+  version = ''20180831-git'';
 
   description = ''Closer to MOP is a compatibility layer that rectifies many of the absent or incorrect CLOS MOP features across a broad range of Common Lisp implementations.'';
 
   deps = [ ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/closer-mop/2018-04-30/closer-mop-20180430-git.tgz'';
-    sha256 = ''1bbvjkqjw17dgzy6spqqpdlarcxd0rchki769r43g5p5sghxlb6v'';
+    url = ''http://beta.quicklisp.org/archive/closer-mop/2018-08-31/closer-mop-20180831-git.tgz'';
+    sha256 = ''01lzgh6rgbmfyfspiligkq44z56h2xgg55hxixnrgycbaipzgkbg'';
   };
 
   packageName = "closer-mop";
@@ -19,7 +19,7 @@ rec {
 }
 /* (SYSTEM closer-mop DESCRIPTION
     Closer to MOP is a compatibility layer that rectifies many of the absent or incorrect CLOS MOP features across a broad range of Common Lisp implementations.
-    SHA256 1bbvjkqjw17dgzy6spqqpdlarcxd0rchki769r43g5p5sghxlb6v URL
-    http://beta.quicklisp.org/archive/closer-mop/2018-04-30/closer-mop-20180430-git.tgz
-    MD5 7578c66d4d468a21de9c5cf065b8615f NAME closer-mop FILENAME closer-mop
-    DEPS NIL DEPENDENCIES NIL VERSION 20180430-git SIBLINGS NIL PARASITES NIL) */
+    SHA256 01lzgh6rgbmfyfspiligkq44z56h2xgg55hxixnrgycbaipzgkbg URL
+    http://beta.quicklisp.org/archive/closer-mop/2018-08-31/closer-mop-20180831-git.tgz
+    MD5 968426b07f9792f95fe3c9b83d68d756 NAME closer-mop FILENAME closer-mop
+    DEPS NIL DEPENDENCIES NIL VERSION 20180831-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/closure-html.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/closure-html.nix
index 29c90369244a..f55ccecadc61 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/closure-html.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/closure-html.nix
@@ -1,15 +1,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''closure-html'';
-  version = ''20140826-git'';
+  version = ''20180711-git'';
 
   description = '''';
 
   deps = [ args."alexandria" args."babel" args."closure-common" args."flexi-streams" args."trivial-features" args."trivial-gray-streams" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/closure-html/2014-08-26/closure-html-20140826-git.tgz'';
-    sha256 = ''1m07iv9r5ykj52fszwhwai5wv39mczk3m4zzh24gjhsprv35x8qb'';
+    url = ''http://beta.quicklisp.org/archive/closure-html/2018-07-11/closure-html-20180711-git.tgz'';
+    sha256 = ''0ljcrz1wix77h1ywp0bixm3pb5ncmr1vdiwh8m1qzkygwpfjr8aq'';
   };
 
   packageName = "closure-html";
@@ -18,9 +18,9 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM closure-html DESCRIPTION NIL SHA256
-    1m07iv9r5ykj52fszwhwai5wv39mczk3m4zzh24gjhsprv35x8qb URL
-    http://beta.quicklisp.org/archive/closure-html/2014-08-26/closure-html-20140826-git.tgz
-    MD5 3f8d8a4fd54f915ca6cc5fdf29239d98 NAME closure-html FILENAME
+    0ljcrz1wix77h1ywp0bixm3pb5ncmr1vdiwh8m1qzkygwpfjr8aq URL
+    http://beta.quicklisp.org/archive/closure-html/2018-07-11/closure-html-20180711-git.tgz
+    MD5 461dc8caa65385da5f2d1cd8dd4f965f NAME closure-html FILENAME
     closure-html DEPS
     ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
      (NAME closure-common FILENAME closure-common)
@@ -30,4 +30,4 @@ rec {
     DEPENDENCIES
     (alexandria babel closure-common flexi-streams trivial-features
      trivial-gray-streams)
-    VERSION 20140826-git SIBLINGS NIL PARASITES NIL) */
+    VERSION 20180711-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/clss.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/clss.nix
index 76f50463a6ae..3f6d6ae32ac6 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/clss.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/clss.nix
@@ -1,15 +1,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''clss'';
-  version = ''20180131-git'';
+  version = ''20180831-git'';
 
   description = ''A DOM tree searching engine based on CSS selectors.'';
 
   deps = [ args."array-utils" args."documentation-utils" args."plump" args."trivial-indent" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/clss/2018-01-31/clss-20180131-git.tgz'';
-    sha256 = ''0d4sblafhm5syjkv89h45i98dykpznb0ga3q9a2cxlvl98yklg8r'';
+    url = ''http://beta.quicklisp.org/archive/clss/2018-08-31/clss-20180831-git.tgz'';
+    sha256 = ''18jm89i9353khrp9q92bnqllkypcsmyd43jvdr6gl0n50fmzs5jd'';
   };
 
   packageName = "clss";
@@ -18,11 +18,11 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM clss DESCRIPTION A DOM tree searching engine based on CSS selectors.
-    SHA256 0d4sblafhm5syjkv89h45i98dykpznb0ga3q9a2cxlvl98yklg8r URL
-    http://beta.quicklisp.org/archive/clss/2018-01-31/clss-20180131-git.tgz MD5
-    138244b7871d8ea832832aa9cc5867e6 NAME clss FILENAME clss DEPS
+    SHA256 18jm89i9353khrp9q92bnqllkypcsmyd43jvdr6gl0n50fmzs5jd URL
+    http://beta.quicklisp.org/archive/clss/2018-08-31/clss-20180831-git.tgz MD5
+    39b69790115d6c4fe4709f5a45b5d4a4 NAME clss FILENAME clss DEPS
     ((NAME array-utils FILENAME array-utils)
      (NAME documentation-utils FILENAME documentation-utils)
      (NAME plump FILENAME plump) (NAME trivial-indent FILENAME trivial-indent))
     DEPENDENCIES (array-utils documentation-utils plump trivial-indent) VERSION
-    20180131-git SIBLINGS NIL PARASITES NIL) */
+    20180831-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/clx.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/clx.nix
index bd2b0ff19bdb..685e81283688 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/clx.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/clx.nix
@@ -1,7 +1,7 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''clx'';
-  version = ''20180430-git'';
+  version = ''20180711-git'';
 
   parasites = [ "clx/test" ];
 
@@ -10,8 +10,8 @@ rec {
   deps = [ args."fiasco" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/clx/2018-04-30/clx-20180430-git.tgz'';
-    sha256 = ''18ghhirnx0js7q1samwyah990nmgqbas7b1y0wy0fqynaznaz9x3'';
+    url = ''http://beta.quicklisp.org/archive/clx/2018-07-11/clx-20180711-git.tgz'';
+    sha256 = ''0vpavllapc0j6j7iwxpxzgl8n5krvrwhmd5k2k0f3pr6sgl1y29h'';
   };
 
   packageName = "clx";
@@ -21,8 +21,8 @@ rec {
 }
 /* (SYSTEM clx DESCRIPTION
     An implementation of the X Window System protocol in Lisp. SHA256
-    18ghhirnx0js7q1samwyah990nmgqbas7b1y0wy0fqynaznaz9x3 URL
-    http://beta.quicklisp.org/archive/clx/2018-04-30/clx-20180430-git.tgz MD5
-    bf9c1d6b1b2856ddbd4bf2fa75bbc309 NAME clx FILENAME clx DEPS
-    ((NAME fiasco FILENAME fiasco)) DEPENDENCIES (fiasco) VERSION 20180430-git
+    0vpavllapc0j6j7iwxpxzgl8n5krvrwhmd5k2k0f3pr6sgl1y29h URL
+    http://beta.quicklisp.org/archive/clx/2018-07-11/clx-20180711-git.tgz MD5
+    27d5e904d2b7e4cdf4e8492839d15bad NAME clx FILENAME clx DEPS
+    ((NAME fiasco FILENAME fiasco)) DEPENDENCIES (fiasco) VERSION 20180711-git
     SIBLINGS NIL PARASITES (clx/test)) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/command-line-arguments.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/command-line-arguments.nix
index 1ae6fa0f4ec4..e1fb59658528 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/command-line-arguments.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/command-line-arguments.nix
@@ -1,4 +1,4 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''command-line-arguments'';
   version = ''20151218-git'';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/css-lite.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/css-lite.nix
index bb5ab940638a..f4941aa80cd6 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/css-lite.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/css-lite.nix
@@ -1,4 +1,4 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''css-lite'';
   version = ''20120407-git'';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/css-selectors-simple-tree.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/css-selectors-simple-tree.nix
index ba523ae837d7..c83b29939687 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/css-selectors-simple-tree.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/css-selectors-simple-tree.nix
@@ -5,7 +5,7 @@ rec {
 
   description = ''An implementation of css selectors that interacts with cl-html5-parser's simple-tree'';
 
-  deps = [ args."alexandria" args."babel" args."buildnode" args."cl-html5-parser" args."cl-interpol" args."cl-ppcre" args."cl-unicode" args."closer-mop" args."closure-common" args."closure-html" args."collectors" args."css-selectors" args."cxml" args."cxml-dom" args."cxml-klacks" args."cxml-test" args."cxml-xml" args."flexi-streams" args."iterate" args."puri" args."split-sequence" args."string-case" args."swank" args."symbol-munger" args."trivial-features" args."trivial-gray-streams" args."yacc" ];
+  deps = [ args."alexandria" args."babel" args."buildnode" args."cl-html5-parser" args."cl-interpol" args."cl-ppcre" args."cl-unicode" args."closer-mop" args."closure-common" args."closure-html" args."collectors" args."css-selectors" args."cxml" args."cxml-dom" args."cxml-klacks" args."cxml-test" args."cxml-xml" args."flexi-streams" args."iterate" args."named-readtables" args."puri" args."split-sequence" args."string-case" args."swank" args."symbol-munger" args."trivial-features" args."trivial-gray-streams" args."yacc" ];
 
   src = fetchurl {
     url = ''http://beta.quicklisp.org/archive/css-selectors/2016-06-28/css-selectors-20160628-git.tgz'';
@@ -36,8 +36,9 @@ rec {
      (NAME cxml-dom FILENAME cxml-dom) (NAME cxml-klacks FILENAME cxml-klacks)
      (NAME cxml-test FILENAME cxml-test) (NAME cxml-xml FILENAME cxml-xml)
      (NAME flexi-streams FILENAME flexi-streams)
-     (NAME iterate FILENAME iterate) (NAME puri FILENAME puri)
-     (NAME split-sequence FILENAME split-sequence)
+     (NAME iterate FILENAME iterate)
+     (NAME named-readtables FILENAME named-readtables)
+     (NAME puri FILENAME puri) (NAME split-sequence FILENAME split-sequence)
      (NAME string-case FILENAME string-case) (NAME swank FILENAME swank)
      (NAME symbol-munger FILENAME symbol-munger)
      (NAME trivial-features FILENAME trivial-features)
@@ -46,8 +47,8 @@ rec {
     DEPENDENCIES
     (alexandria babel buildnode cl-html5-parser cl-interpol cl-ppcre cl-unicode
      closer-mop closure-common closure-html collectors css-selectors cxml
-     cxml-dom cxml-klacks cxml-test cxml-xml flexi-streams iterate puri
-     split-sequence string-case swank symbol-munger trivial-features
-     trivial-gray-streams yacc)
+     cxml-dom cxml-klacks cxml-test cxml-xml flexi-streams iterate
+     named-readtables puri split-sequence string-case swank symbol-munger
+     trivial-features trivial-gray-streams yacc)
     VERSION css-selectors-20160628-git SIBLINGS
     (css-selectors-stp css-selectors) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/css-selectors-stp.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/css-selectors-stp.nix
index fbe06a179fdd..69ada2ce80a3 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/css-selectors-stp.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/css-selectors-stp.nix
@@ -5,7 +5,7 @@ rec {
 
   description = ''An implementation of css selectors that interacts with cxml-stp'';
 
-  deps = [ args."alexandria" args."babel" args."buildnode" args."cl-interpol" args."cl-ppcre" args."cl-unicode" args."closer-mop" args."closure-common" args."closure-html" args."collectors" args."css-selectors" args."cxml" args."cxml-dom" args."cxml-klacks" args."cxml-stp" args."cxml-test" args."cxml-xml" args."flexi-streams" args."iterate" args."parse-number" args."puri" args."split-sequence" args."swank" args."symbol-munger" args."trivial-features" args."trivial-gray-streams" args."xpath" args."yacc" ];
+  deps = [ args."alexandria" args."babel" args."buildnode" args."cl-interpol" args."cl-ppcre" args."cl-unicode" args."closer-mop" args."closure-common" args."closure-html" args."collectors" args."css-selectors" args."cxml" args."cxml-dom" args."cxml-klacks" args."cxml-stp" args."cxml-test" args."cxml-xml" args."flexi-streams" args."iterate" args."named-readtables" args."parse-number" args."puri" args."split-sequence" args."swank" args."symbol-munger" args."trivial-features" args."trivial-gray-streams" args."xpath" args."yacc" ];
 
   src = fetchurl {
     url = ''http://beta.quicklisp.org/archive/css-selectors/2016-06-28/css-selectors-20160628-git.tgz'';
@@ -36,17 +36,19 @@ rec {
      (NAME cxml-stp FILENAME cxml-stp) (NAME cxml-test FILENAME cxml-test)
      (NAME cxml-xml FILENAME cxml-xml)
      (NAME flexi-streams FILENAME flexi-streams)
-     (NAME iterate FILENAME iterate) (NAME parse-number FILENAME parse-number)
-     (NAME puri FILENAME puri) (NAME split-sequence FILENAME split-sequence)
-     (NAME swank FILENAME swank) (NAME symbol-munger FILENAME symbol-munger)
+     (NAME iterate FILENAME iterate)
+     (NAME named-readtables FILENAME named-readtables)
+     (NAME parse-number FILENAME parse-number) (NAME puri FILENAME puri)
+     (NAME split-sequence FILENAME split-sequence) (NAME swank FILENAME swank)
+     (NAME symbol-munger FILENAME symbol-munger)
      (NAME trivial-features FILENAME trivial-features)
      (NAME trivial-gray-streams FILENAME trivial-gray-streams)
      (NAME xpath FILENAME xpath) (NAME yacc FILENAME yacc))
     DEPENDENCIES
     (alexandria babel buildnode cl-interpol cl-ppcre cl-unicode closer-mop
      closure-common closure-html collectors css-selectors cxml cxml-dom
-     cxml-klacks cxml-stp cxml-test cxml-xml flexi-streams iterate parse-number
-     puri split-sequence swank symbol-munger trivial-features
-     trivial-gray-streams xpath yacc)
+     cxml-klacks cxml-stp cxml-test cxml-xml flexi-streams iterate
+     named-readtables parse-number puri split-sequence swank symbol-munger
+     trivial-features trivial-gray-streams xpath yacc)
     VERSION css-selectors-20160628-git SIBLINGS
     (css-selectors-simple-tree css-selectors) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/css-selectors.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/css-selectors.nix
index 2ad018e5549c..3316f59447d7 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/css-selectors.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/css-selectors.nix
@@ -7,7 +7,7 @@ rec {
 
   description = ''An implementation of css selectors'';
 
-  deps = [ args."alexandria" args."babel" args."buildnode" args."buildnode-xhtml" args."cl-interpol" args."cl-ppcre" args."cl-unicode" args."closer-mop" args."closure-common" args."closure-html" args."collectors" args."cxml" args."cxml-dom" args."cxml-klacks" args."cxml-test" args."cxml-xml" args."flexi-streams" args."iterate" args."lisp-unit2" args."puri" args."split-sequence" args."swank" args."symbol-munger" args."trivial-features" args."trivial-gray-streams" args."yacc" ];
+  deps = [ args."alexandria" args."babel" args."buildnode" args."buildnode-xhtml" args."cl-interpol" args."cl-ppcre" args."cl-unicode" args."closer-mop" args."closure-common" args."closure-html" args."collectors" args."cxml" args."cxml-dom" args."cxml-klacks" args."cxml-test" args."cxml-xml" args."flexi-streams" args."iterate" args."lisp-unit2" args."named-readtables" args."puri" args."split-sequence" args."swank" args."symbol-munger" args."trivial-features" args."trivial-gray-streams" args."yacc" ];
 
   src = fetchurl {
     url = ''http://beta.quicklisp.org/archive/css-selectors/2016-06-28/css-selectors-20160628-git.tgz'';
@@ -37,6 +37,7 @@ rec {
      (NAME cxml-test FILENAME cxml-test) (NAME cxml-xml FILENAME cxml-xml)
      (NAME flexi-streams FILENAME flexi-streams)
      (NAME iterate FILENAME iterate) (NAME lisp-unit2 FILENAME lisp-unit2)
+     (NAME named-readtables FILENAME named-readtables)
      (NAME puri FILENAME puri) (NAME split-sequence FILENAME split-sequence)
      (NAME swank FILENAME swank) (NAME symbol-munger FILENAME symbol-munger)
      (NAME trivial-features FILENAME trivial-features)
@@ -45,8 +46,8 @@ rec {
     DEPENDENCIES
     (alexandria babel buildnode buildnode-xhtml cl-interpol cl-ppcre cl-unicode
      closer-mop closure-common closure-html collectors cxml cxml-dom
-     cxml-klacks cxml-test cxml-xml flexi-streams iterate lisp-unit2 puri
-     split-sequence swank symbol-munger trivial-features trivial-gray-streams
-     yacc)
+     cxml-klacks cxml-test cxml-xml flexi-streams iterate lisp-unit2
+     named-readtables puri split-sequence swank symbol-munger trivial-features
+     trivial-gray-streams yacc)
     VERSION 20160628-git SIBLINGS (css-selectors-simple-tree css-selectors-stp)
     PARASITES (css-selectors-test)) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/dbd-mysql.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/dbd-mysql.nix
index 6dfa61634f2b..218107e95d6a 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/dbd-mysql.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/dbd-mysql.nix
@@ -1,15 +1,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''dbd-mysql'';
-  version = ''cl-dbi-20180430-git'';
+  version = ''cl-dbi-20180831-git'';
 
   description = ''Database driver for MySQL.'';
 
   deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."cl-annot" args."cl-mysql" args."cl-syntax" args."cl-syntax-annot" args."closer-mop" args."dbi" args."named-readtables" args."split-sequence" args."trivial-features" args."trivial-types" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/cl-dbi/2018-04-30/cl-dbi-20180430-git.tgz'';
-    sha256 = ''0bjkba9z93h2sf9n40dvmw1p6nq2p3d5zw9w3zw9k1crn7a601sv'';
+    url = ''http://beta.quicklisp.org/archive/cl-dbi/2018-08-31/cl-dbi-20180831-git.tgz'';
+    sha256 = ''19cpzdzjjzm0if77dycsk8lj91ihwr51mbjmf3fx0wqwr8k5y0g9'';
   };
 
   packageName = "dbd-mysql";
@@ -18,9 +18,9 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM dbd-mysql DESCRIPTION Database driver for MySQL. SHA256
-    0bjkba9z93h2sf9n40dvmw1p6nq2p3d5zw9w3zw9k1crn7a601sv URL
-    http://beta.quicklisp.org/archive/cl-dbi/2018-04-30/cl-dbi-20180430-git.tgz
-    MD5 1bc845e8738c4987342cb0f56200ba50 NAME dbd-mysql FILENAME dbd-mysql DEPS
+    19cpzdzjjzm0if77dycsk8lj91ihwr51mbjmf3fx0wqwr8k5y0g9 URL
+    http://beta.quicklisp.org/archive/cl-dbi/2018-08-31/cl-dbi-20180831-git.tgz
+    MD5 2fc95bff95d3cd25e3afeb003ee009d2 NAME dbd-mysql FILENAME dbd-mysql DEPS
     ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
      (NAME bordeaux-threads FILENAME bordeaux-threads)
      (NAME cffi FILENAME cffi) (NAME cl-annot FILENAME cl-annot)
@@ -35,5 +35,5 @@ rec {
     (alexandria babel bordeaux-threads cffi cl-annot cl-mysql cl-syntax
      cl-syntax-annot closer-mop dbi named-readtables split-sequence
      trivial-features trivial-types)
-    VERSION cl-dbi-20180430-git SIBLINGS
+    VERSION cl-dbi-20180831-git SIBLINGS
     (cl-dbi dbd-postgres dbd-sqlite3 dbi-test dbi) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/dbd-postgres.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/dbd-postgres.nix
index bb9558fda51e..9387806255ac 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/dbd-postgres.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/dbd-postgres.nix
@@ -1,15 +1,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''dbd-postgres'';
-  version = ''cl-dbi-20180430-git'';
+  version = ''cl-dbi-20180831-git'';
 
   description = ''Database driver for PostgreSQL.'';
 
   deps = [ args."alexandria" args."bordeaux-threads" args."cl-annot" args."cl-postgres" args."cl-syntax" args."cl-syntax-annot" args."closer-mop" args."dbi" args."md5" args."named-readtables" args."split-sequence" args."trivial-garbage" args."trivial-types" args."usocket" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/cl-dbi/2018-04-30/cl-dbi-20180430-git.tgz'';
-    sha256 = ''0bjkba9z93h2sf9n40dvmw1p6nq2p3d5zw9w3zw9k1crn7a601sv'';
+    url = ''http://beta.quicklisp.org/archive/cl-dbi/2018-08-31/cl-dbi-20180831-git.tgz'';
+    sha256 = ''19cpzdzjjzm0if77dycsk8lj91ihwr51mbjmf3fx0wqwr8k5y0g9'';
   };
 
   packageName = "dbd-postgres";
@@ -18,9 +18,9 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM dbd-postgres DESCRIPTION Database driver for PostgreSQL. SHA256
-    0bjkba9z93h2sf9n40dvmw1p6nq2p3d5zw9w3zw9k1crn7a601sv URL
-    http://beta.quicklisp.org/archive/cl-dbi/2018-04-30/cl-dbi-20180430-git.tgz
-    MD5 1bc845e8738c4987342cb0f56200ba50 NAME dbd-postgres FILENAME
+    19cpzdzjjzm0if77dycsk8lj91ihwr51mbjmf3fx0wqwr8k5y0g9 URL
+    http://beta.quicklisp.org/archive/cl-dbi/2018-08-31/cl-dbi-20180831-git.tgz
+    MD5 2fc95bff95d3cd25e3afeb003ee009d2 NAME dbd-postgres FILENAME
     dbd-postgres DEPS
     ((NAME alexandria FILENAME alexandria)
      (NAME bordeaux-threads FILENAME bordeaux-threads)
@@ -37,5 +37,5 @@ rec {
     (alexandria bordeaux-threads cl-annot cl-postgres cl-syntax cl-syntax-annot
      closer-mop dbi md5 named-readtables split-sequence trivial-garbage
      trivial-types usocket)
-    VERSION cl-dbi-20180430-git SIBLINGS
+    VERSION cl-dbi-20180831-git SIBLINGS
     (cl-dbi dbd-mysql dbd-sqlite3 dbi-test dbi) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/dbd-sqlite3.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/dbd-sqlite3.nix
index 6e8e85e72abc..808914068a35 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/dbd-sqlite3.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/dbd-sqlite3.nix
@@ -1,15 +1,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''dbd-sqlite3'';
-  version = ''cl-dbi-20180430-git'';
+  version = ''cl-dbi-20180831-git'';
 
   description = ''Database driver for SQLite3.'';
 
   deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."cl-annot" args."cl-syntax" args."cl-syntax-annot" args."closer-mop" args."dbi" args."iterate" args."named-readtables" args."split-sequence" args."sqlite" args."trivial-features" args."trivial-types" args."uiop" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/cl-dbi/2018-04-30/cl-dbi-20180430-git.tgz'';
-    sha256 = ''0bjkba9z93h2sf9n40dvmw1p6nq2p3d5zw9w3zw9k1crn7a601sv'';
+    url = ''http://beta.quicklisp.org/archive/cl-dbi/2018-08-31/cl-dbi-20180831-git.tgz'';
+    sha256 = ''19cpzdzjjzm0if77dycsk8lj91ihwr51mbjmf3fx0wqwr8k5y0g9'';
   };
 
   packageName = "dbd-sqlite3";
@@ -18,9 +18,9 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM dbd-sqlite3 DESCRIPTION Database driver for SQLite3. SHA256
-    0bjkba9z93h2sf9n40dvmw1p6nq2p3d5zw9w3zw9k1crn7a601sv URL
-    http://beta.quicklisp.org/archive/cl-dbi/2018-04-30/cl-dbi-20180430-git.tgz
-    MD5 1bc845e8738c4987342cb0f56200ba50 NAME dbd-sqlite3 FILENAME dbd-sqlite3
+    19cpzdzjjzm0if77dycsk8lj91ihwr51mbjmf3fx0wqwr8k5y0g9 URL
+    http://beta.quicklisp.org/archive/cl-dbi/2018-08-31/cl-dbi-20180831-git.tgz
+    MD5 2fc95bff95d3cd25e3afeb003ee009d2 NAME dbd-sqlite3 FILENAME dbd-sqlite3
     DEPS
     ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
      (NAME bordeaux-threads FILENAME bordeaux-threads)
@@ -38,5 +38,5 @@ rec {
     (alexandria babel bordeaux-threads cffi cl-annot cl-syntax cl-syntax-annot
      closer-mop dbi iterate named-readtables split-sequence sqlite
      trivial-features trivial-types uiop)
-    VERSION cl-dbi-20180430-git SIBLINGS
+    VERSION cl-dbi-20180831-git SIBLINGS
     (cl-dbi dbd-mysql dbd-postgres dbi-test dbi) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/dbi.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/dbi.nix
index e75961dd9ace..2de381f44b8e 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/dbi.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/dbi.nix
@@ -1,15 +1,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''dbi'';
-  version = ''cl-20180430-git'';
+  version = ''cl-20180831-git'';
 
   description = ''Database independent interface for Common Lisp'';
 
   deps = [ args."alexandria" args."bordeaux-threads" args."cl-annot" args."cl-syntax" args."cl-syntax-annot" args."closer-mop" args."named-readtables" args."split-sequence" args."trivial-types" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/cl-dbi/2018-04-30/cl-dbi-20180430-git.tgz'';
-    sha256 = ''0bjkba9z93h2sf9n40dvmw1p6nq2p3d5zw9w3zw9k1crn7a601sv'';
+    url = ''http://beta.quicklisp.org/archive/cl-dbi/2018-08-31/cl-dbi-20180831-git.tgz'';
+    sha256 = ''19cpzdzjjzm0if77dycsk8lj91ihwr51mbjmf3fx0wqwr8k5y0g9'';
   };
 
   packageName = "dbi";
@@ -18,9 +18,9 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM dbi DESCRIPTION Database independent interface for Common Lisp
-    SHA256 0bjkba9z93h2sf9n40dvmw1p6nq2p3d5zw9w3zw9k1crn7a601sv URL
-    http://beta.quicklisp.org/archive/cl-dbi/2018-04-30/cl-dbi-20180430-git.tgz
-    MD5 1bc845e8738c4987342cb0f56200ba50 NAME dbi FILENAME dbi DEPS
+    SHA256 19cpzdzjjzm0if77dycsk8lj91ihwr51mbjmf3fx0wqwr8k5y0g9 URL
+    http://beta.quicklisp.org/archive/cl-dbi/2018-08-31/cl-dbi-20180831-git.tgz
+    MD5 2fc95bff95d3cd25e3afeb003ee009d2 NAME dbi FILENAME dbi DEPS
     ((NAME alexandria FILENAME alexandria)
      (NAME bordeaux-threads FILENAME bordeaux-threads)
      (NAME cl-annot FILENAME cl-annot) (NAME cl-syntax FILENAME cl-syntax)
@@ -32,5 +32,5 @@ rec {
     DEPENDENCIES
     (alexandria bordeaux-threads cl-annot cl-syntax cl-syntax-annot closer-mop
      named-readtables split-sequence trivial-types)
-    VERSION cl-20180430-git SIBLINGS
+    VERSION cl-20180831-git SIBLINGS
     (cl-dbi dbd-mysql dbd-postgres dbd-sqlite3 dbi-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/dexador.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/dexador.nix
index d3111b18b22b..2e392928f495 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/dexador.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/dexador.nix
@@ -1,15 +1,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''dexador'';
-  version = ''20180328-git'';
+  version = ''20180831-git'';
 
   description = ''Yet another HTTP client for Common Lisp'';
 
   deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."cffi-grovel" args."cffi-toolchain" args."chipz" args."chunga" args."cl_plus_ssl" args."cl-base64" args."cl-cookie" args."cl-fad" args."cl-ppcre" args."cl-reexport" args."cl-utilities" args."fast-http" args."fast-io" args."flexi-streams" args."local-time" args."proc-parse" args."quri" args."smart-buffer" args."split-sequence" args."static-vectors" args."trivial-features" args."trivial-garbage" args."trivial-gray-streams" args."trivial-mimes" args."usocket" args."xsubseq" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/dexador/2018-03-28/dexador-20180328-git.tgz'';
-    sha256 = ''13kqm1knm13rskgqyvabj284nxi68f8h3grq54snly0imw6s0ikb'';
+    url = ''http://beta.quicklisp.org/archive/dexador/2018-08-31/dexador-20180831-git.tgz'';
+    sha256 = ''1isc4srz2ijg92lpws79ik8vgn9l2pzx4w3aqgri7n3pzfvfn6bs'';
   };
 
   packageName = "dexador";
@@ -18,9 +18,9 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM dexador DESCRIPTION Yet another HTTP client for Common Lisp SHA256
-    13kqm1knm13rskgqyvabj284nxi68f8h3grq54snly0imw6s0ikb URL
-    http://beta.quicklisp.org/archive/dexador/2018-03-28/dexador-20180328-git.tgz
-    MD5 27eaa0c3c15e6e12e5d6046d62e4394f NAME dexador FILENAME dexador DEPS
+    1isc4srz2ijg92lpws79ik8vgn9l2pzx4w3aqgri7n3pzfvfn6bs URL
+    http://beta.quicklisp.org/archive/dexador/2018-08-31/dexador-20180831-git.tgz
+    MD5 f2859026d90e63e79e8e4728168fab13 NAME dexador FILENAME dexador DEPS
     ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
      (NAME bordeaux-threads FILENAME bordeaux-threads)
      (NAME cffi FILENAME cffi) (NAME cffi-grovel FILENAME cffi-grovel)
@@ -48,4 +48,4 @@ rec {
      fast-http fast-io flexi-streams local-time proc-parse quri smart-buffer
      split-sequence static-vectors trivial-features trivial-garbage
      trivial-gray-streams trivial-mimes usocket xsubseq)
-    VERSION 20180328-git SIBLINGS (dexador-test) PARASITES NIL) */
+    VERSION 20180831-git SIBLINGS (dexador-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/documentation-utils.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/documentation-utils.nix
index 7ee5f91a1580..541f1c6a169d 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/documentation-utils.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/documentation-utils.nix
@@ -1,15 +1,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''documentation-utils'';
-  version = ''20180228-git'';
+  version = ''20180831-git'';
 
   description = ''A few simple tools to help you with documenting your library.'';
 
   deps = [ args."trivial-indent" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/documentation-utils/2018-02-28/documentation-utils-20180228-git.tgz'';
-    sha256 = ''0jwbsm5qk2pg6fpzf9ny3gp780k5lqjgb5p6gv45s9h7x247pb2w'';
+    url = ''http://beta.quicklisp.org/archive/documentation-utils/2018-08-31/documentation-utils-20180831-git.tgz'';
+    sha256 = ''0g26hgppynrfdkpaplb77xzrsmsdzmlnqgl8336l08zmg80x90n5'';
   };
 
   packageName = "documentation-utils";
@@ -19,9 +19,9 @@ rec {
 }
 /* (SYSTEM documentation-utils DESCRIPTION
     A few simple tools to help you with documenting your library. SHA256
-    0jwbsm5qk2pg6fpzf9ny3gp780k5lqjgb5p6gv45s9h7x247pb2w URL
-    http://beta.quicklisp.org/archive/documentation-utils/2018-02-28/documentation-utils-20180228-git.tgz
-    MD5 b0c823120a376e0474433d151df52548 NAME documentation-utils FILENAME
+    0g26hgppynrfdkpaplb77xzrsmsdzmlnqgl8336l08zmg80x90n5 URL
+    http://beta.quicklisp.org/archive/documentation-utils/2018-08-31/documentation-utils-20180831-git.tgz
+    MD5 e0f58ffe20602cada3413b4eeec909ef NAME documentation-utils FILENAME
     documentation-utils DEPS ((NAME trivial-indent FILENAME trivial-indent))
-    DEPENDENCIES (trivial-indent) VERSION 20180228-git SIBLINGS NIL PARASITES
-    NIL) */
+    DEPENDENCIES (trivial-indent) VERSION 20180831-git SIBLINGS
+    (multilang-documentation-utils) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/fast-http.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/fast-http.nix
index 99792023bdd0..82c8603d4a45 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/fast-http.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/fast-http.nix
@@ -1,15 +1,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''fast-http'';
-  version = ''20180131-git'';
+  version = ''20180831-git'';
 
   description = ''A fast HTTP protocol parser in Common Lisp'';
 
   deps = [ args."alexandria" args."babel" args."cl-utilities" args."flexi-streams" args."proc-parse" args."smart-buffer" args."trivial-features" args."trivial-gray-streams" args."xsubseq" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/fast-http/2018-01-31/fast-http-20180131-git.tgz'';
-    sha256 = ''057wg23a1pfdr3522nzjpclxdrmx3azbnw57nkvdjmfp6fyb3rpg'';
+    url = ''http://beta.quicklisp.org/archive/fast-http/2018-08-31/fast-http-20180831-git.tgz'';
+    sha256 = ''1827ra8nkjh5ghg2hn96w3zs8n1lvqzbf8wmzrcs8yky3l0m4qrm'';
   };
 
   packageName = "fast-http";
@@ -18,9 +18,9 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM fast-http DESCRIPTION A fast HTTP protocol parser in Common Lisp
-    SHA256 057wg23a1pfdr3522nzjpclxdrmx3azbnw57nkvdjmfp6fyb3rpg URL
-    http://beta.quicklisp.org/archive/fast-http/2018-01-31/fast-http-20180131-git.tgz
-    MD5 0722e935fb644d57d44e8604e41e689e NAME fast-http FILENAME fast-http DEPS
+    SHA256 1827ra8nkjh5ghg2hn96w3zs8n1lvqzbf8wmzrcs8yky3l0m4qrm URL
+    http://beta.quicklisp.org/archive/fast-http/2018-08-31/fast-http-20180831-git.tgz
+    MD5 d5e839f204b2dd78a390336572d1ee65 NAME fast-http FILENAME fast-http DEPS
     ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
      (NAME cl-utilities FILENAME cl-utilities)
      (NAME flexi-streams FILENAME flexi-streams)
@@ -32,4 +32,4 @@ rec {
     DEPENDENCIES
     (alexandria babel cl-utilities flexi-streams proc-parse smart-buffer
      trivial-features trivial-gray-streams xsubseq)
-    VERSION 20180131-git SIBLINGS (fast-http-test) PARASITES NIL) */
+    VERSION 20180831-git SIBLINGS (fast-http-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/flexi-streams.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/flexi-streams.nix
index 7b37e5709e86..08b6d35a1fb9 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/flexi-streams.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/flexi-streams.nix
@@ -1,7 +1,7 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''flexi-streams'';
-  version = ''20180328-git'';
+  version = ''20180711-git'';
 
   parasites = [ "flexi-streams-test" ];
 
@@ -10,8 +10,8 @@ rec {
   deps = [ args."trivial-gray-streams" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/flexi-streams/2018-03-28/flexi-streams-20180328-git.tgz'';
-    sha256 = ''0hdmzihii3wv6769dfkkw15avpgifizdd7lxdlgjk7h0h8v7yw11'';
+    url = ''http://beta.quicklisp.org/archive/flexi-streams/2018-07-11/flexi-streams-20180711-git.tgz'';
+    sha256 = ''1g7a5fbl84zx3139kvvgwq6d8bnbpbvq9mr5yj4jzfa6pjfjwgz2'';
   };
 
   packageName = "flexi-streams";
@@ -20,10 +20,10 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM flexi-streams DESCRIPTION Flexible bivalent streams for Common Lisp
-    SHA256 0hdmzihii3wv6769dfkkw15avpgifizdd7lxdlgjk7h0h8v7yw11 URL
-    http://beta.quicklisp.org/archive/flexi-streams/2018-03-28/flexi-streams-20180328-git.tgz
-    MD5 af40ae10a0aab65eccfe161a32e1033b NAME flexi-streams FILENAME
+    SHA256 1g7a5fbl84zx3139kvvgwq6d8bnbpbvq9mr5yj4jzfa6pjfjwgz2 URL
+    http://beta.quicklisp.org/archive/flexi-streams/2018-07-11/flexi-streams-20180711-git.tgz
+    MD5 1e5bc255540dcbd71f9cba56573cfb4c NAME flexi-streams FILENAME
     flexi-streams DEPS
     ((NAME trivial-gray-streams FILENAME trivial-gray-streams)) DEPENDENCIES
-    (trivial-gray-streams) VERSION 20180328-git SIBLINGS NIL PARASITES
+    (trivial-gray-streams) VERSION 20180711-git SIBLINGS NIL PARASITES
     (flexi-streams-test)) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/form-fiddle.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/form-fiddle.nix
index 2aa5c0749250..4a23cbf51ee7 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/form-fiddle.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/form-fiddle.nix
@@ -1,15 +1,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''form-fiddle'';
-  version = ''20180131-git'';
+  version = ''20180831-git'';
 
   description = ''A collection of utilities to destructure lambda forms.'';
 
   deps = [ args."documentation-utils" args."trivial-indent" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/form-fiddle/2018-01-31/form-fiddle-20180131-git.tgz'';
-    sha256 = ''1i7rzn4ilr46wpkd2i10q875bxy8b54v7rvqzcq752hilx15hiff'';
+    url = ''http://beta.quicklisp.org/archive/form-fiddle/2018-08-31/form-fiddle-20180831-git.tgz'';
+    sha256 = ''013n10rzqbfvdlz37pdmj4y7qv3fzv7q2hxv8aw7kcirg5gl7mkj'';
   };
 
   packageName = "form-fiddle";
@@ -19,11 +19,11 @@ rec {
 }
 /* (SYSTEM form-fiddle DESCRIPTION
     A collection of utilities to destructure lambda forms. SHA256
-    1i7rzn4ilr46wpkd2i10q875bxy8b54v7rvqzcq752hilx15hiff URL
-    http://beta.quicklisp.org/archive/form-fiddle/2018-01-31/form-fiddle-20180131-git.tgz
-    MD5 a0cc2ea1af29889e4991f7fefac366dd NAME form-fiddle FILENAME form-fiddle
+    013n10rzqbfvdlz37pdmj4y7qv3fzv7q2hxv8aw7kcirg5gl7mkj URL
+    http://beta.quicklisp.org/archive/form-fiddle/2018-08-31/form-fiddle-20180831-git.tgz
+    MD5 1e9ae81423ed3c5f2e07c26f93b45956 NAME form-fiddle FILENAME form-fiddle
     DEPS
     ((NAME documentation-utils FILENAME documentation-utils)
      (NAME trivial-indent FILENAME trivial-indent))
-    DEPENDENCIES (documentation-utils trivial-indent) VERSION 20180131-git
+    DEPENDENCIES (documentation-utils trivial-indent) VERSION 20180831-git
     SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/ironclad.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/ironclad.nix
index 8061f3844e0b..3d259fc5b6c5 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/ironclad.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/ironclad.nix
@@ -1,7 +1,7 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''ironclad'';
-  version = ''v0.39'';
+  version = ''v0.42'';
 
   parasites = [ "ironclad/tests" ];
 
@@ -10,8 +10,8 @@ rec {
   deps = [ args."nibbles" args."rt" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/ironclad/2018-04-30/ironclad-v0.39.tgz'';
-    sha256 = ''0nqm6bnxiiv78c33zlr5n53wdkpcfxh1xrx7af6122n29ggzj3h8'';
+    url = ''http://beta.quicklisp.org/archive/ironclad/2018-08-31/ironclad-v0.42.tgz'';
+    sha256 = ''1rrw0mhvja407ycryw56wwm45cpf3dc73h965smy75ddha4xn7zr'';
   };
 
   packageName = "ironclad";
@@ -21,9 +21,9 @@ rec {
 }
 /* (SYSTEM ironclad DESCRIPTION
     A cryptographic toolkit written in pure Common Lisp SHA256
-    0nqm6bnxiiv78c33zlr5n53wdkpcfxh1xrx7af6122n29ggzj3h8 URL
-    http://beta.quicklisp.org/archive/ironclad/2018-04-30/ironclad-v0.39.tgz
-    MD5 f4abb18cbbe173c569d8ed99800d9f9e NAME ironclad FILENAME ironclad DEPS
+    1rrw0mhvja407ycryw56wwm45cpf3dc73h965smy75ddha4xn7zr URL
+    http://beta.quicklisp.org/archive/ironclad/2018-08-31/ironclad-v0.42.tgz
+    MD5 18f2dbc9dbff97de9ea44af5344485b5 NAME ironclad FILENAME ironclad DEPS
     ((NAME nibbles FILENAME nibbles) (NAME rt FILENAME rt)) DEPENDENCIES
-    (nibbles rt) VERSION v0.39 SIBLINGS (ironclad-text) PARASITES
+    (nibbles rt) VERSION v0.42 SIBLINGS (ironclad-text) PARASITES
     (ironclad/tests)) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/iterate.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/iterate.nix
index f85b128652d0..f276ec72736d 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/iterate.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/iterate.nix
@@ -1,4 +1,4 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''iterate'';
   version = ''20180228-git'';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/kmrcl.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/kmrcl.nix
index 62a3ae2bb7d1..e5cbad3e9e83 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/kmrcl.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/kmrcl.nix
@@ -1,4 +1,4 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''kmrcl'';
   version = ''20150923-git'';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/lack-component.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/lack-component.nix
index 79f2d38ef10d..94edb06e6aee 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/lack-component.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/lack-component.nix
@@ -1,15 +1,15 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''lack-component'';
-  version = ''lack-20180430-git'';
+  version = ''lack-20180831-git'';
 
   description = '''';
 
   deps = [ ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/lack/2018-04-30/lack-20180430-git.tgz'';
-    sha256 = ''07f0nn1y8ghzg6s9rnmazaq3n7hr91mczdci5l3v4ncs79272h5v'';
+    url = ''http://beta.quicklisp.org/archive/lack/2018-08-31/lack-20180831-git.tgz'';
+    sha256 = ''0x4b3v5qvrik5c8nn4kpxygv78srqb306jcypkhpyc65ig81gr9n'';
   };
 
   packageName = "lack-component";
@@ -18,10 +18,10 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM lack-component DESCRIPTION NIL SHA256
-    07f0nn1y8ghzg6s9rnmazaq3n7hr91mczdci5l3v4ncs79272h5v URL
-    http://beta.quicklisp.org/archive/lack/2018-04-30/lack-20180430-git.tgz MD5
-    b9a0c08d54538679a8dd141022e8abb1 NAME lack-component FILENAME
-    lack-component DEPS NIL DEPENDENCIES NIL VERSION lack-20180430-git SIBLINGS
+    0x4b3v5qvrik5c8nn4kpxygv78srqb306jcypkhpyc65ig81gr9n URL
+    http://beta.quicklisp.org/archive/lack/2018-08-31/lack-20180831-git.tgz MD5
+    fd57a7185997a1a5f37bbd9d6899118d NAME lack-component FILENAME
+    lack-component DEPS NIL DEPENDENCIES NIL VERSION lack-20180831-git SIBLINGS
     (lack-middleware-accesslog lack-middleware-auth-basic
      lack-middleware-backtrace lack-middleware-csrf lack-middleware-mount
      lack-middleware-session lack-middleware-static lack-request lack-response
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/lack-middleware-backtrace.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/lack-middleware-backtrace.nix
index c0acbc2f01fc..a98028e0c060 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/lack-middleware-backtrace.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/lack-middleware-backtrace.nix
@@ -1,15 +1,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''lack-middleware-backtrace'';
-  version = ''lack-20180430-git'';
+  version = ''lack-20180831-git'';
 
   description = '''';
 
   deps = [ args."uiop" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/lack/2018-04-30/lack-20180430-git.tgz'';
-    sha256 = ''07f0nn1y8ghzg6s9rnmazaq3n7hr91mczdci5l3v4ncs79272h5v'';
+    url = ''http://beta.quicklisp.org/archive/lack/2018-08-31/lack-20180831-git.tgz'';
+    sha256 = ''0x4b3v5qvrik5c8nn4kpxygv78srqb306jcypkhpyc65ig81gr9n'';
   };
 
   packageName = "lack-middleware-backtrace";
@@ -18,11 +18,11 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM lack-middleware-backtrace DESCRIPTION NIL SHA256
-    07f0nn1y8ghzg6s9rnmazaq3n7hr91mczdci5l3v4ncs79272h5v URL
-    http://beta.quicklisp.org/archive/lack/2018-04-30/lack-20180430-git.tgz MD5
-    b9a0c08d54538679a8dd141022e8abb1 NAME lack-middleware-backtrace FILENAME
+    0x4b3v5qvrik5c8nn4kpxygv78srqb306jcypkhpyc65ig81gr9n URL
+    http://beta.quicklisp.org/archive/lack/2018-08-31/lack-20180831-git.tgz MD5
+    fd57a7185997a1a5f37bbd9d6899118d NAME lack-middleware-backtrace FILENAME
     lack-middleware-backtrace DEPS ((NAME uiop FILENAME uiop)) DEPENDENCIES
-    (uiop) VERSION lack-20180430-git SIBLINGS
+    (uiop) VERSION lack-20180831-git SIBLINGS
     (lack-component lack-middleware-accesslog lack-middleware-auth-basic
      lack-middleware-csrf lack-middleware-mount lack-middleware-session
      lack-middleware-static lack-request lack-response lack-session-store-dbi
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/lack-util.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/lack-util.nix
index 29fcd359f6b6..3478ac8488b4 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/lack-util.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/lack-util.nix
@@ -1,15 +1,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''lack-util'';
-  version = ''lack-20180430-git'';
+  version = ''lack-20180831-git'';
 
   description = '''';
 
   deps = [ args."ironclad" args."nibbles" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/lack/2018-04-30/lack-20180430-git.tgz'';
-    sha256 = ''07f0nn1y8ghzg6s9rnmazaq3n7hr91mczdci5l3v4ncs79272h5v'';
+    url = ''http://beta.quicklisp.org/archive/lack/2018-08-31/lack-20180831-git.tgz'';
+    sha256 = ''0x4b3v5qvrik5c8nn4kpxygv78srqb306jcypkhpyc65ig81gr9n'';
   };
 
   packageName = "lack-util";
@@ -18,11 +18,11 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM lack-util DESCRIPTION NIL SHA256
-    07f0nn1y8ghzg6s9rnmazaq3n7hr91mczdci5l3v4ncs79272h5v URL
-    http://beta.quicklisp.org/archive/lack/2018-04-30/lack-20180430-git.tgz MD5
-    b9a0c08d54538679a8dd141022e8abb1 NAME lack-util FILENAME lack-util DEPS
+    0x4b3v5qvrik5c8nn4kpxygv78srqb306jcypkhpyc65ig81gr9n URL
+    http://beta.quicklisp.org/archive/lack/2018-08-31/lack-20180831-git.tgz MD5
+    fd57a7185997a1a5f37bbd9d6899118d NAME lack-util FILENAME lack-util DEPS
     ((NAME ironclad FILENAME ironclad) (NAME nibbles FILENAME nibbles))
-    DEPENDENCIES (ironclad nibbles) VERSION lack-20180430-git SIBLINGS
+    DEPENDENCIES (ironclad nibbles) VERSION lack-20180831-git SIBLINGS
     (lack-component lack-middleware-accesslog lack-middleware-auth-basic
      lack-middleware-backtrace lack-middleware-csrf lack-middleware-mount
      lack-middleware-session lack-middleware-static lack-request lack-response
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/lack.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/lack.nix
index 9260b06dd830..fdcda10a275f 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/lack.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/lack.nix
@@ -1,15 +1,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''lack'';
-  version = ''20180430-git'';
+  version = ''20180831-git'';
 
   description = ''A minimal Clack'';
 
   deps = [ args."ironclad" args."lack-component" args."lack-util" args."nibbles" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/lack/2018-04-30/lack-20180430-git.tgz'';
-    sha256 = ''07f0nn1y8ghzg6s9rnmazaq3n7hr91mczdci5l3v4ncs79272h5v'';
+    url = ''http://beta.quicklisp.org/archive/lack/2018-08-31/lack-20180831-git.tgz'';
+    sha256 = ''0x4b3v5qvrik5c8nn4kpxygv78srqb306jcypkhpyc65ig81gr9n'';
   };
 
   packageName = "lack";
@@ -18,14 +18,14 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM lack DESCRIPTION A minimal Clack SHA256
-    07f0nn1y8ghzg6s9rnmazaq3n7hr91mczdci5l3v4ncs79272h5v URL
-    http://beta.quicklisp.org/archive/lack/2018-04-30/lack-20180430-git.tgz MD5
-    b9a0c08d54538679a8dd141022e8abb1 NAME lack FILENAME lack DEPS
+    0x4b3v5qvrik5c8nn4kpxygv78srqb306jcypkhpyc65ig81gr9n URL
+    http://beta.quicklisp.org/archive/lack/2018-08-31/lack-20180831-git.tgz MD5
+    fd57a7185997a1a5f37bbd9d6899118d NAME lack FILENAME lack DEPS
     ((NAME ironclad FILENAME ironclad)
      (NAME lack-component FILENAME lack-component)
      (NAME lack-util FILENAME lack-util) (NAME nibbles FILENAME nibbles))
     DEPENDENCIES (ironclad lack-component lack-util nibbles) VERSION
-    20180430-git SIBLINGS
+    20180831-git SIBLINGS
     (lack-component lack-middleware-accesslog lack-middleware-auth-basic
      lack-middleware-backtrace lack-middleware-csrf lack-middleware-mount
      lack-middleware-session lack-middleware-static lack-request lack-response
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/lift.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/lift.nix
index b44c0c8a9874..a3ddc2fd953e 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/lift.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/lift.nix
@@ -1,4 +1,4 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''lift'';
   version = ''20151031-git'';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/lisp-unit2.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/lisp-unit2.nix
index 62197234305a..8d21f88cbf82 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/lisp-unit2.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/lisp-unit2.nix
@@ -7,7 +7,7 @@ rec {
 
   description = ''Common Lisp library that supports unit testing.'';
 
-  deps = [ args."alexandria" args."cl-interpol" args."cl-ppcre" args."cl-unicode" args."flexi-streams" args."iterate" args."symbol-munger" ];
+  deps = [ args."alexandria" args."cl-interpol" args."cl-ppcre" args."cl-unicode" args."flexi-streams" args."iterate" args."named-readtables" args."symbol-munger" ];
 
   src = fetchurl {
     url = ''http://beta.quicklisp.org/archive/lisp-unit2/2018-01-31/lisp-unit2-20180131-git.tgz'';
@@ -30,8 +30,9 @@ rec {
      (NAME cl-unicode FILENAME cl-unicode)
      (NAME flexi-streams FILENAME flexi-streams)
      (NAME iterate FILENAME iterate)
+     (NAME named-readtables FILENAME named-readtables)
      (NAME symbol-munger FILENAME symbol-munger))
     DEPENDENCIES
     (alexandria cl-interpol cl-ppcre cl-unicode flexi-streams iterate
-     symbol-munger)
+     named-readtables symbol-munger)
     VERSION 20180131-git SIBLINGS NIL PARASITES (lisp-unit2-test)) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/lquery.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/lquery.nix
index 1ca094d139db..ad335774cbb5 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/lquery.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/lquery.nix
@@ -1,15 +1,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''lquery'';
-  version = ''20180131-git'';
+  version = ''20180831-git'';
 
   description = ''A library to allow jQuery-like HTML/DOM manipulation.'';
 
   deps = [ args."array-utils" args."clss" args."documentation-utils" args."form-fiddle" args."plump" args."trivial-indent" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/lquery/2018-01-31/lquery-20180131-git.tgz'';
-    sha256 = ''1v5mmdx7a1ngydkcs3c5anmqrl0jxc52b8jisc2f0b5k0j1kgmm9'';
+    url = ''http://beta.quicklisp.org/archive/lquery/2018-08-31/lquery-20180831-git.tgz'';
+    sha256 = ''1nb2hvcw043qlqxch7lky67k0r9gxjwaggkm8hfznlijbkgbfy2v'';
   };
 
   packageName = "lquery";
@@ -19,13 +19,13 @@ rec {
 }
 /* (SYSTEM lquery DESCRIPTION
     A library to allow jQuery-like HTML/DOM manipulation. SHA256
-    1v5mmdx7a1ngydkcs3c5anmqrl0jxc52b8jisc2f0b5k0j1kgmm9 URL
-    http://beta.quicklisp.org/archive/lquery/2018-01-31/lquery-20180131-git.tgz
-    MD5 07e92aad32c4d12c4699956b57dbc9b8 NAME lquery FILENAME lquery DEPS
+    1nb2hvcw043qlqxch7lky67k0r9gxjwaggkm8hfznlijbkgbfy2v URL
+    http://beta.quicklisp.org/archive/lquery/2018-08-31/lquery-20180831-git.tgz
+    MD5 d0d3efa47f151afeb754c4bc0c059acf NAME lquery FILENAME lquery DEPS
     ((NAME array-utils FILENAME array-utils) (NAME clss FILENAME clss)
      (NAME documentation-utils FILENAME documentation-utils)
      (NAME form-fiddle FILENAME form-fiddle) (NAME plump FILENAME plump)
      (NAME trivial-indent FILENAME trivial-indent))
     DEPENDENCIES
     (array-utils clss documentation-utils form-fiddle plump trivial-indent)
-    VERSION 20180131-git SIBLINGS (lquery-test) PARASITES NIL) */
+    VERSION 20180831-git SIBLINGS (lquery-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/map-set.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/map-set.nix
index 006361ed80c1..db25e6ae5347 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/map-set.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/map-set.nix
@@ -1,4 +1,4 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''map-set'';
   version = ''20160628-hg'';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/marshal.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/marshal.nix
index c34d79f3d13d..4f6842606b45 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/marshal.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/marshal.nix
@@ -1,4 +1,4 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''marshal'';
   version = ''cl-20180328-git'';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/md5.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/md5.nix
index c65d95d9ef7a..953dd0a58a4a 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/md5.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/md5.nix
@@ -1,4 +1,4 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''md5'';
   version = ''20180228-git'';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/metabang-bind.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/metabang-bind.nix
index 5647b9a92707..d72e0839d1e8 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/metabang-bind.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/metabang-bind.nix
@@ -1,4 +1,4 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''metabang-bind'';
   version = ''20171130-git'';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/misc-extensions.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/misc-extensions.nix
index 3c289fefa9ab..6334804c4f70 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/misc-extensions.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/misc-extensions.nix
@@ -1,4 +1,4 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''misc-extensions'';
   version = ''20150608-git'';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/mt19937.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/mt19937.nix
index 29460307e698..a8cfc070bf99 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/mt19937.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/mt19937.nix
@@ -1,4 +1,4 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''mt19937'';
   version = ''1.1.1'';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/named-readtables.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/named-readtables.nix
index e1d6a1477a7b..82d06b1c93b2 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/named-readtables.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/named-readtables.nix
@@ -1,4 +1,4 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''named-readtables'';
   version = ''20180131-git'';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/net_dot_didierverna_dot_asdf-flv.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/net_dot_didierverna_dot_asdf-flv.nix
index 67636d3f6cf3..4e7c84566a0a 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/net_dot_didierverna_dot_asdf-flv.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/net_dot_didierverna_dot_asdf-flv.nix
@@ -1,4 +1,4 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''net_dot_didierverna_dot_asdf-flv'';
   version = ''asdf-flv-version-2.1'';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/nibbles.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/nibbles.nix
index d706bc5bad1a..ea6adac9e9f8 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/nibbles.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/nibbles.nix
@@ -1,7 +1,7 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''nibbles'';
-  version = ''20180430-git'';
+  version = ''20180831-git'';
 
   parasites = [ "nibbles/tests" ];
 
@@ -10,8 +10,8 @@ rec {
   deps = [ args."rt" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/nibbles/2018-04-30/nibbles-20180430-git.tgz'';
-    sha256 = ''1z79x7w0qp66vdxq7lac1jkc56brmpy0x0wmm9flf91d8y9lh34g'';
+    url = ''http://beta.quicklisp.org/archive/nibbles/2018-08-31/nibbles-20180831-git.tgz'';
+    sha256 = ''0z25f2z54pnz1s35prqvnl42bv0xqh50y94bds1jwfv0wvfq27la'';
   };
 
   packageName = "nibbles";
@@ -21,8 +21,8 @@ rec {
 }
 /* (SYSTEM nibbles DESCRIPTION
     A library for accessing octet-addressed blocks of data in big- and little-endian orders
-    SHA256 1z79x7w0qp66vdxq7lac1jkc56brmpy0x0wmm9flf91d8y9lh34g URL
-    http://beta.quicklisp.org/archive/nibbles/2018-04-30/nibbles-20180430-git.tgz
-    MD5 8d8d1cc72ce11253d01854219ea20a06 NAME nibbles FILENAME nibbles DEPS
-    ((NAME rt FILENAME rt)) DEPENDENCIES (rt) VERSION 20180430-git SIBLINGS NIL
+    SHA256 0z25f2z54pnz1s35prqvnl42bv0xqh50y94bds1jwfv0wvfq27la URL
+    http://beta.quicklisp.org/archive/nibbles/2018-08-31/nibbles-20180831-git.tgz
+    MD5 4badf1f066a59c3c270d40be1116ecd5 NAME nibbles FILENAME nibbles DEPS
+    ((NAME rt FILENAME rt)) DEPENDENCIES (rt) VERSION 20180831-git SIBLINGS NIL
     PARASITES (nibbles/tests)) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/parse-number.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/parse-number.nix
index 5c1f90220eb3..e636df0805e7 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/parse-number.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/parse-number.nix
@@ -1,4 +1,4 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''parse-number'';
   version = ''v1.7'';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/plump.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/plump.nix
index 2bde901ad43e..0a1591d7c424 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/plump.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/plump.nix
@@ -1,15 +1,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''plump'';
-  version = ''20180228-git'';
+  version = ''20180831-git'';
 
   description = ''An XML / XHTML / HTML parser that aims to be as lenient as possible.'';
 
   deps = [ args."array-utils" args."documentation-utils" args."trivial-indent" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/plump/2018-02-28/plump-20180228-git.tgz'';
-    sha256 = ''0q8carmnrh1qdhdag9w5iikdlga8g7jn824bjypzx0iwyqn1ap01'';
+    url = ''http://beta.quicklisp.org/archive/plump/2018-08-31/plump-20180831-git.tgz'';
+    sha256 = ''0pa4z9yjm68lpw1hdidicrwj7dfvf2jk110rnqq6p8ahxc117zbf'';
   };
 
   packageName = "plump";
@@ -19,11 +19,11 @@ rec {
 }
 /* (SYSTEM plump DESCRIPTION
     An XML / XHTML / HTML parser that aims to be as lenient as possible. SHA256
-    0q8carmnrh1qdhdag9w5iikdlga8g7jn824bjypzx0iwyqn1ap01 URL
-    http://beta.quicklisp.org/archive/plump/2018-02-28/plump-20180228-git.tgz
-    MD5 f210bc3fae00bac3140d939cbb2fd1de NAME plump FILENAME plump DEPS
+    0pa4z9yjm68lpw1hdidicrwj7dfvf2jk110rnqq6p8ahxc117zbf URL
+    http://beta.quicklisp.org/archive/plump/2018-08-31/plump-20180831-git.tgz
+    MD5 5a899a19906fd22fb0cb1c65eb584891 NAME plump FILENAME plump DEPS
     ((NAME array-utils FILENAME array-utils)
      (NAME documentation-utils FILENAME documentation-utils)
      (NAME trivial-indent FILENAME trivial-indent))
     DEPENDENCIES (array-utils documentation-utils trivial-indent) VERSION
-    20180228-git SIBLINGS (plump-dom plump-lexer plump-parser) PARASITES NIL) */
+    20180831-git SIBLINGS (plump-dom plump-lexer plump-parser) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/ptester.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/ptester.nix
index c90b252313bf..ffa2e595c26a 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/ptester.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/ptester.nix
@@ -1,4 +1,4 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''ptester'';
   version = ''20160929-git'';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/rfc2388.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/rfc2388.nix
index 41ead034791a..25d535176a6a 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/rfc2388.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/rfc2388.nix
@@ -1,15 +1,15 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''rfc2388'';
-  version = ''20130720-git'';
+  version = ''20180831-git'';
 
   description = ''Implementation of RFC 2388'';
 
   deps = [ ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/rfc2388/2013-07-20/rfc2388-20130720-git.tgz'';
-    sha256 = ''1ky99cr4bgfyh0pfpl5f6fsmq1qdbgi4b8v0cfs4y73f78p1f8b6'';
+    url = ''http://beta.quicklisp.org/archive/rfc2388/2018-08-31/rfc2388-20180831-git.tgz'';
+    sha256 = ''1r7vvrlq2wl213bm2aknkf34ynpl8y4nbkfir79srrdsl1337z33'';
   };
 
   packageName = "rfc2388";
@@ -18,7 +18,7 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM rfc2388 DESCRIPTION Implementation of RFC 2388 SHA256
-    1ky99cr4bgfyh0pfpl5f6fsmq1qdbgi4b8v0cfs4y73f78p1f8b6 URL
-    http://beta.quicklisp.org/archive/rfc2388/2013-07-20/rfc2388-20130720-git.tgz
-    MD5 10a8bfea588196b1147d5dc7bf759bb1 NAME rfc2388 FILENAME rfc2388 DEPS NIL
-    DEPENDENCIES NIL VERSION 20130720-git SIBLINGS NIL PARASITES NIL) */
+    1r7vvrlq2wl213bm2aknkf34ynpl8y4nbkfir79srrdsl1337z33 URL
+    http://beta.quicklisp.org/archive/rfc2388/2018-08-31/rfc2388-20180831-git.tgz
+    MD5 f57e3c588e5e08210516260e67d69226 NAME rfc2388 FILENAME rfc2388 DEPS NIL
+    DEPENDENCIES NIL VERSION 20180831-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/rt.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/rt.nix
index 8ed7c1a44993..d5be4be7daf4 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/rt.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/rt.nix
@@ -1,4 +1,4 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''rt'';
   version = ''20101006-git'';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/salza2.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/salza2.nix
index d55f7700092c..9056cfbdcca8 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/salza2.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/salza2.nix
@@ -1,4 +1,4 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''salza2'';
   version = ''2.0.9'';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/simple-date.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/simple-date.nix
index 07b1498f2e3f..b1e89b3eef8a 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/simple-date.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/simple-date.nix
@@ -1,17 +1,17 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''simple-date'';
-  version = ''postmodern-20180430-git'';
+  version = ''postmodern-20180831-git'';
 
-  parasites = [ "simple-date/postgres-glue" "simple-date/tests" ];
+  parasites = [ "simple-date/postgres-glue" ];
 
   description = '''';
 
-  deps = [ args."cl-postgres" args."fiveam" args."md5" args."usocket" ];
+  deps = [ args."cl-postgres" args."md5" args."usocket" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/postmodern/2018-04-30/postmodern-20180430-git.tgz'';
-    sha256 = ''0b6w8f5ihbk036v1fclyskns615xhnib9q3cjn0ql6r6sk3nca7f'';
+    url = ''http://beta.quicklisp.org/archive/postmodern/2018-08-31/postmodern-20180831-git.tgz'';
+    sha256 = ''062xhy6aadzgmwpz8h0n7884yv5m4nwqmxrc75m3c60k1lmccpwx'';
   };
 
   packageName = "simple-date";
@@ -20,12 +20,12 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM simple-date DESCRIPTION NIL SHA256
-    0b6w8f5ihbk036v1fclyskns615xhnib9q3cjn0ql6r6sk3nca7f URL
-    http://beta.quicklisp.org/archive/postmodern/2018-04-30/postmodern-20180430-git.tgz
-    MD5 9ca2a4ccf4ea7dbcd14d69cb355a8214 NAME simple-date FILENAME simple-date
+    062xhy6aadzgmwpz8h0n7884yv5m4nwqmxrc75m3c60k1lmccpwx URL
+    http://beta.quicklisp.org/archive/postmodern/2018-08-31/postmodern-20180831-git.tgz
+    MD5 78c3e998cff7305db5e4b4e90b9bbee6 NAME simple-date FILENAME simple-date
     DEPS
-    ((NAME cl-postgres FILENAME cl-postgres) (NAME fiveam FILENAME fiveam)
-     (NAME md5 FILENAME md5) (NAME usocket FILENAME usocket))
-    DEPENDENCIES (cl-postgres fiveam md5 usocket) VERSION
-    postmodern-20180430-git SIBLINGS (cl-postgres postmodern s-sql) PARASITES
-    (simple-date/postgres-glue simple-date/tests)) */
+    ((NAME cl-postgres FILENAME cl-postgres) (NAME md5 FILENAME md5)
+     (NAME usocket FILENAME usocket))
+    DEPENDENCIES (cl-postgres md5 usocket) VERSION postmodern-20180831-git
+    SIBLINGS (cl-postgres postmodern s-sql) PARASITES
+    (simple-date/postgres-glue)) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/string-case.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/string-case.nix
index 9cc6338c8b89..17a56c09b7e8 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/string-case.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/string-case.nix
@@ -1,15 +1,15 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''string-case'';
-  version = ''20151218-git'';
+  version = ''20180711-git'';
 
   description = ''string-case is a macro that generates specialised decision trees to dispatch on string equality'';
 
   deps = [ ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/string-case/2015-12-18/string-case-20151218-git.tgz'';
-    sha256 = ''0l7bcysm1hwxaxxbld9fs0hj30739wf2ys3n6fhfdy9m5rz1cfbw'';
+    url = ''http://beta.quicklisp.org/archive/string-case/2018-07-11/string-case-20180711-git.tgz'';
+    sha256 = ''1n36ign4bv0idw14zyayn6i0n3iaff9yw92kpjh3qmdcq3asv90z'';
   };
 
   packageName = "string-case";
@@ -19,7 +19,7 @@ rec {
 }
 /* (SYSTEM string-case DESCRIPTION
     string-case is a macro that generates specialised decision trees to dispatch on string equality
-    SHA256 0l7bcysm1hwxaxxbld9fs0hj30739wf2ys3n6fhfdy9m5rz1cfbw URL
-    http://beta.quicklisp.org/archive/string-case/2015-12-18/string-case-20151218-git.tgz
-    MD5 fb747ba1276f0173f875876425b1acc3 NAME string-case FILENAME string-case
-    DEPS NIL DEPENDENCIES NIL VERSION 20151218-git SIBLINGS NIL PARASITES NIL) */
+    SHA256 1n36ign4bv0idw14zyayn6i0n3iaff9yw92kpjh3qmdcq3asv90z URL
+    http://beta.quicklisp.org/archive/string-case/2018-07-11/string-case-20180711-git.tgz
+    MD5 145c4e13f1e90a070b0a95ca979a9680 NAME string-case FILENAME string-case
+    DEPS NIL DEPENDENCIES NIL VERSION 20180711-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/stumpwm.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/stumpwm.nix
index 883e648a2f68..bb39c74c9625 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/stumpwm.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/stumpwm.nix
@@ -1,15 +1,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''stumpwm'';
-  version = ''20180430-git'';
+  version = ''20180831-git'';
 
   description = ''A tiling, keyboard driven window manager'';
 
   deps = [ args."alexandria" args."cl-ppcre" args."clx" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/stumpwm/2018-04-30/stumpwm-20180430-git.tgz'';
-    sha256 = ''0ayw562iya02j8rzdnzpxn5yxwaapr2jqnm83m16h4595gv1jr6m'';
+    url = ''http://beta.quicklisp.org/archive/stumpwm/2018-08-31/stumpwm-20180831-git.tgz'';
+    sha256 = ''1zis6aqdr18vd78wl9jpv2fmbzn37zvhb6gj44dpfydl67hjc89w'';
   };
 
   packageName = "stumpwm";
@@ -18,10 +18,10 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM stumpwm DESCRIPTION A tiling, keyboard driven window manager SHA256
-    0ayw562iya02j8rzdnzpxn5yxwaapr2jqnm83m16h4595gv1jr6m URL
-    http://beta.quicklisp.org/archive/stumpwm/2018-04-30/stumpwm-20180430-git.tgz
-    MD5 40e1be3872e6a87a6f9e03f8ede5e48e NAME stumpwm FILENAME stumpwm DEPS
+    1zis6aqdr18vd78wl9jpv2fmbzn37zvhb6gj44dpfydl67hjc89w URL
+    http://beta.quicklisp.org/archive/stumpwm/2018-08-31/stumpwm-20180831-git.tgz
+    MD5 a523654c5f7ffdfe6c6c4f37e9499851 NAME stumpwm FILENAME stumpwm DEPS
     ((NAME alexandria FILENAME alexandria) (NAME cl-ppcre FILENAME cl-ppcre)
      (NAME clx FILENAME clx))
-    DEPENDENCIES (alexandria cl-ppcre clx) VERSION 20180430-git SIBLINGS NIL
-    PARASITES NIL) */
+    DEPENDENCIES (alexandria cl-ppcre clx) VERSION 20180831-git SIBLINGS
+    (stumpwm-tests) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/swank.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/swank.nix
index 6819e4b25713..9734118526c6 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/swank.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/swank.nix
@@ -1,15 +1,15 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''swank'';
-  version = ''slime-v2.20'';
+  version = ''slime-v2.22'';
 
   description = '''';
 
   deps = [ ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/slime/2017-08-30/slime-v2.20.tgz'';
-    sha256 = ''0rl2ymqxcfkbvwkd8zfhyaaz8v2a927gmv9c43ganxnq6y473c26'';
+    url = ''http://beta.quicklisp.org/archive/slime/2018-08-31/slime-v2.22.tgz'';
+    sha256 = ''0ql0bjijypghi884085idq542yms2gk4rq1035j3vznkqrlnaqbk'';
   };
 
   packageName = "swank";
@@ -18,7 +18,7 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM swank DESCRIPTION NIL SHA256
-    0rl2ymqxcfkbvwkd8zfhyaaz8v2a927gmv9c43ganxnq6y473c26 URL
-    http://beta.quicklisp.org/archive/slime/2017-08-30/slime-v2.20.tgz MD5
-    115188047b753ce1864586e114ecb46c NAME swank FILENAME swank DEPS NIL
-    DEPENDENCIES NIL VERSION slime-v2.20 SIBLINGS NIL PARASITES NIL) */
+    0ql0bjijypghi884085idq542yms2gk4rq1035j3vznkqrlnaqbk URL
+    http://beta.quicklisp.org/archive/slime/2018-08-31/slime-v2.22.tgz MD5
+    edf090905d4f3a54ef62f8c13972bba5 NAME swank FILENAME swank DEPS NIL
+    DEPENDENCIES NIL VERSION slime-v2.22 SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-backtrace.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-backtrace.nix
index a772694b9830..9a4afce3280f 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-backtrace.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-backtrace.nix
@@ -1,4 +1,4 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''trivial-backtrace'';
   version = ''20160531-git'';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-features.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-features.nix
index 5efc57669552..1a562c2288bb 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-features.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-features.nix
@@ -1,4 +1,4 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''trivial-features'';
   version = ''20161204-git'';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-gray-streams.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-gray-streams.nix
index 9a285fea2f18..edb01bd2fc52 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-gray-streams.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-gray-streams.nix
@@ -1,15 +1,15 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''trivial-gray-streams'';
-  version = ''20180328-git'';
+  version = ''20180831-git'';
 
   description = ''Compatibility layer for Gray Streams (see http://www.cliki.net/Gray%20streams).'';
 
   deps = [ ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/trivial-gray-streams/2018-03-28/trivial-gray-streams-20180328-git.tgz'';
-    sha256 = ''01z5mp71005vgpvazhs3gqgqr2ym8mm4n5pw2y7bfjiygcl8b06f'';
+    url = ''http://beta.quicklisp.org/archive/trivial-gray-streams/2018-08-31/trivial-gray-streams-20180831-git.tgz'';
+    sha256 = ''0mh9w8inqxb6lpq787grnf72qlcrjd0a7qs6psjyfs6iazs14170'';
   };
 
   packageName = "trivial-gray-streams";
@@ -19,8 +19,8 @@ rec {
 }
 /* (SYSTEM trivial-gray-streams DESCRIPTION
     Compatibility layer for Gray Streams (see http://www.cliki.net/Gray%20streams).
-    SHA256 01z5mp71005vgpvazhs3gqgqr2ym8mm4n5pw2y7bfjiygcl8b06f URL
-    http://beta.quicklisp.org/archive/trivial-gray-streams/2018-03-28/trivial-gray-streams-20180328-git.tgz
-    MD5 9f831cbb7a4efe93eaa8fa2acee4b01b NAME trivial-gray-streams FILENAME
-    trivial-gray-streams DEPS NIL DEPENDENCIES NIL VERSION 20180328-git
+    SHA256 0mh9w8inqxb6lpq787grnf72qlcrjd0a7qs6psjyfs6iazs14170 URL
+    http://beta.quicklisp.org/archive/trivial-gray-streams/2018-08-31/trivial-gray-streams-20180831-git.tgz
+    MD5 070733919aa016a508b2ecb443e37c80 NAME trivial-gray-streams FILENAME
+    trivial-gray-streams DEPS NIL DEPENDENCIES NIL VERSION 20180831-git
     SIBLINGS (trivial-gray-streams-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-indent.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-indent.nix
index e044f097701d..4214779af320 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-indent.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-indent.nix
@@ -1,15 +1,15 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''trivial-indent'';
-  version = ''20180131-git'';
+  version = ''20180831-git'';
 
   description = ''A very simple library to allow indentation hints for SWANK.'';
 
   deps = [ ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/trivial-indent/2018-01-31/trivial-indent-20180131-git.tgz'';
-    sha256 = ''1y6m9nrhj923zj95824w7vsciqhv9cq7sq5x519x2ik0jfcaqp8w'';
+    url = ''http://beta.quicklisp.org/archive/trivial-indent/2018-08-31/trivial-indent-20180831-git.tgz'';
+    sha256 = ''017ydjyp9v1bqfhg6yq73q7lf2ds3g7s8i9ng9n7iv2k9ffxm65m'';
   };
 
   packageName = "trivial-indent";
@@ -19,8 +19,8 @@ rec {
 }
 /* (SYSTEM trivial-indent DESCRIPTION
     A very simple library to allow indentation hints for SWANK. SHA256
-    1y6m9nrhj923zj95824w7vsciqhv9cq7sq5x519x2ik0jfcaqp8w URL
-    http://beta.quicklisp.org/archive/trivial-indent/2018-01-31/trivial-indent-20180131-git.tgz
-    MD5 a915258466d07465da1f71476bf59d12 NAME trivial-indent FILENAME
-    trivial-indent DEPS NIL DEPENDENCIES NIL VERSION 20180131-git SIBLINGS NIL
+    017ydjyp9v1bqfhg6yq73q7lf2ds3g7s8i9ng9n7iv2k9ffxm65m URL
+    http://beta.quicklisp.org/archive/trivial-indent/2018-08-31/trivial-indent-20180831-git.tgz
+    MD5 0cc411500f5aa677cd771d45f4cd21b8 NAME trivial-indent FILENAME
+    trivial-indent DEPS NIL DEPENDENCIES NIL VERSION 20180831-git SIBLINGS NIL
     PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-mimes.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-mimes.nix
index 6946141f1121..f06c0d7ebf57 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-mimes.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-mimes.nix
@@ -1,15 +1,15 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''trivial-mimes'';
-  version = ''20180131-git'';
+  version = ''20180831-git'';
 
   description = ''Tiny library to detect mime types in files.'';
 
   deps = [ ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/trivial-mimes/2018-01-31/trivial-mimes-20180131-git.tgz'';
-    sha256 = ''0wmnfiphrzr5br4mzds7lny36rqrdxv707r4frzygx7j0llrvs1b'';
+    url = ''http://beta.quicklisp.org/archive/trivial-mimes/2018-08-31/trivial-mimes-20180831-git.tgz'';
+    sha256 = ''0nkf6ifjvh4fvmf7spmqmz64yh2l1f25gxq1r8s0z0vnrmpsggqr'';
   };
 
   packageName = "trivial-mimes";
@@ -19,8 +19,8 @@ rec {
 }
 /* (SYSTEM trivial-mimes DESCRIPTION
     Tiny library to detect mime types in files. SHA256
-    0wmnfiphrzr5br4mzds7lny36rqrdxv707r4frzygx7j0llrvs1b URL
-    http://beta.quicklisp.org/archive/trivial-mimes/2018-01-31/trivial-mimes-20180131-git.tgz
-    MD5 9c91e72a8ee2455f9c5cbba1f7d2fcef NAME trivial-mimes FILENAME
-    trivial-mimes DEPS NIL DEPENDENCIES NIL VERSION 20180131-git SIBLINGS NIL
+    0nkf6ifjvh4fvmf7spmqmz64yh2l1f25gxq1r8s0z0vnrmpsggqr URL
+    http://beta.quicklisp.org/archive/trivial-mimes/2018-08-31/trivial-mimes-20180831-git.tgz
+    MD5 503680e90278947d888bcbe3338c74e3 NAME trivial-mimes FILENAME
+    trivial-mimes DEPS NIL DEPENDENCIES NIL VERSION 20180831-git SIBLINGS NIL
     PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-types.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-types.nix
index 1af66736f30f..8cc04c2c64ac 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-types.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-types.nix
@@ -1,4 +1,4 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''trivial-types'';
   version = ''20120407-git'';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-utf-8.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-utf-8.nix
index 753f21dbcb96..c925382d81d4 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-utf-8.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-utf-8.nix
@@ -1,4 +1,4 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''trivial-utf-8'';
   version = ''20111001-darcs'';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/uffi.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/uffi.nix
index 0ac190993d80..1986f7c88f7a 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/uffi.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/uffi.nix
@@ -1,4 +1,4 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''uffi'';
   version = ''20180228-git'';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/uiop.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/uiop.nix
index afb8b3885681..fdaa07109b49 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/uiop.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/uiop.nix
@@ -1,15 +1,15 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''uiop'';
-  version = ''3.3.1'';
+  version = ''3.3.2'';
 
   description = '''';
 
   deps = [ ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/uiop/2017-12-27/uiop-3.3.1.tgz'';
-    sha256 = ''0w9va40dr6l7fss9f7qlv7mp9f86sdjv5g2lz621a6wzi4911ghc'';
+    url = ''http://beta.quicklisp.org/archive/uiop/2018-07-11/uiop-3.3.2.tgz'';
+    sha256 = ''1q13a7dzc9vpd0w7c4xw03ijmlnyhjw2p76h0v8m7dyb23s7p9y5'';
   };
 
   packageName = "uiop";
@@ -18,7 +18,7 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM uiop DESCRIPTION NIL SHA256
-    0w9va40dr6l7fss9f7qlv7mp9f86sdjv5g2lz621a6wzi4911ghc URL
-    http://beta.quicklisp.org/archive/uiop/2017-12-27/uiop-3.3.1.tgz MD5
-    7a90377c4fc96676d5fa5197d9e9ec11 NAME uiop FILENAME uiop DEPS NIL
-    DEPENDENCIES NIL VERSION 3.3.1 SIBLINGS (asdf-driver) PARASITES NIL) */
+    1q13a7dzc9vpd0w7c4xw03ijmlnyhjw2p76h0v8m7dyb23s7p9y5 URL
+    http://beta.quicklisp.org/archive/uiop/2018-07-11/uiop-3.3.2.tgz MD5
+    8d7b7b4065873107147678c6ef72e5ee NAME uiop FILENAME uiop DEPS NIL
+    DEPENDENCIES NIL VERSION 3.3.2 SIBLINGS (asdf-driver) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/unit-test.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/unit-test.nix
index 3a4b05e05269..6c4564967320 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/unit-test.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/unit-test.nix
@@ -1,4 +1,4 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''unit-test'';
   version = ''20120520-git'';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/usocket.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/usocket.nix
index b4b4f4543a10..6d02b9764701 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/usocket.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/usocket.nix
@@ -1,15 +1,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''usocket'';
-  version = ''0.7.0.1'';
+  version = ''0.7.1'';
 
   description = ''Universal socket library for Common Lisp'';
 
   deps = [ args."split-sequence" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/usocket/2016-10-31/usocket-0.7.0.1.tgz'';
-    sha256 = ''1mpcfawbzd72cd841bb0hmgx4kinnvcnazc7vym83gv5iy6lwif2'';
+    url = ''http://beta.quicklisp.org/archive/usocket/2018-08-31/usocket-0.7.1.tgz'';
+    sha256 = ''18w2f835lgiznv6rm1v7yq94dg5qjcmbj91kpvfjw81pk4i7i7lw'';
   };
 
   packageName = "usocket";
@@ -18,9 +18,9 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM usocket DESCRIPTION Universal socket library for Common Lisp SHA256
-    1mpcfawbzd72cd841bb0hmgx4kinnvcnazc7vym83gv5iy6lwif2 URL
-    http://beta.quicklisp.org/archive/usocket/2016-10-31/usocket-0.7.0.1.tgz
-    MD5 1dcb027187679211f9d277ce99ca2a5a NAME usocket FILENAME usocket DEPS
+    18w2f835lgiznv6rm1v7yq94dg5qjcmbj91kpvfjw81pk4i7i7lw URL
+    http://beta.quicklisp.org/archive/usocket/2018-08-31/usocket-0.7.1.tgz MD5
+    fb48ff59f0d71bfc9c2939aacdb123a0 NAME usocket FILENAME usocket DEPS
     ((NAME split-sequence FILENAME split-sequence)) DEPENDENCIES
-    (split-sequence) VERSION 0.7.0.1 SIBLINGS (usocket-server usocket-test)
+    (split-sequence) VERSION 0.7.1 SIBLINGS (usocket-server usocket-test)
     PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/vom.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/vom.nix
index 11b9351c03ad..6a4751f799ea 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/vom.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/vom.nix
@@ -1,4 +1,4 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''vom'';
   version = ''20160825-git'';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/woo.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/woo.nix
index cc5c23faf862..4a36b6563534 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/woo.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/woo.nix
@@ -1,15 +1,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''woo'';
-  version = ''20170830-git'';
+  version = ''20180831-git'';
 
   description = ''An asynchronous HTTP server written in Common Lisp'';
 
   deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."cffi-grovel" args."cffi-toolchain" args."cl-utilities" args."clack-socket" args."fast-http" args."fast-io" args."flexi-streams" args."lev" args."proc-parse" args."quri" args."smart-buffer" args."split-sequence" args."static-vectors" args."swap-bytes" args."trivial-features" args."trivial-gray-streams" args."trivial-utf-8" args."uiop" args."vom" args."xsubseq" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/woo/2017-08-30/woo-20170830-git.tgz'';
-    sha256 = ''130hgfp08gchn0fkfablpf18hsdi1k4hrc3iny5c8m1phjlknchv'';
+    url = ''http://beta.quicklisp.org/archive/woo/2018-08-31/woo-20180831-git.tgz'';
+    sha256 = ''142f3d9bv2zd0l9p1pavf05c2wi4jiz521wji9zyysspmibys3z8'';
   };
 
   packageName = "woo";
@@ -18,9 +18,9 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM woo DESCRIPTION An asynchronous HTTP server written in Common Lisp
-    SHA256 130hgfp08gchn0fkfablpf18hsdi1k4hrc3iny5c8m1phjlknchv URL
-    http://beta.quicklisp.org/archive/woo/2017-08-30/woo-20170830-git.tgz MD5
-    3f506a771b3d8f2c7fc97b049dcfdedf NAME woo FILENAME woo DEPS
+    SHA256 142f3d9bv2zd0l9p1pavf05c2wi4jiz521wji9zyysspmibys3z8 URL
+    http://beta.quicklisp.org/archive/woo/2018-08-31/woo-20180831-git.tgz MD5
+    93dfbc504ebd4fa7ed5f444fcc5444e7 NAME woo FILENAME woo DEPS
     ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
      (NAME bordeaux-threads FILENAME bordeaux-threads)
      (NAME cffi FILENAME cffi) (NAME cffi-grovel FILENAME cffi-grovel)
@@ -43,4 +43,4 @@ rec {
      cl-utilities clack-socket fast-http fast-io flexi-streams lev proc-parse
      quri smart-buffer split-sequence static-vectors swap-bytes
      trivial-features trivial-gray-streams trivial-utf-8 uiop vom xsubseq)
-    VERSION 20170830-git SIBLINGS (clack-handler-woo woo-test) PARASITES NIL) */
+    VERSION 20180831-git SIBLINGS (clack-handler-woo woo-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/wookie.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/wookie.nix
index 8c4afa9697d8..6db21bf9005e 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/wookie.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/wookie.nix
@@ -1,15 +1,15 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''wookie'';
-  version = ''20180228-git'';
+  version = ''20180831-git'';
 
   description = ''An evented webserver for Common Lisp.'';
 
   deps = [ args."alexandria" args."babel" args."babel-streams" args."blackbird" args."bordeaux-threads" args."cffi" args."cffi-grovel" args."cffi-toolchain" args."chunga" args."cl-async" args."cl-async-base" args."cl-async-ssl" args."cl-async-util" args."cl-fad" args."cl-libuv" args."cl-ppcre" args."cl-utilities" args."do-urlencode" args."fast-http" args."fast-io" args."flexi-streams" args."proc-parse" args."quri" args."smart-buffer" args."split-sequence" args."static-vectors" args."trivial-features" args."trivial-gray-streams" args."vom" args."xsubseq" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/wookie/2018-02-28/wookie-20180228-git.tgz'';
-    sha256 = ''1w6qkz6l7lq9v7zzq2c9q2bx73vs9m9svlhh2058csjqqbv383kq'';
+    url = ''http://beta.quicklisp.org/archive/wookie/2018-08-31/wookie-20180831-git.tgz'';
+    sha256 = ''1hy6hdfhdfnyd00q3v7ryjqvq7x8j22yy4l52p24jj0n19mx3pjx'';
   };
 
   packageName = "wookie";
@@ -18,9 +18,9 @@ rec {
   overrides = x: x;
 }
 /* (SYSTEM wookie DESCRIPTION An evented webserver for Common Lisp. SHA256
-    1w6qkz6l7lq9v7zzq2c9q2bx73vs9m9svlhh2058csjqqbv383kq URL
-    http://beta.quicklisp.org/archive/wookie/2018-02-28/wookie-20180228-git.tgz
-    MD5 7cd3d634686e532f2c6e2f5f2d4e1dae NAME wookie FILENAME wookie DEPS
+    1hy6hdfhdfnyd00q3v7ryjqvq7x8j22yy4l52p24jj0n19mx3pjx URL
+    http://beta.quicklisp.org/archive/wookie/2018-08-31/wookie-20180831-git.tgz
+    MD5 c825760241580a95c68b1ac6f428e07e NAME wookie FILENAME wookie DEPS
     ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
      (NAME babel-streams FILENAME babel-streams)
      (NAME blackbird FILENAME blackbird)
@@ -49,4 +49,4 @@ rec {
      cl-fad cl-libuv cl-ppcre cl-utilities do-urlencode fast-http fast-io
      flexi-streams proc-parse quri smart-buffer split-sequence static-vectors
      trivial-features trivial-gray-streams vom xsubseq)
-    VERSION 20180228-git SIBLINGS NIL PARASITES NIL) */
+    VERSION 20180831-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/xsubseq.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/xsubseq.nix
index c70c3f2e1e12..b9ab71744c3a 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/xsubseq.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/xsubseq.nix
@@ -1,4 +1,4 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''xsubseq'';
   version = ''20170830-git'';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/yacc.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/yacc.nix
index 733185e2b26f..c7031f4aa3fc 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/yacc.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/yacc.nix
@@ -1,4 +1,4 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''yacc'';
   version = ''cl-20101006-darcs'';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/zpb-ttf.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/zpb-ttf.nix
index 090aa670ad9e..74e5d7e97e95 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/zpb-ttf.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/zpb-ttf.nix
@@ -1,4 +1,4 @@
-{ fetchurl, ... }:
+args @ { fetchurl, ... }:
 rec {
   baseName = ''zpb-ttf'';
   version = ''1.0.3'';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-overrides.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-overrides.nix
index 91493d7431e8..face797fe2a3 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-overrides.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-overrides.nix
@@ -48,7 +48,7 @@ in
   cl_plus_ssl = addNativeLibs [pkgs.openssl];
   cl-colors = skipBuildPhase;
   cl-libuv = addNativeLibs [pkgs.libuv];
-  cl-async-ssl = addNativeLibs [pkgs.openssl];
+  cl-async-ssl = addNativeLibs [pkgs.openssl (import ./openssl-lib-marked.nix)];
   cl-async-test = addNativeLibs [pkgs.openssl];
   clsql = x: {
     propagatedBuildInputs = with pkgs; [mysql.connector-c postgresql sqlite zlib];
@@ -143,7 +143,8 @@ $out/lib/common-lisp/query-fs"
       fiveam md5 usocket
     ];
     parasites = [
-      "simple-date/tests"
+      # Needs pomo? Wants to do queries unconditionally?
+      # "simple-date/tests"
     ];
   };
   cl-postgres = x: {
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix.nix b/pkgs/development/lisp-modules/quicklisp-to-nix.nix
index 71d974d9711b..8a126d4fd986 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix.nix
@@ -6,9 +6,6 @@ let quicklisp-to-nix-packages = rec {
   buildLispPackage = callPackage ./define-package.nix;
   qlOverrides = callPackage ./quicklisp-to-nix-overrides.nix {};
 
-  "simple-date_slash_postgres-glue" = quicklisp-to-nix-packages."simple-date";
-
-
   "unit-test" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."unit-test" or (x: {}))
@@ -17,14 +14,6 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
-  "clack-socket" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."clack-socket" or (x: {}))
-       (import ./quicklisp-to-nix-output/clack-socket.nix {
-         inherit fetchurl;
-       }));
-
-
   "stefil" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."stefil" or (x: {}))
@@ -106,14 +95,6 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
-  "rfc2388" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."rfc2388" or (x: {}))
-       (import ./quicklisp-to-nix-output/rfc2388.nix {
-         inherit fetchurl;
-       }));
-
-
   "net_dot_didierverna_dot_asdf-flv" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."net_dot_didierverna_dot_asdf-flv" or (x: {}))
@@ -142,7 +123,6 @@ let quicklisp-to-nix-packages = rec {
          inherit fetchurl;
            "fiveam" = quicklisp-to-nix-packages."fiveam";
            "md5" = quicklisp-to-nix-packages."md5";
-           "simple-date_slash_postgres-glue" = quicklisp-to-nix-packages."simple-date_slash_postgres-glue";
            "split-sequence" = quicklisp-to-nix-packages."split-sequence";
            "usocket" = quicklisp-to-nix-packages."usocket";
        }));
@@ -255,6 +235,7 @@ let quicklisp-to-nix-packages = rec {
            "cxml-xml" = quicklisp-to-nix-packages."cxml-xml";
            "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
            "iterate" = quicklisp-to-nix-packages."iterate";
+           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
            "puri" = quicklisp-to-nix-packages."puri";
            "split-sequence" = quicklisp-to-nix-packages."split-sequence";
            "swank" = quicklisp-to-nix-packages."swank";
@@ -287,6 +268,7 @@ let quicklisp-to-nix-packages = rec {
            "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
            "iterate" = quicklisp-to-nix-packages."iterate";
            "lisp-unit2" = quicklisp-to-nix-packages."lisp-unit2";
+           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
            "puri" = quicklisp-to-nix-packages."puri";
            "split-sequence" = quicklisp-to-nix-packages."split-sequence";
            "swank" = quicklisp-to-nix-packages."swank";
@@ -364,14 +346,6 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
-  "md5" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."md5" or (x: {}))
-       (import ./quicklisp-to-nix-output/md5.nix {
-         inherit fetchurl;
-       }));
-
-
   "clsql-uffi" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."clsql-uffi" or (x: {}))
@@ -498,6 +472,7 @@ let quicklisp-to-nix-packages = rec {
            "cl-unicode" = quicklisp-to-nix-packages."cl-unicode";
            "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
            "iterate" = quicklisp-to-nix-packages."iterate";
+           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
            "symbol-munger" = quicklisp-to-nix-packages."symbol-munger";
        }));
 
@@ -510,6 +485,7 @@ let quicklisp-to-nix-packages = rec {
            "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
            "cl-unicode" = quicklisp-to-nix-packages."cl-unicode";
            "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
+           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
        }));
 
 
@@ -565,6 +541,14 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "rfc2388" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."rfc2388" or (x: {}))
+       (import ./quicklisp-to-nix-output/rfc2388.nix {
+         inherit fetchurl;
+       }));
+
+
   "named-readtables" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."named-readtables" or (x: {}))
@@ -589,6 +573,14 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "md5" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."md5" or (x: {}))
+       (import ./quicklisp-to-nix-output/md5.nix {
+         inherit fetchurl;
+       }));
+
+
   "map-set" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."map-set" or (x: {}))
@@ -688,11 +680,14 @@ let quicklisp-to-nix-packages = rec {
            "cl-syntax-annot" = quicklisp-to-nix-packages."cl-syntax-annot";
            "cl-utilities" = quicklisp-to-nix-packages."cl-utilities";
            "clack" = quicklisp-to-nix-packages."clack";
+           "clack-handler-hunchentoot" = quicklisp-to-nix-packages."clack-handler-hunchentoot";
+           "clack-socket" = quicklisp-to-nix-packages."clack-socket";
            "dexador" = quicklisp-to-nix-packages."dexador";
            "fast-http" = quicklisp-to-nix-packages."fast-http";
            "fast-io" = quicklisp-to-nix-packages."fast-io";
            "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
            "http-body" = quicklisp-to-nix-packages."http-body";
+           "hunchentoot" = quicklisp-to-nix-packages."hunchentoot";
            "ironclad" = quicklisp-to-nix-packages."ironclad";
            "jonathan" = quicklisp-to-nix-packages."jonathan";
            "lack" = quicklisp-to-nix-packages."lack";
@@ -701,14 +696,17 @@ let quicklisp-to-nix-packages = rec {
            "lack-util" = quicklisp-to-nix-packages."lack-util";
            "let-plus" = quicklisp-to-nix-packages."let-plus";
            "local-time" = quicklisp-to-nix-packages."local-time";
+           "md5" = quicklisp-to-nix-packages."md5";
            "named-readtables" = quicklisp-to-nix-packages."named-readtables";
            "nibbles" = quicklisp-to-nix-packages."nibbles";
            "proc-parse" = quicklisp-to-nix-packages."proc-parse";
            "prove" = quicklisp-to-nix-packages."prove";
            "quri" = quicklisp-to-nix-packages."quri";
+           "rfc2388" = quicklisp-to-nix-packages."rfc2388";
            "smart-buffer" = quicklisp-to-nix-packages."smart-buffer";
            "split-sequence" = quicklisp-to-nix-packages."split-sequence";
            "static-vectors" = quicklisp-to-nix-packages."static-vectors";
+           "trivial-backtrace" = quicklisp-to-nix-packages."trivial-backtrace";
            "trivial-features" = quicklisp-to-nix-packages."trivial-features";
            "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
            "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
@@ -719,6 +717,42 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "clack-socket" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."clack-socket" or (x: {}))
+       (import ./quicklisp-to-nix-output/clack-socket.nix {
+         inherit fetchurl;
+       }));
+
+
+  "clack-handler-hunchentoot" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."clack-handler-hunchentoot" or (x: {}))
+       (import ./quicklisp-to-nix-output/clack-handler-hunchentoot.nix {
+         inherit fetchurl;
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "babel" = quicklisp-to-nix-packages."babel";
+           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
+           "cffi" = quicklisp-to-nix-packages."cffi";
+           "chunga" = quicklisp-to-nix-packages."chunga";
+           "cl_plus_ssl" = quicklisp-to-nix-packages."cl_plus_ssl";
+           "cl-base64" = quicklisp-to-nix-packages."cl-base64";
+           "cl-fad" = quicklisp-to-nix-packages."cl-fad";
+           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
+           "clack-socket" = quicklisp-to-nix-packages."clack-socket";
+           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
+           "hunchentoot" = quicklisp-to-nix-packages."hunchentoot";
+           "md5" = quicklisp-to-nix-packages."md5";
+           "rfc2388" = quicklisp-to-nix-packages."rfc2388";
+           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
+           "trivial-backtrace" = quicklisp-to-nix-packages."trivial-backtrace";
+           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
+           "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
+           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
+           "usocket" = quicklisp-to-nix-packages."usocket";
+       }));
+
+
   "cl-syntax" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."cl-syntax" or (x: {}))
@@ -1056,7 +1090,6 @@ let quicklisp-to-nix-packages = rec {
        (import ./quicklisp-to-nix-output/simple-date.nix {
          inherit fetchurl;
            "cl-postgres" = quicklisp-to-nix-packages."cl-postgres";
-           "fiveam" = quicklisp-to-nix-packages."fiveam";
            "md5" = quicklisp-to-nix-packages."md5";
            "usocket" = quicklisp-to-nix-packages."usocket";
        }));
@@ -1692,6 +1725,7 @@ let quicklisp-to-nix-packages = rec {
            "cxml-xml" = quicklisp-to-nix-packages."cxml-xml";
            "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
            "iterate" = quicklisp-to-nix-packages."iterate";
+           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
            "parse-number" = quicklisp-to-nix-packages."parse-number";
            "puri" = quicklisp-to-nix-packages."puri";
            "split-sequence" = quicklisp-to-nix-packages."split-sequence";
@@ -1728,6 +1762,7 @@ let quicklisp-to-nix-packages = rec {
            "cxml-xml" = quicklisp-to-nix-packages."cxml-xml";
            "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
            "iterate" = quicklisp-to-nix-packages."iterate";
+           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
            "puri" = quicklisp-to-nix-packages."puri";
            "split-sequence" = quicklisp-to-nix-packages."split-sequence";
            "string-case" = quicklisp-to-nix-packages."string-case";
@@ -1763,6 +1798,7 @@ let quicklisp-to-nix-packages = rec {
            "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
            "iterate" = quicklisp-to-nix-packages."iterate";
            "lisp-unit2" = quicklisp-to-nix-packages."lisp-unit2";
+           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
            "puri" = quicklisp-to-nix-packages."puri";
            "split-sequence" = quicklisp-to-nix-packages."split-sequence";
            "swank" = quicklisp-to-nix-packages."swank";
@@ -2254,6 +2290,7 @@ let quicklisp-to-nix-packages = rec {
            "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
            "iterate" = quicklisp-to-nix-packages."iterate";
            "lisp-unit2" = quicklisp-to-nix-packages."lisp-unit2";
+           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
        }));
 
 
@@ -2420,12 +2457,15 @@ let quicklisp-to-nix-packages = rec {
            "cl-syntax-annot" = quicklisp-to-nix-packages."cl-syntax-annot";
            "cl-utilities" = quicklisp-to-nix-packages."cl-utilities";
            "clack" = quicklisp-to-nix-packages."clack";
+           "clack-handler-hunchentoot" = quicklisp-to-nix-packages."clack-handler-hunchentoot";
+           "clack-socket" = quicklisp-to-nix-packages."clack-socket";
            "clack-test" = quicklisp-to-nix-packages."clack-test";
            "dexador" = quicklisp-to-nix-packages."dexador";
            "fast-http" = quicklisp-to-nix-packages."fast-http";
            "fast-io" = quicklisp-to-nix-packages."fast-io";
            "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
            "http-body" = quicklisp-to-nix-packages."http-body";
+           "hunchentoot" = quicklisp-to-nix-packages."hunchentoot";
            "ironclad" = quicklisp-to-nix-packages."ironclad";
            "jonathan" = quicklisp-to-nix-packages."jonathan";
            "lack" = quicklisp-to-nix-packages."lack";
@@ -2435,11 +2475,13 @@ let quicklisp-to-nix-packages = rec {
            "let-plus" = quicklisp-to-nix-packages."let-plus";
            "local-time" = quicklisp-to-nix-packages."local-time";
            "marshal" = quicklisp-to-nix-packages."marshal";
+           "md5" = quicklisp-to-nix-packages."md5";
            "named-readtables" = quicklisp-to-nix-packages."named-readtables";
            "nibbles" = quicklisp-to-nix-packages."nibbles";
            "proc-parse" = quicklisp-to-nix-packages."proc-parse";
            "prove" = quicklisp-to-nix-packages."prove";
            "quri" = quicklisp-to-nix-packages."quri";
+           "rfc2388" = quicklisp-to-nix-packages."rfc2388";
            "smart-buffer" = quicklisp-to-nix-packages."smart-buffer";
            "split-sequence" = quicklisp-to-nix-packages."split-sequence";
            "static-vectors" = quicklisp-to-nix-packages."static-vectors";
@@ -2555,6 +2597,8 @@ let quicklisp-to-nix-packages = rec {
            "cl-syntax-annot" = quicklisp-to-nix-packages."cl-syntax-annot";
            "cl-utilities" = quicklisp-to-nix-packages."cl-utilities";
            "clack" = quicklisp-to-nix-packages."clack";
+           "clack-handler-hunchentoot" = quicklisp-to-nix-packages."clack-handler-hunchentoot";
+           "clack-socket" = quicklisp-to-nix-packages."clack-socket";
            "clack-test" = quicklisp-to-nix-packages."clack-test";
            "clack-v1-compat" = quicklisp-to-nix-packages."clack-v1-compat";
            "dexador" = quicklisp-to-nix-packages."dexador";
@@ -2563,6 +2607,7 @@ let quicklisp-to-nix-packages = rec {
            "fast-io" = quicklisp-to-nix-packages."fast-io";
            "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
            "http-body" = quicklisp-to-nix-packages."http-body";
+           "hunchentoot" = quicklisp-to-nix-packages."hunchentoot";
            "ironclad" = quicklisp-to-nix-packages."ironclad";
            "jonathan" = quicklisp-to-nix-packages."jonathan";
            "lack" = quicklisp-to-nix-packages."lack";
@@ -2573,12 +2618,14 @@ let quicklisp-to-nix-packages = rec {
            "local-time" = quicklisp-to-nix-packages."local-time";
            "map-set" = quicklisp-to-nix-packages."map-set";
            "marshal" = quicklisp-to-nix-packages."marshal";
+           "md5" = quicklisp-to-nix-packages."md5";
            "myway" = quicklisp-to-nix-packages."myway";
            "named-readtables" = quicklisp-to-nix-packages."named-readtables";
            "nibbles" = quicklisp-to-nix-packages."nibbles";
            "proc-parse" = quicklisp-to-nix-packages."proc-parse";
            "prove" = quicklisp-to-nix-packages."prove";
            "quri" = quicklisp-to-nix-packages."quri";
+           "rfc2388" = quicklisp-to-nix-packages."rfc2388";
            "smart-buffer" = quicklisp-to-nix-packages."smart-buffer";
            "split-sequence" = quicklisp-to-nix-packages."split-sequence";
            "static-vectors" = quicklisp-to-nix-packages."static-vectors";
diff --git a/pkgs/development/lisp-modules/shell.nix b/pkgs/development/lisp-modules/shell.nix
index 9eba1e15b799..b3d50b2fb075 100644
--- a/pkgs/development/lisp-modules/shell.nix
+++ b/pkgs/development/lisp-modules/shell.nix
@@ -1,5 +1,6 @@
 with import ../../../default.nix {};
 let
+openssl_lib_marked = import ./openssl-lib-marked.nix;
 self = rec {
   name = "ql-to-nix";
   env = buildEnv { name = name; paths = buildInputs; };
@@ -10,6 +11,6 @@ self = rec {
     lispPackages.quicklisp-to-nix lispPackages.quicklisp-to-nix-system-info
   ];
   CPATH = "${libfixposix}/include";
-  LD_LIBRARY_PATH = "${openssl.out}/lib:${fuse}/lib:${libuv}/lib:${libev}/lib:${mysql.connector-c}/lib:${mysql.connector-c}/lib/mysql:${postgresql.lib}/lib:${sqlite.out}/lib:${libfixposix}/lib:${freetds}/lib";
+  LD_LIBRARY_PATH = "${openssl.out}/lib:${fuse}/lib:${libuv}/lib:${libev}/lib:${mysql.connector-c}/lib:${mysql.connector-c}/lib/mysql:${postgresql.lib}/lib:${sqlite.out}/lib:${libfixposix}/lib:${freetds}/lib:${openssl_lib_marked}/lib";
 };
 in stdenv.mkDerivation self
diff --git a/pkgs/development/mobile/androidenv/androidndk.nix b/pkgs/development/mobile/androidenv/androidndk.nix
index 78995f3155b3..072a6dc3168e 100644
--- a/pkgs/development/mobile/androidenv/androidndk.nix
+++ b/pkgs/development/mobile/androidenv/androidndk.nix
@@ -1,96 +1,110 @@
 { stdenv, fetchurl, zlib, ncurses5, unzip, lib, makeWrapper
 , coreutils, file, findutils, gawk, gnugrep, gnused, jdk, which
-, platformTools, python3, libcxx, version, sha1s
+, platformTools, python3, libcxx, version, sha1s, bash, runCommand
 , fullNDK ? false # set to true if you want other parts of the NDK
                   # that is not used by Nixpkgs like sources,
                   # examples, docs, or LLVM toolchains
 }:
 
-stdenv.mkDerivation rec {
-  name = "android-ndk-r${version}";
-  inherit version;
+let
+  makeStandaloneToolchain = api: arch: let
+      full_ndk = (ndk true);
+    in runCommand "makeStandaloneToolchain-${version}" {} ''
+      ${full_ndk}/libexec/${full_ndk.name}/build/tools/make_standalone_toolchain.py --api ${toString api} --arch ${arch} --install-dir $out
+    '';
+  ndk = fullNDK: stdenv.mkDerivation rec {
+    name = "android-ndk-r${version}";
+    inherit version;
 
-  src = fetchurl {
-    url = "https://dl.google.com/android/repository/${name}-${stdenv.hostPlatform.parsed.kernel.name}-${stdenv.hostPlatform.parsed.cpu.name}.zip";
-    sha1 = sha1s.${stdenv.hostPlatform.system} or (throw "platform ${stdenv.hostPlatform.system} not supported!");
-  };
+    src = fetchurl {
+      url = "https://dl.google.com/android/repository/${name}-${stdenv.hostPlatform.parsed.kernel.name}-${stdenv.hostPlatform.parsed.cpu.name}.zip";
+      sha1 = sha1s.${stdenv.hostPlatform.system} or (throw "platform ${stdenv.hostPlatform.system} not supported!");
+    };
+
+    phases = "buildPhase";
 
-  phases = "buildPhase";
+    nativeBuildInputs = [ unzip makeWrapper file ];
 
-  nativeBuildInputs = [ unzip makeWrapper file ];
+    buildCommand = let
+      bin_path = "$out/bin";
+      pkg_path = "$out/libexec/${name}";
+      sed_script_1 =
+        "'s|^PROGDIR=`dirname $0`" +
+        "|PROGDIR=`dirname $(readlink -f $(which $0))`|'";
+      runtime_paths = (lib.makeBinPath [
+        coreutils file findutils
+        gawk gnugrep gnused
+        jdk python3 which
+      ]) + ":${platformTools}/platform-tools";
+    in ''
+      mkdir -pv $out/libexec
+      cd $out/libexec
+      unzip -qq $src
 
-  buildCommand = let
-    bin_path = "$out/bin";
-    pkg_path = "$out/libexec/${name}";
-    sed_script_1 =
-      "'s|^PROGDIR=`dirname $0`" +
-      "|PROGDIR=`dirname $(readlink -f $(which $0))`|'";
-    runtime_paths = (lib.makeBinPath [
-      coreutils file findutils
-      gawk gnugrep gnused
-      jdk python3 which
-    ]) + ":${platformTools}/platform-tools";
-  in ''
-    mkdir -pv $out/libexec
-    cd $out/libexec
-    unzip -qq $src
+      # so that it doesn't fail because of read-only permissions set
+      cd -
+      ${if (version == "10e") then
+          ''
+            patch -p1 \
+              --no-backup-if-mismatch \
+              -d $out/libexec/${name} < ${ ./make-standalone-toolchain_r10e.patch }
+          ''
+        else
+          ''
+            patch -p1 \
+              --no-backup-if-mismatch \
+              -d $out/libexec/${name} < ${ ./. + "/make_standalone_toolchain.py_" + "${version}" + ".patch" }
 
-    patchShebangs ${pkg_path}
+            sed -i 's,#!/usr/bin/env python,#!${python3}/bin/python,g' ${pkg_path}/build/tools/make_standalone_toolchain.py
+            sed -i 's,#!/bin/bash,#!${bash}/bin/bash,g' ${pkg_path}/build/tools/make_standalone_toolchain.py
+            wrapProgram ${pkg_path}/build/tools/make_standalone_toolchain.py --prefix PATH : "${runtime_paths}"
+          ''
+      }
 
-    # so that it doesn't fail because of read-only permissions set
-    cd -
-    ${if (version == "10e") then
-        ''
-          patch -p1 \
-            --no-backup-if-mismatch \
-            -d $out/libexec/${name} < ${ ./make-standalone-toolchain_r10e.patch }
-        ''
-      else
-        ''
-          patch -p1 \
-            --no-backup-if-mismatch \
-            -d $out/libexec/${name} < ${ ./. + builtins.toPath ("/make_standalone_toolchain.py_" + "${version}" + ".patch") }
-          wrapProgram ${pkg_path}/build/tools/make_standalone_toolchain.py --prefix PATH : "${runtime_paths}"
-        ''
-    }
-    cd ${pkg_path}
+      patchShebangs ${pkg_path}
 
-  '' + lib.optionalString (!fullNDK) ''
-    # Steps to reduce output size
-    rm -rf docs sources tests
-    # We only support cross compiling with gcc for now
-    rm -rf toolchains/*-clang* toolchains/llvm*
-  '' +
+      cd ${pkg_path}
 
-  ''
-    find ${pkg_path}/toolchains \( \
-        \( -type f -a -name "*.so*" \) -o \
-        \( -type f -a -perm -0100 \) \
-        \) -exec patchelf --set-interpreter ${stdenv.cc.libc.out}/lib/ld-*so.? \
-                          --set-rpath ${stdenv.lib.makeLibraryPath [ libcxx zlib ncurses5 ]} {} \;
-    # fix ineffective PROGDIR / MYNDKDIR determination
-    for i in ndk-build ${lib.optionalString (version == "10e") "ndk-gdb ndk-gdb-py"}
-    do
-        sed -i -e ${sed_script_1} $i
-    done
+    '' + lib.optionalString (!fullNDK) ''
+      # Steps to reduce output size
+      rm -rf docs sources tests
+      # We only support cross compiling with gcc for now
+      rm -rf toolchains/*-clang* toolchains/llvm*
+    '' +
 
-    # wrap
-    for i in ndk-build ${lib.optionalString (version == "10e") "ndk-gdb ndk-gdb-py ndk-which"}
-    do
-        wrapProgram "$(pwd)/$i" --prefix PATH : "${runtime_paths}"
-    done
-    # make some executables available in PATH
-    mkdir -pv ${bin_path}
-    for i in \
-        ndk-build ${lib.optionalString (version == "10e") "ndk-depends ndk-gdb ndk-gdb-py ndk-gdb.py ndk-stack ndk-which"}
-    do
-        ln -sf ${pkg_path}/$i ${bin_path}/$i
-    done
-  '';
+    ''
+      find ${pkg_path}/toolchains \( \
+          \( -type f -a -name "*.so*" \) -o \
+          \( -type f -a -perm -0100 \) \
+          \) -exec patchelf --set-interpreter ${stdenv.cc.libc.out}/lib/ld-*so.? \
+                            --set-rpath ${stdenv.lib.makeLibraryPath [ libcxx zlib ncurses5 ]} {} \;
+      # fix ineffective PROGDIR / MYNDKDIR determination
+      for i in ndk-build ${lib.optionalString (version == "10e") "ndk-gdb ndk-gdb-py"}
+      do
+          sed -i -e ${sed_script_1} $i
+      done
 
-  meta = {
-    platforms = builtins.attrNames sha1s;
-    hydraPlatforms = [];
-    license = stdenv.lib.licenses.asl20;
+      # wrap
+      for i in ndk-build ${lib.optionalString (version == "10e") "ndk-gdb ndk-gdb-py ndk-which"}
+      do
+          wrapProgram "$(pwd)/$i" --prefix PATH : "${runtime_paths}"
+      done
+      # make some executables available in PATH
+      mkdir -pv ${bin_path}
+      for i in \
+          ndk-build ${lib.optionalString (version == "10e") "ndk-depends ndk-gdb ndk-gdb-py ndk-gdb.py ndk-stack ndk-which"}
+      do
+          ln -sf ${pkg_path}/$i ${bin_path}/$i
+      done
+    '';
+
+    meta = {
+      platforms = builtins.attrNames sha1s;
+      hydraPlatforms = [];
+      license = stdenv.lib.licenses.asl20;
+    };
+  };
+  passthru = {
+    inherit makeStandaloneToolchain;
   };
-}
+in lib.extendDerivation true passthru (ndk fullNDK)
diff --git a/pkgs/development/node-packages/default-v8.nix b/pkgs/development/node-packages/default-v8.nix
index 4eb22d5cbc38..0144400859ab 100644
--- a/pkgs/development/node-packages/default-v8.nix
+++ b/pkgs/development/node-packages/default-v8.nix
@@ -78,6 +78,12 @@ nodePackages // {
     '';
   };
 
+  statsd = nodePackages.statsd.override {
+    # broken with node v8, dead upstream,
+    # see #45946 and https://github.com/etsy/statsd/issues/646
+    meta.broken = true;
+  };
+
   webdrvr = nodePackages.webdrvr.override {
     buildInputs = [ pkgs.phantomjs ];
 
diff --git a/pkgs/development/node-packages/node-packages-v8.json b/pkgs/development/node-packages/node-packages-v8.json
index 6ac941eb7c48..38d5008ad8c5 100644
--- a/pkgs/development/node-packages/node-packages-v8.json
+++ b/pkgs/development/node-packages/node-packages-v8.json
@@ -30,6 +30,7 @@
 , "fetch-bower"
 , "forever"
 , "git-run"
+, "git-ssb"
 , "git-standup"
 , "graphql-cli"
 , "grunt-cli"
@@ -95,6 +96,7 @@
 , "react-tools"
 , "react-native-cli"
 , "s3http"
+, "scuttlebot"
 , "semver"
 , "serve"
 , "shout"
diff --git a/pkgs/development/node-packages/node-packages-v8.nix b/pkgs/development/node-packages/node-packages-v8.nix
index 0e6970dbea18..3efef820a9b5 100644
--- a/pkgs/development/node-packages/node-packages-v8.nix
+++ b/pkgs/development/node-packages/node-packages-v8.nix
@@ -31,6 +31,15 @@ let
         sha512 = "QAZIFrfVRkjvMkUHIQKZXZ3La0V5t12w5PWrhihYEabHwzIZV/txQd/kSYHgYPXC4s5OURxsXZop9f0BzI2QIQ==";
       };
     };
+    "@babel/code-frame-7.0.0" = {
+      name = "_at_babel_slash_code-frame";
+      packageName = "@babel/code-frame";
+      version = "7.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0.tgz";
+        sha512 = "OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA==";
+      };
+    };
     "@babel/generator-7.0.0-beta.38" = {
       name = "_at_babel_slash_generator";
       packageName = "@babel/generator";
@@ -40,6 +49,15 @@ let
         sha512 = "aOHQPhsEyaB6p2n+AK981+onHoc+Ork9rcAQVSUJR33wUkGiWRpu6/C685knRyIZVsKeSdG5Q4xMiYeFUhuLzA==";
       };
     };
+    "@babel/highlight-7.0.0" = {
+      name = "_at_babel_slash_highlight";
+      packageName = "@babel/highlight";
+      version = "7.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/highlight/-/highlight-7.0.0.tgz";
+        sha512 = "UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw==";
+      };
+    };
     "@babel/runtime-7.0.0" = {
       name = "_at_babel_slash_runtime";
       packageName = "@babel/runtime";
@@ -193,13 +211,13 @@ let
         sha512 = "CNVsCrMge/jq6DCT5buNZ8PACY9RTvPJbCNoIcndfkJOCsNxOx9dnc5qw4pHZdHi8GS6l3qlgkuFKp33iD8J2Q==";
       };
     };
-    "@lerna/add-3.1.4" = {
+    "@lerna/add-3.2.0" = {
       name = "_at_lerna_slash_add";
       packageName = "@lerna/add";
-      version = "3.1.4";
+      version = "3.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/add/-/add-3.1.4.tgz";
-        sha512 = "jC4k1EkniPA003Fj8NQkRjdue29BJRRPfbnTqPCmhjmwQKy2dj71256o28eBYoWcouUivA0voz+r+H9sLMqbfA==";
+        url = "https://registry.npmjs.org/@lerna/add/-/add-3.2.0.tgz";
+        sha512 = "qGA7agAWcKlrXZR3FwFJXTr26Q2rqjOVMNhtm8uyawImqfdKp4WJXuGdioiWOSW20jMvzLIFhWZh5lCh0UyMBw==";
       };
     };
     "@lerna/batch-packages-3.1.2" = {
@@ -211,22 +229,22 @@ let
         sha512 = "HAkpptrYeUVlBYbLScXgeCgk6BsNVXxDd53HVWgzzTWpXV4MHpbpeKrByyt7viXlNhW0w73jJbipb/QlFsHIhQ==";
       };
     };
-    "@lerna/bootstrap-3.1.4" = {
+    "@lerna/bootstrap-3.2.0" = {
       name = "_at_lerna_slash_bootstrap";
       packageName = "@lerna/bootstrap";
-      version = "3.1.4";
+      version = "3.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/bootstrap/-/bootstrap-3.1.4.tgz";
-        sha512 = "GN3/ll73hXQzsFEKW1d6xgMKf6t4kxTXDGhiMF1uc8DdbrK1arA1MMWhXrjMYJAaMldMzNnGeE3Kb1MxKxXWPw==";
+        url = "https://registry.npmjs.org/@lerna/bootstrap/-/bootstrap-3.2.0.tgz";
+        sha512 = "xh6dPpdzsAEWF7lqASaym5AThkmP3ArR7Q+P/tiPWCT+OT7QT5QI2IQAz1aAYEBQL3ACzpE6kq+VOGi0m+9bxw==";
       };
     };
-    "@lerna/changed-3.1.3" = {
+    "@lerna/changed-3.2.0" = {
       name = "_at_lerna_slash_changed";
       packageName = "@lerna/changed";
-      version = "3.1.3";
+      version = "3.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/changed/-/changed-3.1.3.tgz";
-        sha512 = "6KyyAl/qcxFeKOfuTDJlgh3aNOf6KQDxckEitmOFRi9scIZd7Igj/V9DQSvKoMORGk8wBwbpeLNJ9TN9xbm4qw==";
+        url = "https://registry.npmjs.org/@lerna/changed/-/changed-3.2.0.tgz";
+        sha512 = "R+vGzzXPN5s5lJT0v1zSTLw43O2ek2yekqCqvw7p9UFqgqYSbxUsyWXMdhku/mOIFWTc6DzrsOi+U7CX3TXmHg==";
       };
     };
     "@lerna/check-working-tree-3.1.0" = {
@@ -256,13 +274,13 @@ let
         sha512 = "XVdcIOjhudXlk5pTXjrpsnNLqeVi2rBu2oWzPH2GHrxWGBZBW8thGIFhQf09da/RbRT3uzBWXpUv+sbL2vbX3g==";
       };
     };
-    "@lerna/cli-3.1.4" = {
+    "@lerna/cli-3.2.0" = {
       name = "_at_lerna_slash_cli";
       packageName = "@lerna/cli";
-      version = "3.1.4";
+      version = "3.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/cli/-/cli-3.1.4.tgz";
-        sha512 = "e63YpwIgXU87gGDpqxr2mQnkxwIIt03FtgWlAId7uySVwTLT7j5u0yMbFR1CVkWvUSBY76JSCsX5u/Z1CfJUpQ==";
+        url = "https://registry.npmjs.org/@lerna/cli/-/cli-3.2.0.tgz";
+        sha512 = "JdbLyTxHqxUlrkI+Ke+ltXbtyA+MPu9zR6kg/n8Fl6uaez/2fZWtReXzYi8MgLxfUFa7+1OHWJv4eAMZlByJ+Q==";
       };
     };
     "@lerna/collect-updates-3.1.0" = {
@@ -463,13 +481,13 @@ let
         sha512 = "e0sspVUfzEKhqsRIxzWqZ/uMBHzZSzOa4HCeORErEZu+dmDoI145XYhqvCVn7EvbAb407FV2H9GVeoP0JeG8GQ==";
       };
     };
-    "@lerna/npm-publish-3.0.6" = {
+    "@lerna/npm-publish-3.2.0" = {
       name = "_at_lerna_slash_npm-publish";
       packageName = "@lerna/npm-publish";
-      version = "3.0.6";
+      version = "3.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/npm-publish/-/npm-publish-3.0.6.tgz";
-        sha512 = "PlvKr958TowEOOe2yNtmUi/Ot42TS/edlmA7rj+XtDUR51AN3RB9G6b25TElyrnDksj1ayb3mOF7I2uf1gbyOw==";
+        url = "https://registry.npmjs.org/@lerna/npm-publish/-/npm-publish-3.2.0.tgz";
+        sha512 = "x13EGrjZk9w8gCQAE44aKbeO1xhLizLJ4tKjzZmQqKEaUCugF4UU8ZRGshPMRFBdsHTEWh05dkKx2oPMoaf0dw==";
       };
     };
     "@lerna/npm-run-script-3.0.0" = {
@@ -526,13 +544,13 @@ let
         sha512 = "EzvNexDTh//GlpOz68zRo16NdOIqWqiiXMs9tIxpELQubH+kUGKvBSiBrZ2Zyrfd8pQhIf+8qARtkCG+G7wzQQ==";
       };
     };
-    "@lerna/publish-3.1.3" = {
+    "@lerna/publish-3.2.1" = {
       name = "_at_lerna_slash_publish";
       packageName = "@lerna/publish";
-      version = "3.1.3";
+      version = "3.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/publish/-/publish-3.1.3.tgz";
-        sha512 = "vlHs1ll3HEbTVgO0hVFo9dMKixV9XO3T7OBCK835j8fw4TL/0y+YjmNjH5Y5Uyh02hZxcy/iosZNyGccu/fG3w==";
+        url = "https://registry.npmjs.org/@lerna/publish/-/publish-3.2.1.tgz";
+        sha512 = "SnSBstK/G9qLt5rS56pihNacgsu3UgxXiCexWb57GGEp2eDguQ7rFzxVs4JMQQWmVG97EMJQxfFV54tW2sqtIw==";
       };
     };
     "@lerna/resolve-symlink-3.0.0" = {
@@ -562,13 +580,13 @@ let
         sha512 = "O26WdR+sQFSG2Fpc67nw+m8oVq3R+H6jsscKuB6VJafU+V4/hPURSbuFZIcmnD9MLmzAIhlQiCf0Fy6s/1MPPA==";
       };
     };
-    "@lerna/run-lifecycle-3.0.0" = {
+    "@lerna/run-lifecycle-3.2.0" = {
       name = "_at_lerna_slash_run-lifecycle";
       packageName = "@lerna/run-lifecycle";
-      version = "3.0.0";
+      version = "3.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/run-lifecycle/-/run-lifecycle-3.0.0.tgz";
-        sha512 = "kfq6eC5mCreTk7GusZyvF0/BfU9FDEt8JaUgzNKLrK1Sj6z2RO8uSpFsUlj+7OuV4wo0I+rdTdJOAFoW8C0GZw==";
+        url = "https://registry.npmjs.org/@lerna/run-lifecycle/-/run-lifecycle-3.2.0.tgz";
+        sha512 = "kGGdHJRyeZF+VTtal1DBptg6qwIsOLg3pKtmRm1rCMNN7j4kgrA9L07ZoRar8LjQXvfuheB1LSKHd5d04pr4Tg==";
       };
     };
     "@lerna/run-parallel-batches-3.0.0" = {
@@ -607,13 +625,13 @@ let
         sha512 = "5wjkd2PszV0kWvH+EOKZJWlHEqCTTKrWsvfHnHhcUaKBe/NagPZFWs+0xlsDPZ3DJt5FNfbAPAnEBQ05zLirFA==";
       };
     };
-    "@lerna/version-3.1.3" = {
+    "@lerna/version-3.2.0" = {
       name = "_at_lerna_slash_version";
       packageName = "@lerna/version";
-      version = "3.1.3";
+      version = "3.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/version/-/version-3.1.3.tgz";
-        sha512 = "cKJc0FbSEJWdVLBpWgK1tM4nzwpVJ4IC3ESzEvTWYB0fIU/SAcf+m8x7d/kl8XtlybsKGegdMEgBWvzooaDQ9A==";
+        url = "https://registry.npmjs.org/@lerna/version/-/version-3.2.0.tgz";
+        sha512 = "1AVDMpeecSMiG1cacduE+f2KO0mC7F/9MvWsHtp+rjkpficMcsVme7IMtycuvu/F07wY4Xr9ioFKYTwTcybbIA==";
       };
     };
     "@lerna/write-log-file-3.0.0" = {
@@ -967,31 +985,31 @@ let
         sha512 = "TeiJ7uvv/92ugSqZ0v9l0eNXzutlki0aK+R1K5bfA5SYUil46ITlxLW4iNTCf55P4L5weCmaOdtxGeGWvudwPg==";
       };
     };
-    "@types/node-10.9.2" = {
+    "@types/node-10.9.4" = {
       name = "_at_types_slash_node";
       packageName = "@types/node";
-      version = "10.9.2";
+      version = "10.9.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/node/-/node-10.9.2.tgz";
-        sha512 = "pwZnkVyCGJ3LsQ0/3flQK5lCFao4esIzwUVzzk5NvL9vnkEyDhNf4fhHzUMHvyr56gNZywWTS2MR0euabMSz4A==";
+        url = "https://registry.npmjs.org/@types/node/-/node-10.9.4.tgz";
+        sha512 = "fCHV45gS+m3hH17zgkgADUSi2RR1Vht6wOZ0jyHP8rjiQra9f+mIcgwPQHllmDocYOstIEbKlxbFDYlgrTPYqw==";
       };
     };
-    "@types/node-6.0.116" = {
+    "@types/node-6.0.117" = {
       name = "_at_types_slash_node";
       packageName = "@types/node";
-      version = "6.0.116";
+      version = "6.0.117";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/node/-/node-6.0.116.tgz";
-        sha512 = "vToa8YEeulfyYg1gSOeHjvvIRqrokng62VMSj2hoZrwZNcYrp2h3AWo6KeBVuymIklQUaY5zgVJvVsC4KiiLkQ==";
+        url = "https://registry.npmjs.org/@types/node/-/node-6.0.117.tgz";
+        sha512 = "sihk0SnN8PpiS5ihu5xJQ5ddnURNq4P+XPmW+nORlKkHy21CoZO/IVHK/Wq/l3G8fFW06Fkltgnqx229uPlnRg==";
       };
     };
-    "@types/node-8.10.28" = {
+    "@types/node-8.10.29" = {
       name = "_at_types_slash_node";
       packageName = "@types/node";
-      version = "8.10.28";
+      version = "8.10.29";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/node/-/node-8.10.28.tgz";
-        sha512 = "iHsAzDg3OLH7JP+wipniUULHoDSWLgEDYOvsar6/mpAkTJd9/n23Ap8ikruMlvRTqMv/LXrflH9v/AfiEqaBGg==";
+        url = "https://registry.npmjs.org/@types/node/-/node-8.10.29.tgz";
+        sha512 = "zbteaWZ2mdduacm0byELwtRyhYE40aK+pAanQk415gr1eRuu67x7QGOLmn8jz5zI8LDK7d0WI/oT6r5Trz4rzQ==";
       };
     };
     "@types/range-parser-1.2.2" = {
@@ -1543,6 +1561,15 @@ let
         sha1 = "29e18e632e60e4e221d5810247852a63d7b2e410";
       };
     };
+    "abstract-leveldown-4.0.3" = {
+      name = "abstract-leveldown";
+      packageName = "abstract-leveldown";
+      version = "4.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-4.0.3.tgz";
+        sha512 = "qsIHFQy0u17JqSY+3ZUT+ykqxYY17yOfvAsLkFkw8kSQqi05d1jyj0bCuSX6sjYlXuY9cKpgUt5EudQdP4aXyA==";
+      };
+    };
     "abstract-random-access-1.1.2" = {
       name = "abstract-random-access";
       packageName = "abstract-random-access";
@@ -1732,13 +1759,13 @@ let
         sha1 = "f291be701a2efc567a63fc7aa6afcded31430be1";
       };
     };
-    "addons-linter-1.2.6" = {
+    "addons-linter-1.3.1" = {
       name = "addons-linter";
       packageName = "addons-linter";
-      version = "1.2.6";
+      version = "1.3.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/addons-linter/-/addons-linter-1.2.6.tgz";
-        sha512 = "8WjSUoleic9x3gS8SZF0kIvffrX7WkiRPF8Xs8CZi7Yu/Xq0qX9LOYG2Q66t9ThmTeMItt/24FxirqqdyFLGgw==";
+        url = "https://registry.npmjs.org/addons-linter/-/addons-linter-1.3.1.tgz";
+        sha512 = "Oaj8q8hXWwGhrzlMTM7LUxj5ZUxi8k8/pg0V/NlA3usgClngl7jXW4GRlobdoOao8KEnW95y/WNNMeoTbxYe4w==";
       };
     };
     "addr-to-ip-port-1.5.1" = {
@@ -1957,6 +1984,15 @@ let
         sha1 = "0cd90a561093f35d0a99256c22b7069433fad117";
       };
     };
+    "aligned-block-file-1.1.3" = {
+      name = "aligned-block-file";
+      packageName = "aligned-block-file";
+      version = "1.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/aligned-block-file/-/aligned-block-file-1.1.3.tgz";
+        sha512 = "ai/S+nZ9XMjC0ReZfq94OLGCICVBJyhNiKWmF1J+/GVZZaXtYV805plMi9obaWjfNl/QljB+VOsT+wQ7R858xA==";
+      };
+    };
     "almond-0.3.3" = {
       name = "almond";
       packageName = "almond";
@@ -2236,13 +2272,13 @@ let
         sha512 = "gVWKYyXF0SlpMyZ/i//AthzyPjjmAVYciEjwepLqMzIf0+7bzIwekpHDuzME8jf4XQepXcNNY571+BRyYHysmg==";
       };
     };
-    "apollo-cache-control-0.2.2" = {
+    "apollo-cache-control-0.2.3" = {
       name = "apollo-cache-control";
       packageName = "apollo-cache-control";
-      version = "0.2.2";
+      version = "0.2.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/apollo-cache-control/-/apollo-cache-control-0.2.2.tgz";
-        sha512 = "N5A1hO6nHZBCR+OCV58IlE7k6hZrFJZTf/Ab2WD8wduLSa0qLLRlCp3rXvD05+jpWa6sdKw03whW2omJ+SyT+w==";
+        url = "https://registry.npmjs.org/apollo-cache-control/-/apollo-cache-control-0.2.3.tgz";
+        sha512 = "W/SJouLRv1VqVd79yeMbDNrv77zJ+8vKbZW2aDjbzMUEyA1nODdJhsrxqlxlh+naK5L4i12DEEG/YhfQjnzM2w==";
       };
     };
     "apollo-cache-inmemory-1.2.9" = {
@@ -2272,22 +2308,22 @@ let
         sha512 = "jlxz/b5iinRWfh48hXdmMtrjTPn/rDok0Z3b7icvkiaD6I30w4sq9B+JDkFbLnkldzsFLV2BZtBDa/dkZhx8Ng==";
       };
     };
-    "apollo-datasource-0.1.2" = {
+    "apollo-datasource-0.1.3" = {
       name = "apollo-datasource";
       packageName = "apollo-datasource";
-      version = "0.1.2";
+      version = "0.1.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/apollo-datasource/-/apollo-datasource-0.1.2.tgz";
-        sha512 = "AbUxS7Qkz9+T+g19zKRJiA+tBVGVVunzXwd4ftDSYGx1VrF5LJJO7Gc57bk719gWIZneZ02HsVCEZd6NxFF8RQ==";
+        url = "https://registry.npmjs.org/apollo-datasource/-/apollo-datasource-0.1.3.tgz";
+        sha512 = "yEGEe5Cjzqqu5ml1VV3O8+C+thzdknZri9Ny0P3daTGNO+45J3vBOMcmaANeeI2+OOeWxdqUNa5aPOx/35kniw==";
       };
     };
-    "apollo-engine-reporting-0.0.2" = {
+    "apollo-engine-reporting-0.0.3" = {
       name = "apollo-engine-reporting";
       packageName = "apollo-engine-reporting";
-      version = "0.0.2";
+      version = "0.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/apollo-engine-reporting/-/apollo-engine-reporting-0.0.2.tgz";
-        sha512 = "Fe/1oxC8rUXRrBTMUiqs5PSb6hnMOJHuttJMhs83u5POfplc4QrKJZtEEU4Ui8mxeJGaGNWbWf+D4q645xdQLA==";
+        url = "https://registry.npmjs.org/apollo-engine-reporting/-/apollo-engine-reporting-0.0.3.tgz";
+        sha512 = "zkgPDB5w5/v450xOqqcV0/lJuaD1vk0cCeS7pAvaaTPGBGUVpSbZaGcsHUhmh1AJOL0it81u/i/6WVwWS3TJXQ==";
       };
     };
     "apollo-engine-reporting-protobuf-0.0.1" = {
@@ -2380,22 +2416,22 @@ let
         sha512 = "jBRnsTgXN0m8yVpumoelaUq9mXR7YpJ3EE+y/alI7zgXY+0qFDqksRApU8dEfg3q6qUnO7rFxRhdG5eyc0+1ig==";
       };
     };
-    "apollo-server-core-2.0.4" = {
+    "apollo-server-core-2.0.5" = {
       name = "apollo-server-core";
       packageName = "apollo-server-core";
-      version = "2.0.4";
+      version = "2.0.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/apollo-server-core/-/apollo-server-core-2.0.4.tgz";
-        sha512 = "6kNaQYZfX2GvAT1g9ih0rodfRl4hPL1jXb7b+FvQ1foFR5Yyb3oqL2DOcP65gQi/7pGhyNRUAncPU18Vo3u9rQ==";
+        url = "https://registry.npmjs.org/apollo-server-core/-/apollo-server-core-2.0.5.tgz";
+        sha512 = "bGeutygUhajJoc1hcuVWbZfHMn6eh0XBZK8evrnZkzG9zwuPSiJRdEu/sXPIeJ2iX7HbhOpHuMVImbhkPq+Haw==";
       };
     };
-    "apollo-server-env-2.0.2" = {
+    "apollo-server-env-2.0.3" = {
       name = "apollo-server-env";
       packageName = "apollo-server-env";
-      version = "2.0.2";
+      version = "2.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/apollo-server-env/-/apollo-server-env-2.0.2.tgz";
-        sha512 = "LsSh2TSF1Sh+TnKxCv2To+UNTnoPpBGCXn6fPsmiNqVaBaSagfZEU/aaSu3ftMlmfXr4vXAfYNUDMKEi+7E6Bg==";
+        url = "https://registry.npmjs.org/apollo-server-env/-/apollo-server-env-2.0.3.tgz";
+        sha512 = "uIfKFH8n8xKO0eLb9Fa79+s2DdMuVethgznvW6SrOYq5VzgkIIobqKEuZPKa5wObw9CkCyju/+Sr7b7WWMFxUQ==";
       };
     };
     "apollo-server-errors-2.0.2" = {
@@ -2407,22 +2443,22 @@ let
         sha512 = "zyWDqAVDCkj9espVsoUpZr9PwDznM8UW6fBfhV+i1br//s2AQb07N6ektZ9pRIEvkhykDZW+8tQbDwAO0vUROg==";
       };
     };
-    "apollo-server-express-2.0.4" = {
+    "apollo-server-express-2.0.5" = {
       name = "apollo-server-express";
       packageName = "apollo-server-express";
-      version = "2.0.4";
+      version = "2.0.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/apollo-server-express/-/apollo-server-express-2.0.4.tgz";
-        sha512 = "9mxcFpnTgQTmrsvVRRofEY7N1bJYholjv99IfN8puu5lhNqj8ZbOPZYrw+zd+Yh4rZSonwx76ZzTRzM00Yllfw==";
+        url = "https://registry.npmjs.org/apollo-server-express/-/apollo-server-express-2.0.5.tgz";
+        sha512 = "0Bun2wVflgMMhp9+LKz7tuJXIGmnNbWjvNHwxOtLfz3L6tmG+1Y+dLYBPLA7h1bzwYsACFP+glNTYn6/ErL/tA==";
       };
     };
-    "apollo-tracing-0.2.2" = {
+    "apollo-tracing-0.2.3" = {
       name = "apollo-tracing";
       packageName = "apollo-tracing";
-      version = "0.2.2";
+      version = "0.2.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/apollo-tracing/-/apollo-tracing-0.2.2.tgz";
-        sha512 = "zrpLRvaAqtzGufc1GfV+691xQtzq5elfBydg/7wzuaFszlMH66hkLas5Dw36drUX21CbCljOuGYvYzqSiKykuQ==";
+        url = "https://registry.npmjs.org/apollo-tracing/-/apollo-tracing-0.2.3.tgz";
+        sha512 = "N3CwLGSiTms4BqEz1IpjaJWLNdWiEmdfowU2+vPvvCQj8SN/HuAwK9BxRnr6BH8PD3i5Gzq7tFiMB0D0sN1+LA==";
       };
     };
     "apollo-upload-client-8.1.0" = {
@@ -2452,6 +2488,15 @@ let
         sha1 = "7e5dd327747078d877286fbb624b1e8f4d2b396b";
       };
     };
+    "append-batch-0.0.1" = {
+      name = "append-batch";
+      packageName = "append-batch";
+      version = "0.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/append-batch/-/append-batch-0.0.1.tgz";
+        sha1 = "9224858e556997ccc07f11f1ee9a128532aa0d25";
+      };
+    };
     "append-buffer-1.0.2" = {
       name = "append-buffer";
       packageName = "append-buffer";
@@ -2493,7 +2538,7 @@ let
       packageName = "applicationinsights";
       version = "0.16.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/applicationinsights/-/applicationinsights-0.16.0.tgz";
+        url = "http://registry.npmjs.org/applicationinsights/-/applicationinsights-0.16.0.tgz";
         sha1 = "e02dafb10cf573c19b429793c87797d6404f0ee3";
       };
     };
@@ -3163,6 +3208,24 @@ let
         sha512 = "FadV8UDcyZDjzb6eV7MCJj0bfrNjwKw7/X0QHPFCbYP6T20FXgZCYXpJKlQC8RxEQP1E6Xs8pNHdh3bcrZAuAw==";
       };
     };
+    "async-single-1.0.5" = {
+      name = "async-single";
+      packageName = "async-single";
+      version = "1.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/async-single/-/async-single-1.0.5.tgz";
+        sha1 = "125dd09de95d3ea30a378adbed021092179b03c9";
+      };
+    };
+    "async-write-2.1.0" = {
+      name = "async-write";
+      packageName = "async-write";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/async-write/-/async-write-2.1.0.tgz";
+        sha1 = "1e762817d849ce44bfac07925a42036787061b15";
+      };
+    };
     "asynckit-0.4.0" = {
       name = "asynckit";
       packageName = "asynckit";
@@ -3172,6 +3235,15 @@ let
         sha1 = "c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79";
       };
     };
+    "asyncmemo-1.0.0" = {
+      name = "asyncmemo";
+      packageName = "asyncmemo";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/asyncmemo/-/asyncmemo-1.0.0.tgz";
+        sha1 = "ef249dc869d6c07e7dfd4a22c8a18850bb39d7f1";
+      };
+    };
     "atob-2.1.2" = {
       name = "atob";
       packageName = "atob";
@@ -3190,6 +3262,33 @@ let
         sha1 = "d16901d10ccec59516c197b9ccd8930689b813b4";
       };
     };
+    "atomic-file-0.0.1" = {
+      name = "atomic-file";
+      packageName = "atomic-file";
+      version = "0.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/atomic-file/-/atomic-file-0.0.1.tgz";
+        sha1 = "6c36658f6c4ece33fba3877731e7c25fc82999bb";
+      };
+    };
+    "atomic-file-1.1.5" = {
+      name = "atomic-file";
+      packageName = "atomic-file";
+      version = "1.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/atomic-file/-/atomic-file-1.1.5.tgz";
+        sha512 = "TG+5YFiaKQ6CZiSQsosGMJ/IJzwMZ4V/rSdEXlD6+DwKyv8OyeUcprq34kp4yuS6bfQYXhxBC2Vm8PWo+iKBGQ==";
+      };
+    };
+    "attach-ware-1.1.1" = {
+      name = "attach-ware";
+      packageName = "attach-ware";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/attach-ware/-/attach-ware-1.1.1.tgz";
+        sha1 = "28f51393dd8bb8bdaad972342519bf09621a35a3";
+      };
+    };
     "auto-bind-1.2.1" = {
       name = "auto-bind";
       packageName = "auto-bind";
@@ -3204,17 +3303,17 @@ let
       packageName = "aws-sdk";
       version = "1.18.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-1.18.0.tgz";
+        url = "http://registry.npmjs.org/aws-sdk/-/aws-sdk-1.18.0.tgz";
         sha1 = "00f35b2d27ac91b1f0d3ef2084c98cf1d1f0adc3";
       };
     };
-    "aws-sdk-2.303.0" = {
+    "aws-sdk-2.307.0" = {
       name = "aws-sdk";
       packageName = "aws-sdk";
-      version = "2.303.0";
+      version = "2.307.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.303.0.tgz";
-        sha512 = "3AMEO/+aKNKvnIg1StF30Itbhs1SdUrUirCqlggS4bhLLOvyJVTrY+tJwASnPGsye4ffD6Qw8LRnaCytvDKkoQ==";
+        url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.307.0.tgz";
+        sha512 = "+RTDZvmn2tlyCUCUQvbj7XN3ZtSiqoSuxvQQCqXlrGxUvGbQ9wO4I3zcKQRlSsp1OGBgr5+jgBVjzEPLPGlxOg==";
       };
     };
     "aws-sign-0.2.1" = {
@@ -3384,7 +3483,7 @@ let
       packageName = "azure-arm-network";
       version = "5.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/azure-arm-network/-/azure-arm-network-5.3.0.tgz";
+        url = "http://registry.npmjs.org/azure-arm-network/-/azure-arm-network-5.3.0.tgz";
         sha512 = "juitxBWofPBZ+kcmLB8OjW5qPD6+/Ncdq86WjDTIUcH+cyb/GWktdDymv6adbOyz4xZ9/wbThFL7AHgq8cHBig==";
       };
     };
@@ -3447,7 +3546,7 @@ let
       packageName = "azure-arm-website";
       version = "0.11.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/azure-arm-website/-/azure-arm-website-0.11.5.tgz";
+        url = "http://registry.npmjs.org/azure-arm-website/-/azure-arm-website-0.11.5.tgz";
         sha1 = "51942423e1238ec19e551926353a8e9f73bc534a";
       };
     };
@@ -3672,7 +3771,7 @@ let
       packageName = "babel-plugin-syntax-jsx";
       version = "6.18.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz";
+        url = "http://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz";
         sha1 = "0af32a9a6e13ca7a3fd5069e62d7b0f58d0d8946";
       };
     };
@@ -3681,7 +3780,7 @@ let
       packageName = "babel-plugin-syntax-object-rest-spread";
       version = "6.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz";
+        url = "http://registry.npmjs.org/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz";
         sha1 = "fd6536f2bce13836ffa3a5458c4903a597bb3bf5";
       };
     };
@@ -3717,7 +3816,7 @@ let
       packageName = "babel-polyfill";
       version = "6.16.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.16.0.tgz";
+        url = "http://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.16.0.tgz";
         sha1 = "2d45021df87e26a374b6d4d1a9c65964d17f2422";
       };
     };
@@ -3829,6 +3928,15 @@ let
         sha1 = "f616eda9d3e4b66b8ca7fca79f695722c5f8e26f";
       };
     };
+    "bail-1.0.3" = {
+      name = "bail";
+      packageName = "bail";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/bail/-/bail-1.0.3.tgz";
+        sha512 = "1X8CnjFVQ+a+KW36uBNMTU5s8+v5FzeqrP7hTG5aTb4aPreSbZJlhwPon9VKMuEVgV++JM+SQrALY3kr7eswdg==";
+      };
+    };
     "balanced-match-1.0.0" = {
       name = "balanced-match";
       packageName = "balanced-match";
@@ -3928,6 +4036,15 @@ let
         sha1 = "199fd661702a0e7b7dcae6e0698bb089c52f6d78";
       };
     };
+    "base64-url-2.2.0" = {
+      name = "base64-url";
+      packageName = "base64-url";
+      version = "2.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/base64-url/-/base64-url-2.2.0.tgz";
+        sha512 = "Y4qHHAE+rWjmAFPQmHPiiD+hWwM/XvuFLlP6kVxlwZJK7rjiE2uIQR9tZ37iEr1E6iCj9799yxMAmiXzITb3lQ==";
+      };
+    };
     "base64id-0.1.0" = {
       name = "base64id";
       packageName = "base64id";
@@ -3946,6 +4063,15 @@ let
         sha1 = "47688cb99bb6804f0e06d3e763b1c32e57d8e6b6";
       };
     };
+    "bash-color-0.0.4" = {
+      name = "bash-color";
+      packageName = "bash-color";
+      version = "0.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/bash-color/-/bash-color-0.0.4.tgz";
+        sha1 = "e9be8ce33540cada4881768c59bd63865736e913";
+      };
+    };
     "basic-auth-1.0.4" = {
       name = "basic-auth";
       packageName = "basic-auth";
@@ -4108,13 +4234,13 @@ let
         sha1 = "159a49b9a9714c1fb102f2e0ed1906fab6a450f4";
       };
     };
-    "big-integer-1.6.34" = {
+    "big-integer-1.6.35" = {
       name = "big-integer";
       packageName = "big-integer";
-      version = "1.6.34";
+      version = "1.6.35";
       src = fetchurl {
-        url = "https://registry.npmjs.org/big-integer/-/big-integer-1.6.34.tgz";
-        sha512 = "+w6B0Uo0ZvTSzDkXjoBCTNK0oe+aVL+yPi7kwGZm8hd8+Nj1AFPoxoq1Bl/mEu/G/ivOkUc1LRqVR0XeWFUzuA==";
+        url = "https://registry.npmjs.org/big-integer/-/big-integer-1.6.35.tgz";
+        sha512 = "jqLsX6dzmPHOhApAUyGwrpzqn3DXpdTqbOM6baPys7A423ys7IsTpcucDVGP0PmzxGsPYbW3xVOJ4SxAzI0vqQ==";
       };
     };
     "big.js-3.2.0" = {
@@ -4248,7 +4374,7 @@ let
       packageName = "bittorrent-dht";
       version = "6.4.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/bittorrent-dht/-/bittorrent-dht-6.4.2.tgz";
+        url = "http://registry.npmjs.org/bittorrent-dht/-/bittorrent-dht-6.4.2.tgz";
         sha1 = "8b40f8cee6bea87f2b34fd2ae0bd367a8b1247a6";
       };
     };
@@ -4261,13 +4387,13 @@ let
         sha512 = "fvb6M58Ceiv/S94nu6zeaiMoJvUYOeIqRbgaClm+kJTzCAqJPtAR/31pXNYB5iEReOoKqQB5zY33gY0W6ZRWQQ==";
       };
     };
-    "bittorrent-dht-8.4.0" = {
+    "bittorrent-dht-9.0.0" = {
       name = "bittorrent-dht";
       packageName = "bittorrent-dht";
-      version = "8.4.0";
+      version = "9.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/bittorrent-dht/-/bittorrent-dht-8.4.0.tgz";
-        sha512 = "FRe/+MYBePev7Yb+BXSclkVuDxb/w+gUbao6nVHYQRaKO7aXE+ARRlL3phqm6Rdhw5CRVoLMbLd49nxmCuUhUQ==";
+        url = "https://registry.npmjs.org/bittorrent-dht/-/bittorrent-dht-9.0.0.tgz";
+        sha512 = "X5ax4G/PLtEPfqOUjqDZ2nmPENndWRMK4sT2jcQ4sXor904zhR40r4KqTyTvWYAljh5/hPPqM9DCUUtqWzRXoQ==";
       };
     };
     "bittorrent-peerid-1.3.0" = {
@@ -4360,6 +4486,15 @@ let
         sha512 = "oFIHvXhlz/DUgF0kq5B1CqxIDjIJwh9iDeUUGQUcvgiGz7Wdw03McEO7CfLBy7QKGdsydcMCgO9jFNBAFCtFcA==";
       };
     };
+    "blake2s-1.0.1" = {
+      name = "blake2s";
+      packageName = "blake2s";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/blake2s/-/blake2s-1.0.1.tgz";
+        sha1 = "1598822a320ece6aa401ba982954f82f61b0cd7b";
+      };
+    };
     "blob-0.0.2" = {
       name = "blob";
       packageName = "blob";
@@ -4410,7 +4545,7 @@ let
       packageName = "bluebird";
       version = "2.9.34";
       src = fetchurl {
-        url = "https://registry.npmjs.org/bluebird/-/bluebird-2.9.34.tgz";
+        url = "http://registry.npmjs.org/bluebird/-/bluebird-2.9.34.tgz";
         sha1 = "2f7b4ec80216328a9fddebdf69c8d4942feff7d8";
       };
     };
@@ -4419,17 +4554,17 @@ let
       packageName = "bluebird";
       version = "2.9.9";
       src = fetchurl {
-        url = "https://registry.npmjs.org/bluebird/-/bluebird-2.9.9.tgz";
+        url = "http://registry.npmjs.org/bluebird/-/bluebird-2.9.9.tgz";
         sha1 = "61a26904d43d7f6b19dff7ed917dbc92452ad6d3";
       };
     };
-    "bluebird-3.5.1" = {
+    "bluebird-3.5.2" = {
       name = "bluebird";
       packageName = "bluebird";
-      version = "3.5.1";
+      version = "3.5.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/bluebird/-/bluebird-3.5.1.tgz";
-        sha512 = "MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA==";
+        url = "https://registry.npmjs.org/bluebird/-/bluebird-3.5.2.tgz";
+        sha512 = "dhHTWMI7kMx5whMQntl7Vr9C6BvV10lFXDAasnqnrMYhXVCzzk6IO9Fo2L75jXHT07WrOngL1WDXOp+yYS91Yg==";
       };
     };
     "blueimp-md5-2.10.0" = {
@@ -4684,6 +4819,15 @@ let
         sha512 = "aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==";
       };
     };
+    "broadcast-stream-0.2.2" = {
+      name = "broadcast-stream";
+      packageName = "broadcast-stream";
+      version = "0.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/broadcast-stream/-/broadcast-stream-0.2.2.tgz";
+        sha1 = "79e7bb14a9abba77f72ac9258220242a8fd3919d";
+      };
+    };
     "broadway-0.3.6" = {
       name = "broadway";
       packageName = "broadway";
@@ -4878,7 +5022,7 @@ let
       packageName = "buffer";
       version = "3.6.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/buffer/-/buffer-3.6.0.tgz";
+        url = "http://registry.npmjs.org/buffer/-/buffer-3.6.0.tgz";
         sha1 = "a72c936f77b96bf52f5f7e7b467180628551defb";
       };
     };
@@ -4887,17 +5031,17 @@ let
       packageName = "buffer";
       version = "4.9.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz";
+        url = "http://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz";
         sha1 = "6d1bb601b07a4efced97094132093027c95bc298";
       };
     };
-    "buffer-5.2.0" = {
+    "buffer-5.2.1" = {
       name = "buffer";
       packageName = "buffer";
-      version = "5.2.0";
+      version = "5.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/buffer/-/buffer-5.2.0.tgz";
-        sha512 = "nUJyfChH7PMJy75eRDCCKtszSEFokUNXC1hNVSe+o+VdcgvDPLs20k3v8UXI8ruRYAJiYtyRea8mYyqPxoHWDw==";
+        url = "https://registry.npmjs.org/buffer/-/buffer-5.2.1.tgz";
+        sha512 = "c+Ko0loDaFfuPWiL02ls9Xd3GO3cPVmUobQ6t3rXNUk304u6hGq+8N/kFi+QEIKhzK3uwolVhLzszmfLmMLnqg==";
       };
     };
     "buffer-alloc-1.2.0" = {
@@ -5476,13 +5620,13 @@ let
         sha1 = "a2aa5fb1af688758259c32c141426d78923b9b77";
       };
     };
-    "capture-stack-trace-1.0.0" = {
+    "capture-stack-trace-1.0.1" = {
       name = "capture-stack-trace";
       packageName = "capture-stack-trace";
-      version = "1.0.0";
+      version = "1.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.0.tgz";
-        sha1 = "4a6fa07399c26bba47f0b2496b4d0fb408c5550d";
+        url = "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.1.tgz";
+        sha512 = "mYQLZnx5Qt1JgB1WEiMCf2647plpGeQ2NMR/5L0HNZzGQo4fuSPnK+wjfPnKZV0aiJDgzmWqqkV/g7JD+DW0qw==";
       };
     };
     "caseless-0.11.0" = {
@@ -5539,6 +5683,15 @@ let
         sha512 = "Cg8/ZSBEa8ZVY9HspcGUYaK63d/bN7rqS3CYCzEGUxuYv6UlmcjzDUz2fCFFHyTvUW5Pk0I+3hkA3iXlIj6guA==";
       };
     };
+    "ccount-1.0.3" = {
+      name = "ccount";
+      packageName = "ccount";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ccount/-/ccount-1.0.3.tgz";
+        sha512 = "Jt9tIBkRc9POUof7QA/VwWd+58fKkEEfI+/t1/eOlxKM7ZhrczNzMFefge7Ai+39y1pR/pP6cI19guHy3FSLmw==";
+      };
+    };
     "center-align-0.1.3" = {
       name = "center-align";
       packageName = "center-align";
@@ -5580,7 +5733,7 @@ let
       packageName = "chalk";
       version = "0.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/chalk/-/chalk-0.4.0.tgz";
+        url = "http://registry.npmjs.org/chalk/-/chalk-0.4.0.tgz";
         sha1 = "5199a3ddcd0c1efe23bc08c1b027b06176e0c64f";
       };
     };
@@ -5589,7 +5742,7 @@ let
       packageName = "chalk";
       version = "0.5.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/chalk/-/chalk-0.5.1.tgz";
+        url = "http://registry.npmjs.org/chalk/-/chalk-0.5.1.tgz";
         sha1 = "663b3a648b68b55d04690d49167aa837858f2174";
       };
     };
@@ -5598,7 +5751,7 @@ let
       packageName = "chalk";
       version = "1.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/chalk/-/chalk-1.0.0.tgz";
+        url = "http://registry.npmjs.org/chalk/-/chalk-1.0.0.tgz";
         sha1 = "b3cf4ed0ff5397c99c75b8f679db2f52831f96dc";
       };
     };
@@ -5607,7 +5760,7 @@ let
       packageName = "chalk";
       version = "1.1.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz";
+        url = "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz";
         sha1 = "a8115c55e4a702fe4d150abd3872822a7e09fc98";
       };
     };
@@ -5625,7 +5778,7 @@ let
       packageName = "chalk";
       version = "2.3.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/chalk/-/chalk-2.3.1.tgz";
+        url = "http://registry.npmjs.org/chalk/-/chalk-2.3.1.tgz";
         sha512 = "QUU4ofkDoMIVO7hcx1iPTISs88wsO8jA92RQIm4JAwZvFGGAV2hSAA1NX7oVj2Ej2Q6NDTcRDjPTFrMCRZoJ6g==";
       };
     };
@@ -5656,6 +5809,33 @@ let
         sha512 = "Mww+SLF6MZ0U6kdg11algyKd5BARbyM4TbFBepwowYSR5ClfQGCGtxNXgykpN0uF/bstWeaGDT4JWaDh8zWAHA==";
       };
     };
+    "character-entities-1.2.2" = {
+      name = "character-entities";
+      packageName = "character-entities";
+      version = "1.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/character-entities/-/character-entities-1.2.2.tgz";
+        sha512 = "sMoHX6/nBiy3KKfC78dnEalnpn0Az0oSNvqUWYTtYrhRI5iUIYsROU48G+E+kMFQzqXaJ8kHJZ85n7y6/PHgwQ==";
+      };
+    };
+    "character-entities-html4-1.1.2" = {
+      name = "character-entities-html4";
+      packageName = "character-entities-html4";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/character-entities-html4/-/character-entities-html4-1.1.2.tgz";
+        sha512 = "sIrXwyna2+5b0eB9W149izTPJk/KkJTg6mEzDGibwBUkyH1SbDa+nf515Ppdi3MaH35lW0JFJDWeq9Luzes1Iw==";
+      };
+    };
+    "character-entities-legacy-1.1.2" = {
+      name = "character-entities-legacy";
+      packageName = "character-entities-legacy";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.2.tgz";
+        sha512 = "9NB2VbXtXYWdXzqrvAHykE/f0QJxzaKIpZ5QzNZrrgQ7Iyxr2vnfS8fCBNVW9nUEZE0lo57nxKRqnzY/dKrwlA==";
+      };
+    };
     "character-parser-1.2.1" = {
       name = "character-parser";
       packageName = "character-parser";
@@ -5674,6 +5854,15 @@ let
         sha1 = "c7ce28f36d4bcd9744e5ffc2c5fcde1c73261fc0";
       };
     };
+    "character-reference-invalid-1.1.2" = {
+      name = "character-reference-invalid";
+      packageName = "character-reference-invalid";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.2.tgz";
+        sha512 = "7I/xceXfKyUJmSAn/jw8ve/9DyOP7XxufNYLI9Px7CmsKgEUaZLUTax6nZxGQtaoiZCjpu6cHPj20xC/vqRReQ==";
+      };
+    };
     "chardet-0.4.2" = {
       name = "chardet";
       packageName = "chardet";
@@ -5683,13 +5872,13 @@ let
         sha1 = "b5473b33dc97c424e5d98dc87d55d4d8a29c8bf2";
       };
     };
-    "chardet-0.5.0" = {
+    "chardet-0.7.0" = {
       name = "chardet";
       packageName = "chardet";
-      version = "0.5.0";
+      version = "0.7.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/chardet/-/chardet-0.5.0.tgz";
-        sha512 = "9ZTaoBaePSCFvNlNGrsyI8ZVACP2svUtq0DkM7t4K2ClAa96sqOIRjAzDTc8zXzFt1cZR46rRzLTiHFSJ+Qw0g==";
+        url = "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz";
+        sha512 = "mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==";
       };
     };
     "charenc-0.0.2" = {
@@ -5701,6 +5890,15 @@ let
         sha1 = "c0a1d2f3a7092e03774bfa83f14c0fc5790a8667";
       };
     };
+    "charwise-3.0.1" = {
+      name = "charwise";
+      packageName = "charwise";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/charwise/-/charwise-3.0.1.tgz";
+        sha512 = "RcdumNsM6fJZ5HHbYunqj2bpurVRGsXour3OR+SlLEHFhG6ALm54i6Osnh+OvO7kEoSBzwExpblYFH8zKQiEPw==";
+      };
+    };
     "check-error-1.0.2" = {
       name = "check-error";
       packageName = "check-error";
@@ -5746,6 +5944,24 @@ let
         sha1 = "4b9f53a81b27e4d5dac31c0ffd0cfa03cc6830db";
       };
     };
+    "chloride-2.2.10" = {
+      name = "chloride";
+      packageName = "chloride";
+      version = "2.2.10";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/chloride/-/chloride-2.2.10.tgz";
+        sha512 = "CbU1ISGiB2JBV6PDXx7hkl8D94d2TPD1BANUMFbr8rZYKJi8De2d3Hu2XDIOLAhXf+8yhoFOdjtLG6fxz3QByQ==";
+      };
+    };
+    "chloride-test-1.2.2" = {
+      name = "chloride-test";
+      packageName = "chloride-test";
+      version = "1.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/chloride-test/-/chloride-test-1.2.2.tgz";
+        sha1 = "178686a85e9278045112e96e8c791793f9a10aea";
+      };
+    };
     "chmodr-1.0.2" = {
       name = "chmodr";
       packageName = "chmodr";
@@ -5953,15 +6169,6 @@ let
         sha1 = "9e821501ae979986c46b1d66d2d432db2fd4ae31";
       };
     };
-    "cli-0.6.6" = {
-      name = "cli";
-      packageName = "cli";
-      version = "0.6.6";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/cli/-/cli-0.6.6.tgz";
-        sha1 = "02ad44a380abf27adac5e6f0cdd7b043d74c53e3";
-      };
-    };
     "cli-1.0.1" = {
       name = "cli";
       packageName = "cli";
@@ -6412,6 +6619,15 @@ let
         sha1 = "6355d32cf1b04cdff6b484e5e711782b2f0c39be";
       };
     };
+    "collapse-white-space-1.0.4" = {
+      name = "collapse-white-space";
+      packageName = "collapse-white-space";
+      version = "1.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/collapse-white-space/-/collapse-white-space-1.0.4.tgz";
+        sha512 = "YfQ1tAUZm561vpYD+5eyWN8+UsceQbSrqqlc/6zDY2gtAE+uZLSdkkovhnGpmCThsvKBFakq4EdY/FF93E8XIw==";
+      };
+    };
     "collection-visit-1.0.0" = {
       name = "collection-visit";
       packageName = "collection-visit";
@@ -7177,6 +7393,15 @@ let
         sha1 = "75b91fa9f16663e51f98e863af995b9164068c1a";
       };
     };
+    "cont-1.0.3" = {
+      name = "cont";
+      packageName = "cont";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cont/-/cont-1.0.3.tgz";
+        sha1 = "6874f1e935fca99d048caeaaad9a0aeb020bcce0";
+      };
+    };
     "content-disposition-0.5.0" = {
       name = "content-disposition";
       packageName = "content-disposition";
@@ -7223,6 +7448,60 @@ let
         sha1 = "0e790b3abfef90f6ecb77ae8585db9099caf7578";
       };
     };
+    "continuable-1.1.8" = {
+      name = "continuable";
+      packageName = "continuable";
+      version = "1.1.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/continuable/-/continuable-1.1.8.tgz";
+        sha1 = "dc877b474160870ae3bcde87336268ebe50597d5";
+      };
+    };
+    "continuable-1.2.0" = {
+      name = "continuable";
+      packageName = "continuable";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/continuable/-/continuable-1.2.0.tgz";
+        sha1 = "08277468d41136200074ccf87294308d169f25b6";
+      };
+    };
+    "continuable-hash-0.1.4" = {
+      name = "continuable-hash";
+      packageName = "continuable-hash";
+      version = "0.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/continuable-hash/-/continuable-hash-0.1.4.tgz";
+        sha1 = "81c74d41771d8c92783e1e00e5f11b34d6dfc78c";
+      };
+    };
+    "continuable-list-0.1.6" = {
+      name = "continuable-list";
+      packageName = "continuable-list";
+      version = "0.1.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/continuable-list/-/continuable-list-0.1.6.tgz";
+        sha1 = "87cf06ec580716e10dff95fb0b84c5f0e8acac5f";
+      };
+    };
+    "continuable-para-1.2.0" = {
+      name = "continuable-para";
+      packageName = "continuable-para";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/continuable-para/-/continuable-para-1.2.0.tgz";
+        sha1 = "445510f649459dd0fc35c872015146122731c583";
+      };
+    };
+    "continuable-series-1.2.0" = {
+      name = "continuable-series";
+      packageName = "continuable-series";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/continuable-series/-/continuable-series-1.2.0.tgz";
+        sha1 = "3243397ae93a71d655b3026834a51590b958b9e8";
+      };
+    };
     "conventional-changelog-angular-1.6.6" = {
       name = "conventional-changelog-angular";
       packageName = "conventional-changelog-angular";
@@ -7718,13 +7997,13 @@ let
         sha512 = "MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==";
       };
     };
-    "create-torrent-3.32.1" = {
+    "create-torrent-3.33.0" = {
       name = "create-torrent";
       packageName = "create-torrent";
-      version = "3.32.1";
+      version = "3.33.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/create-torrent/-/create-torrent-3.32.1.tgz";
-        sha512 = "8spZUeFyVc+2mGnWBRTuLOhuHmHrmUomFWf7QvxztCEvTpn5SIrvF8F+HKdkzBPM9B7v/2w+f/65jqLWBXSndg==";
+        url = "https://registry.npmjs.org/create-torrent/-/create-torrent-3.33.0.tgz";
+        sha512 = "KMd0KuvwVUg1grlRd5skG9ZkSbBYDDkAjDUMLnvxdRn0rL7ph3IwoOk7I8u1yLX4HYjGiLVlWYO55YWNNPjJFA==";
       };
     };
     "cron-1.3.0" = {
@@ -8006,13 +8285,13 @@ let
         sha1 = "a6602dff7e04a8306dc0db9a551e92e8b5662ad8";
       };
     };
-    "csslint-0.10.0" = {
+    "csslint-1.0.5" = {
       name = "csslint";
       packageName = "csslint";
-      version = "0.10.0";
+      version = "1.0.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/csslint/-/csslint-0.10.0.tgz";
-        sha1 = "3a6a04e7565c8e9d19beb49767c7ec96e8365805";
+        url = "https://registry.npmjs.org/csslint/-/csslint-1.0.5.tgz";
+        sha1 = "19cc3eda322160fd3f7232af1cb2a360e898a2e9";
       };
     };
     "csso-3.5.1" = {
@@ -8798,6 +9077,15 @@ let
         sha1 = "2cef1f111e1c57870d8bbb8af2650e587cd2f5b4";
       };
     };
+    "deferred-leveldown-3.0.0" = {
+      name = "deferred-leveldown";
+      packageName = "deferred-leveldown";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/deferred-leveldown/-/deferred-leveldown-3.0.0.tgz";
+        sha512 = "ajbXqRPMXRlcdyt0TuWqknOJkp1JgQjGB7xOl2V+ebol7/U11E9h3/nCZAtN1M7djmAJEIhypCUc1tIWxdQAuQ==";
+      };
+    };
     "define-properties-1.1.3" = {
       name = "define-properties";
       packageName = "define-properties";
@@ -9014,6 +9302,15 @@ let
         sha1 = "978857442c44749e4206613e37946205826abd80";
       };
     };
+    "detab-1.0.2" = {
+      name = "detab";
+      packageName = "detab";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/detab/-/detab-1.0.2.tgz";
+        sha1 = "01bc2a4abe7bc7cc67c3039808edbae47049a0ee";
+      };
+    };
     "detect-file-1.0.0" = {
       name = "detect-file";
       packageName = "detect-file";
@@ -9221,13 +9518,13 @@ let
         sha1 = "57ddacb47324ae5f58d2cc0da886db4ce9eeb718";
       };
     };
-    "dispensary-0.21.0" = {
+    "dispensary-0.22.0" = {
       name = "dispensary";
       packageName = "dispensary";
-      version = "0.21.0";
+      version = "0.22.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/dispensary/-/dispensary-0.21.0.tgz";
-        sha512 = "p7qK1sLukrOGYVVcea63lN9CSiE8wO61cweOjtG6MnKoeC9uKHRIO1iJuE5izcX0BeimhkqrQwEMrFWC1yOyAw==";
+        url = "https://registry.npmjs.org/dispensary/-/dispensary-0.22.0.tgz";
+        sha512 = "iwpIOQ4T+fJ55PAPE4G7b8MubUN8dGyZa78VrD6A+XqSnqs844npoGvpwSEETnn064JaaS4gqLcgAfTGR4p2+g==";
       };
     };
     "diveSync-0.3.0" = {
@@ -9716,13 +10013,22 @@ let
         sha1 = "1c595000f04a8897dfb85000892a0f4c33af86c3";
       };
     };
-    "ecstatic-3.2.1" = {
+    "ecstatic-3.3.0" = {
       name = "ecstatic";
       packageName = "ecstatic";
-      version = "3.2.1";
+      version = "3.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ecstatic/-/ecstatic-3.3.0.tgz";
+        sha512 = "EblWYTd+wPIAMQ0U4oYJZ7QBypT9ZUIwpqli0bKDjeIIQnXDBK2dXtZ9yzRCOlkW1HkO8gn7/FxLK1yPIW17pw==";
+      };
+    };
+    "ed2curve-0.1.4" = {
+      name = "ed2curve";
+      packageName = "ed2curve";
+      version = "0.1.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ecstatic/-/ecstatic-3.2.1.tgz";
-        sha512 = "BAdHx9LOCG1fwxY8MIydUBskl8UUQrYeC3WE14FA1DPlBzqoG1aOgEkypcSpmiiel8RAj8gW1s40RrclfrpGUg==";
+        url = "https://registry.npmjs.org/ed2curve/-/ed2curve-0.1.4.tgz";
+        sha1 = "94a44248bb87da35db0eff7af0aa576168117f59";
       };
     };
     "editions-1.3.4" = {
@@ -9734,13 +10040,13 @@ let
         sha512 = "gzao+mxnYDzIysXKMQi/+M1mjy/rjestjg6OPoYTtI+3Izp23oiGZitsl9lPDPiTGXbcSIk1iJWhliSaglxnUg==";
       };
     };
-    "editions-2.0.1" = {
+    "editions-2.0.2" = {
       name = "editions";
       packageName = "editions";
-      version = "2.0.1";
+      version = "2.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/editions/-/editions-2.0.1.tgz";
-        sha512 = "GNBqG7eF4lxz/jPGM1A/oazdRW9D86OMeggfvCXuA9kcxBJ8fcWO1O8q73pepQlwR8+KecxrgGduwdNeZJ0R9Q==";
+        url = "https://registry.npmjs.org/editions/-/editions-2.0.2.tgz";
+        sha512 = "0B8aSTWUu9+JW99zHoeogavCi+lkE5l35FK0OKe0pCobixJYoeof3ZujtqYzSsU2MskhRadY5V9oWUuyG4aJ3A==";
       };
     };
     "editor-1.0.0" = {
@@ -9861,6 +10167,15 @@ let
         sha256 = "0eae744826723877457f7a7ac7f31d68a5a060673b3a883f6a8e325bf48f313d";
       };
     };
+    "emoji-named-characters-1.0.2" = {
+      name = "emoji-named-characters";
+      packageName = "emoji-named-characters";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/emoji-named-characters/-/emoji-named-characters-1.0.2.tgz";
+        sha1 = "cdeb36d0e66002c4b9d7bf1dfbc3a199fb7d409b";
+      };
+    };
     "emoji-regex-6.1.1" = {
       name = "emoji-regex";
       packageName = "emoji-regex";
@@ -9870,6 +10185,15 @@ let
         sha1 = "c6cd0ec1b0642e2a3c67a1137efc5e796da4f88e";
       };
     };
+    "emoji-server-1.0.0" = {
+      name = "emoji-server";
+      packageName = "emoji-server";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/emoji-server/-/emoji-server-1.0.0.tgz";
+        sha1 = "d063cfee9af118cc5aeefbc2e9b3dd5085815c63";
+      };
+    };
     "emojis-list-2.1.0" = {
       name = "emojis-list";
       packageName = "emojis-list";
@@ -9906,6 +10230,15 @@ let
         sha1 = "538b66f3ee62cd1ab51ec323829d1f9480c74beb";
       };
     };
+    "encoding-down-4.0.1" = {
+      name = "encoding-down";
+      packageName = "encoding-down";
+      version = "4.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/encoding-down/-/encoding-down-4.0.1.tgz";
+        sha512 = "AlSE+ugBIpLL0i9if2SlnOZ4oWj/XvBb8tw2Ie/pFB73vdYs5O/6plRyqIgjbZbz8onaL20AAuMP87LWbP56IQ==";
+      };
+    };
     "end-of-stream-0.1.5" = {
       name = "end-of-stream";
       packageName = "end-of-stream";
@@ -10113,6 +10446,15 @@ let
         sha512 = "yqKl+qfQ849zLua/aRGIs4TzNah6ypvdX6KPmK9LPP54Ea+Hqx2gFzSBmGhka8HvWcmCmffGIshG4INSh0ku6g==";
       };
     };
+    "epidemic-broadcast-trees-6.3.4" = {
+      name = "epidemic-broadcast-trees";
+      packageName = "epidemic-broadcast-trees";
+      version = "6.3.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/epidemic-broadcast-trees/-/epidemic-broadcast-trees-6.3.4.tgz";
+        sha512 = "ucs3AI3ebPCDFGw8B0SUBwzcY2WqKrbJeqYeeX9KF+XvsO7GFEe0L+1hXPfJcEScfGPByXJNACkYwUFnNaOueQ==";
+      };
+    };
     "err-code-1.1.2" = {
       name = "err-code";
       packageName = "err-code";
@@ -10437,13 +10779,13 @@ let
         sha512 = "D5nG2rErquLUstgUaxJlWB5+gu+U/3VDY0fk/Iuq8y9CUFy/7Y6oF4N2cR1tV8knzQvciIbfqfohd359xTLIKQ==";
       };
     };
-    "eslint-5.4.0" = {
+    "eslint-5.5.0" = {
       name = "eslint";
       packageName = "eslint";
-      version = "5.4.0";
+      version = "5.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/eslint/-/eslint-5.4.0.tgz";
-        sha512 = "UIpL91XGex3qtL6qwyCQJar2j3osKxK9e3ano3OcGEIRM4oWIpCkDg9x95AXEC2wMs7PnxzOkPZ2gq+tsMS9yg==";
+        url = "https://registry.npmjs.org/eslint/-/eslint-5.5.0.tgz";
+        sha512 = "m+az4vYehIJgl1Z0gb25KnFXeqQRdNreYsei1jdvkd9bB+UNQD3fsuiC2AWSQ56P+/t++kFSINZXFbfai+krOw==";
       };
     };
     "eslint-plugin-no-unsafe-innerhtml-1.0.16" = {
@@ -10694,7 +11036,7 @@ let
       packageName = "eventemitter2";
       version = "0.4.14";
       src = fetchurl {
-        url = "https://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.14.tgz";
+        url = "http://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.14.tgz";
         sha1 = "8f61b75cde012b2e9eb284d4545583b5643b61ab";
       };
     };
@@ -10950,6 +11292,15 @@ let
         sha1 = "97e801aa052df02454de46b02bf621642cdc8502";
       };
     };
+    "explain-error-1.0.4" = {
+      name = "explain-error";
+      packageName = "explain-error";
+      version = "1.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/explain-error/-/explain-error-1.0.4.tgz";
+        sha1 = "a793d3ac0cad4c6ab571e9968fbbab6cb2532929";
+      };
+    };
     "express-2.5.11" = {
       name = "express";
       packageName = "express";
@@ -11157,12 +11508,21 @@ let
         sha1 = "26a71aaf073b39fb2127172746131c2704028db8";
       };
     };
+    "extend.js-0.0.2" = {
+      name = "extend.js";
+      packageName = "extend.js";
+      version = "0.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/extend.js/-/extend.js-0.0.2.tgz";
+        sha1 = "0f9c7a81a1f208b703eb0c3131fe5716ac6ecd15";
+      };
+    };
     "external-editor-1.1.1" = {
       name = "external-editor";
       packageName = "external-editor";
       version = "1.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/external-editor/-/external-editor-1.1.1.tgz";
+        url = "http://registry.npmjs.org/external-editor/-/external-editor-1.1.1.tgz";
         sha1 = "12d7b0db850f7ff7e7081baf4005700060c4600b";
       };
     };
@@ -11171,17 +11531,17 @@ let
       packageName = "external-editor";
       version = "2.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/external-editor/-/external-editor-2.2.0.tgz";
+        url = "http://registry.npmjs.org/external-editor/-/external-editor-2.2.0.tgz";
         sha512 = "bSn6gvGxKt+b7+6TKEv1ZycHleA7aHhRHyAqJyp5pbUFuYYNIzpZnQDk7AsYckyWdEnTeAnay0aCy2aV6iTk9A==";
       };
     };
-    "external-editor-3.0.1" = {
+    "external-editor-3.0.3" = {
       name = "external-editor";
       packageName = "external-editor";
-      version = "3.0.1";
+      version = "3.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/external-editor/-/external-editor-3.0.1.tgz";
-        sha512 = "e1neqvSt5pSwQcFnYc6yfGuJD2Q4336cdbHs5VeUO0zTkqPbrHMyw2q1r47fpfLWbvIG8H8A6YO3sck7upTV6Q==";
+        url = "https://registry.npmjs.org/external-editor/-/external-editor-3.0.3.tgz";
+        sha512 = "bn71H9+qWoOQKyZDo25mOMVpSmXROAsTJVVVYzrrtol3d4y+AsKjf4Iwl2Q+IuT0kFSQ1qo166UuIwqYq7mGnA==";
       };
     };
     "extglob-0.3.2" = {
@@ -11346,6 +11706,15 @@ let
         sha512 = "KaJUt+M9t1qaIteSvjc6P3RbMdXsNhK61GRftR6SNxqmhthcd9MGIi4T+o0jD8LUSpSnSKXE20nLtJ3fOHxQig==";
       };
     };
+    "fast-future-1.0.2" = {
+      name = "fast-future";
+      packageName = "fast-future";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fast-future/-/fast-future-1.0.2.tgz";
+        sha1 = "8435a9aaa02d79248d17d704e76259301d99280a";
+      };
+    };
     "fast-glob-2.2.2" = {
       name = "fast-glob";
       packageName = "fast-glob";
@@ -11369,17 +11738,17 @@ let
       packageName = "fast-json-patch";
       version = "0.5.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/fast-json-patch/-/fast-json-patch-0.5.6.tgz";
+        url = "http://registry.npmjs.org/fast-json-patch/-/fast-json-patch-0.5.6.tgz";
         sha1 = "66e4028e381eaa002edeb280d10238f3a46c3402";
       };
     };
-    "fast-json-patch-2.0.6" = {
+    "fast-json-patch-2.0.7" = {
       name = "fast-json-patch";
       packageName = "fast-json-patch";
-      version = "2.0.6";
+      version = "2.0.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/fast-json-patch/-/fast-json-patch-2.0.6.tgz";
-        sha1 = "86fff8f8662391aa819722864d632e603e6ee605";
+        url = "https://registry.npmjs.org/fast-json-patch/-/fast-json-patch-2.0.7.tgz";
+        sha512 = "DQeoEyPYxdTtfmB3yDlxkLyKTdbJ6ABfFGcMynDqjvGhPYLto/pZyb/dG2Nyd/n9CArjEWN9ZST++AFmgzgbGw==";
       };
     };
     "fast-json-stable-stringify-2.0.0" = {
@@ -11823,13 +12192,13 @@ let
         sha1 = "b37dc844b76a2f5e7081e884f7c0ae344f153476";
       };
     };
-    "firefox-profile-1.1.0" = {
+    "firefox-profile-1.2.0" = {
       name = "firefox-profile";
       packageName = "firefox-profile";
-      version = "1.1.0";
+      version = "1.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/firefox-profile/-/firefox-profile-1.1.0.tgz";
-        sha512 = "wUIE4QeAjwoHvFbomWmXgKyYtV4/oZxDcJG4znxtGGa/0BhKkd3HzeOf3tAsMWPq1ExARZxCRRiNw1BL3FuPqA==";
+        url = "https://registry.npmjs.org/firefox-profile/-/firefox-profile-1.2.0.tgz";
+        sha512 = "TTEFfPOkyaz4EWx/5ZDQC1mJAe3a+JgVcchpIfD4Tvx1UspwlTJRJxOYA35x/z2iJcxaF6aW2rdh6oj6qwgd2g==";
       };
     };
     "first-chunk-stream-1.0.0" = {
@@ -11949,6 +12318,88 @@ let
         sha512 = "T0iqfhC40jrs3aDjYOKgzIQjjhsH2Fa6LnXB6naPv0ymW3DeYMUFa89y9aLKMpi1P9nl2vEimK7blx4tVnUWBg==";
       };
     };
+    "flumecodec-0.0.0" = {
+      name = "flumecodec";
+      packageName = "flumecodec";
+      version = "0.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/flumecodec/-/flumecodec-0.0.0.tgz";
+        sha1 = "36ce06abe2e0e01c44dd69f2a165305a2320649b";
+      };
+    };
+    "flumecodec-0.0.1" = {
+      name = "flumecodec";
+      packageName = "flumecodec";
+      version = "0.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/flumecodec/-/flumecodec-0.0.1.tgz";
+        sha1 = "ae049a714386bb83e342657a82924b70364a90d6";
+      };
+    };
+    "flumedb-0.4.9" = {
+      name = "flumedb";
+      packageName = "flumedb";
+      version = "0.4.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/flumedb/-/flumedb-0.4.9.tgz";
+        sha512 = "z932cCXHteJXKcwoev8/RfJ9tQ10FeRCZ6Jh55UnxN/ayZraYZvNYObl8ujbho7xQZB1CDt2WTHCN5gEYGBqGw==";
+      };
+    };
+    "flumelog-offset-3.3.1" = {
+      name = "flumelog-offset";
+      packageName = "flumelog-offset";
+      version = "3.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/flumelog-offset/-/flumelog-offset-3.3.1.tgz";
+        sha512 = "4yYdr8tTL0qOkKqhxAxvNnIwDBaBcLEsJWbyc2wU4Ycaewts9xxcBaxNbORp2KBbTwFaqZAV13HVpfZcO1X/AA==";
+      };
+    };
+    "flumeview-hashtable-1.0.4" = {
+      name = "flumeview-hashtable";
+      packageName = "flumeview-hashtable";
+      version = "1.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/flumeview-hashtable/-/flumeview-hashtable-1.0.4.tgz";
+        sha512 = "4L52hBelX7dYVAQQ9uPjksqxOCxLwI4NsfEG/+sTM423axT2Poq5cnfdvGm3HzmNowzwDIKtdy429r6PbfKEIw==";
+      };
+    };
+    "flumeview-level-3.0.5" = {
+      name = "flumeview-level";
+      packageName = "flumeview-level";
+      version = "3.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/flumeview-level/-/flumeview-level-3.0.5.tgz";
+        sha512 = "LKW+YdJGemOo7TnUwpFHq4cBBiYAIKtWk+G2CK7zrxbCIiAHemBRudohBOUKuSUZZ0CReR5fJ73peBHW02VerA==";
+      };
+    };
+    "flumeview-query-6.3.0" = {
+      name = "flumeview-query";
+      packageName = "flumeview-query";
+      version = "6.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/flumeview-query/-/flumeview-query-6.3.0.tgz";
+        sha512 = "8QBannTFLICARmflhHpXNeR5hh6IzIyJz4XhKTofzmxq/hXEn1un7aF6P6dRQkOwthENDTbSB07eWKqwnYDKtw==";
+      };
+    };
+    "flumeview-query-git://github.com/mmckegg/flumeview-query#map" = {
+      name = "flumeview-query";
+      packageName = "flumeview-query";
+      version = "6.2.0";
+      src = fetchgit {
+        url = "git://github.com/mmckegg/flumeview-query";
+        rev = "59afdf210dbd8bdf53aeea7dcfaaec1c77e7d733";
+        sha256 = "e6f1f768a0911a52c7a4d7f1ee0d60531d174fe30a96879a030a019ff3cb069f";
+      };
+    };
+    "flumeview-reduce-1.3.13" = {
+      name = "flumeview-reduce";
+      packageName = "flumeview-reduce";
+      version = "1.3.13";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/flumeview-reduce/-/flumeview-reduce-1.3.13.tgz";
+        sha512 = "QN/07+ia3uXpfy8/xWjLI2XGIG67Aiwp9VaOTIqYt6NHP6OfdGfl8nGRPkJRHlkfFbzEouRvJcQBFohWEXMdNQ==";
+      };
+    };
     "flush-write-stream-1.0.3" = {
       name = "flush-write-stream";
       packageName = "flush-write-stream";
@@ -12606,13 +13057,13 @@ let
         sha1 = "336a98f81510f9ae0af2a494e17468a116a9dc04";
       };
     };
-    "generate-function-2.2.0" = {
+    "generate-function-2.3.1" = {
       name = "generate-function";
       packageName = "generate-function";
-      version = "2.2.0";
+      version = "2.3.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/generate-function/-/generate-function-2.2.0.tgz";
-        sha512 = "EYWRyUEUdNSsmfMZ2udk1AaxEmJQBaCNgfh+FJo0lcUvP42nyR/Xe30kCyxZs7e6t47bpZw0HftWF+KFjD/Lzg==";
+        url = "https://registry.npmjs.org/generate-function/-/generate-function-2.3.1.tgz";
+        sha512 = "eeB5GfMNeevm/GRYq20ShmsaGcmI81kIX2K9XQx5miC8KdHaC6Jm0qQ8ZNeGOi7wYB8OsdxKs+Y2oVuTFuVwKQ==";
       };
     };
     "generate-object-property-1.2.0" = {
@@ -12768,13 +13219,13 @@ let
         sha1 = "dc15ca1c672387ca76bd37ac0a395ba2042a2c28";
       };
     };
-    "getmac-1.4.5" = {
+    "getmac-1.4.6" = {
       name = "getmac";
       packageName = "getmac";
-      version = "1.4.5";
+      version = "1.4.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/getmac/-/getmac-1.4.5.tgz";
-        sha512 = "Y4Zu6i3zXAnH+Q2zSdnV8SSmyu3BisdfQhsH8YLsC/7vTxgNTTT/JzHWmU3tZEim8hvaCtZLaE5E95wo8P4oGQ==";
+        url = "https://registry.npmjs.org/getmac/-/getmac-1.4.6.tgz";
+        sha512 = "3JPwiIr4P6Sgr6y6SVXX0+l2mrB6pyf4Cdyua7rvEV7SveWQkAp11vrkNym8wvRxzLrBenKRcwe93asdghuwWg==";
       };
     };
     "getpass-0.1.6" = {
@@ -12822,6 +13273,15 @@ let
         sha1 = "6d33f7ed63db0d0e118131503bab3aca47d54664";
       };
     };
+    "git-packidx-parser-1.0.0" = {
+      name = "git-packidx-parser";
+      packageName = "git-packidx-parser";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/git-packidx-parser/-/git-packidx-parser-1.0.0.tgz";
+        sha1 = "c57d1145eec16465ab9bfbdf575262b1691624d6";
+      };
+    };
     "git-raw-commits-1.3.6" = {
       name = "git-raw-commits";
       packageName = "git-raw-commits";
@@ -12840,6 +13300,15 @@ let
         sha1 = "5282659dae2107145a11126112ad3216ec5fa65f";
       };
     };
+    "git-remote-ssb-2.0.4" = {
+      name = "git-remote-ssb";
+      packageName = "git-remote-ssb";
+      version = "2.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/git-remote-ssb/-/git-remote-ssb-2.0.4.tgz";
+        sha1 = "7f51b804924d6c603fc142e3302998d4e0b4d906";
+      };
+    };
     "git-rev-sync-1.9.1" = {
       name = "git-rev-sync";
       packageName = "git-rev-sync";
@@ -12858,6 +13327,15 @@ let
         sha512 = "2jHlJnln4D/ECk9FxGEBh3k44wgYdWjWDtMmJPaecjoRmxKo3Y1Lh8GMYuOPu04CHw86NTAODchYjC5pnpMQig==";
       };
     };
+    "git-ssb-web-2.8.0" = {
+      name = "git-ssb-web";
+      packageName = "git-ssb-web";
+      version = "2.8.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/git-ssb-web/-/git-ssb-web-2.8.0.tgz";
+        sha512 = "8mqO63M60lCiNR+6ROvXuX4VI6pVAru4wMn3uUfxq0xmpNwrZYC4Rkrt5rSGUPumJ43ZUJyeMXXq60v03PUY/g==";
+      };
+    };
     "gitconfiglocal-1.0.0" = {
       name = "gitconfiglocal";
       packageName = "gitconfiglocal";
@@ -13156,6 +13634,15 @@ let
         sha512 = "S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==";
       };
     };
+    "globby-4.1.0" = {
+      name = "globby";
+      packageName = "globby";
+      version = "4.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/globby/-/globby-4.1.0.tgz";
+        sha1 = "080f54549ec1b82a6c60e631fc82e1211dbe95f8";
+      };
+    };
     "globby-5.0.0" = {
       name = "globby";
       packageName = "globby";
@@ -13206,7 +13693,7 @@ let
       packageName = "got";
       version = "1.2.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/got/-/got-1.2.2.tgz";
+        url = "http://registry.npmjs.org/got/-/got-1.2.2.tgz";
         sha1 = "d9430ba32f6a30218243884418767340aafc0400";
       };
     };
@@ -13215,7 +13702,7 @@ let
       packageName = "got";
       version = "3.3.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/got/-/got-3.3.1.tgz";
+        url = "http://registry.npmjs.org/got/-/got-3.3.1.tgz";
         sha1 = "e5d0ed4af55fc3eef4d56007769d98192bcb2eca";
       };
     };
@@ -13224,7 +13711,7 @@ let
       packageName = "got";
       version = "6.7.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/got/-/got-6.7.1.tgz";
+        url = "http://registry.npmjs.org/got/-/got-6.7.1.tgz";
         sha1 = "240cd05785a9a18e561dc1b44b41c763ef1e8db0";
       };
     };
@@ -13332,7 +13819,7 @@ let
       packageName = "graphql";
       version = "0.13.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/graphql/-/graphql-0.13.2.tgz";
+        url = "http://registry.npmjs.org/graphql/-/graphql-0.13.2.tgz";
         sha512 = "QZ5BL8ZO/B20VA8APauGBg3GyEgZ19eduvpLWoq5x7gMmWnHoy8rlQWPLmWgFvo1yNgjSEFMesmS4R6pPr7xog==";
       };
     };
@@ -13408,13 +13895,13 @@ let
         sha512 = "Mlj/VYshHbwDrVHgNyNAl2cBU7+Rh503S43UYXcBtR9Am2KNvmPPPccXEeP6yist0yY2WM0WTwL8JoIGrWeFOw==";
       };
     };
-    "graphql-extensions-0.1.2" = {
+    "graphql-extensions-0.1.3" = {
       name = "graphql-extensions";
       packageName = "graphql-extensions";
-      version = "0.1.2";
+      version = "0.1.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/graphql-extensions/-/graphql-extensions-0.1.2.tgz";
-        sha512 = "A81kfGtOKG0/1sDQGm23u60bkTuk9VDof0SrQrz7yNpPLY48JF11b8+4LNlYfEBVvceDbLAs1KRfyLQskJjJSg==";
+        url = "https://registry.npmjs.org/graphql-extensions/-/graphql-extensions-0.1.3.tgz";
+        sha512 = "q+d1bTR7GW4qRiZP17SXN0TZo+k/I1FEKYd6H4JMbxzpY8mqTLbg8MzrLu7LxafF+mPEJwRfipcEcA375k3eXA==";
       };
     };
     "graphql-import-0.4.5" = {
@@ -13507,6 +13994,15 @@ let
         sha1 = "d2c177e2f1b17d87f81072cd05311c0754baa420";
       };
     };
+    "graphreduce-3.0.4" = {
+      name = "graphreduce";
+      packageName = "graphreduce";
+      version = "3.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/graphreduce/-/graphreduce-3.0.4.tgz";
+        sha1 = "bf442d0a878e83901e5ef3e652d23ffb5b831ed7";
+      };
+    };
     "gray-matter-2.1.1" = {
       name = "gray-matter";
       packageName = "gray-matter";
@@ -13849,6 +14345,15 @@ let
         sha1 = "6414c82913697da51590397dafb12f22967811ce";
       };
     };
+    "has-network-0.0.1" = {
+      name = "has-network";
+      packageName = "has-network";
+      version = "0.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/has-network/-/has-network-0.0.1.tgz";
+        sha1 = "3eea7b44caa9601797124be8ba89d228c4101499";
+      };
+    };
     "has-symbol-support-x-1.4.2" = {
       name = "has-symbol-support-x";
       packageName = "has-symbol-support-x";
@@ -13975,6 +14480,15 @@ let
         sha1 = "8b5341c3496124b0724ac8555fbb8ca363ebbb73";
       };
     };
+    "hashlru-2.2.1" = {
+      name = "hashlru";
+      packageName = "hashlru";
+      version = "2.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hashlru/-/hashlru-2.2.1.tgz";
+        sha1 = "10f2099a0d7c05a40f2beaf5c1d39cf2f7dabf36";
+      };
+    };
     "hashring-3.2.0" = {
       name = "hashring";
       packageName = "hashring";
@@ -14020,6 +14534,15 @@ let
         sha512 = "miowhl2+U7Qle4vdLqDdPt9m09K6yZhkLDTWGoUiUzrQCn+mHHSmfJgAyGaLRZbPmTqfFFjRV1QWCW0VWUJBbQ==";
       };
     };
+    "he-0.5.0" = {
+      name = "he";
+      packageName = "he";
+      version = "0.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/he/-/he-0.5.0.tgz";
+        sha1 = "2c05ffaef90b68e860f3fd2b54ef580989277ee2";
+      };
+    };
     "he-1.1.1" = {
       name = "he";
       packageName = "he";
@@ -14074,6 +14597,15 @@ let
         sha1 = "b8a9c5493212a9392f0222b649c9611497ebfb88";
       };
     };
+    "highlight.js-9.12.0" = {
+      name = "highlight.js";
+      packageName = "highlight.js";
+      version = "9.12.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/highlight.js/-/highlight.js-9.12.0.tgz";
+        sha1 = "e6d9dbe57cbefe60751f02af336195870c90c01e";
+      };
+    };
     "hiredis-0.4.1" = {
       name = "hiredis";
       packageName = "hiredis";
@@ -14164,6 +14696,15 @@ let
         sha1 = "0f591b1b344bdcb3df59773f62fbbaf85bf4028b";
       };
     };
+    "hoox-0.0.1" = {
+      name = "hoox";
+      packageName = "hoox";
+      version = "0.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hoox/-/hoox-0.0.1.tgz";
+        sha1 = "08a74d9272a9cc83ae8e6bbe0303f0ee76432094";
+      };
+    };
     "hosted-git-info-2.7.1" = {
       name = "hosted-git-info";
       packageName = "hosted-git-info";
@@ -14785,6 +15326,15 @@ let
         sha1 = "9218b9b2b928a238b13dc4fb6b6d576f231453ea";
       };
     };
+    "increment-buffer-1.0.1" = {
+      name = "increment-buffer";
+      packageName = "increment-buffer";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/increment-buffer/-/increment-buffer-1.0.1.tgz";
+        sha1 = "65076d75189d808b39ad13ab5b958e05216f9e0d";
+      };
+    };
     "indent-string-2.1.0" = {
       name = "indent-string";
       packageName = "indent-string";
@@ -15046,6 +15596,15 @@ let
         sha512 = "vtI2YXBRZBkU6DlfHfd0GtZENfiEiTacAXUd0ZY6HA+X7aPznpFfPmzSC+tHKXAkz9KDSdI4AYfwAMXR5t+isg==";
       };
     };
+    "int53-0.2.4" = {
+      name = "int53";
+      packageName = "int53";
+      version = "0.2.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/int53/-/int53-0.2.4.tgz";
+        sha1 = "5ed8d7aad6c5c6567cae69aa7ffc4a109ee80f86";
+      };
+    };
     "int64-buffer-0.1.10" = {
       name = "int64-buffer";
       packageName = "int64-buffer";
@@ -15109,6 +15668,24 @@ let
         sha1 = "104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6";
       };
     };
+    "invert-kv-2.0.0" = {
+      name = "invert-kv";
+      packageName = "invert-kv";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz";
+        sha512 = "wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==";
+      };
+    };
+    "ip-0.3.3" = {
+      name = "ip";
+      packageName = "ip";
+      version = "0.3.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ip/-/ip-0.3.3.tgz";
+        sha1 = "8ee8309e92f0b040d287f72efaca1a21702d3fb4";
+      };
+    };
     "ip-1.1.5" = {
       name = "ip";
       packageName = "ip";
@@ -15181,6 +15758,15 @@ let
         sha1 = "5bf4125fb6ec0f3929a89647b26e653232942b79";
       };
     };
+    "irregular-plurals-1.4.0" = {
+      name = "irregular-plurals";
+      packageName = "irregular-plurals";
+      version = "1.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-1.4.0.tgz";
+        sha1 = "2ca9b033651111855412f16be5d77c62a458a766";
+      };
+    };
     "is-3.2.1" = {
       name = "is";
       packageName = "is";
@@ -15235,6 +15821,24 @@ let
         sha512 = "m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==";
       };
     };
+    "is-alphabetical-1.0.2" = {
+      name = "is-alphabetical";
+      packageName = "is-alphabetical";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.2.tgz";
+        sha512 = "V0xN4BYezDHcBSKb1QHUFMlR4as/XEuCZBzMJUU4n7+Cbt33SmUnSol+pnXFvLxSHNq2CemUXNdaXV6Flg7+xg==";
+      };
+    };
+    "is-alphanumerical-1.0.2" = {
+      name = "is-alphanumerical";
+      packageName = "is-alphanumerical";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.2.tgz";
+        sha512 = "pyfU/0kHdISIgslFfZN9nfY1Gk3MquQgUm1mJTjdkEPpkAKNWuBTSqFwewOpR7N351VkErCiyV71zX7mlQQqsg==";
+      };
+    };
     "is-arguments-1.0.2" = {
       name = "is-arguments";
       packageName = "is-arguments";
@@ -15343,6 +15947,15 @@ let
         sha1 = "9aa20eb6aeebbff77fbd33e74ca01b33581d3a16";
       };
     };
+    "is-decimal-1.0.2" = {
+      name = "is-decimal";
+      packageName = "is-decimal";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.2.tgz";
+        sha512 = "TRzl7mOCchnhchN+f3ICUCzYvL9ul7R+TYOsZ8xia++knyZAJfv/uA1FvQXsAnYIl1T3B2X5E/J7Wb1QXiIBXg==";
+      };
+    };
     "is-descriptor-0.1.6" = {
       name = "is-descriptor";
       packageName = "is-descriptor";
@@ -15388,6 +16001,15 @@ let
         sha1 = "a6a2f32ffd2dfb04f5ca25ecd0f6b83cf798a1e1";
       };
     };
+    "is-electron-2.1.0" = {
+      name = "is-electron";
+      packageName = "is-electron";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-electron/-/is-electron-2.1.0.tgz";
+        sha512 = "dkg5xT383+M6zIbbXW/z7n2nz4SFUi2OSyhntnFYkRdtV+HVEfdjEK+5AWisfYgkpe3WYjTIuh7toaKmSfFVWw==";
+      };
+    };
     "is-equal-shallow-0.1.3" = {
       name = "is-equal-shallow";
       packageName = "is-equal-shallow";
@@ -15514,6 +16136,15 @@ let
         sha1 = "9521c76845cc2610a85203ddf080a958c2ffabc0";
       };
     };
+    "is-hexadecimal-1.0.2" = {
+      name = "is-hexadecimal";
+      packageName = "is-hexadecimal";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.2.tgz";
+        sha512 = "but/G3sapV3MNyqiDBLrOi4x8uCIw0RY3o/Vb5GT0sMFHrVV7731wFSVy41T5FO1og7G0gXLJh0MkgPRouko/A==";
+      };
+    };
     "is-installed-globally-0.1.0" = {
       name = "is-installed-globally";
       packageName = "is-installed-globally";
@@ -15955,6 +16586,15 @@ let
         sha1 = "4b0da1442104d1b336340e80797e865cf39f7d72";
       };
     };
+    "is-valid-domain-0.0.5" = {
+      name = "is-valid-domain";
+      packageName = "is-valid-domain";
+      version = "0.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-valid-domain/-/is-valid-domain-0.0.5.tgz";
+        sha1 = "48e70319fcb43009236e96b37f9843889ce7b513";
+      };
+    };
     "is-valid-glob-1.0.0" = {
       name = "is-valid-glob";
       packageName = "is-valid-glob";
@@ -16423,13 +17063,22 @@ let
         sha1 = "e421a2a8e20d6b0819df28908f782526b96dd1fe";
       };
     };
-    "jshint-2.8.0" = {
+    "jshint-2.9.6" = {
       name = "jshint";
       packageName = "jshint";
-      version = "2.8.0";
+      version = "2.9.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jshint/-/jshint-2.9.6.tgz";
+        sha512 = "KO9SIAKTlJQOM4lE64GQUtGBRpTOuvbrRrSZw3AhUxMNG266nX9hK2cKA4SBhXOj0irJGyNyGSLT62HGOVDEOA==";
+      };
+    };
+    "json-buffer-2.0.11" = {
+      name = "json-buffer";
+      packageName = "json-buffer";
+      version = "2.0.11";
       src = fetchurl {
-        url = "https://registry.npmjs.org/jshint/-/jshint-2.8.0.tgz";
-        sha1 = "1d09a3bd913c4cadfa81bf18d582bd85bffe0d44";
+        url = "https://registry.npmjs.org/json-buffer/-/json-buffer-2.0.11.tgz";
+        sha1 = "3e441fda3098be8d1e3171ad591bc62a33e2d55f";
       };
     };
     "json-buffer-3.0.0" = {
@@ -16905,7 +17554,7 @@ let
       packageName = "k-bucket";
       version = "0.6.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/k-bucket/-/k-bucket-0.6.0.tgz";
+        url = "http://registry.npmjs.org/k-bucket/-/k-bucket-0.6.0.tgz";
         sha1 = "afc532545f69d466293e887b00d5fc73377c3abb";
       };
     };
@@ -16914,7 +17563,7 @@ let
       packageName = "k-bucket";
       version = "2.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/k-bucket/-/k-bucket-2.0.1.tgz";
+        url = "http://registry.npmjs.org/k-bucket/-/k-bucket-2.0.1.tgz";
         sha1 = "58cccb244f563326ba893bf5c06a35f644846daa";
       };
     };
@@ -16936,6 +17585,15 @@ let
         sha512 = "YvDpmY3waI999h1zZoW1rJ04fZrgZ+5PAlVmvwDHT6YO/Q1AOhdel07xsKy9eAvJjQ9xZV1wz3rXKqEfaWvlcQ==";
       };
     };
+    "k-bucket-5.0.0" = {
+      name = "k-bucket";
+      packageName = "k-bucket";
+      version = "5.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/k-bucket/-/k-bucket-5.0.0.tgz";
+        sha512 = "r/q+wV/Kde62/tk+rqyttEJn6h0jR7x+incdMVSYTqK73zVxVrzJa70kJL49cIKen8XjIgUZKSvk8ktnrQbK4w==";
+      };
+    };
     "k-rpc-3.7.0" = {
       name = "k-rpc";
       packageName = "k-rpc";
@@ -17189,6 +17847,24 @@ let
         sha512 = "++ulra2RtdutmJhZZFohhF+kbccz2XdFTf23857x8X1M9Jfm54ZKY4kXPJKgPdMz6eTH1MBXWXh17RvGWxLNrw==";
       };
     };
+    "kvgraph-0.1.0" = {
+      name = "kvgraph";
+      packageName = "kvgraph";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/kvgraph/-/kvgraph-0.1.0.tgz";
+        sha1 = "068eed75b8d9bae75c1219da41eea0e433cd748c";
+      };
+    };
+    "kvset-1.0.0" = {
+      name = "kvset";
+      packageName = "kvset";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/kvset/-/kvset-1.0.0.tgz";
+        sha1 = "24f68db8ecb155498c9ecb56aef40ae24509872f";
+      };
+    };
     "labeled-stream-splicer-2.0.1" = {
       name = "labeled-stream-splicer";
       packageName = "labeled-stream-splicer";
@@ -17279,6 +17955,15 @@ let
         sha1 = "308accafa0bc483a3867b4b6f2b9506251d1b835";
       };
     };
+    "lcid-2.0.0" = {
+      name = "lcid";
+      packageName = "lcid";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz";
+        sha512 = "avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==";
+      };
+    };
     "lead-1.0.0" = {
       name = "lead";
       packageName = "lead";
@@ -17333,6 +18018,51 @@ let
         sha1 = "e1a3f4cad65fc02e25070a47d63d7b527361c1cf";
       };
     };
+    "level-3.0.2" = {
+      name = "level";
+      packageName = "level";
+      version = "3.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/level/-/level-3.0.2.tgz";
+        sha512 = "2qYbbiptPsPWGUI+AgB1gTNXqIjPpALRqrQyNx1zWYNZxhhuzEj/IE4Unu9weEBnsUEocfYe56xOGlAceb8/Fg==";
+      };
+    };
+    "level-codec-6.2.0" = {
+      name = "level-codec";
+      packageName = "level-codec";
+      version = "6.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/level-codec/-/level-codec-6.2.0.tgz";
+        sha1 = "a4b5244bb6a4c2f723d68a1d64e980c53627d9d4";
+      };
+    };
+    "level-codec-8.0.0" = {
+      name = "level-codec";
+      packageName = "level-codec";
+      version = "8.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/level-codec/-/level-codec-8.0.0.tgz";
+        sha512 = "gNZlo1HRHz0BWxzGCyNf7xntAs2HKOPvvRBWtXsoDvEX4vMYnSTBS6ZnxoaiX7nhxSBPpegRa8CQ/hnfGBKk3Q==";
+      };
+    };
+    "level-errors-1.1.2" = {
+      name = "level-errors";
+      packageName = "level-errors";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/level-errors/-/level-errors-1.1.2.tgz";
+        sha512 = "Sw/IJwWbPKF5Ai4Wz60B52yj0zYeqzObLh8k1Tk88jVmD51cJSKWSYpRyhVIvFzZdvsPqlH5wfhp/yxdsaQH4w==";
+      };
+    };
+    "level-iterator-stream-2.0.3" = {
+      name = "level-iterator-stream";
+      packageName = "level-iterator-stream";
+      version = "2.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/level-iterator-stream/-/level-iterator-stream-2.0.3.tgz";
+        sha512 = "I6Heg70nfF+e5Y3/qfthJFexhRw/Gi3bIymCoXAlijZdAcLaPuWSJs3KXyTYf23ID6g0o2QF62Yh+grOXY3Rig==";
+      };
+    };
     "level-packager-0.18.0" = {
       name = "level-packager";
       packageName = "level-packager";
@@ -17342,6 +18072,15 @@ let
         sha1 = "c076b087646f1d7dedcc3442f58800dd0a0b45f5";
       };
     };
+    "level-packager-2.1.1" = {
+      name = "level-packager";
+      packageName = "level-packager";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/level-packager/-/level-packager-2.1.1.tgz";
+        sha512 = "6l3G6dVkmdvHwOJrEA9d9hL6SSFrzwjQoLP8HsvohOgfY/8Z9LyTKNCM5Gc84wtsUWCuIHu6r+S6WrCtTWUJCw==";
+      };
+    };
     "level-post-1.0.7" = {
       name = "level-post";
       packageName = "level-post";
@@ -17369,6 +18108,15 @@ let
         sha1 = "a1bb751c95263ff60f41bde0f973ff8c1e98bbe9";
       };
     };
+    "leveldown-3.0.2" = {
+      name = "leveldown";
+      packageName = "leveldown";
+      version = "3.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/leveldown/-/leveldown-3.0.2.tgz";
+        sha512 = "+ANRScj1npQQzv6e4DYAKRjVQZZ+ahMoubKrNP68nIq+l9bYgb+WiXF+14oTcQTg2f7qE9WHGW7rBG9nGSsA+A==";
+      };
+    };
     "levelup-0.18.6" = {
       name = "levelup";
       packageName = "levelup";
@@ -17387,6 +18135,15 @@ let
         sha1 = "f3a6a7205272c4b5f35e412ff004a03a0aedf50b";
       };
     };
+    "levelup-2.0.2" = {
+      name = "levelup";
+      packageName = "levelup";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/levelup/-/levelup-2.0.2.tgz";
+        sha512 = "us+nTLUyd/eLnclYYddOCdAVw1hnymGx/9p4Jr5ThohStsjLqMVmbYiz6/SYFZEPXNF+AKQSvh6fA2e2KZpC8w==";
+      };
+    };
     "leven-1.0.2" = {
       name = "leven";
       packageName = "leven";
@@ -17459,6 +18216,24 @@ let
         sha1 = "e80ad2ef5c081ac677f66515d107537fdc0f5c64";
       };
     };
+    "libsodium-0.7.3" = {
+      name = "libsodium";
+      packageName = "libsodium";
+      version = "0.7.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/libsodium/-/libsodium-0.7.3.tgz";
+        sha512 = "ld+deUNqSsZYbAobUs63UyduPq8ICp/Ul/5lbvBIYpuSNWpPRU0PIxbW+xXipVZtuopR6fIz9e0tTnNuPMNeqw==";
+      };
+    };
+    "libsodium-wrappers-0.7.3" = {
+      name = "libsodium-wrappers";
+      packageName = "libsodium-wrappers";
+      version = "0.7.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/libsodium-wrappers/-/libsodium-wrappers-0.7.3.tgz";
+        sha512 = "dw5Jh6TZ5qc5rQVZe3JrSO/J05CE+DmAPnqD7Q2glBUE969xZ6o3fchnUxyPlp6ss3x0MFxmdJntveFN+XTg1g==";
+      };
+    };
     "lie-3.1.1" = {
       name = "lie";
       packageName = "lie";
@@ -17626,7 +18401,7 @@ let
       packageName = "lodash";
       version = "1.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/lodash/-/lodash-1.0.2.tgz";
+        url = "http://registry.npmjs.org/lodash/-/lodash-1.0.2.tgz";
         sha1 = "8f57560c83b59fc270bd3d561b690043430e2551";
       };
     };
@@ -17635,7 +18410,7 @@ let
       packageName = "lodash";
       version = "2.4.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/lodash/-/lodash-2.4.2.tgz";
+        url = "http://registry.npmjs.org/lodash/-/lodash-2.4.2.tgz";
         sha1 = "fadd834b9683073da179b3eae6d9c0d15053f73e";
       };
     };
@@ -17644,7 +18419,7 @@ let
       packageName = "lodash";
       version = "3.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/lodash/-/lodash-3.1.0.tgz";
+        url = "http://registry.npmjs.org/lodash/-/lodash-3.1.0.tgz";
         sha1 = "d41b8b33530cb3be088853208ad30092d2c27961";
       };
     };
@@ -17653,25 +18428,16 @@ let
       packageName = "lodash";
       version = "3.10.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz";
+        url = "http://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz";
         sha1 = "5bf45e8e49ba4189e17d482789dfd15bd140b7b6";
       };
     };
-    "lodash-3.7.0" = {
-      name = "lodash";
-      packageName = "lodash";
-      version = "3.7.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/lodash/-/lodash-3.7.0.tgz";
-        sha1 = "3678bd8ab995057c07ade836ed2ef087da811d45";
-      };
-    };
     "lodash-4.13.1" = {
       name = "lodash";
       packageName = "lodash";
       version = "4.13.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/lodash/-/lodash-4.13.1.tgz";
+        url = "http://registry.npmjs.org/lodash/-/lodash-4.13.1.tgz";
         sha1 = "83e4b10913f48496d4d16fec4a560af2ee744b68";
       };
     };
@@ -17680,7 +18446,7 @@ let
       packageName = "lodash";
       version = "4.14.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/lodash/-/lodash-4.14.2.tgz";
+        url = "http://registry.npmjs.org/lodash/-/lodash-4.14.2.tgz";
         sha1 = "bbccce6373a400fbfd0a8c67ca42f6d1ef416432";
       };
     };
@@ -17707,7 +18473,7 @@ let
       packageName = "lodash";
       version = "4.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/lodash/-/lodash-4.2.1.tgz";
+        url = "http://registry.npmjs.org/lodash/-/lodash-4.2.1.tgz";
         sha1 = "171fdcfbbc30d689c544cd18c0529f56de6c1aa9";
       };
     };
@@ -18647,6 +19413,15 @@ let
         sha1 = "a3a17bbf62eeb6240f491846e97c1c4e2a5e1e21";
       };
     };
+    "log-symbols-1.0.2" = {
+      name = "log-symbols";
+      packageName = "log-symbols";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/log-symbols/-/log-symbols-1.0.2.tgz";
+        sha1 = "376ff7b58ea3086a0f09facc74617eca501e1a18";
+      };
+    };
     "log-symbols-2.2.0" = {
       name = "log-symbols";
       packageName = "log-symbols";
@@ -18737,6 +19512,15 @@ let
         sha1 = "30a0b2da38f73770e8294a0d22e6625ed77d0097";
       };
     };
+    "longest-streak-1.0.0" = {
+      name = "longest-streak";
+      packageName = "longest-streak";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/longest-streak/-/longest-streak-1.0.0.tgz";
+        sha1 = "d06597c4d4c31b52ccb1f5d8f8fe7148eafd6965";
+      };
+    };
     "longjohn-0.2.12" = {
       name = "longjohn";
       packageName = "longjohn";
@@ -18764,6 +19548,15 @@ let
         sha1 = "2efa54c3b1cbaba9b94aee2e5914b0be57fbb749";
       };
     };
+    "looper-4.0.0" = {
+      name = "looper";
+      packageName = "looper";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/looper/-/looper-4.0.0.tgz";
+        sha1 = "7706aded59a99edca06e6b54bb86c8ec19c95155";
+      };
+    };
     "loose-envify-1.4.0" = {
       name = "loose-envify";
       packageName = "loose-envify";
@@ -18782,6 +19575,15 @@ let
         sha512 = "r4w0WrhIHV1lOTVGbTg4Toqwso5x6C8pM7Q/Nto2vy4c7yUSdTYVYlj16uHVX3MT1StpSELDv8yrqGx41MBsDA==";
       };
     };
+    "lossy-store-1.2.3" = {
+      name = "lossy-store";
+      packageName = "lossy-store";
+      version = "1.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lossy-store/-/lossy-store-1.2.3.tgz";
+        sha1 = "562e2a9203d8661f60e8712de407fbdadf275dc9";
+      };
+    };
     "loud-rejection-1.6.0" = {
       name = "loud-rejection";
       packageName = "loud-rejection";
@@ -18917,6 +19719,15 @@ let
         sha1 = "2738bd9f0d3cf4f84490c5736c48699ac632cda3";
       };
     };
+    "lrucache-1.0.3" = {
+      name = "lrucache";
+      packageName = "lrucache";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lrucache/-/lrucache-1.0.3.tgz";
+        sha1 = "3b1ded0d1ba82e188b9bdaba9eee6486f864a434";
+      };
+    };
     "lstream-0.0.4" = {
       name = "lstream";
       packageName = "lstream";
@@ -18944,6 +19755,15 @@ let
         sha1 = "10851a06d9964b971178441c23c9e52698eece34";
       };
     };
+    "ltgt-2.2.1" = {
+      name = "ltgt";
+      packageName = "ltgt";
+      version = "2.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ltgt/-/ltgt-2.2.1.tgz";
+        sha1 = "f35ca91c493f7b73da0e07495304f17b31f87ee5";
+      };
+    };
     "lunr-0.7.2" = {
       name = "lunr";
       packageName = "lunr";
@@ -18976,7 +19796,7 @@ let
       packageName = "magnet-uri";
       version = "2.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/magnet-uri/-/magnet-uri-2.0.1.tgz";
+        url = "http://registry.npmjs.org/magnet-uri/-/magnet-uri-2.0.1.tgz";
         sha1 = "d331d3dfcd3836565ade0fc3ca315e39217bb209";
       };
     };
@@ -18985,17 +19805,17 @@ let
       packageName = "magnet-uri";
       version = "4.2.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/magnet-uri/-/magnet-uri-4.2.3.tgz";
+        url = "http://registry.npmjs.org/magnet-uri/-/magnet-uri-4.2.3.tgz";
         sha1 = "79cc6d65a00bb5b7ef5c25ae60ebbb5d9a7681a8";
       };
     };
-    "magnet-uri-5.2.3" = {
+    "magnet-uri-5.2.4" = {
       name = "magnet-uri";
       packageName = "magnet-uri";
-      version = "5.2.3";
+      version = "5.2.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/magnet-uri/-/magnet-uri-5.2.3.tgz";
-        sha512 = "INWVwcpWfZTVM+Yb4EXVBpm0FTd8Q98Fn5x7nuHv1hkFDRELgdIM+eJ3zYLbNTFpFPYtHs6B+sx8exs29IYwgA==";
+        url = "https://registry.npmjs.org/magnet-uri/-/magnet-uri-5.2.4.tgz";
+        sha512 = "VYaJMxhr8B9BrCiNINUsuhaEe40YnG+AQBwcqUKO66lSVaI9I3A1iH/6EmEwRI8OYUg5Gt+4lLE7achg676lrg==";
       };
     };
     "mailcomposer-2.1.0" = {
@@ -19034,13 +19854,13 @@ let
         sha512 = "2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==";
       };
     };
-    "make-error-1.3.4" = {
+    "make-error-1.3.5" = {
       name = "make-error";
       packageName = "make-error";
-      version = "1.3.4";
+      version = "1.3.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/make-error/-/make-error-1.3.4.tgz";
-        sha512 = "0Dab5btKVPhibSalc9QGXb559ED7G7iLjFXBaj9Wq8O3vorueR5K5jaE3hkG6ZQINyhA/JgG6Qk4qdFQjsYV6g==";
+        url = "https://registry.npmjs.org/make-error/-/make-error-1.3.5.tgz";
+        sha512 = "c3sIjNUow0+8swNwVpqoH4YCShKNFkMaw6oH1mNS2haDZQqkeZFlHS3dhoeEbKKmJB4vXpJucU6oH75aDYeE9g==";
       };
     };
     "make-error-cause-1.2.2" = {
@@ -19088,6 +19908,33 @@ let
         sha1 = "c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf";
       };
     };
+    "map-filter-reduce-2.2.1" = {
+      name = "map-filter-reduce";
+      packageName = "map-filter-reduce";
+      version = "2.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/map-filter-reduce/-/map-filter-reduce-2.2.1.tgz";
+        sha1 = "632b127c3ae5d6ad9e21cfdd9691b63b8944fcd2";
+      };
+    };
+    "map-filter-reduce-3.1.0" = {
+      name = "map-filter-reduce";
+      packageName = "map-filter-reduce";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/map-filter-reduce/-/map-filter-reduce-3.1.0.tgz";
+        sha512 = "os2GlG1lEWRSAvAb9iqfapQ0I1GRXSA+alSjQl0DB7XxNyDx2/VOVAEVhK7EMsqwDDCWNTBSstoo1roc7U5H0w==";
+      };
+    };
+    "map-merge-1.1.0" = {
+      name = "map-merge";
+      packageName = "map-merge";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/map-merge/-/map-merge-1.1.0.tgz";
+        sha1 = "6a6fc58c95d8aab46c2bdde44d515b6ee06fce34";
+      };
+    };
     "map-obj-1.0.1" = {
       name = "map-obj";
       packageName = "map-obj";
@@ -19169,6 +20016,15 @@ let
         sha512 = "7pxkHuvqTOu3iwVGmDPeYjQg+AIS9VQxzyLP9JCg9lBjgPAJXGEkChK6A2iFuj3tS0GV3HG2u5AMNhcQqwxpJw==";
       };
     };
+    "markdown-table-0.4.0" = {
+      name = "markdown-table";
+      packageName = "markdown-table";
+      version = "0.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/markdown-table/-/markdown-table-0.4.0.tgz";
+        sha1 = "890c2c1b3bfe83fb00e4129b8e4cfe645270f9d1";
+      };
+    };
     "marked-0.3.19" = {
       name = "marked";
       packageName = "marked";
@@ -19214,6 +20070,15 @@ let
         sha1 = "e9bdbde94a20a5ac18b04340fc5764d5b09d901d";
       };
     };
+    "mdmanifest-1.0.8" = {
+      name = "mdmanifest";
+      packageName = "mdmanifest";
+      version = "1.0.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mdmanifest/-/mdmanifest-1.0.8.tgz";
+        sha1 = "c04891883c28c83602e1d06b05a11037e359b4c8";
+      };
+    };
     "mdn-data-1.1.4" = {
       name = "mdn-data";
       packageName = "mdn-data";
@@ -19304,6 +20169,15 @@ let
         sha1 = "5edd52b485ca1d900fe64895505399a0dfa45f76";
       };
     };
+    "mem-3.0.1" = {
+      name = "mem";
+      packageName = "mem";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mem/-/mem-3.0.1.tgz";
+        sha512 = "QKs47bslvOE0NbXOqG6lMxn6Bk0Iuw0vfrIeLykmQle2LkCw1p48dZDdzE+D88b/xqRJcZGcMNeDvSVma+NuIQ==";
+      };
+    };
     "mem-fs-1.1.3" = {
       name = "mem-fs";
       packageName = "mem-fs";
@@ -19795,7 +20669,7 @@ let
       packageName = "minimist";
       version = "0.0.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz";
+        url = "http://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz";
         sha1 = "de3f98543dbf96082be48ad1a0c7cda836301dcf";
       };
     };
@@ -19804,7 +20678,7 @@ let
       packageName = "minimist";
       version = "0.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz";
+        url = "http://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz";
         sha1 = "857fcabfc3397d2625b8228262e86aa7a011b05d";
       };
     };
@@ -19813,7 +20687,7 @@ let
       packageName = "minimist";
       version = "0.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/minimist/-/minimist-0.1.0.tgz";
+        url = "http://registry.npmjs.org/minimist/-/minimist-0.1.0.tgz";
         sha1 = "99df657a52574c21c9057497df742790b2b4c0de";
       };
     };
@@ -19822,7 +20696,7 @@ let
       packageName = "minimist";
       version = "0.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/minimist/-/minimist-0.2.0.tgz";
+        url = "http://registry.npmjs.org/minimist/-/minimist-0.2.0.tgz";
         sha1 = "4dffe525dae2b864c66c2e23c6271d7afdecefce";
       };
     };
@@ -19831,7 +20705,7 @@ let
       packageName = "minimist";
       version = "1.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz";
+        url = "http://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz";
         sha1 = "a35008b20f41383eec1fb914f4cd5df79a264284";
       };
     };
@@ -19912,7 +20786,7 @@ let
       packageName = "mkdirp";
       version = "0.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.0.tgz";
+        url = "http://registry.npmjs.org/mkdirp/-/mkdirp-0.3.0.tgz";
         sha1 = "1bbf5ab1ba827af23575143490426455f481fe1e";
       };
     };
@@ -19921,7 +20795,7 @@ let
       packageName = "mkdirp";
       version = "0.3.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.5.tgz";
+        url = "http://registry.npmjs.org/mkdirp/-/mkdirp-0.3.5.tgz";
         sha1 = "de3e5f8961c88c787ee1368df849ac4413eca8d7";
       };
     };
@@ -19930,7 +20804,7 @@ let
       packageName = "mkdirp";
       version = "0.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.0.tgz";
+        url = "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.0.tgz";
         sha1 = "1d73076a6df986cd9344e15e71fcc05a4c9abf12";
       };
     };
@@ -19939,7 +20813,7 @@ let
       packageName = "mkdirp";
       version = "0.5.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz";
+        url = "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz";
         sha1 = "30057438eac6cf7f8c4767f38648d6697d75c903";
       };
     };
@@ -19975,7 +20849,7 @@ let
       packageName = "mocha";
       version = "2.5.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mocha/-/mocha-2.5.3.tgz";
+        url = "http://registry.npmjs.org/mocha/-/mocha-2.5.3.tgz";
         sha1 = "161be5bdeb496771eb9b35745050b622b5aefc58";
       };
     };
@@ -20029,7 +20903,7 @@ let
       packageName = "moment";
       version = "2.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/moment/-/moment-2.1.0.tgz";
+        url = "http://registry.npmjs.org/moment/-/moment-2.1.0.tgz";
         sha1 = "1fd7b1134029a953c6ea371dbaee37598ac03567";
       };
     };
@@ -20056,7 +20930,7 @@ let
       packageName = "moment";
       version = "2.7.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/moment/-/moment-2.7.0.tgz";
+        url = "http://registry.npmjs.org/moment/-/moment-2.7.0.tgz";
         sha1 = "359a19ec634cda3c706c8709adda54c0329aaec4";
       };
     };
@@ -20083,7 +20957,7 @@ let
       packageName = "mongoose";
       version = "3.6.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mongoose/-/mongoose-3.6.7.tgz";
+        url = "http://registry.npmjs.org/mongoose/-/mongoose-3.6.7.tgz";
         sha1 = "aa6c9f4dfb740c7721dbe734fbb97714e5ab0ebc";
       };
     };
@@ -20096,6 +20970,15 @@ let
         sha1 = "3bac3f3924a845d147784fc6558dee900b0151e2";
       };
     };
+    "monotonic-timestamp-0.0.9" = {
+      name = "monotonic-timestamp";
+      packageName = "monotonic-timestamp";
+      version = "0.0.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/monotonic-timestamp/-/monotonic-timestamp-0.0.9.tgz";
+        sha1 = "5ba5adc7aac85e1d7ce77be847161ed246b39603";
+      };
+    };
     "mooremachine-2.2.1" = {
       name = "mooremachine";
       packageName = "mooremachine";
@@ -20110,7 +20993,7 @@ let
       packageName = "morgan";
       version = "1.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/morgan/-/morgan-1.6.1.tgz";
+        url = "http://registry.npmjs.org/morgan/-/morgan-1.6.1.tgz";
         sha1 = "5fd818398c6819cba28a7cd6664f292fe1c0bbf2";
       };
     };
@@ -20155,7 +21038,7 @@ let
       packageName = "mpath";
       version = "0.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mpath/-/mpath-0.1.1.tgz";
+        url = "http://registry.npmjs.org/mpath/-/mpath-0.1.1.tgz";
         sha1 = "23da852b7c232ee097f4759d29c0ee9cd22d5e46";
       };
     };
@@ -20164,7 +21047,7 @@ let
       packageName = "mpath";
       version = "0.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mpath/-/mpath-0.2.1.tgz";
+        url = "http://registry.npmjs.org/mpath/-/mpath-0.2.1.tgz";
         sha1 = "3a4e829359801de96309c27a6b2e102e89f9e96e";
       };
     };
@@ -20339,6 +21222,24 @@ let
         sha1 = "6462f1b204109ccc644601650110a828443d66e2";
       };
     };
+    "multiblob-1.13.0" = {
+      name = "multiblob";
+      packageName = "multiblob";
+      version = "1.13.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/multiblob/-/multiblob-1.13.0.tgz";
+        sha1 = "e284d5e4a944e724bee2e3896cb3007f069a41bb";
+      };
+    };
+    "multiblob-http-0.4.2" = {
+      name = "multiblob-http";
+      packageName = "multiblob-http";
+      version = "0.4.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/multiblob-http/-/multiblob-http-0.4.2.tgz";
+        sha512 = "hVaXryaqJ3vvKjRNcOCEadzgO99nR+haxlptswr3vRvgavbK/Y/I7/Nat12WIQno2/A8+nkbE+ZcrsN3UDbtQw==";
+      };
+    };
     "multicast-dns-4.0.1" = {
       name = "multicast-dns";
       packageName = "multicast-dns";
@@ -20429,6 +21330,15 @@ let
         sha1 = "2a8f2ddf70eed564dff2d57f1e1a137d9f05078b";
       };
     };
+    "multiserver-1.13.3" = {
+      name = "multiserver";
+      packageName = "multiserver";
+      version = "1.13.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/multiserver/-/multiserver-1.13.3.tgz";
+        sha512 = "9x0bO59YVcfT1jNIBcqz1SUI+mPxQWjjPOTzmLew/VS17yot3JOXLloK6g1+ky+uj+AHqRhKfm1zUFMKhlfqWg==";
+      };
+    };
     "multistream-2.1.1" = {
       name = "multistream";
       packageName = "multistream";
@@ -20528,6 +21438,33 @@ let
         sha512 = "oprzxd2zhfrJqEuB98qc1dRMMonClBQ57UPDjnbcrah4orEMTq1jq3+AcdFe5ePzdbJXI7zmdhfftIdMnhYFoQ==";
       };
     };
+    "muxrpc-6.4.1" = {
+      name = "muxrpc";
+      packageName = "muxrpc";
+      version = "6.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/muxrpc/-/muxrpc-6.4.1.tgz";
+        sha512 = "r8+tucKMmQiYd8NWGQqAA5r+SlYuU30D/WbYo7E/PztG/jmizQJY5NfmLIJ+GWo+dEC6kIxkr0eY+U0uZexTNg==";
+      };
+    };
+    "muxrpc-validation-2.0.1" = {
+      name = "muxrpc-validation";
+      packageName = "muxrpc-validation";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/muxrpc-validation/-/muxrpc-validation-2.0.1.tgz";
+        sha1 = "cd650d172025fe9d064230aab38ca6328dd16f2f";
+      };
+    };
+    "muxrpcli-1.1.0" = {
+      name = "muxrpcli";
+      packageName = "muxrpcli";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/muxrpcli/-/muxrpcli-1.1.0.tgz";
+        sha1 = "4ae9ba986ab825c4a5c12fcb71c6daa81eab5158";
+      };
+    };
     "mv-2.1.1" = {
       name = "mv";
       packageName = "mv";
@@ -20627,13 +21564,13 @@ let
         sha512 = "4/uzl+LkMGoVv/9eMzH2QFvefmlJErT0KR7EmuYbmht2QvxSEqTjhFFOZ/KHE6chH58fKL3njrOcEwbYV0h9Yw==";
       };
     };
-    "nanoid-1.2.1" = {
+    "nanoid-1.2.2" = {
       name = "nanoid";
       packageName = "nanoid";
-      version = "1.2.1";
+      version = "1.2.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/nanoid/-/nanoid-1.2.1.tgz";
-        sha512 = "S1QSG+TQtsqr2/ujHZcNT0OxygffUaUT755qTc/SPKfQ0VJBlOO6qb1425UYoHXPvCZ3pWgMVCuy1t7+AoCxnQ==";
+        url = "https://registry.npmjs.org/nanoid/-/nanoid-1.2.2.tgz";
+        sha512 = "o4eK+NomkjYEn6cN9rImXMz1st/LdRP+tricKyoH834ikDwp/M/PJlYWTd7E7/OhvObzLJpuuVvwjg+jDpD4hA==";
       };
     };
     "nanolru-1.0.0" = {
@@ -21114,7 +22051,7 @@ let
       packageName = "node-fetch";
       version = "2.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/node-fetch/-/node-fetch-2.1.2.tgz";
+        url = "http://registry.npmjs.org/node-fetch/-/node-fetch-2.1.2.tgz";
         sha1 = "ab884e8e7e57e38a944753cec706f788d1768bb5";
       };
     };
@@ -21217,6 +22154,15 @@ let
         sha1 = "4fc4effbb02f241fb5082bd4fbab398e4aecb64d";
       };
     };
+    "node-polyglot-1.0.0" = {
+      name = "node-polyglot";
+      packageName = "node-polyglot";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/node-polyglot/-/node-polyglot-1.0.0.tgz";
+        sha1 = "25b4d1d9d8eb02b48271c96000c4e6d366eef689";
+      };
+    };
     "node-pre-gyp-0.6.39" = {
       name = "node-pre-gyp";
       packageName = "node-pre-gyp";
@@ -21415,13 +22361,13 @@ let
         sha1 = "586db8101db30cb4438eb546737a41aad0cf13d5";
       };
     };
-    "nodemon-1.18.3" = {
+    "nodemon-1.18.4" = {
       name = "nodemon";
       packageName = "nodemon";
-      version = "1.18.3";
+      version = "1.18.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/nodemon/-/nodemon-1.18.3.tgz";
-        sha512 = "XdVfAjGlDKU2nqoGgycxTndkJ5fdwvWJ/tlMGk2vHxMZBrSPVh86OM6z7viAv8BBJWjMgeuYQBofzr6LUoi+7g==";
+        url = "https://registry.npmjs.org/nodemon/-/nodemon-1.18.4.tgz";
+        sha512 = "hyK6vl65IPnky/ee+D3IWvVGgJa/m3No2/Xc/3wanS6Ce1MWjCzH6NnhPJ/vZM+6JFym16jtHx51lmCMB9HDtg==";
       };
     };
     "nodesecurity-npm-utils-6.0.0" = {
@@ -21442,6 +22388,15 @@ let
         sha1 = "2151f722472ba79e50a76fc125bb8c8f2e4dc2a7";
       };
     };
+    "non-private-ip-1.4.4" = {
+      name = "non-private-ip";
+      packageName = "non-private-ip";
+      version = "1.4.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/non-private-ip/-/non-private-ip-1.4.4.tgz";
+        sha512 = "K9nTVFOGUOYutaG8ywiKpCdVu458RFxSgSJ0rribUxtf5iLM9B2+raFJgkID3p5op0+twmoQqFaPnu9KYz6qzg==";
+      };
+    };
     "noop-logger-0.1.1" = {
       name = "noop-logger";
       packageName = "noop-logger";
@@ -21532,6 +22487,15 @@ let
         sha512 = "6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==";
       };
     };
+    "normalize-uri-1.1.1" = {
+      name = "normalize-uri";
+      packageName = "normalize-uri";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/normalize-uri/-/normalize-uri-1.1.1.tgz";
+        sha512 = "bui9/kzRGymbkxJsZEBZgDHK2WJWGOHzR0pCr404EpkpVFTkCOYaRwQTlehUE+7oI70mWNENncCWqUxT/icfHw==";
+      };
+    };
     "normalize-url-2.0.1" = {
       name = "normalize-url";
       packageName = "normalize-url";
@@ -21555,7 +22519,7 @@ let
       packageName = "npm";
       version = "3.10.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/npm/-/npm-3.10.10.tgz";
+        url = "http://registry.npmjs.org/npm/-/npm-3.10.10.tgz";
         sha1 = "5b1d577e4c8869d6c8603bc89e9cd1637303e46e";
       };
     };
@@ -21649,6 +22613,15 @@ let
         sha512 = "q9zLP8cTr8xKPmMZN3naxp1k/NxVFsjxN6uWuO1tiw9gxg7wZWQ/b5UTfzD0ANw2q1lQxdLKTeCCksq+bPSgbQ==";
       };
     };
+    "npm-prefix-1.2.0" = {
+      name = "npm-prefix";
+      packageName = "npm-prefix";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/npm-prefix/-/npm-prefix-1.2.0.tgz";
+        sha1 = "e619455f7074ba54cc66d6d0d37dd9f1be6bcbc0";
+      };
+    };
     "npm-registry-client-0.2.27" = {
       name = "npm-registry-client";
       packageName = "npm-registry-client";
@@ -21807,7 +22780,7 @@ let
       packageName = "numeral";
       version = "1.5.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/numeral/-/numeral-1.5.6.tgz";
+        url = "http://registry.npmjs.org/numeral/-/numeral-1.5.6.tgz";
         sha1 = "3831db968451b9cf6aff9bf95925f1ef8e37b33f";
       };
     };
@@ -21947,6 +22920,15 @@ let
         sha512 = "05KzQ70lSeGSrZJQXE5wNDiTkBJDlUT/myi6RX9dVIvz7a7Qh4oH93BQdiPMn27nldYvVQCKMUaM83AfizZlsQ==";
       };
     };
+    "object-inspect-1.6.0" = {
+      name = "object-inspect";
+      packageName = "object-inspect";
+      version = "1.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/object-inspect/-/object-inspect-1.6.0.tgz";
+        sha512 = "GJzfBZ6DgDAmnuaM3104jR4s1Myxr3Y3zfIyN4z3UdqN69oSRacNK8UhnobDdC+7J2AHCjGwxQubNJfE70SXXQ==";
+      };
+    };
     "object-keys-1.0.12" = {
       name = "object-keys";
       packageName = "object-keys";
@@ -22046,12 +23028,48 @@ let
         sha1 = "e524da09b4f66ff05df457546ec72ac99f13069a";
       };
     };
+    "observ-0.2.0" = {
+      name = "observ";
+      packageName = "observ";
+      version = "0.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/observ/-/observ-0.2.0.tgz";
+        sha1 = "0bc39b3e29faa5f9e6caa5906cb8392df400aa68";
+      };
+    };
+    "observ-debounce-1.1.1" = {
+      name = "observ-debounce";
+      packageName = "observ-debounce";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/observ-debounce/-/observ-debounce-1.1.1.tgz";
+        sha1 = "304e97c85adda70ecd7f08da450678ef90f0b707";
+      };
+    };
+    "obv-0.0.0" = {
+      name = "obv";
+      packageName = "obv";
+      version = "0.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/obv/-/obv-0.0.0.tgz";
+        sha1 = "edeab8468f91d4193362ed7f91d0b96dd39a79c1";
+      };
+    };
+    "obv-0.0.1" = {
+      name = "obv";
+      packageName = "obv";
+      version = "0.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/obv/-/obv-0.0.1.tgz";
+        sha1 = "cb236106341536f0dac4815e06708221cad7fb5e";
+      };
+    };
     "octicons-3.5.0" = {
       name = "octicons";
       packageName = "octicons";
       version = "3.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/octicons/-/octicons-3.5.0.tgz";
+        url = "http://registry.npmjs.org/octicons/-/octicons-3.5.0.tgz";
         sha1 = "f7ff5935674d8b114f6d80c454bfaa01797a4e30";
       };
     };
@@ -22064,6 +23082,15 @@ let
         sha1 = "68c1b3c57ced778b4e67d8637d2559b2c1b3ec26";
       };
     };
+    "on-change-network-0.0.2" = {
+      name = "on-change-network";
+      packageName = "on-change-network";
+      version = "0.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/on-change-network/-/on-change-network-0.0.2.tgz";
+        sha1 = "d977249477f91726949d80e82346dab6ef45216b";
+      };
+    };
     "on-finished-2.2.1" = {
       name = "on-finished";
       packageName = "on-finished";
@@ -22091,6 +23118,15 @@ let
         sha1 = "928f5d0f470d49342651ea6794b0857c100693f7";
       };
     };
+    "on-wakeup-1.0.1" = {
+      name = "on-wakeup";
+      packageName = "on-wakeup";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/on-wakeup/-/on-wakeup-1.0.1.tgz";
+        sha1 = "00d79d987dde7c8117bee74bb4903f6f6dafa52b";
+      };
+    };
     "once-1.1.1" = {
       name = "once";
       packageName = "once";
@@ -22163,13 +23199,13 @@ let
         sha1 = "067428230fd67443b2794b22bba528b6867962d4";
       };
     };
-    "ono-4.0.6" = {
+    "ono-4.0.7" = {
       name = "ono";
       packageName = "ono";
-      version = "4.0.6";
+      version = "4.0.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ono/-/ono-4.0.6.tgz";
-        sha512 = "fJc3tfcgNzIEpDmZIyPRZkYrhoSoexXNnEN4I0QyVQ9l7NMw3sBFeG26/UpCdSXyAOr4wqr9+/ym/769sZakSw==";
+        url = "https://registry.npmjs.org/ono/-/ono-4.0.7.tgz";
+        sha512 = "FJiGEETwfSVyOwVTwQZD7XN69FRekvgtlobtvPwtilc7PxIHg3gKUykdNP7E9mC/VTF2cxqKZxUZfNKA3MuQLA==";
       };
     };
     "open-0.0.2" = {
@@ -22190,6 +23226,15 @@ let
         sha1 = "42c3e18ec95466b6bf0dc42f3a2945c3f0cad8fc";
       };
     };
+    "opencollective-postinstall-2.0.0" = {
+      name = "opencollective-postinstall";
+      packageName = "opencollective-postinstall";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/opencollective-postinstall/-/opencollective-postinstall-2.0.0.tgz";
+        sha512 = "XAe80GycLe2yRGnJsUtt+EO5lk06XYRQt4kJJe53O2kJHPZJOZ+XMF/b47HW96e6LhfKVpwnXVr/s56jhV98jg==";
+      };
+    };
     "opener-1.4.2" = {
       name = "opener";
       packageName = "opener";
@@ -22393,7 +23438,7 @@ let
       packageName = "os-locale";
       version = "1.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz";
+        url = "http://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz";
         sha1 = "20f9f17ae29ed345e8bde583b13d2009803c14d9";
       };
     };
@@ -22406,6 +23451,15 @@ let
         sha512 = "3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA==";
       };
     };
+    "os-locale-3.0.0" = {
+      name = "os-locale";
+      packageName = "os-locale";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/os-locale/-/os-locale-3.0.0.tgz";
+        sha512 = "4mi6ZXIp4OtcV/Bwzl9p9Cvae7KJv/czGIm/HK0iaXCuRh7BMpy4l4o4CLjN+atsRQpCW9Rs4FdhfnK0zaR1Jg==";
+      };
+    };
     "os-name-1.0.3" = {
       name = "os-name";
       packageName = "os-name";
@@ -22568,6 +23622,15 @@ let
         sha1 = "bf98fe575705658a9e1351befb85ae4c1f07bdca";
       };
     };
+    "p-pipe-1.2.0" = {
+      name = "p-pipe";
+      packageName = "p-pipe";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/p-pipe/-/p-pipe-1.2.0.tgz";
+        sha1 = "4b1a11399a11520a67790ee5a0c1d5881d6befe9";
+      };
+    };
     "p-reduce-1.0.0" = {
       name = "p-reduce";
       packageName = "p-reduce";
@@ -22685,6 +23748,24 @@ let
         sha1 = "5860587a944873a6b7e6d26e8e51ffb22315bf17";
       };
     };
+    "packet-stream-2.0.4" = {
+      name = "packet-stream";
+      packageName = "packet-stream";
+      version = "2.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/packet-stream/-/packet-stream-2.0.4.tgz";
+        sha512 = "7+oxHdMMs6VhLvvbrDUc8QNuelE9fPKLDdToXBIKLPKOlnoBeMim+/35edp+AnFTLzk3xcogVvQ/jrZyyGsEiw==";
+      };
+    };
+    "packet-stream-codec-1.1.2" = {
+      name = "packet-stream-codec";
+      packageName = "packet-stream-codec";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/packet-stream-codec/-/packet-stream-codec-1.1.2.tgz";
+        sha1 = "79b302fc144cdfbb4ab6feba7040e6a5d99c79c7";
+      };
+    };
     "pacote-9.1.0" = {
       name = "pacote";
       packageName = "pacote";
@@ -22766,6 +23847,15 @@ let
         sha512 = "KPx7flKXg775zZpnp9SxJlz00gTd4BmJ2yJufSc44gMCRrRQ7NSzAcSJQfifuOLgW6bEi+ftrALtsgALeB2Adw==";
       };
     };
+    "parse-entities-1.1.2" = {
+      name = "parse-entities";
+      packageName = "parse-entities";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/parse-entities/-/parse-entities-1.1.2.tgz";
+        sha512 = "5N9lmQ7tmxfXf+hO3X6KRG6w7uYO/HL9fHalSySTdyn63C3WNvTM/1R8tn1u1larNcEbo3Slcy2bsVDQqvEpUg==";
+      };
+    };
     "parse-filepath-1.0.2" = {
       name = "parse-filepath";
       packageName = "parse-filepath";
@@ -22964,15 +24054,6 @@ let
         sha1 = "d5208a3738e46766e291ba2ea173684921a8b89d";
       };
     };
-    "parserlib-0.2.5" = {
-      name = "parserlib";
-      packageName = "parserlib";
-      version = "0.2.5";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/parserlib/-/parserlib-0.2.5.tgz";
-        sha1 = "85907dd8605aa06abb3dd295d50bb2b8fa4dd117";
-      };
-    };
     "parserlib-1.1.1" = {
       name = "parserlib";
       packageName = "parserlib";
@@ -23225,13 +24306,13 @@ let
         sha1 = "411cadb574c5a140d3a4b1910d40d80cc9f40b40";
       };
     };
-    "path-loader-1.0.7" = {
+    "path-loader-1.0.8" = {
       name = "path-loader";
       packageName = "path-loader";
-      version = "1.0.7";
+      version = "1.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/path-loader/-/path-loader-1.0.7.tgz";
-        sha512 = "FIorK5Wwz8LzyklCCsPnHI2ieelYbnnGvEtBC4DxW8MkdzBbGKKhxoDH1pDPnQN5ll+gT7t77fac/VD7Vi1kFA==";
+        url = "https://registry.npmjs.org/path-loader/-/path-loader-1.0.8.tgz";
+        sha512 = "/JQCrTcrteaPB8IHefEAQbmBQReKj51A+yTyc745TBbO4FOySw+/l3Rh0zyad0Nrd87TMROlmFANQwCRsuvN4w==";
       };
     };
     "path-parse-1.0.6" = {
@@ -23523,22 +24604,13 @@ let
         sha1 = "2135d6dfa7a358c069ac9b178776288228450ffa";
       };
     };
-    "pino-4.17.6" = {
+    "pino-5.0.4" = {
       name = "pino";
       packageName = "pino";
-      version = "4.17.6";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/pino/-/pino-4.17.6.tgz";
-        sha512 = "LFDwmhyWLBnmwO/2UFbWu1jEGVDzaPupaVdx0XcZ3tIAx1EDEBauzxXf2S0UcFK7oe+X9MApjH0hx9U1XMgfCA==";
-      };
-    };
-    "pino-5.0.0-rc.4" = {
-      name = "pino";
-      packageName = "pino";
-      version = "5.0.0-rc.4";
+      version = "5.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/pino/-/pino-5.0.0-rc.4.tgz";
-        sha512 = "n5aJmABDjzZbwrB0AEbUeugz1Rh55c9T62yVGv6YL1vP1GuqpjIcLgwZIM1SI8E4Nfmcoo46SSmPgSSA9mPdog==";
+        url = "https://registry.npmjs.org/pino/-/pino-5.0.4.tgz";
+        sha512 = "w7UohXesFggN77UyTnt0A7FqkEiq6TbeXgTvY7g1wFGXoGbxmF780uFm8oQKaWlFi7vnzDRkBnYHNaaHFUKEoQ==";
       };
     };
     "pino-std-serializers-2.2.1" = {
@@ -23676,6 +24748,15 @@ let
         sha512 = "L1zP0dk7vGweZME2i+EeakvUNqSrdiI3F91TwEoYiGrAfUXmVv6fJIq4g82PAXxNsWOp0J7ZqQy/3Szz0ajTxA==";
       };
     };
+    "plur-2.1.2" = {
+      name = "plur";
+      packageName = "plur";
+      version = "2.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/plur/-/plur-2.1.2.tgz";
+        sha1 = "7482452c1a0f508e3e344eaec312c91c29dc655a";
+      };
+    };
     "pluralize-1.2.1" = {
       name = "pluralize";
       packageName = "pluralize";
@@ -23811,6 +24892,15 @@ let
         sha1 = "d9ae0ca85330e03962d93292f95a8b44c2ebf505";
       };
     };
+    "prebuild-install-4.0.0" = {
+      name = "prebuild-install";
+      packageName = "prebuild-install";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/prebuild-install/-/prebuild-install-4.0.0.tgz";
+        sha512 = "7tayxeYboJX0RbVzdnKyGl2vhQRWr6qfClEXDhOkXjuaOKCw2q8aiuFhONRYVsG/czia7KhpykIlI2S2VaPunA==";
+      };
+    };
     "precond-0.2.3" = {
       name = "precond";
       packageName = "precond";
@@ -23906,7 +24996,7 @@ let
       packageName = "printf";
       version = "0.2.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/printf/-/printf-0.2.5.tgz";
+        url = "http://registry.npmjs.org/printf/-/printf-0.2.5.tgz";
         sha1 = "c438ca2ca33e3927671db4ab69c0e52f936a4f0f";
       };
     };
@@ -23946,6 +25036,15 @@ let
         sha512 = "VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==";
       };
     };
+    "private-box-0.2.1" = {
+      name = "private-box";
+      packageName = "private-box";
+      version = "0.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/private-box/-/private-box-0.2.1.tgz";
+        sha1 = "1df061afca5b3039c7feaadd0daf0f56f07e3ec0";
+      };
+    };
     "probe-image-size-4.0.0" = {
       name = "probe-image-size";
       packageName = "probe-image-size";
@@ -24450,6 +25549,60 @@ let
         sha1 = "c00d5c5128bac5806bec15d2b7e7cdabe42531f3";
       };
     };
+    "pull-abortable-4.0.0" = {
+      name = "pull-abortable";
+      packageName = "pull-abortable";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-abortable/-/pull-abortable-4.0.0.tgz";
+        sha1 = "7017a984c3b834de77bac38c10b776f22dfc1843";
+      };
+    };
+    "pull-abortable-4.1.1" = {
+      name = "pull-abortable";
+      packageName = "pull-abortable";
+      version = "4.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-abortable/-/pull-abortable-4.1.1.tgz";
+        sha1 = "b3ad5aefb4116b25916d26db89393ac98d0dcea1";
+      };
+    };
+    "pull-block-filter-1.0.0" = {
+      name = "pull-block-filter";
+      packageName = "pull-block-filter";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-block-filter/-/pull-block-filter-1.0.0.tgz";
+        sha1 = "cf4ef3bbb91ec8b97e1ed31889a6691271e603a7";
+      };
+    };
+    "pull-box-stream-1.0.13" = {
+      name = "pull-box-stream";
+      packageName = "pull-box-stream";
+      version = "1.0.13";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-box-stream/-/pull-box-stream-1.0.13.tgz";
+        sha1 = "c3e240398eab3f5951b2ed1078c5988bf7a0a2b9";
+      };
+    };
+    "pull-buffered-0.3.4" = {
+      name = "pull-buffered";
+      packageName = "pull-buffered";
+      version = "0.3.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-buffered/-/pull-buffered-0.3.4.tgz";
+        sha512 = "rs5MtSaB1LQfXyer2uderwS4ypsTdmh9VC4wZC0WZsIBKqHiy7tFqNZ0QP1ln544N+yQGXEBRbwYn59iO6Ub9w==";
+      };
+    };
+    "pull-cache-0.0.0" = {
+      name = "pull-cache";
+      packageName = "pull-cache";
+      version = "0.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-cache/-/pull-cache-0.0.0.tgz";
+        sha1 = "f9b81fa689ecf2a2d8f10f78ace63bd58980e7bb";
+      };
+    };
     "pull-cat-1.1.11" = {
       name = "pull-cat";
       packageName = "pull-cat";
@@ -24459,6 +25612,42 @@ let
         sha1 = "b642dd1255da376a706b6db4fa962f5fdb74c31b";
       };
     };
+    "pull-cont-0.0.0" = {
+      name = "pull-cont";
+      packageName = "pull-cont";
+      version = "0.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-cont/-/pull-cont-0.0.0.tgz";
+        sha1 = "3fac48b81ac97b75ba01332088b0ce7af8c1be0e";
+      };
+    };
+    "pull-cont-0.1.1" = {
+      name = "pull-cont";
+      packageName = "pull-cont";
+      version = "0.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-cont/-/pull-cont-0.1.1.tgz";
+        sha1 = "df1d580e271757ba9acbaeba20de2421d660d618";
+      };
+    };
+    "pull-core-1.1.0" = {
+      name = "pull-core";
+      packageName = "pull-core";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-core/-/pull-core-1.1.0.tgz";
+        sha1 = "3d8127d6dac1475705c9800961f59d66c8046c8a";
+      };
+    };
+    "pull-cursor-3.0.0" = {
+      name = "pull-cursor";
+      packageName = "pull-cursor";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-cursor/-/pull-cursor-3.0.0.tgz";
+        sha512 = "95lZVSF2eSEdOmUtlOBaD9p5YOvlYeCr5FBv2ySqcj/4rpaXI6d8OH+zPHHjKAf58R8QXJRZuyfHkcCX8TZbAg==";
+      };
+    };
     "pull-defer-0.2.3" = {
       name = "pull-defer";
       packageName = "pull-defer";
@@ -24468,6 +25657,159 @@ let
         sha512 = "/An3KE7mVjZCqNhZsr22k1Tx8MACnUnHZZNPSJ0S62td8JtYr/AiRG42Vz7Syu31SoTLUzVIe61jtT/pNdjVYA==";
       };
     };
+    "pull-file-0.5.0" = {
+      name = "pull-file";
+      packageName = "pull-file";
+      version = "0.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-file/-/pull-file-0.5.0.tgz";
+        sha1 = "b3ca405306e082f9d4528288933badb2b656365b";
+      };
+    };
+    "pull-file-1.1.0" = {
+      name = "pull-file";
+      packageName = "pull-file";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-file/-/pull-file-1.1.0.tgz";
+        sha1 = "1dd987605d6357a0d23c1e4b826f7915a215129c";
+      };
+    };
+    "pull-flatmap-0.0.1" = {
+      name = "pull-flatmap";
+      packageName = "pull-flatmap";
+      version = "0.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-flatmap/-/pull-flatmap-0.0.1.tgz";
+        sha1 = "13d494453e8f6d478e7bbfade6f8fe0197fa6bb7";
+      };
+    };
+    "pull-fs-1.1.6" = {
+      name = "pull-fs";
+      packageName = "pull-fs";
+      version = "1.1.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-fs/-/pull-fs-1.1.6.tgz";
+        sha1 = "f184f6a7728bb4d95641376bead69f6f66df47cd";
+      };
+    };
+    "pull-git-pack-1.0.2" = {
+      name = "pull-git-pack";
+      packageName = "pull-git-pack";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-git-pack/-/pull-git-pack-1.0.2.tgz";
+        sha512 = "WZzAAs9ap+QBHliP3E7sCn9kRfMNbdtFVOU0wRRtbY8x6+SUGeCpIkeYUcl9K/KgkL+2XZeyKXzPZ688IyfMbQ==";
+      };
+    };
+    "pull-git-pack-concat-0.2.1" = {
+      name = "pull-git-pack-concat";
+      packageName = "pull-git-pack-concat";
+      version = "0.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-git-pack-concat/-/pull-git-pack-concat-0.2.1.tgz";
+        sha1 = "b7c8334c3a4961fc5b595a34d1d4224da6082d55";
+      };
+    };
+    "pull-git-packidx-parser-1.0.0" = {
+      name = "pull-git-packidx-parser";
+      packageName = "pull-git-packidx-parser";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-git-packidx-parser/-/pull-git-packidx-parser-1.0.0.tgz";
+        sha1 = "2d8bf0afe4824897ee03840bfe4f5a86afecca21";
+      };
+    };
+    "pull-git-remote-helper-2.0.0" = {
+      name = "pull-git-remote-helper";
+      packageName = "pull-git-remote-helper";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-git-remote-helper/-/pull-git-remote-helper-2.0.0.tgz";
+        sha1 = "7285269ca0968466e3812431ddc2ac357df141be";
+      };
+    };
+    "pull-git-repo-1.2.1" = {
+      name = "pull-git-repo";
+      packageName = "pull-git-repo";
+      version = "1.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-git-repo/-/pull-git-repo-1.2.1.tgz";
+        sha512 = "nHOicXiFryxuO9J+EhYY0cFC4n4mvsDabj6ts6BYgRbWAbp/gQUa+Hzfy05uey+HLz7XaR7N8XC+xGBgsYCmsg==";
+      };
+    };
+    "pull-glob-1.0.7" = {
+      name = "pull-glob";
+      packageName = "pull-glob";
+      version = "1.0.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-glob/-/pull-glob-1.0.7.tgz";
+        sha1 = "eef915dde644bddbea8dd2e0106d544aacbcd5c2";
+      };
+    };
+    "pull-goodbye-0.0.2" = {
+      name = "pull-goodbye";
+      packageName = "pull-goodbye";
+      version = "0.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-goodbye/-/pull-goodbye-0.0.2.tgz";
+        sha1 = "8d8357db55e22a710dfff0f16a8c90b45efe4171";
+      };
+    };
+    "pull-handshake-1.1.4" = {
+      name = "pull-handshake";
+      packageName = "pull-handshake";
+      version = "1.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-handshake/-/pull-handshake-1.1.4.tgz";
+        sha1 = "6000a0fd018884cdfd737254f8cc60ab2a637791";
+      };
+    };
+    "pull-hash-1.0.0" = {
+      name = "pull-hash";
+      packageName = "pull-hash";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-hash/-/pull-hash-1.0.0.tgz";
+        sha1 = "fcad4d2507bf2c2b3231f653dc9bfb2db4f0d88c";
+      };
+    };
+    "pull-hyperscript-0.2.2" = {
+      name = "pull-hyperscript";
+      packageName = "pull-hyperscript";
+      version = "0.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-hyperscript/-/pull-hyperscript-0.2.2.tgz";
+        sha1 = "ca4a65833631854f575a4e2985568c9901f56383";
+      };
+    };
+    "pull-identify-filetype-1.1.0" = {
+      name = "pull-identify-filetype";
+      packageName = "pull-identify-filetype";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-identify-filetype/-/pull-identify-filetype-1.1.0.tgz";
+        sha1 = "5f99af15e8846d48ecf625edc248ec2cf57f6b0d";
+      };
+    };
+    "pull-inactivity-2.1.2" = {
+      name = "pull-inactivity";
+      packageName = "pull-inactivity";
+      version = "2.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-inactivity/-/pull-inactivity-2.1.2.tgz";
+        sha1 = "37a3d6ebbfac292cd435f5e481e5074c8c1fad75";
+      };
+    };
+    "pull-kvdiff-0.0.0" = {
+      name = "pull-kvdiff";
+      packageName = "pull-kvdiff";
+      version = "0.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-kvdiff/-/pull-kvdiff-0.0.0.tgz";
+        sha1 = "9b6627d0e332d98288e47d471602161f41ff1353";
+      };
+    };
     "pull-level-2.0.4" = {
       name = "pull-level";
       packageName = "pull-level";
@@ -24486,6 +25828,78 @@ let
         sha1 = "a4ecee01e330155e9124bbbcf4761f21b38f51f5";
       };
     };
+    "pull-looper-1.0.0" = {
+      name = "pull-looper";
+      packageName = "pull-looper";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-looper/-/pull-looper-1.0.0.tgz";
+        sha512 = "djlD60A6NGe5goLdP5pgbqzMEiWmk1bInuAzBp0QOH4vDrVwh05YDz6UP8+pOXveKEk8wHVP+rB2jBrK31QMPA==";
+      };
+    };
+    "pull-many-1.0.8" = {
+      name = "pull-many";
+      packageName = "pull-many";
+      version = "1.0.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-many/-/pull-many-1.0.8.tgz";
+        sha1 = "3dadd9b6d156c545721bda8d0003dd8eaa06293e";
+      };
+    };
+    "pull-next-1.0.1" = {
+      name = "pull-next";
+      packageName = "pull-next";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-next/-/pull-next-1.0.1.tgz";
+        sha1 = "03f4d7d19872fc1114161e88db6ecf4c65e61e56";
+      };
+    };
+    "pull-notify-0.1.1" = {
+      name = "pull-notify";
+      packageName = "pull-notify";
+      version = "0.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-notify/-/pull-notify-0.1.1.tgz";
+        sha1 = "6f86ff95d270b89c3ebf255b6031b7032dc99cca";
+      };
+    };
+    "pull-paginate-1.0.0" = {
+      name = "pull-paginate";
+      packageName = "pull-paginate";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-paginate/-/pull-paginate-1.0.0.tgz";
+        sha1 = "63ad58efa1066bc701aa581a98a3c41e6aec7fc2";
+      };
+    };
+    "pull-pair-1.1.0" = {
+      name = "pull-pair";
+      packageName = "pull-pair";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-pair/-/pull-pair-1.1.0.tgz";
+        sha1 = "7ee427263fdf4da825397ac0a05e1ab4b74bd76d";
+      };
+    };
+    "pull-paramap-1.2.2" = {
+      name = "pull-paramap";
+      packageName = "pull-paramap";
+      version = "1.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-paramap/-/pull-paramap-1.2.2.tgz";
+        sha1 = "51a4193ce9c8d7215d95adad45e2bcdb8493b23a";
+      };
+    };
+    "pull-ping-2.0.2" = {
+      name = "pull-ping";
+      packageName = "pull-ping";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-ping/-/pull-ping-2.0.2.tgz";
+        sha1 = "7bc4a340167dad88f682a196c63485735c7a0894";
+      };
+    };
     "pull-pushable-2.2.0" = {
       name = "pull-pushable";
       packageName = "pull-pushable";
@@ -24495,6 +25909,69 @@ let
         sha1 = "5f2f3aed47ad86919f01b12a2e99d6f1bd776581";
       };
     };
+    "pull-rate-1.0.2" = {
+      name = "pull-rate";
+      packageName = "pull-rate";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-rate/-/pull-rate-1.0.2.tgz";
+        sha1 = "17b231ad5f359f675826670172b0e590c8964e8d";
+      };
+    };
+    "pull-reader-1.3.1" = {
+      name = "pull-reader";
+      packageName = "pull-reader";
+      version = "1.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-reader/-/pull-reader-1.3.1.tgz";
+        sha512 = "CBkejkE5nX50SiSEzu0Qoz4POTJMS/mw8G6aj3h3M/RJoKgggLxyF0IyTZ0mmpXFlXRcLmLmIEW4xeYn7AeDYw==";
+      };
+    };
+    "pull-sink-through-0.0.0" = {
+      name = "pull-sink-through";
+      packageName = "pull-sink-through";
+      version = "0.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-sink-through/-/pull-sink-through-0.0.0.tgz";
+        sha1 = "d3c0492f3a80b4ed204af67c4b4f935680fc5b1f";
+      };
+    };
+    "pull-skip-footer-0.1.0" = {
+      name = "pull-skip-footer";
+      packageName = "pull-skip-footer";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-skip-footer/-/pull-skip-footer-0.1.0.tgz";
+        sha1 = "95d0c60ce6ea9c8bab8ca0b16e1f518352ed4e4f";
+      };
+    };
+    "pull-stream-2.27.0" = {
+      name = "pull-stream";
+      packageName = "pull-stream";
+      version = "2.27.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-stream/-/pull-stream-2.27.0.tgz";
+        sha1 = "fdf0eb910cdc4041d65956c00bee30dbbd00a068";
+      };
+    };
+    "pull-stream-2.28.4" = {
+      name = "pull-stream";
+      packageName = "pull-stream";
+      version = "2.28.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-stream/-/pull-stream-2.28.4.tgz";
+        sha1 = "7ea97413c1619c20bc3bdf9e10e91347b03253e4";
+      };
+    };
+    "pull-stream-3.5.0" = {
+      name = "pull-stream";
+      packageName = "pull-stream";
+      version = "3.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-stream/-/pull-stream-3.5.0.tgz";
+        sha1 = "1ee5b6f76fd3b3a49a5afb6ded5c0320acb3cfc7";
+      };
+    };
     "pull-stream-3.6.9" = {
       name = "pull-stream";
       packageName = "pull-stream";
@@ -24504,6 +25981,51 @@ let
         sha512 = "hJn4POeBrkttshdNl0AoSCVjMVSuBwuHocMerUdoZ2+oIUzrWHFTwJMlbHND7OiKLVgvz6TFj8ZUVywUMXccbw==";
       };
     };
+    "pull-stream-to-stream-1.3.4" = {
+      name = "pull-stream-to-stream";
+      packageName = "pull-stream-to-stream";
+      version = "1.3.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-stream-to-stream/-/pull-stream-to-stream-1.3.4.tgz";
+        sha1 = "3f81d8216bd18d2bfd1a198190471180e2738399";
+      };
+    };
+    "pull-stringify-1.2.2" = {
+      name = "pull-stringify";
+      packageName = "pull-stringify";
+      version = "1.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-stringify/-/pull-stringify-1.2.2.tgz";
+        sha1 = "5a1c34e0075faf2f2f6d46004e36dccd33bd7c7c";
+      };
+    };
+    "pull-through-1.0.18" = {
+      name = "pull-through";
+      packageName = "pull-through";
+      version = "1.0.18";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-through/-/pull-through-1.0.18.tgz";
+        sha1 = "8dd62314263e59cf5096eafbb127a2b6ef310735";
+      };
+    };
+    "pull-traverse-1.0.3" = {
+      name = "pull-traverse";
+      packageName = "pull-traverse";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-traverse/-/pull-traverse-1.0.3.tgz";
+        sha1 = "74fb5d7be7fa6bd7a78e97933e199b7945866938";
+      };
+    };
+    "pull-utf8-decoder-1.0.2" = {
+      name = "pull-utf8-decoder";
+      packageName = "pull-utf8-decoder";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-utf8-decoder/-/pull-utf8-decoder-1.0.2.tgz";
+        sha1 = "a7afa2384d1e6415a5d602054126cc8de3bcbce7";
+      };
+    };
     "pull-window-2.1.4" = {
       name = "pull-window";
       packageName = "pull-window";
@@ -24513,6 +26035,33 @@ let
         sha1 = "fc3b86feebd1920c7ae297691e23f705f88552f0";
       };
     };
+    "pull-write-1.1.4" = {
+      name = "pull-write";
+      packageName = "pull-write";
+      version = "1.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-write/-/pull-write-1.1.4.tgz";
+        sha1 = "dddea31493b48f6768b84a281d01eb3b531fe0b8";
+      };
+    };
+    "pull-write-file-0.2.4" = {
+      name = "pull-write-file";
+      packageName = "pull-write-file";
+      version = "0.2.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-write-file/-/pull-write-file-0.2.4.tgz";
+        sha1 = "437344aeb2189f65e678ed1af37f0f760a5453ef";
+      };
+    };
+    "pull-ws-3.3.1" = {
+      name = "pull-ws";
+      packageName = "pull-ws";
+      version = "3.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-ws/-/pull-ws-3.3.1.tgz";
+        sha512 = "kJodbLQT+oKjcRIQO+vQNw6xWBuEo7Kxp51VMOvb6cvPvHYA+aNLzm+NmkB/5dZwbuTRYGMal9QPvH52tzM1ZA==";
+      };
+    };
     "pump-0.3.5" = {
       name = "pump";
       packageName = "pump";
@@ -24585,6 +26134,24 @@ let
         sha512 = "XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==";
       };
     };
+    "push-stream-10.0.3" = {
+      name = "push-stream";
+      packageName = "push-stream";
+      version = "10.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/push-stream/-/push-stream-10.0.3.tgz";
+        sha1 = "13d6aef4b506c65bbc3aa62409a8da6ce147ef87";
+      };
+    };
+    "push-stream-to-pull-stream-1.0.3" = {
+      name = "push-stream-to-pull-stream";
+      packageName = "push-stream-to-pull-stream";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/push-stream-to-pull-stream/-/push-stream-to-pull-stream-1.0.3.tgz";
+        sha512 = "pdE/OKi/jnp9DqGgNRzLY0oVHffn/8TXJmBPzv+ikdvpkeA0J//l5d7TZk1yWwZj9P0JcOIEVDOuHzhXaeBlmw==";
+      };
+    };
     "q-1.0.1" = {
       name = "q";
       packageName = "q";
@@ -24828,15 +26395,6 @@ let
         sha1 = "9ec61f79049875707d69414596fd907a4d711e73";
       };
     };
-    "quick-format-unescaped-1.1.2" = {
-      name = "quick-format-unescaped";
-      packageName = "quick-format-unescaped";
-      version = "1.1.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/quick-format-unescaped/-/quick-format-unescaped-1.1.2.tgz";
-        sha1 = "0ca581de3174becef25ac3c2e8956342381db698";
-      };
-    };
     "quick-format-unescaped-3.0.0" = {
       name = "quick-format-unescaped";
       packageName = "quick-format-unescaped";
@@ -25071,6 +26629,15 @@ let
         sha1 = "ce24a2029ad94c3a40d09604a87227027d7210d3";
       };
     };
+    "rc-0.5.5" = {
+      name = "rc";
+      packageName = "rc";
+      version = "0.5.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/rc/-/rc-0.5.5.tgz";
+        sha1 = "541cc3300f464b6dfe6432d756f0f2dd3e9eb199";
+      };
+    };
     "rc-1.2.8" = {
       name = "rc";
       packageName = "rc";
@@ -25557,6 +27124,15 @@ let
         sha1 = "120903040588ec7a4a399c6547fd01d0e3d2dc63";
       };
     };
+    "relative-url-1.0.2" = {
+      name = "relative-url";
+      packageName = "relative-url";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/relative-url/-/relative-url-1.0.2.tgz";
+        sha1 = "d21c52a72d6061018bcee9f9c9fc106bf7d65287";
+      };
+    };
     "relaxed-json-1.0.1" = {
       name = "relaxed-json";
       packageName = "relaxed-json";
@@ -25566,6 +27142,24 @@ let
         sha1 = "7c8d4aa2f095704cd020e32e8099bcae103f0bd4";
       };
     };
+    "remark-3.2.3" = {
+      name = "remark";
+      packageName = "remark";
+      version = "3.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/remark/-/remark-3.2.3.tgz";
+        sha1 = "802a38c3aa98c9e1e3ea015eeba211d27cb65e1f";
+      };
+    };
+    "remark-html-2.0.2" = {
+      name = "remark-html";
+      packageName = "remark-html";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/remark-html/-/remark-html-2.0.2.tgz";
+        sha1 = "592a347bdd3d5881f4f080c98b5b152fb1407a92";
+      };
+    };
     "remove-array-items-1.0.0" = {
       name = "remove-array-items";
       packageName = "remove-array-items";
@@ -25593,6 +27187,15 @@ let
         sha1 = "05f1a593f16e42e1fb90ebf59de8e569525f9523";
       };
     };
+    "remove-markdown-0.1.0" = {
+      name = "remove-markdown";
+      packageName = "remove-markdown";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/remove-markdown/-/remove-markdown-0.1.0.tgz";
+        sha1 = "cf8b66e9e6fcb4acc9721048adeee7a357698ba9";
+      };
+    };
     "remove-trailing-separator-1.1.0" = {
       name = "remove-trailing-separator";
       packageName = "remove-trailing-separator";
@@ -25697,7 +27300,7 @@ let
       packageName = "request";
       version = "2.16.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/request/-/request-2.16.6.tgz";
+        url = "http://registry.npmjs.org/request/-/request-2.16.6.tgz";
         sha1 = "872fe445ae72de266b37879d6ad7dc948fa01cad";
       };
     };
@@ -25706,7 +27309,7 @@ let
       packageName = "request";
       version = "2.67.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/request/-/request-2.67.0.tgz";
+        url = "http://registry.npmjs.org/request/-/request-2.67.0.tgz";
         sha1 = "8af74780e2bf11ea0ae9aa965c11f11afd272742";
       };
     };
@@ -25715,7 +27318,7 @@ let
       packageName = "request";
       version = "2.74.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/request/-/request-2.74.0.tgz";
+        url = "http://registry.npmjs.org/request/-/request-2.74.0.tgz";
         sha1 = "7693ca768bbb0ea5c8ce08c084a45efa05b892ab";
       };
     };
@@ -25724,7 +27327,7 @@ let
       packageName = "request";
       version = "2.79.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/request/-/request-2.79.0.tgz";
+        url = "http://registry.npmjs.org/request/-/request-2.79.0.tgz";
         sha1 = "4dfe5bf6be8b8cdc37fcf93e04b65577722710de";
       };
     };
@@ -25769,7 +27372,7 @@ let
       packageName = "request";
       version = "2.9.203";
       src = fetchurl {
-        url = "https://registry.npmjs.org/request/-/request-2.9.203.tgz";
+        url = "http://registry.npmjs.org/request/-/request-2.9.203.tgz";
         sha1 = "6c1711a5407fb94a114219563e44145bcbf4723a";
       };
     };
@@ -25890,6 +27493,15 @@ let
         sha1 = "203114d82ad2c5ed9e8e0411b3932875e889e97b";
       };
     };
+    "resolve-1.7.1" = {
+      name = "resolve";
+      packageName = "resolve";
+      version = "1.7.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/resolve/-/resolve-1.7.1.tgz";
+        sha512 = "c7rwLofp8g1U+h1KNyHL/jicrKg1Ek4q+Lr33AL65uZTinUZHe30D5HlyN5V9NW0JX1D5dXQ4jqW5l7Sy/kGfw==";
+      };
+    };
     "resolve-1.8.1" = {
       name = "resolve";
       packageName = "resolve";
@@ -26129,7 +27741,7 @@ let
       packageName = "rimraf";
       version = "2.1.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/rimraf/-/rimraf-2.1.4.tgz";
+        url = "http://registry.npmjs.org/rimraf/-/rimraf-2.1.4.tgz";
         sha1 = "5a6eb62eeda068f51ede50f29b3e5cd22f3d9bb2";
       };
     };
@@ -26138,7 +27750,7 @@ let
       packageName = "rimraf";
       version = "2.2.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/rimraf/-/rimraf-2.2.8.tgz";
+        url = "http://registry.npmjs.org/rimraf/-/rimraf-2.2.8.tgz";
         sha1 = "e439be2aaee327321952730f99a8929e4fc50582";
       };
     };
@@ -26147,7 +27759,7 @@ let
       packageName = "rimraf";
       version = "2.4.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/rimraf/-/rimraf-2.4.4.tgz";
+        url = "http://registry.npmjs.org/rimraf/-/rimraf-2.4.4.tgz";
         sha1 = "b528ce2ebe0e6d89fb03b265de11d61da0dbcf82";
       };
     };
@@ -26156,7 +27768,7 @@ let
       packageName = "rimraf";
       version = "2.4.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/rimraf/-/rimraf-2.4.5.tgz";
+        url = "http://registry.npmjs.org/rimraf/-/rimraf-2.4.5.tgz";
         sha1 = "ee710ce5d93a8fdb856fb5ea8ff0e2d75934b2da";
       };
     };
@@ -26340,22 +27952,22 @@ let
         sha1 = "753b87a89a11c95467c4ac1626c4efc4e05c67be";
       };
     };
-    "rxjs-5.5.11" = {
+    "rxjs-5.5.12" = {
       name = "rxjs";
       packageName = "rxjs";
-      version = "5.5.11";
+      version = "5.5.12";
       src = fetchurl {
-        url = "https://registry.npmjs.org/rxjs/-/rxjs-5.5.11.tgz";
-        sha512 = "3bjO7UwWfA2CV7lmwYMBzj4fQ6Cq+ftHc2MvUe+WMS7wcdJ1LosDWmdjPQanYp2dBRj572p7PeU81JUxHKOcBA==";
+        url = "https://registry.npmjs.org/rxjs/-/rxjs-5.5.12.tgz";
+        sha512 = "xx2itnL5sBbqeeiVgNPVuQQ1nC8Jp2WfNJhXWHmElW9YmrpS9UVnNzhP3EH3HFqexO5Tlp8GhYY+WEcqcVMvGw==";
       };
     };
-    "rxjs-6.2.2" = {
+    "rxjs-6.3.1" = {
       name = "rxjs";
       packageName = "rxjs";
-      version = "6.2.2";
+      version = "6.3.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/rxjs/-/rxjs-6.2.2.tgz";
-        sha512 = "0MI8+mkKAXZUF9vMrEoPnaoHkfzBPP4IGwUYRJhIRJF6/w3uByO1e91bEHn8zd43RdkTMKiooYKmwz7RH6zfOQ==";
+        url = "https://registry.npmjs.org/rxjs/-/rxjs-6.3.1.tgz";
+        sha512 = "hRVfb1Mcf8rLXq1AZEjYpzBnQbO7Duveu1APXkWRTvqzhmkoQ40Pl2F9Btacx+gJCOqsMiugCGG4I2HPQgJRtA==";
       };
     };
     "safe-buffer-5.0.1" = {
@@ -26520,6 +28132,24 @@ let
         sha512 = "MuCAyrGZcTLfQoH2XoBlQ8C6bzwN88XT/0slOGz0pn8+gIP85BOAfYa44ZXQUTOwRwPU0QvgU+V+OSajl/59Xg==";
       };
     };
+    "secret-handshake-1.1.13" = {
+      name = "secret-handshake";
+      packageName = "secret-handshake";
+      version = "1.1.13";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/secret-handshake/-/secret-handshake-1.1.13.tgz";
+        sha512 = "jDpA1kPJGg+jEUOZGvqksQFGPWIx0aA96HpjU+AqIBKIKzmvZeOq0Lfl/XqVC5jviWTVZZM2B8+NqYR38Blz8A==";
+      };
+    };
+    "secret-stack-4.1.0" = {
+      name = "secret-stack";
+      packageName = "secret-stack";
+      version = "4.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/secret-stack/-/secret-stack-4.1.0.tgz";
+        sha512 = "tCxjylkvEvUqxlWSVALtPMGKGyed225oDf7zoxCOsvj5SaVolUzOaixS07IK74mjcq7D1TvEJ4kofcaTMhQq1w==";
+      };
+    };
     "secure-keys-1.0.0" = {
       name = "secure-keys";
       packageName = "secure-keys";
@@ -26529,6 +28159,15 @@ let
         sha1 = "f0c82d98a3b139a8776a8808050b824431087fca";
       };
     };
+    "secure-scuttlebutt-18.2.0" = {
+      name = "secure-scuttlebutt";
+      packageName = "secure-scuttlebutt";
+      version = "18.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/secure-scuttlebutt/-/secure-scuttlebutt-18.2.0.tgz";
+        sha512 = "rBK6P3A4MsZI4lrzaf/dbJJDIxuJXO6y3GUeNngb5IJlcagCNJ+zNZcd19rDURfU8tMgOyw+rEwGIs2ExLQTdg==";
+      };
+    };
     "seek-bzip-1.0.5" = {
       name = "seek-bzip";
       packageName = "seek-bzip";
@@ -26781,6 +28420,15 @@ let
         sha1 = "33279100c35c38519ca5e435245186c512fe0fdc";
       };
     };
+    "separator-escape-0.0.0" = {
+      name = "separator-escape";
+      packageName = "separator-escape";
+      version = "0.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/separator-escape/-/separator-escape-0.0.0.tgz";
+        sha1 = "e433676932020454e3c14870c517ea1de56c2fa4";
+      };
+    };
     "sequence-2.2.1" = {
       name = "sequence";
       packageName = "sequence";
@@ -26988,6 +28636,15 @@ let
         sha512 = "QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==";
       };
     };
+    "sha.js-2.4.5" = {
+      name = "sha.js";
+      packageName = "sha.js";
+      version = "2.4.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sha.js/-/sha.js-2.4.5.tgz";
+        sha1 = "27d171efcc82a118b99639ff581660242b506e7c";
+      };
+    };
     "shallow-clone-0.1.2" = {
       name = "shallow-clone";
       packageName = "shallow-clone";
@@ -27078,6 +28735,15 @@ let
         sha512 = "pRXeNrCA2Wd9itwhvLp5LZQvPJ0wU6bcjaTMywHHGX5XWhVN2nzSu7WV0q+oUY7mGK3mgSkDDzP3MgjqdyIgbQ==";
       };
     };
+    "shellsubstitute-1.2.0" = {
+      name = "shellsubstitute";
+      packageName = "shellsubstitute";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/shellsubstitute/-/shellsubstitute-1.2.0.tgz";
+        sha1 = "e4f702a50c518b0f6fe98451890d705af29b6b70";
+      };
+    };
     "shellwords-0.1.1" = {
       name = "shellwords";
       packageName = "shellwords";
@@ -27888,6 +29554,33 @@ let
         sha512 = "Kezx6/VBguXOsEe5oU3lXYyKMi4+gva72TwJ7pQY5JfqUx2nMk7NXA6z/mpNqIlfQjWYVfeuNvQjexiTaTn6Nw==";
       };
     };
+    "sodium-browserify-1.2.4" = {
+      name = "sodium-browserify";
+      packageName = "sodium-browserify";
+      version = "1.2.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sodium-browserify/-/sodium-browserify-1.2.4.tgz";
+        sha512 = "IYcxKje/uf/c3a7VhZYJLlUxWMcktfbD4AjqHjUD1/VWKjj0Oq5wNbX8wjJOWVO9UhUMqJQiOn2xFbzKWBmy5w==";
+      };
+    };
+    "sodium-browserify-tweetnacl-0.2.3" = {
+      name = "sodium-browserify-tweetnacl";
+      packageName = "sodium-browserify-tweetnacl";
+      version = "0.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sodium-browserify-tweetnacl/-/sodium-browserify-tweetnacl-0.2.3.tgz";
+        sha1 = "b5537ffcbb9f74ebc443b8b6a211b291e8fcbc8e";
+      };
+    };
+    "sodium-chloride-1.1.0" = {
+      name = "sodium-chloride";
+      packageName = "sodium-chloride";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sodium-chloride/-/sodium-chloride-1.1.0.tgz";
+        sha1 = "247a234b88867f6dff51332b605f193a65bf6839";
+      };
+    };
     "sodium-javascript-0.5.5" = {
       name = "sodium-javascript";
       packageName = "sodium-javascript";
@@ -27915,13 +29608,13 @@ let
         sha512 = "csdVyakzHJRyCevY4aZC2Eacda8paf+4nmRGF2N7KxCLKY2Ajn72JsExaQlJQ2BiXJncp44p3T+b80cU+2TTsg==";
       };
     };
-    "sonic-boom-0.5.0" = {
+    "sonic-boom-0.6.1" = {
       name = "sonic-boom";
       packageName = "sonic-boom";
-      version = "0.5.0";
+      version = "0.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/sonic-boom/-/sonic-boom-0.5.0.tgz";
-        sha512 = "IqUrLNxgsUQGVyMLW8w8vELMa1BZIQ/uBjBuxLK0jg7HqWwedCgmBLqvgMFGihhXCoQ8w5m2vcnMs47C4KYxuQ==";
+        url = "https://registry.npmjs.org/sonic-boom/-/sonic-boom-0.6.1.tgz";
+        sha512 = "3qx6XXDeG+hPNa+jla1H6BMBLcjLl8L8NRERLVeIf/EuPqoqmq4K8owG29Xu7OypT/7/YT/0uKW6YitsKA+nLQ==";
       };
     };
     "sorcery-0.10.0" = {
@@ -28275,6 +29968,15 @@ let
         sha512 = "mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==";
       };
     };
+    "split-buffer-1.0.0" = {
+      name = "split-buffer";
+      packageName = "split-buffer";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/split-buffer/-/split-buffer-1.0.0.tgz";
+        sha1 = "b7e8e0ab51345158b72c1f6dbef2406d51f1d027";
+      };
+    };
     "split-string-3.1.0" = {
       name = "split-string";
       packageName = "split-string";
@@ -28347,6 +30049,195 @@ let
         sha1 = "c2b5047c2c297b693d3bab518765e4b7c24d8173";
       };
     };
+    "ssb-avatar-0.2.0" = {
+      name = "ssb-avatar";
+      packageName = "ssb-avatar";
+      version = "0.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ssb-avatar/-/ssb-avatar-0.2.0.tgz";
+        sha1 = "06cd70795ee58d1462d100a45c660df3179d3b39";
+      };
+    };
+    "ssb-blobs-1.1.5" = {
+      name = "ssb-blobs";
+      packageName = "ssb-blobs";
+      version = "1.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ssb-blobs/-/ssb-blobs-1.1.5.tgz";
+        sha512 = "DeeInkFU8oN1mYlPVrqrm9tupf6wze4HuowK7N2vv/O+UeSLuYPU1p4HrxSqdAPvUabr0OtvbFA6z1T4nw+9fw==";
+      };
+    };
+    "ssb-client-4.6.0" = {
+      name = "ssb-client";
+      packageName = "ssb-client";
+      version = "4.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ssb-client/-/ssb-client-4.6.0.tgz";
+        sha512 = "LyH5Y/U7xvafmAuG1puyhNv4G3Ew9xC67dYgRX0wwbUf5iT422WB1Cvat9qGFAu3/BQbdctXtdEQPxaAn0+hYA==";
+      };
+    };
+    "ssb-config-2.2.0" = {
+      name = "ssb-config";
+      packageName = "ssb-config";
+      version = "2.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ssb-config/-/ssb-config-2.2.0.tgz";
+        sha1 = "41cad038a8575af4062d3fd57d3b167be85b03bc";
+      };
+    };
+    "ssb-ebt-5.2.2" = {
+      name = "ssb-ebt";
+      packageName = "ssb-ebt";
+      version = "5.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ssb-ebt/-/ssb-ebt-5.2.2.tgz";
+        sha512 = "De3dUnmgs/8aYl2fmi/MtJljR9qw1mUmpdM4qeCf+4uniqlNNhfn1Ux+M5A8XYVuI+TD4GkgmIDeZH6miey2kw==";
+      };
+    };
+    "ssb-friends-2.4.0" = {
+      name = "ssb-friends";
+      packageName = "ssb-friends";
+      version = "2.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ssb-friends/-/ssb-friends-2.4.0.tgz";
+        sha1 = "0d40cd96a12f2339c9064a8ad1d5a713e91c57ae";
+      };
+    };
+    "ssb-git-0.5.0" = {
+      name = "ssb-git";
+      packageName = "ssb-git";
+      version = "0.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ssb-git/-/ssb-git-0.5.0.tgz";
+        sha1 = "5f4f712e42a23b895b128d61bc70dfb3bd5b40b4";
+      };
+    };
+    "ssb-git-repo-2.8.3" = {
+      name = "ssb-git-repo";
+      packageName = "ssb-git-repo";
+      version = "2.8.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ssb-git-repo/-/ssb-git-repo-2.8.3.tgz";
+        sha512 = "7GVq5Ael/get+3Ot5exLdRWU8psSQNv/SkyO0KUhjoc4VfTdz8XuN1K195LKiyL/7u31A50KmkG9U9twb+1rGQ==";
+      };
+    };
+    "ssb-issues-1.0.0" = {
+      name = "ssb-issues";
+      packageName = "ssb-issues";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ssb-issues/-/ssb-issues-1.0.0.tgz";
+        sha1 = "9e857d170dff152c53a273eb9004a0a914a106e5";
+      };
+    };
+    "ssb-keys-7.0.16" = {
+      name = "ssb-keys";
+      packageName = "ssb-keys";
+      version = "7.0.16";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ssb-keys/-/ssb-keys-7.0.16.tgz";
+        sha512 = "EhLkRzgF7YaRc47L8YZb+TcxEXZy9DPWCF+vCt5nSNm8Oj+Pz8pBVSOlrLKZVbcAKFjIJhqY32oTjknu3E1KVQ==";
+      };
+    };
+    "ssb-links-3.0.3" = {
+      name = "ssb-links";
+      packageName = "ssb-links";
+      version = "3.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ssb-links/-/ssb-links-3.0.3.tgz";
+        sha512 = "x09ShIMjwvdZI7aDZm8kc1v5YCGZa9ulCOoxrf/RYJ98s5gbTfO9CBCzeMBAeQ5kRwSuKjiOxJHdeEBkj4Y6hw==";
+      };
+    };
+    "ssb-marked-0.5.4" = {
+      name = "ssb-marked";
+      packageName = "ssb-marked";
+      version = "0.5.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ssb-marked/-/ssb-marked-0.5.4.tgz";
+        sha1 = "e2f0a17854d968a41e707dee6161c783f907330f";
+      };
+    };
+    "ssb-marked-0.6.0" = {
+      name = "ssb-marked";
+      packageName = "ssb-marked";
+      version = "0.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ssb-marked/-/ssb-marked-0.6.0.tgz";
+        sha1 = "8171472058673e4e76ec187c40c88c1e484bc544";
+      };
+    };
+    "ssb-mentions-0.1.2" = {
+      name = "ssb-mentions";
+      packageName = "ssb-mentions";
+      version = "0.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ssb-mentions/-/ssb-mentions-0.1.2.tgz";
+        sha1 = "d0442708e3af5e245a7af9c1abd8f89ab03c80c0";
+      };
+    };
+    "ssb-msg-schemas-6.3.0" = {
+      name = "ssb-msg-schemas";
+      packageName = "ssb-msg-schemas";
+      version = "6.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ssb-msg-schemas/-/ssb-msg-schemas-6.3.0.tgz";
+        sha1 = "23c12443d4e5a0c4817743638ee0ca93ce6ddc85";
+      };
+    };
+    "ssb-msgs-5.2.0" = {
+      name = "ssb-msgs";
+      packageName = "ssb-msgs";
+      version = "5.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ssb-msgs/-/ssb-msgs-5.2.0.tgz";
+        sha1 = "c681da5cd70c574c922dca4f03c521538135c243";
+      };
+    };
+    "ssb-pull-requests-1.0.0" = {
+      name = "ssb-pull-requests";
+      packageName = "ssb-pull-requests";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ssb-pull-requests/-/ssb-pull-requests-1.0.0.tgz";
+        sha1 = "dfd30cd50eecd8546bd4aa7f06e7c8f501c08118";
+      };
+    };
+    "ssb-query-2.2.1" = {
+      name = "ssb-query";
+      packageName = "ssb-query";
+      version = "2.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ssb-query/-/ssb-query-2.2.1.tgz";
+        sha512 = "eAbTVPHYLJ/Cp8jO7uFFXY7L3RhYKlGIhTEM1xjbz3p4/Dysl6DPyWTz7JF+lXhz5AznfjzZNfZjMnX3GJtIbA==";
+      };
+    };
+    "ssb-ref-2.11.2" = {
+      name = "ssb-ref";
+      packageName = "ssb-ref";
+      version = "2.11.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ssb-ref/-/ssb-ref-2.11.2.tgz";
+        sha512 = "40A+o3iNAgr/sMH4V6/f3l2dhzUb5ZhTwZdrlKFu1ti+uZrKNUkH/E8j5NIZpj2rDq0PDXkACSVJgPGwltfQRA==";
+      };
+    };
+    "ssb-validate-3.0.10" = {
+      name = "ssb-validate";
+      packageName = "ssb-validate";
+      version = "3.0.10";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ssb-validate/-/ssb-validate-3.0.10.tgz";
+        sha512 = "9wJE1i+4vW/F/TYQQl15BVoiZb9kaqIRBhl2I/TXyhjngfx/yBzXFAuiXhaiDfqJ3YnUXzY4JMUSx0gIvpePnQ==";
+      };
+    };
+    "ssb-ws-2.1.1" = {
+      name = "ssb-ws";
+      packageName = "ssb-ws";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ssb-ws/-/ssb-ws-2.1.1.tgz";
+        sha512 = "1fK/jXI6lKZadRJDr49t+6yMmWynp6PFrADs3Whmy8IslnYGl83ujhlpRIBvCn1EuVHjV7yLsIiJ8a0X2Kg0DQ==";
+      };
+    };
     "ssh-config-1.1.3" = {
       name = "ssh-config";
       packageName = "ssh-config";
@@ -28437,6 +30328,15 @@ let
         sha512 = "ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==";
       };
     };
+    "stack-0.1.0" = {
+      name = "stack";
+      packageName = "stack";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/stack/-/stack-0.1.0.tgz";
+        sha1 = "e923598a9be51e617682cb21cf1b2818a449ada2";
+      };
+    };
     "stack-trace-0.0.10" = {
       name = "stack-trace";
       packageName = "stack-trace";
@@ -28464,6 +30364,15 @@ let
         sha1 = "60809c39cbff55337226fd5e0b520f341f1fb5c6";
       };
     };
+    "statistics-3.3.0" = {
+      name = "statistics";
+      packageName = "statistics";
+      version = "3.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/statistics/-/statistics-3.3.0.tgz";
+        sha1 = "ec7b4750ff03ab24a64dd9b357a78316bead78aa";
+      };
+    };
     "statsd-parser-0.0.4" = {
       name = "statsd-parser";
       packageName = "statsd-parser";
@@ -28896,6 +30805,15 @@ let
         sha1 = "5bcfad39f4649bb2d031292e19bcf0b510d4b242";
       };
     };
+    "string.prototype.trim-1.1.2" = {
+      name = "string.prototype.trim";
+      packageName = "string.prototype.trim";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.1.2.tgz";
+        sha1 = "d04de2c89e137f4d7d206f086b5ed2fae6be8cea";
+      };
+    };
     "string2compact-1.3.0" = {
       name = "string2compact";
       packageName = "string2compact";
@@ -28932,6 +30850,15 @@ let
         sha512 = "n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==";
       };
     };
+    "stringify-entities-1.3.2" = {
+      name = "stringify-entities";
+      packageName = "stringify-entities";
+      version = "1.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/stringify-entities/-/stringify-entities-1.3.2.tgz";
+        sha512 = "nrBAQClJAPN2p+uGCVJRPIPakKeKWZ9GtBCmormE7pWOSlHat7+x5A8gx85M7HM5Dt0BP3pP5RhVW77WdbJJ3A==";
+      };
+    };
     "stringstream-0.0.6" = {
       name = "stringstream";
       packageName = "stringstream";
@@ -29189,7 +31116,7 @@ let
       packageName = "superagent";
       version = "0.21.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/superagent/-/superagent-0.21.0.tgz";
+        url = "http://registry.npmjs.org/superagent/-/superagent-0.21.0.tgz";
         sha1 = "fb15027984751ee7152200e6cd21cd6e19a5de87";
       };
     };
@@ -29198,7 +31125,7 @@ let
       packageName = "superagent";
       version = "1.8.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/superagent/-/superagent-1.8.5.tgz";
+        url = "http://registry.npmjs.org/superagent/-/superagent-1.8.5.tgz";
         sha1 = "1c0ddc3af30e80eb84ebc05cb2122da8fe940b55";
       };
     };
@@ -29500,6 +31427,15 @@ let
         sha1 = "2e7ce0a31df09f8d6851664a71842e0ca5057af7";
       };
     };
+    "tape-4.9.1" = {
+      name = "tape";
+      packageName = "tape";
+      version = "4.9.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tape/-/tape-4.9.1.tgz";
+        sha512 = "6fKIXknLpoe/Jp4rzHKFPpJUHDHDqn8jus99IfPnHIjyz78HYlefTGD3b5EkbQzuLfaEvmfPK3IolLgq2xT3kw==";
+      };
+    };
     "tar-0.1.17" = {
       name = "tar";
       packageName = "tar";
@@ -30085,6 +32021,15 @@ let
         sha1 = "fc92adaba072647bc0b67d6b03664aa195093af6";
       };
     };
+    "to-vfile-1.0.0" = {
+      name = "to-vfile";
+      packageName = "to-vfile";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/to-vfile/-/to-vfile-1.0.0.tgz";
+        sha1 = "88defecd43adb2ef598625f0e3d59f7f342941ba";
+      };
+    };
     "toidentifier-1.0.0" = {
       name = "toidentifier";
       packageName = "toidentifier";
@@ -30135,17 +32080,17 @@ let
       packageName = "torrent-discovery";
       version = "5.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/torrent-discovery/-/torrent-discovery-5.4.0.tgz";
+        url = "http://registry.npmjs.org/torrent-discovery/-/torrent-discovery-5.4.0.tgz";
         sha1 = "2d17d82cf669ada7f9dfe75db4b31f7034b71e29";
       };
     };
-    "torrent-discovery-9.0.2" = {
+    "torrent-discovery-9.1.1" = {
       name = "torrent-discovery";
       packageName = "torrent-discovery";
-      version = "9.0.2";
+      version = "9.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/torrent-discovery/-/torrent-discovery-9.0.2.tgz";
-        sha512 = "UpkOyi/QUXRAwts8vSsFu/jRQ1mwGkaqv2OxLTJGr4DJKCiXpLHZ1+A4rxabcOWinM9RiqmS5mAjDuFfPHiJvw==";
+        url = "https://registry.npmjs.org/torrent-discovery/-/torrent-discovery-9.1.1.tgz";
+        sha512 = "3mHf+bxVCVLrlkPJdAoMbPMY1hpTZVeWw5hNc2pPFm+HCc2DS0HgVFTBTSWtB8vQPWA1hSEZpqJ+3QfdXxDE1g==";
       };
     };
     "torrent-piece-1.1.2" = {
@@ -30328,6 +32273,15 @@ let
         sha1 = "5858547f6b290757ee95cccc666fb50084c460dd";
       };
     };
+    "trim-lines-1.1.1" = {
+      name = "trim-lines";
+      packageName = "trim-lines";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/trim-lines/-/trim-lines-1.1.1.tgz";
+        sha512 = "X+eloHbgJGxczUk1WSjIvn7aC9oN3jVE3rQfRVKcgpavi3jxtCn0VVKtjOBj64Yop96UYn/ujJRpTbCdAF1vyg==";
+      };
+    };
     "trim-newlines-1.0.0" = {
       name = "trim-newlines";
       packageName = "trim-newlines";
@@ -30373,6 +32327,15 @@ let
         sha1 = "cb2e1203067e0c8de1f614094b9fe45704ea6003";
       };
     };
+    "trim-trailing-lines-1.1.1" = {
+      name = "trim-trailing-lines";
+      packageName = "trim-trailing-lines";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/trim-trailing-lines/-/trim-trailing-lines-1.1.1.tgz";
+        sha512 = "bWLv9BbWbbd7mlqqs2oQYnLD/U/ZqeJeJwbO0FG2zA1aTq+HTvxfHNKFa/HGCVyJpDiioUYaBhfiT6rgk+l4mg==";
+      };
+    };
     "truncate-2.0.1" = {
       name = "truncate";
       packageName = "truncate";
@@ -30490,6 +32453,15 @@ let
         sha1 = "5ae68177f192d4456269d108afa93ff8743f4f64";
       };
     };
+    "tweetnacl-auth-0.3.1" = {
+      name = "tweetnacl-auth";
+      packageName = "tweetnacl-auth";
+      version = "0.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tweetnacl-auth/-/tweetnacl-auth-0.3.1.tgz";
+        sha1 = "b75bc2df15649bb84e8b9aa3c0669c6c4bce0d25";
+      };
+    };
     "twig-1.12.0" = {
       name = "twig";
       packageName = "twig";
@@ -30576,7 +32548,7 @@ let
       packageName = "typescript";
       version = "2.7.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/typescript/-/typescript-2.7.2.tgz";
+        url = "http://registry.npmjs.org/typescript/-/typescript-2.7.2.tgz";
         sha512 = "p5TCYZDAO0m4G344hD+wx/LATebLWZNkkh2asWUFqSsD2OrDNhbAHuSjobrmsUmdzjJjEeZVU9g1h3O6vpstnw==";
       };
     };
@@ -30657,7 +32629,7 @@ let
       packageName = "uglify-js";
       version = "1.2.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/uglify-js/-/uglify-js-1.2.5.tgz";
+        url = "http://registry.npmjs.org/uglify-js/-/uglify-js-1.2.5.tgz";
         sha1 = "b542c2c76f78efb34b200b20177634330ff702b6";
       };
     };
@@ -30666,7 +32638,7 @@ let
       packageName = "uglify-js";
       version = "2.2.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/uglify-js/-/uglify-js-2.2.5.tgz";
+        url = "http://registry.npmjs.org/uglify-js/-/uglify-js-2.2.5.tgz";
         sha1 = "a6e02a70d839792b9780488b7b8b184c095c99c7";
       };
     };
@@ -30675,7 +32647,7 @@ let
       packageName = "uglify-js";
       version = "2.3.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/uglify-js/-/uglify-js-2.3.6.tgz";
+        url = "http://registry.npmjs.org/uglify-js/-/uglify-js-2.3.6.tgz";
         sha1 = "fa0984770b428b7a9b2a8058f46355d14fef211a";
       };
     };
@@ -30697,6 +32669,15 @@ let
         sha512 = "WatYTD84gP/867bELqI2F/2xC9PQBETn/L+7RGq9MQOA/7yFBNvY1UwXqvtILeE6n0ITwBXxp34M0/o70dzj6A==";
       };
     };
+    "uglify-js-3.4.9" = {
+      name = "uglify-js";
+      packageName = "uglify-js";
+      version = "3.4.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/uglify-js/-/uglify-js-3.4.9.tgz";
+        sha512 = "8CJsbKOtEbnJsTyv6LE6m6ZKniqMiFWmm9sRbopbkGs3gMPPfd3Fh8iIA4Ykv5MgaTbqHr4BaoGLJLZNhsrW1Q==";
+      };
+    };
     "uglify-to-browserify-1.0.2" = {
       name = "uglify-to-browserify";
       packageName = "uglify-to-browserify";
@@ -30778,6 +32759,15 @@ let
         sha1 = "483126e11774df2f71b8b639dcd799c376162b82";
       };
     };
+    "uint48be-1.0.2" = {
+      name = "uint48be";
+      packageName = "uint48be";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/uint48be/-/uint48be-1.0.2.tgz";
+        sha512 = "jNn1eEi81BLiZfJkjbiAKPDMj7iFrturKazqpBu0aJYLr6evgkn+9rgkX/gUwPBj5j2Ri5oUelsqC/S1zmpWBA==";
+      };
+    };
     "uint64be-2.0.2" = {
       name = "uint64be";
       packageName = "uint64be";
@@ -30949,6 +32939,15 @@ let
         sha1 = "8cdd8fbac4e2d2ea1e7e2e8097c42f442280f85b";
       };
     };
+    "unherit-1.1.1" = {
+      name = "unherit";
+      packageName = "unherit";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/unherit/-/unherit-1.1.1.tgz";
+        sha512 = "+XZuV691Cn4zHsK0vkKYwBEwB74T3IZIcxrgn2E4rKwTfFyI1zCh7X7grwh9Re08fdPlarIdyWgI8aVB3F5A5g==";
+      };
+    };
     "unicode-5.2.0-0.7.5" = {
       name = "unicode-5.2.0";
       packageName = "unicode-5.2.0";
@@ -30967,6 +32966,15 @@ let
         sha1 = "dbbd5b54ba30f287e2a8d5a249da6c0cef369459";
       };
     };
+    "unified-2.1.4" = {
+      name = "unified";
+      packageName = "unified";
+      version = "2.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/unified/-/unified-2.1.4.tgz";
+        sha1 = "14bc6cd40d98ffff75b405506bad873ecbbac3ba";
+      };
+    };
     "union-value-1.0.0" = {
       name = "union-value";
       packageName = "union-value";
@@ -31030,6 +33038,33 @@ let
         sha1 = "9e1057cca851abb93398f8b33ae187b99caec11a";
       };
     };
+    "unist-util-is-2.1.2" = {
+      name = "unist-util-is";
+      packageName = "unist-util-is";
+      version = "2.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/unist-util-is/-/unist-util-is-2.1.2.tgz";
+        sha512 = "YkXBK/H9raAmG7KXck+UUpnKiNmUdB+aBGrknfQ4EreE1banuzrKABx3jP6Z5Z3fMSPMQQmeXBlKpCbMwBkxVw==";
+      };
+    };
+    "unist-util-visit-1.4.0" = {
+      name = "unist-util-visit";
+      packageName = "unist-util-visit";
+      version = "1.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-1.4.0.tgz";
+        sha512 = "FiGu34ziNsZA3ZUteZxSFaczIjGmksfSgdKqBfOejrrfzyUy5b7YrlzT1Bcvi+djkYDituJDy2XB7tGTeBieKw==";
+      };
+    };
+    "unist-util-visit-parents-2.0.1" = {
+      name = "unist-util-visit-parents";
+      packageName = "unist-util-visit-parents";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-2.0.1.tgz";
+        sha512 = "6B0UTiMfdWql4cQ03gDTCSns+64Zkfo2OCbK31Ov0uMizEz+CJeAp0cgZVb5Fhmcd7Bct2iRNywejT0orpbqUA==";
+      };
+    };
     "universalify-0.1.2" = {
       name = "universalify";
       packageName = "universalify";
@@ -31381,13 +33416,13 @@ let
         sha1 = "cf593ef4f2d175875e8bb658ea92e18a4fd06d8e";
       };
     };
-    "ut_metadata-3.2.2" = {
+    "ut_metadata-3.3.0" = {
       name = "ut_metadata";
       packageName = "ut_metadata";
-      version = "3.2.2";
+      version = "3.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ut_metadata/-/ut_metadata-3.2.2.tgz";
-        sha512 = "PltK6kZ85DMscFl1gwyvOyja6UGROdyLI1ufWCTLsYnLfBaMyhtOEcbtgEgOwYEz8QuchR49qgHXTdJ2H05VHA==";
+        url = "https://registry.npmjs.org/ut_metadata/-/ut_metadata-3.3.0.tgz";
+        sha512 = "IK+ke9yL6a4oPLz/3oSW9TW7m9Wr4RG+5kW5aS2YulzEU1QDGAtago/NnOlno91fo3fSO7mnsqzn3NXNXdv8nA==";
       };
     };
     "ut_pex-1.2.1" = {
@@ -31678,13 +33713,13 @@ let
         sha1 = "5fa912d81eb7d0c74afc140de7317f0ca7df437e";
       };
     };
-    "validator-10.7.0" = {
+    "validator-10.7.1" = {
       name = "validator";
       packageName = "validator";
-      version = "10.7.0";
+      version = "10.7.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/validator/-/validator-10.7.0.tgz";
-        sha512 = "7Z4kif6HeMLroCQZvh8lwCtmPOqBTkTkt5ibXtJR8sOkzWdjW+YIJOZUpPFlfq59zYvnpSPVd4UX5QYnSCLWgA==";
+        url = "https://registry.npmjs.org/validator/-/validator-10.7.1.tgz";
+        sha512 = "tbB5JrTczfeHKLw3PnFRzGFlF1xUAwSgXEDb66EuX1ffCirspYpDEZo3Vc9j38gPdL4JKrDc5UPFfgYiw1IWRQ==";
       };
     };
     "validator-5.2.0" = {
@@ -31692,7 +33727,7 @@ let
       packageName = "validator";
       version = "5.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/validator/-/validator-5.2.0.tgz";
+        url = "http://registry.npmjs.org/validator/-/validator-5.2.0.tgz";
         sha1 = "e66fb3ec352348c1f7232512328738d8d66a9689";
       };
     };
@@ -31701,7 +33736,7 @@ let
       packageName = "validator";
       version = "9.4.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/validator/-/validator-9.4.1.tgz";
+        url = "http://registry.npmjs.org/validator/-/validator-9.4.1.tgz";
         sha512 = "YV5KjzvRmSyJ1ee/Dm5UED0G+1L4GZnLN3w6/T+zZm8scVua4sOhYKWTUrKa0H/tMiJyO9QLHMPN+9mB/aMunA==";
       };
     };
@@ -31840,6 +33875,51 @@ let
         sha1 = "7d13b27b1facc2e2da90405eb5ea6e5bdd252ea5";
       };
     };
+    "vfile-1.4.0" = {
+      name = "vfile";
+      packageName = "vfile";
+      version = "1.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/vfile/-/vfile-1.4.0.tgz";
+        sha1 = "c0fd6fa484f8debdb771f68c31ed75d88da97fe7";
+      };
+    };
+    "vfile-find-down-1.0.0" = {
+      name = "vfile-find-down";
+      packageName = "vfile-find-down";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/vfile-find-down/-/vfile-find-down-1.0.0.tgz";
+        sha1 = "84a4d66d03513f6140a84e0776ef0848d4f0ad95";
+      };
+    };
+    "vfile-find-up-1.0.0" = {
+      name = "vfile-find-up";
+      packageName = "vfile-find-up";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/vfile-find-up/-/vfile-find-up-1.0.0.tgz";
+        sha1 = "5604da6fe453b34350637984eb5fe4909e280390";
+      };
+    };
+    "vfile-reporter-1.5.0" = {
+      name = "vfile-reporter";
+      packageName = "vfile-reporter";
+      version = "1.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/vfile-reporter/-/vfile-reporter-1.5.0.tgz";
+        sha1 = "21a7009bfe55e24df8ff432aa5bf6f6efa74e418";
+      };
+    };
+    "vfile-sort-1.0.0" = {
+      name = "vfile-sort";
+      packageName = "vfile-sort";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/vfile-sort/-/vfile-sort-1.0.0.tgz";
+        sha1 = "17ee491ba43e8951bb22913fcff32a7dc4d234d4";
+      };
+    };
     "vhost-3.0.2" = {
       name = "vhost";
       packageName = "vhost";
@@ -31939,13 +34019,13 @@ let
         sha1 = "ab6549d61d172c2b1b87be5c508d239c8ef87705";
       };
     };
-    "vlc-command-1.1.1" = {
+    "vlc-command-1.1.2" = {
       name = "vlc-command";
       packageName = "vlc-command";
-      version = "1.1.1";
+      version = "1.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vlc-command/-/vlc-command-1.1.1.tgz";
-        sha1 = "349b85def831f980cd6eec560b1990fd989eaf92";
+        url = "https://registry.npmjs.org/vlc-command/-/vlc-command-1.1.2.tgz";
+        sha512 = "KZ15RTHz96OEiQDA8oNFn1edYDWyKJIWI4gF74Am9woZo5XmVYryk5RYXSwOMvsaAgL5ejICEGCl0suQyDBu+Q==";
       };
     };
     "vm-browserify-0.0.4" = {
@@ -32191,13 +34271,13 @@ let
         sha512 = "YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==";
       };
     };
-    "webpack-sources-1.1.0" = {
+    "webpack-sources-1.2.0" = {
       name = "webpack-sources";
       packageName = "webpack-sources";
-      version = "1.1.0";
+      version = "1.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.1.0.tgz";
-        sha512 = "aqYp18kPphgoO5c/+NaUvEeACtZjMESmDChuD3NBciVpah3XpMEU9VAAtIaB1BsfJWWTSdv8Vv1m3T0aRk2dUw==";
+        url = "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.2.0.tgz";
+        sha512 = "9BZwxR85dNsjWz3blyxdOhTgtnQvv3OEs5xofI0wPYTwu5kaWxS08UuD1oI7WLBLpRO+ylf0ofnXLXWmGb2WMw==";
       };
     };
     "websocket-driver-0.7.0" = {
@@ -32227,13 +34307,13 @@ let
         sha512 = "lchLOk435iDWs0jNuL+hiU14i3ERSrMA0IKSiJh7z6X/i4XNsutBZrtqu2CPOZuA4G/zabiqVAos0vW+S7GEVw==";
       };
     };
-    "webtorrent-0.102.2" = {
+    "webtorrent-0.102.4" = {
       name = "webtorrent";
       packageName = "webtorrent";
-      version = "0.102.2";
+      version = "0.102.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/webtorrent/-/webtorrent-0.102.2.tgz";
-        sha512 = "9+thCKf9zfs9OTMkNqSp3whqKlYd4f/VkBCsx+HkD5dh9O5oWf2lxfAMq1P411WiSY0PqBS77jxjQilYeYYskw==";
+        url = "https://registry.npmjs.org/webtorrent/-/webtorrent-0.102.4.tgz";
+        sha512 = "Oa7NatbPlESqf5ETwgVUOXAbUjiZr7XNFbHhd88BRm+4vN9u3JgeIbF9Gnuxb5s26cHxPYpGJRVTtBsc6Z6w9Q==";
       };
     };
     "whatwg-fetch-2.0.4" = {
@@ -32335,6 +34415,15 @@ let
         sha1 = "d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a";
       };
     };
+    "which-pm-runs-1.0.0" = {
+      name = "which-pm-runs";
+      packageName = "which-pm-runs";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/which-pm-runs/-/which-pm-runs-1.0.0.tgz";
+        sha1 = "670b3afbc552e0b55df6b7780ca74615f23ad1cb";
+      };
+    };
     "wide-align-1.1.3" = {
       name = "wide-align";
       packageName = "wide-align";
@@ -32506,6 +34595,15 @@ let
         sha1 = "fa4daa92daf32c4ea94ed453c81f04686b575dfe";
       };
     };
+    "word-wrap-1.2.3" = {
+      name = "word-wrap";
+      packageName = "word-wrap";
+      version = "1.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz";
+        sha512 = "Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==";
+      };
+    };
     "wordwrap-0.0.2" = {
       name = "wordwrap";
       packageName = "wordwrap";
@@ -32547,7 +34645,7 @@ let
       packageName = "wrap-ansi";
       version = "2.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz";
+        url = "http://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz";
         sha1 = "d8fc3d284dd05794fe84973caecdd1cf824fdd85";
       };
     };
@@ -32758,13 +34856,13 @@ let
         sha512 = "4nlO/14t3BNUZRXIXfXe+3N6w3s1KoxcJUUURctd64BLRe67E4gRwp4PjywtDY72fXpZ1y6Ch0VZQRY/gMPzzQ==";
       };
     };
-    "xml-1.0.0" = {
+    "xml-1.0.1" = {
       name = "xml";
       packageName = "xml";
-      version = "1.0.0";
+      version = "1.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/xml/-/xml-1.0.0.tgz";
-        sha1 = "de3ee912477be2f250b60f612f34a8c4da616efe";
+        url = "https://registry.npmjs.org/xml/-/xml-1.0.1.tgz";
+        sha1 = "78ba72020029c5bc87b8a81a3cfcd74b4a2fc1e5";
       };
     };
     "xml-name-validator-2.0.1" = {
@@ -33353,13 +35451,13 @@ let
         sha1 = "03726561bc268f2e5444f54c665b7fd4a8c029e2";
       };
     };
-    "zero-fill-2.2.3" = {
-      name = "zero-fill";
-      packageName = "zero-fill";
-      version = "2.2.3";
+    "zerr-1.0.4" = {
+      name = "zerr";
+      packageName = "zerr";
+      version = "1.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/zero-fill/-/zero-fill-2.2.3.tgz";
-        sha1 = "a3def06ba5e39ae644850bb4ca2ad4112b4855e9";
+        url = "https://registry.npmjs.org/zerr/-/zerr-1.0.4.tgz";
+        sha1 = "62814dd799eff8361f2a228f41f705c5e19de4c9";
       };
     };
     "zip-dir-1.0.2" = {
@@ -33654,7 +35752,7 @@ in
       sha512 = "9OBihy+L53g9ALssKTY/vTWEiz8mGEJ1asWiCdfPdQ1Uf++tewiNrN7Fq2Eb6ZYtvK0BYvPZlh3bHguKmKO3yA==";
     };
     dependencies = [
-      sources."@types/node-8.10.28"
+      sources."@types/node-8.10.29"
       sources."JSV-4.0.2"
       sources."adal-node-0.1.28"
       sources."ajv-5.5.2"
@@ -33854,7 +35952,7 @@ in
       sources."from-0.1.7"
       sources."fs.realpath-1.0.0"
       sources."galaxy-0.1.12"
-      sources."generate-function-2.2.0"
+      sources."generate-function-2.3.1"
       sources."generate-object-property-1.2.0"
       (sources."getpass-0.1.7" // {
         dependencies = [
@@ -34259,7 +36357,7 @@ in
       sources."browserify-rsa-4.0.1"
       sources."browserify-sign-4.0.4"
       sources."browserify-zlib-0.2.0"
-      sources."buffer-5.2.0"
+      sources."buffer-5.2.1"
       sources."buffer-from-1.1.1"
       sources."buffer-xor-1.0.3"
       sources."builtin-status-codes-3.0.0"
@@ -34546,7 +36644,7 @@ in
       sources."long-2.4.0"
       sources."loud-rejection-1.6.0"
       sources."lru-2.0.1"
-      sources."magnet-uri-5.2.3"
+      sources."magnet-uri-5.2.4"
       sources."map-obj-1.0.1"
       (sources."mdns-js-1.0.1" // {
         dependencies = [
@@ -34925,7 +37023,7 @@ in
       sources."balanced-match-1.0.0"
       sources."base64-js-1.2.0"
       sources."bcrypt-pbkdf-1.0.2"
-      sources."big-integer-1.6.34"
+      sources."big-integer-1.6.35"
       sources."block-stream-0.0.9"
       sources."bn.js-4.11.8"
       sources."body-parser-1.18.2"
@@ -34952,7 +37050,7 @@ in
       sources."browserify-sign-4.0.4"
       sources."browserify-transform-tools-1.7.0"
       sources."browserify-zlib-0.1.4"
-      sources."buffer-5.2.0"
+      sources."buffer-5.2.1"
       sources."buffer-from-1.1.1"
       sources."buffer-xor-1.0.3"
       sources."builtin-modules-1.1.1"
@@ -35083,7 +37181,7 @@ in
       sources."fs.realpath-1.0.0"
       sources."fstream-1.0.11"
       sources."function-bind-1.1.1"
-      sources."generate-function-2.2.0"
+      sources."generate-function-2.3.1"
       sources."generate-object-property-1.2.0"
       sources."get-assigned-identifiers-1.2.0"
       (sources."getpass-0.1.7" // {
@@ -35439,7 +37537,7 @@ in
       sources."@cycle/run-3.4.0"
       sources."@cycle/time-0.10.1"
       sources."@types/cookiejar-2.1.0"
-      sources."@types/node-10.9.2"
+      sources."@types/node-10.9.4"
       sources."@types/superagent-3.8.2"
       sources."ansi-escapes-3.1.0"
       sources."ansi-regex-2.1.1"
@@ -35787,7 +37885,7 @@ in
       sources."bytes-3.0.0"
       sources."call-me-maybe-1.0.1"
       sources."camelcase-4.1.0"
-      sources."capture-stack-trace-1.0.0"
+      sources."capture-stack-trace-1.0.1"
       sources."caseless-0.12.0"
       sources."chalk-2.4.1"
       sources."ci-info-1.4.0"
@@ -36522,7 +38620,7 @@ in
       sources."assert-plus-1.0.0"
       sources."async-2.6.1"
       sources."asynckit-0.4.0"
-      sources."aws-sdk-2.303.0"
+      sources."aws-sdk-2.307.0"
       sources."aws-sign2-0.7.0"
       sources."aws4-1.8.0"
       sources."base64-js-1.3.0"
@@ -36624,10 +38722,10 @@ in
   elm-test = nodeEnv.buildNodePackage {
     name = "elm-test";
     packageName = "elm-test";
-    version = "0.18.12";
+    version = "0.18.13-beta";
     src = fetchurl {
-      url = "https://registry.npmjs.org/elm-test/-/elm-test-0.18.12.tgz";
-      sha512 = "5n1uNviCRxXIx5ciaFuzJd3fshcyicbYvTwyGh/L5t05bfBeq/3FZ5a3mLTz+zRZhp18dul2Oz8WoZmcn8PHcg==";
+      url = "https://registry.npmjs.org/elm-test/-/elm-test-0.18.13-beta.tgz";
+      sha512 = "bD2euTGjq4GFHqG2AWOrXXYidqYgz/NU3RVZB3d0qvDwZ8GItlv2ReCtU4D2RuqY40+sCTUT4Tiq2gpV13GThg==";
     };
     dependencies = [
       sources."ansi-regex-2.1.1"
@@ -36696,7 +38794,7 @@ in
       sources."fs.realpath-1.0.0"
       sources."fsevents-1.1.2"
       sources."fstream-1.0.11"
-      sources."generate-function-2.2.0"
+      sources."generate-function-2.3.1"
       sources."generate-object-property-1.2.0"
       (sources."getpass-0.1.7" // {
         dependencies = [
@@ -37083,40 +39181,31 @@ in
   eslint = nodeEnv.buildNodePackage {
     name = "eslint";
     packageName = "eslint";
-    version = "5.4.0";
+    version = "5.5.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/eslint/-/eslint-5.4.0.tgz";
-      sha512 = "UIpL91XGex3qtL6qwyCQJar2j3osKxK9e3ano3OcGEIRM4oWIpCkDg9x95AXEC2wMs7PnxzOkPZ2gq+tsMS9yg==";
+      url = "https://registry.npmjs.org/eslint/-/eslint-5.5.0.tgz";
+      sha512 = "m+az4vYehIJgl1Z0gb25KnFXeqQRdNreYsei1jdvkd9bB+UNQD3fsuiC2AWSQ56P+/t++kFSINZXFbfai+krOw==";
     };
     dependencies = [
+      sources."@babel/code-frame-7.0.0"
+      sources."@babel/highlight-7.0.0"
       sources."acorn-5.7.2"
       sources."acorn-jsx-4.1.1"
       sources."ajv-6.5.3"
       sources."ajv-keywords-3.2.0"
       sources."ansi-escapes-3.1.0"
-      sources."ansi-regex-2.1.1"
-      sources."ansi-styles-2.2.1"
+      sources."ansi-regex-3.0.0"
+      sources."ansi-styles-3.2.1"
       sources."argparse-1.0.10"
       sources."array-union-1.0.2"
       sources."array-uniq-1.0.3"
       sources."arrify-1.0.1"
-      (sources."babel-code-frame-6.26.0" // {
-        dependencies = [
-          sources."chalk-1.1.3"
-          sources."strip-ansi-3.0.1"
-        ];
-      })
       sources."balanced-match-1.0.0"
       sources."brace-expansion-1.1.11"
       sources."caller-path-0.1.0"
       sources."callsites-0.2.0"
-      (sources."chalk-2.4.1" // {
-        dependencies = [
-          sources."ansi-styles-3.2.1"
-          sources."supports-color-5.5.0"
-        ];
-      })
-      sources."chardet-0.4.2"
+      sources."chalk-2.4.1"
+      sources."chardet-0.7.0"
       sources."circular-json-0.3.3"
       sources."cli-cursor-2.1.0"
       sources."cli-width-2.2.0"
@@ -37138,7 +39227,7 @@ in
       sources."esrecurse-4.2.1"
       sources."estraverse-4.2.0"
       sources."esutils-2.0.2"
-      sources."external-editor-2.2.0"
+      sources."external-editor-3.0.3"
       sources."fast-deep-equal-2.0.1"
       sources."fast-json-stable-stringify-2.0.0"
       sources."fast-levenshtein-2.0.6"
@@ -37151,14 +39240,13 @@ in
       sources."globals-11.7.0"
       sources."globby-5.0.0"
       sources."graceful-fs-4.1.11"
-      sources."has-ansi-2.0.0"
       sources."has-flag-3.0.0"
       sources."iconv-lite-0.4.24"
       sources."ignore-4.0.6"
       sources."imurmurhash-0.1.4"
       sources."inflight-1.0.6"
       sources."inherits-2.0.3"
-      sources."inquirer-5.2.0"
+      sources."inquirer-6.2.0"
       sources."is-fullwidth-code-point-2.0.0"
       sources."is-path-cwd-1.0.0"
       sources."is-path-in-cwd-1.0.1"
@@ -37166,7 +39254,7 @@ in
       sources."is-promise-2.1.0"
       sources."is-resolvable-1.1.0"
       sources."isexe-2.0.0"
-      sources."js-tokens-3.0.2"
+      sources."js-tokens-4.0.0"
       sources."js-yaml-3.12.0"
       sources."json-schema-traverse-0.4.1"
       sources."json-stable-stringify-without-jsonify-1.0.1"
@@ -37201,7 +39289,7 @@ in
       sources."restore-cursor-2.0.0"
       sources."rimraf-2.6.2"
       sources."run-async-2.3.0"
-      sources."rxjs-5.5.11"
+      sources."rxjs-6.3.1"
       sources."safer-buffer-2.1.2"
       sources."semver-5.5.1"
       sources."shebang-command-1.2.0"
@@ -37210,18 +39298,14 @@ in
       sources."slice-ansi-1.0.0"
       sources."sprintf-js-1.0.3"
       sources."string-width-2.1.1"
-      (sources."strip-ansi-4.0.0" // {
-        dependencies = [
-          sources."ansi-regex-3.0.0"
-        ];
-      })
+      sources."strip-ansi-4.0.0"
       sources."strip-json-comments-2.0.1"
-      sources."supports-color-2.0.0"
-      sources."symbol-observable-1.0.1"
+      sources."supports-color-5.5.0"
       sources."table-4.0.3"
       sources."text-table-0.2.0"
       sources."through-2.3.8"
       sources."tmp-0.0.33"
+      sources."tslib-1.9.3"
       sources."type-check-0.3.2"
       sources."uri-js-4.2.2"
       sources."which-1.3.1"
@@ -37247,34 +39331,25 @@ in
       sha512 = "NjFiFcKPEjDlleLlngMyVcD6oLu6L8BctLJ3saPZfC4yLD+AJteII5E8meGqTislKxiVMMWHWXed61siXz3mCA==";
     };
     dependencies = [
+      sources."@babel/code-frame-7.0.0"
+      sources."@babel/highlight-7.0.0"
       sources."acorn-5.7.2"
       sources."acorn-jsx-4.1.1"
       sources."ajv-6.5.3"
       sources."ajv-keywords-3.2.0"
       sources."ansi-escapes-3.1.0"
-      sources."ansi-regex-2.1.1"
-      sources."ansi-styles-2.2.1"
+      sources."ansi-regex-3.0.0"
+      sources."ansi-styles-3.2.1"
       sources."argparse-1.0.10"
       sources."array-union-1.0.2"
       sources."array-uniq-1.0.3"
       sources."arrify-1.0.1"
-      (sources."babel-code-frame-6.26.0" // {
-        dependencies = [
-          sources."chalk-1.1.3"
-          sources."strip-ansi-3.0.1"
-          sources."supports-color-2.0.0"
-        ];
-      })
       sources."balanced-match-1.0.0"
       sources."brace-expansion-1.1.11"
       sources."caller-path-0.1.0"
       sources."callsites-0.2.0"
-      (sources."chalk-2.4.1" // {
-        dependencies = [
-          sources."ansi-styles-3.2.1"
-        ];
-      })
-      sources."chardet-0.4.2"
+      sources."chalk-2.4.1"
+      sources."chardet-0.7.0"
       sources."circular-json-0.3.3"
       sources."cli-cursor-2.1.0"
       sources."cli-width-2.2.0"
@@ -37287,7 +39362,7 @@ in
       sources."del-2.2.2"
       sources."doctrine-2.1.0"
       sources."escape-string-regexp-1.0.5"
-      sources."eslint-5.4.0"
+      sources."eslint-5.5.0"
       sources."eslint-scope-4.0.0"
       sources."eslint-utils-1.3.1"
       sources."eslint-visitor-keys-1.0.0"
@@ -37297,7 +39372,7 @@ in
       sources."esrecurse-4.2.1"
       sources."estraverse-4.2.0"
       sources."esutils-2.0.2"
-      sources."external-editor-2.2.0"
+      sources."external-editor-3.0.3"
       sources."fast-deep-equal-2.0.1"
       sources."fast-json-stable-stringify-2.0.0"
       sources."fast-levenshtein-2.0.6"
@@ -37310,14 +39385,13 @@ in
       sources."globals-11.7.0"
       sources."globby-5.0.0"
       sources."graceful-fs-4.1.11"
-      sources."has-ansi-2.0.0"
       sources."has-flag-3.0.0"
       sources."iconv-lite-0.4.24"
       sources."ignore-4.0.6"
       sources."imurmurhash-0.1.4"
       sources."inflight-1.0.6"
       sources."inherits-2.0.3"
-      sources."inquirer-5.2.0"
+      sources."inquirer-6.2.0"
       sources."is-fullwidth-code-point-2.0.0"
       sources."is-path-cwd-1.0.0"
       sources."is-path-in-cwd-1.0.1"
@@ -37325,7 +39399,7 @@ in
       sources."is-promise-2.1.0"
       sources."is-resolvable-1.1.0"
       sources."isexe-2.0.0"
-      sources."js-tokens-3.0.2"
+      sources."js-tokens-4.0.0"
       sources."js-yaml-3.12.0"
       sources."json-schema-traverse-0.4.1"
       sources."json-stable-stringify-without-jsonify-1.0.1"
@@ -37363,7 +39437,7 @@ in
       sources."restore-cursor-2.0.0"
       sources."rimraf-2.6.2"
       sources."run-async-2.3.0"
-      sources."rxjs-5.5.11"
+      sources."rxjs-6.3.1"
       sources."safer-buffer-2.1.2"
       sources."semver-5.5.1"
       sources."shebang-command-1.2.0"
@@ -37372,18 +39446,14 @@ in
       sources."slice-ansi-1.0.0"
       sources."sprintf-js-1.0.3"
       sources."string-width-2.1.1"
-      (sources."strip-ansi-4.0.0" // {
-        dependencies = [
-          sources."ansi-regex-3.0.0"
-        ];
-      })
+      sources."strip-ansi-4.0.0"
       sources."strip-json-comments-2.0.1"
       sources."supports-color-5.5.0"
-      sources."symbol-observable-1.0.1"
       sources."table-4.0.3"
       sources."text-table-0.2.0"
       sources."through-2.3.8"
       sources."tmp-0.0.33"
+      sources."tslib-1.9.3"
       sources."type-check-0.3.2"
       sources."uri-js-4.2.2"
       sources."which-1.3.1"
@@ -37403,10 +39473,10 @@ in
   emojione = nodeEnv.buildNodePackage {
     name = "emojione";
     packageName = "emojione";
-    version = "3.1.7";
+    version = "4.0.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/emojione/-/emojione-3.1.7.tgz";
-      sha1 = "2d3c725c696f179c9dde3acb655c621ee9429b1e";
+      url = "https://registry.npmjs.org/emojione/-/emojione-4.0.0.tgz";
+      sha512 = "ATFSRHrK838NoTUE96j9rpmS1R4a/qpK1maQURGdFtarpWloEttjjIBBWbSFqsUxC0Vot6P2WXmSlotvZoegxw==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -37817,6 +39887,181 @@ in
     production = true;
     bypassCache = true;
   };
+  git-ssb = nodeEnv.buildNodePackage {
+    name = "git-ssb";
+    packageName = "git-ssb";
+    version = "2.3.6";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/git-ssb/-/git-ssb-2.3.6.tgz";
+      sha512 = "xH6KEeJaUJDB8FAov4OdYxb4GuMOTcKdJ+xW5SUGLEuXfBLgyS0zUeeYVIUS8qvM3gf7w+W35WRwwK4d0InqxQ==";
+    };
+    dependencies = [
+      sources."asyncmemo-1.0.0"
+      sources."chloride-2.2.10"
+      sources."chloride-test-1.2.2"
+      sources."deep-equal-1.0.1"
+      sources."deep-extend-0.4.2"
+      sources."diff-3.5.0"
+      sources."ed2curve-0.1.4"
+      sources."emoji-named-characters-1.0.2"
+      sources."explain-error-1.0.4"
+      sources."generate-function-2.3.1"
+      sources."generate-object-property-1.2.0"
+      sources."git-packidx-parser-1.0.0"
+      sources."git-remote-ssb-2.0.4"
+      sources."git-ssb-web-2.8.0"
+      sources."hashlru-2.2.1"
+      sources."highlight.js-9.12.0"
+      sources."increment-buffer-1.0.1"
+      sources."inherits-2.0.3"
+      sources."ini-1.3.5"
+      sources."ip-1.1.5"
+      sources."is-electron-2.1.0"
+      sources."is-my-ip-valid-1.0.0"
+      sources."is-my-json-valid-2.19.0"
+      sources."is-property-1.0.2"
+      sources."is-valid-domain-0.0.5"
+      sources."json-buffer-2.0.11"
+      sources."jsonpointer-4.0.1"
+      sources."kvgraph-0.1.0"
+      sources."kvset-1.0.0"
+      sources."libsodium-0.7.3"
+      sources."libsodium-wrappers-0.7.3"
+      sources."looper-4.0.0"
+      sources."lrucache-1.0.3"
+      sources."mime-db-1.36.0"
+      sources."mime-types-2.1.20"
+      sources."minimist-1.2.0"
+      (sources."mkdirp-0.5.1" // {
+        dependencies = [
+          sources."minimist-0.0.8"
+        ];
+      })
+      sources."moment-2.22.2"
+      sources."multicb-1.2.2"
+      sources."multiserver-1.13.3"
+      sources."muxrpc-6.4.1"
+      sources."nan-2.11.0"
+      sources."node-gyp-build-3.4.0"
+      sources."node-polyglot-1.0.0"
+      sources."non-private-ip-1.4.4"
+      sources."options-0.0.6"
+      sources."os-homedir-1.0.2"
+      sources."packet-stream-2.0.4"
+      sources."packet-stream-codec-1.1.2"
+      sources."pako-1.0.6"
+      sources."private-box-0.2.1"
+      sources."progress-1.1.8"
+      sources."pull-block-filter-1.0.0"
+      sources."pull-box-stream-1.0.13"
+      sources."pull-buffered-0.3.4"
+      sources."pull-cache-0.0.0"
+      sources."pull-cat-1.1.11"
+      sources."pull-core-1.1.0"
+      sources."pull-git-pack-1.0.2"
+      (sources."pull-git-pack-concat-0.2.1" // {
+        dependencies = [
+          sources."looper-3.0.0"
+        ];
+      })
+      sources."pull-git-packidx-parser-1.0.0"
+      sources."pull-git-remote-helper-2.0.0"
+      sources."pull-git-repo-1.2.1"
+      (sources."pull-goodbye-0.0.2" // {
+        dependencies = [
+          sources."pull-stream-3.5.0"
+        ];
+      })
+      sources."pull-handshake-1.1.4"
+      sources."pull-hash-1.0.0"
+      sources."pull-hyperscript-0.2.2"
+      (sources."pull-identify-filetype-1.1.0" // {
+        dependencies = [
+          sources."pull-stream-2.28.4"
+        ];
+      })
+      sources."pull-kvdiff-0.0.0"
+      sources."pull-looper-1.0.0"
+      sources."pull-many-1.0.8"
+      sources."pull-paginate-1.0.0"
+      sources."pull-pair-1.1.0"
+      sources."pull-paramap-1.2.2"
+      sources."pull-pushable-2.2.0"
+      sources."pull-reader-1.3.1"
+      sources."pull-skip-footer-0.1.0"
+      sources."pull-stream-3.6.9"
+      (sources."pull-through-1.0.18" // {
+        dependencies = [
+          sources."looper-3.0.0"
+        ];
+      })
+      sources."pull-ws-3.3.1"
+      (sources."rc-1.2.8" // {
+        dependencies = [
+          sources."deep-extend-0.6.0"
+        ];
+      })
+      sources."relative-url-1.0.2"
+      sources."remove-markdown-0.1.0"
+      sources."safe-buffer-5.1.2"
+      sources."secret-handshake-1.1.13"
+      sources."semver-5.5.1"
+      sources."separator-escape-0.0.0"
+      sources."sha.js-2.4.5"
+      sources."smart-buffer-4.0.1"
+      sources."socks-2.2.1"
+      sources."sodium-browserify-1.2.4"
+      (sources."sodium-browserify-tweetnacl-0.2.3" // {
+        dependencies = [
+          sources."sha.js-2.4.11"
+        ];
+      })
+      sources."sodium-chloride-1.1.0"
+      sources."sodium-native-2.2.1"
+      sources."split-buffer-1.0.0"
+      sources."ssb-avatar-0.2.0"
+      sources."ssb-client-4.6.0"
+      sources."ssb-config-2.2.0"
+      sources."ssb-git-0.5.0"
+      sources."ssb-git-repo-2.8.3"
+      sources."ssb-issues-1.0.0"
+      sources."ssb-keys-7.0.16"
+      sources."ssb-marked-0.6.0"
+      (sources."ssb-mentions-0.1.2" // {
+        dependencies = [
+          sources."ssb-marked-0.5.4"
+        ];
+      })
+      (sources."ssb-msg-schemas-6.3.0" // {
+        dependencies = [
+          sources."pull-stream-2.27.0"
+        ];
+      })
+      sources."ssb-msgs-5.2.0"
+      sources."ssb-pull-requests-1.0.0"
+      sources."ssb-ref-2.11.2"
+      (sources."stream-to-pull-stream-1.7.2" // {
+        dependencies = [
+          sources."looper-3.0.0"
+        ];
+      })
+      sources."strip-json-comments-2.0.1"
+      sources."through-2.2.7"
+      sources."tweetnacl-0.14.5"
+      sources."tweetnacl-auth-0.3.1"
+      sources."ultron-1.0.2"
+      sources."ws-1.1.5"
+      sources."xtend-4.0.1"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "git hosting on secure-scuttlebutt (ssb)";
+      homepage = https://git-ssb.celehner.com/%25n92DiQh7ietE%2BR%2BX%2FI403LQoyf2DtR3WQfCkDKlheQU%3D.sha256;
+      license = "Fair";
+    };
+    production = true;
+    bypassCache = true;
+  };
   git-standup = nodeEnv.buildNodePackage {
     name = "git-standup";
     packageName = "git-standup";
@@ -37885,7 +40130,7 @@ in
       sources."babel-runtime-6.26.0"
       sources."balanced-match-1.0.0"
       sources."bcrypt-pbkdf-1.0.2"
-      sources."bluebird-3.5.1"
+      sources."bluebird-3.5.2"
       (sources."body-parser-1.18.2" // {
         dependencies = [
           sources."iconv-lite-0.4.19"
@@ -37900,7 +40145,7 @@ in
       sources."call-me-maybe-1.0.1"
       sources."camel-case-3.0.0"
       sources."camelcase-4.1.0"
-      sources."capture-stack-trace-1.0.0"
+      sources."capture-stack-trace-1.0.1"
       sources."caseless-0.12.0"
       sources."chalk-2.4.1"
       sources."change-case-3.0.2"
@@ -38203,7 +40448,7 @@ in
       sources."on-finished-2.3.0"
       sources."once-1.4.0"
       sources."onetime-2.0.1"
-      sources."ono-4.0.6"
+      sources."ono-4.0.7"
       sources."open-0.0.5"
       sources."opn-5.3.0"
       sources."ora-1.4.0"
@@ -38285,7 +40530,7 @@ in
       sources."restore-cursor-2.0.0"
       sources."rimraf-2.6.2"
       sources."run-async-2.3.0"
-      sources."rxjs-5.5.11"
+      sources."rxjs-5.5.12"
       sources."safe-buffer-5.1.1"
       sources."safer-buffer-2.1.2"
       sources."scuid-1.1.0"
@@ -38357,7 +40602,7 @@ in
       sources."utils-merge-1.0.1"
       sources."uuid-3.3.2"
       sources."validate-npm-package-license-3.0.4"
-      sources."validator-10.7.0"
+      sources."validator-10.7.1"
       sources."vary-1.1.2"
       sources."verror-1.10.0"
       sources."wcwidth-1.0.1"
@@ -39173,28 +41418,46 @@ in
   htmlhint = nodeEnv.buildNodePackage {
     name = "htmlhint";
     packageName = "htmlhint";
-    version = "0.9.13";
+    version = "0.10.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/htmlhint/-/htmlhint-0.9.13.tgz";
-      sha1 = "08163cb1e6aa505048ebb0b41063a7ca07dc6c88";
+      url = "https://registry.npmjs.org/htmlhint/-/htmlhint-0.10.0.tgz";
+      sha512 = "g/bNE3G7D8N1pgfGeL8FTgv4lhA04cWiCTofi8F20f4s+tkcIAL/j2FsD8iVlRCzVpNDYbXCmYtGmQzQe0FKGw==";
     };
     dependencies = [
-      sources."async-1.4.2"
+      sources."ajv-5.5.2"
+      sources."asn1-0.2.4"
+      sources."assert-plus-1.0.0"
+      sources."async-2.6.1"
+      sources."asynckit-0.4.0"
+      sources."aws-sign2-0.7.0"
+      sources."aws4-1.8.0"
       sources."balanced-match-1.0.0"
+      sources."bcrypt-pbkdf-1.0.2"
       sources."brace-expansion-1.1.11"
-      (sources."cli-0.6.6" // {
+      sources."buffer-from-1.1.1"
+      sources."caseless-0.12.0"
+      sources."cli-1.0.1"
+      sources."clone-2.1.2"
+      sources."co-4.6.0"
+      sources."colors-1.3.2"
+      sources."combined-stream-1.0.6"
+      sources."commander-2.17.1"
+      sources."concat-map-0.0.1"
+      (sources."concat-stream-1.6.2" // {
         dependencies = [
-          sources."glob-3.2.11"
-          sources."minimatch-0.3.0"
+          sources."isarray-1.0.0"
+          sources."readable-stream-2.3.6"
+          sources."string_decoder-1.1.1"
         ];
       })
-      sources."colors-1.0.3"
-      sources."commander-2.6.0"
-      sources."concat-map-0.0.1"
       sources."console-browserify-1.1.0"
       sources."core-util-is-1.0.2"
-      sources."csslint-0.10.0"
+      sources."csslint-1.0.5"
+      sources."cycle-1.0.3"
+      sources."dashdash-1.14.1"
       sources."date-now-0.1.4"
+      sources."debug-2.6.9"
+      sources."delayed-stream-1.0.0"
       (sources."dom-serializer-0.1.0" // {
         dependencies = [
           sources."domelementtype-1.1.3"
@@ -39204,42 +41467,114 @@ in
       sources."domelementtype-1.3.0"
       sources."domhandler-2.3.0"
       sources."domutils-1.5.1"
+      sources."ecc-jsbn-0.1.2"
       sources."entities-1.0.0"
+      sources."es6-promise-4.2.4"
       sources."exit-0.1.2"
-      sources."glob-5.0.15"
+      sources."extend-3.0.2"
+      sources."extract-zip-1.6.7"
+      sources."extsprintf-1.3.0"
+      sources."eyes-0.1.8"
+      sources."fast-deep-equal-1.1.0"
+      sources."fast-json-stable-stringify-2.0.0"
+      sources."fd-slicer-1.0.1"
+      sources."forever-agent-0.6.1"
+      sources."form-data-2.3.2"
+      sources."fs-extra-1.0.0"
+      sources."fs.realpath-1.0.0"
+      sources."getpass-0.1.7"
+      sources."glob-7.1.3"
       sources."glob-base-0.3.0"
       sources."glob-parent-2.0.0"
+      sources."graceful-fs-4.1.11"
+      sources."har-schema-2.0.0"
+      sources."har-validator-5.1.0"
+      sources."hasha-2.2.0"
       sources."htmlparser2-3.8.3"
+      sources."http-signature-1.2.0"
       sources."inflight-1.0.6"
       sources."inherits-2.0.3"
       sources."is-dotfile-1.0.3"
       sources."is-extglob-1.0.0"
       sources."is-glob-2.0.1"
+      sources."is-stream-1.1.0"
+      sources."is-typedarray-1.0.0"
       sources."isarray-0.0.1"
-      (sources."jshint-2.8.0" // {
+      sources."isexe-2.0.0"
+      sources."isstream-0.1.2"
+      sources."jsbn-0.1.1"
+      (sources."jshint-2.9.6" // {
         dependencies = [
-          sources."minimatch-2.0.10"
+          sources."strip-json-comments-1.0.4"
         ];
       })
-      sources."lodash-3.7.0"
-      sources."lru-cache-2.7.3"
+      sources."json-schema-0.2.3"
+      sources."json-schema-traverse-0.3.1"
+      sources."json-stringify-safe-5.0.1"
+      sources."jsonfile-2.4.0"
+      sources."jsprim-1.4.1"
+      sources."kew-0.7.0"
+      sources."klaw-1.3.1"
+      sources."lodash-4.17.10"
+      sources."mime-db-1.36.0"
+      sources."mime-types-2.1.20"
       sources."minimatch-3.0.4"
+      sources."minimist-0.0.8"
+      sources."mkdirp-0.5.1"
+      sources."ms-2.0.0"
+      sources."oauth-sign-0.9.0"
       sources."once-1.4.0"
       sources."parse-glob-3.0.4"
-      sources."parserlib-0.2.5"
+      sources."parserlib-1.1.1"
       sources."path-is-absolute-1.0.1"
+      sources."path-parse-1.0.6"
+      sources."pend-1.2.0"
+      sources."performance-now-2.1.0"
+      sources."phantom-4.0.12"
+      sources."phantomjs-prebuilt-2.1.16"
+      sources."pinkie-2.0.4"
+      sources."pinkie-promise-2.0.1"
+      sources."process-nextick-args-2.0.0"
+      sources."progress-1.1.8"
+      sources."psl-1.1.29"
+      sources."punycode-1.4.1"
+      sources."qs-6.5.2"
       sources."readable-stream-1.1.14"
+      sources."request-2.88.0"
+      sources."request-progress-2.0.1"
+      sources."safe-buffer-5.1.2"
+      sources."safer-buffer-2.1.2"
       sources."shelljs-0.3.0"
-      sources."sigmund-1.0.1"
+      sources."split-1.0.1"
+      sources."sshpk-1.14.2"
+      sources."stack-trace-0.0.10"
       sources."string_decoder-0.10.31"
-      sources."strip-json-comments-1.0.4"
+      sources."strip-json-comments-2.0.1"
+      sources."throttleit-1.0.0"
+      sources."through-2.3.8"
+      sources."tough-cookie-2.4.3"
+      sources."tunnel-agent-0.6.0"
+      sources."tweetnacl-0.14.5"
+      sources."typedarray-0.0.6"
+      sources."unicode-5.2.0-0.7.5"
+      sources."util-deprecate-1.0.2"
+      sources."uuid-3.3.2"
+      sources."verror-1.10.0"
+      sources."which-1.3.1"
+      (sources."winston-2.4.4" // {
+        dependencies = [
+          sources."async-1.0.0"
+          sources."colors-1.0.3"
+        ];
+      })
       sources."wrappy-1.0.2"
-      sources."xml-1.0.0"
+      sources."xml-1.0.1"
+      sources."yauzl-2.4.1"
     ];
     buildInputs = globalBuildInputs;
     meta = {
-      description = "A Static Code Analysis Tool for HTML";
-      homepage = "https://github.com/yaniswang/HTMLHint#readme";
+      description = "The Static Code Analysis Tool for your HTML";
+      homepage = "https://github.com/thedaviddias/HTMLHint#readme";
       license = "MIT";
     };
     production = true;
@@ -39263,7 +41598,7 @@ in
       sources."param-case-2.1.1"
       sources."relateurl-0.2.7"
       sources."source-map-0.6.1"
-      sources."uglify-js-3.4.8"
+      sources."uglify-js-3.4.9"
       sources."upper-case-1.1.3"
     ];
     buildInputs = globalBuildInputs;
@@ -39298,7 +41633,7 @@ in
       sources."@types/minimatch-3.0.3"
       sources."@types/minimist-1.2.0"
       sources."@types/ncp-2.0.1"
-      sources."@types/node-6.0.116"
+      sources."@types/node-6.0.117"
       sources."@types/rimraf-2.0.2"
       sources."@types/rx-4.1.1"
       sources."@types/rx-core-4.0.3"
@@ -39332,9 +41667,9 @@ in
       sources."brace-expansion-1.1.11"
       sources."bytes-3.0.0"
       sources."camelcase-4.1.0"
-      sources."capture-stack-trace-1.0.0"
+      sources."capture-stack-trace-1.0.1"
       sources."chalk-2.4.1"
-      sources."chardet-0.5.0"
+      sources."chardet-0.7.0"
       sources."chownr-1.0.1"
       sources."ci-info-1.4.0"
       sources."cli-boxes-1.0.0"
@@ -39373,7 +41708,7 @@ in
       sources."esutils-2.0.2"
       sources."execa-0.7.0"
       sources."extend-3.0.2"
-      sources."external-editor-3.0.1"
+      sources."external-editor-3.0.3"
       sources."fast-levenshtein-2.0.6"
       sources."figures-2.0.0"
       sources."file-uri-to-path-1.0.0"
@@ -39504,7 +41839,7 @@ in
       sources."rimraf-2.6.2"
       sources."rsvp-3.6.2"
       sources."run-async-2.3.0"
-      sources."rxjs-6.2.2"
+      sources."rxjs-6.3.1"
       sources."safe-buffer-5.1.2"
       sources."safer-buffer-2.1.2"
       sources."sax-1.1.4"
@@ -39812,7 +42147,7 @@ in
       sources."deep-equal-1.0.1"
       sources."error-7.0.2"
       sources."escape-string-regexp-1.0.5"
-      sources."fast-json-patch-2.0.6"
+      sources."fast-json-patch-2.0.7"
       sources."fs.realpath-1.0.0"
       sources."get-func-name-2.0.0"
       sources."glob-7.1.3"
@@ -39841,7 +42176,7 @@ in
       sources."opentracing-0.14.3"
       sources."path-is-absolute-1.0.1"
       sources."pathval-1.1.0"
-      sources."rxjs-5.5.11"
+      sources."rxjs-5.5.12"
       sources."semaphore-async-await-1.5.1"
       sources."string-similarity-1.2.1"
       sources."string-template-0.2.1"
@@ -39901,7 +42236,7 @@ in
     };
     dependencies = [
       sources."babylon-7.0.0-beta.19"
-      sources."bluebird-3.5.1"
+      sources."bluebird-3.5.2"
       sources."catharsis-0.8.9"
       sources."escape-string-regexp-1.0.5"
       sources."graceful-fs-4.1.11"
@@ -40199,10 +42534,10 @@ in
   json-refs = nodeEnv.buildNodePackage {
     name = "json-refs";
     packageName = "json-refs";
-    version = "3.0.9";
+    version = "3.0.10";
     src = fetchurl {
-      url = "https://registry.npmjs.org/json-refs/-/json-refs-3.0.9.tgz";
-      sha512 = "7N8yDNktol+fIQBQmCoaHwAxvga102kgil/awf8TrGHIhQh2o788inzS6QygfY0B++Z7v5NCAAmCddU+qJf6hA==";
+      url = "https://registry.npmjs.org/json-refs/-/json-refs-3.0.10.tgz";
+      sha512 = "hTBuXx9RKpyhNhCEh7AUm0Emngxf9f1caw4BzH9CQSPlTqxSJG/X5W0di8AHSeePu+ZqSYjlXLU6u2+Q/6wFmw==";
     };
     dependencies = [
       sources."argparse-1.0.10"
@@ -40229,7 +42564,7 @@ in
       sources."mime-types-2.1.20"
       sources."ms-2.0.0"
       sources."native-promise-only-0.8.1"
-      sources."path-loader-1.0.7"
+      sources."path-loader-1.0.8"
       sources."process-nextick-args-2.0.0"
       sources."punycode-2.1.1"
       sources."qs-6.5.2"
@@ -40281,7 +42616,7 @@ in
       sources."boxen-1.3.0"
       sources."bytes-3.0.0"
       sources."camelcase-4.1.0"
-      sources."capture-stack-trace-1.0.0"
+      sources."capture-stack-trace-1.0.1"
       sources."caseless-0.12.0"
       sources."chalk-2.4.1"
       sources."ci-info-1.4.0"
@@ -40417,7 +42752,7 @@ in
       sources."minimist-1.2.0"
       sources."morgan-1.9.0"
       sources."ms-2.0.0"
-      sources."nanoid-1.2.1"
+      sources."nanoid-1.2.2"
       sources."negotiator-0.6.1"
       sources."npm-run-path-2.0.2"
       sources."number-is-nan-1.0.1"
@@ -40577,7 +42912,7 @@ in
       sources."better-assert-1.0.2"
       sources."binary-extensions-1.11.0"
       sources."blob-0.0.4"
-      sources."bluebird-3.5.1"
+      sources."bluebird-3.5.2"
       sources."body-parser-1.18.3"
       sources."brace-expansion-1.1.11"
       (sources."braces-2.3.2" // {
@@ -41471,20 +43806,20 @@ in
   lerna = nodeEnv.buildNodePackage {
     name = "lerna";
     packageName = "lerna";
-    version = "3.1.4";
+    version = "3.2.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/lerna/-/lerna-3.1.4.tgz";
-      sha512 = "DetcjFPZmClvHbTOUX3ynBEfzWPLIRhwnoCMw57iNV1lWyW3ERLj6B2Iz6XtWOwW6E+fBrmK5tYV9t0OXuSF6A==";
+      url = "https://registry.npmjs.org/lerna/-/lerna-3.2.1.tgz";
+      sha512 = "nHa/TgRLOHlBm+NfeW62ffVO7hY7wJxnu6IJmZA3lrSmRlqrXZk2BPvnq0FSaCinVYjW0w0XeSNZdRKR//HAwQ==";
     };
     dependencies = [
-      sources."@lerna/add-3.1.4"
+      sources."@lerna/add-3.2.0"
       sources."@lerna/batch-packages-3.1.2"
-      sources."@lerna/bootstrap-3.1.4"
-      sources."@lerna/changed-3.1.3"
+      sources."@lerna/bootstrap-3.2.0"
+      sources."@lerna/changed-3.2.0"
       sources."@lerna/check-working-tree-3.1.0"
       sources."@lerna/child-process-3.0.0"
       sources."@lerna/clean-3.1.3"
-      sources."@lerna/cli-3.1.4"
+      sources."@lerna/cli-3.2.0"
       sources."@lerna/collect-updates-3.1.0"
       sources."@lerna/command-3.1.3"
       sources."@lerna/conventional-commits-3.0.2"
@@ -41507,23 +43842,23 @@ in
       sources."@lerna/npm-conf-3.0.0"
       sources."@lerna/npm-dist-tag-3.0.0"
       sources."@lerna/npm-install-3.0.0"
-      sources."@lerna/npm-publish-3.0.6"
+      sources."@lerna/npm-publish-3.2.0"
       sources."@lerna/npm-run-script-3.0.0"
       sources."@lerna/output-3.0.0"
       sources."@lerna/package-3.0.0"
       sources."@lerna/package-graph-3.1.2"
       sources."@lerna/project-3.0.0"
       sources."@lerna/prompt-3.0.0"
-      sources."@lerna/publish-3.1.3"
+      sources."@lerna/publish-3.2.1"
       sources."@lerna/resolve-symlink-3.0.0"
       sources."@lerna/rimraf-dir-3.0.0"
       sources."@lerna/run-3.1.3"
-      sources."@lerna/run-lifecycle-3.0.0"
+      sources."@lerna/run-lifecycle-3.2.0"
       sources."@lerna/run-parallel-batches-3.0.0"
       sources."@lerna/symlink-binary-3.1.4"
       sources."@lerna/symlink-dependencies-3.1.4"
       sources."@lerna/validation-error-3.0.0"
-      sources."@lerna/version-3.1.3"
+      sources."@lerna/version-3.2.0"
       sources."@lerna/write-log-file-3.0.0"
       sources."@mrmlnc/readdir-enhanced-2.2.1"
       sources."@nodelib/fs.stat-1.1.1"
@@ -41571,7 +43906,7 @@ in
       })
       sources."bcrypt-pbkdf-1.0.2"
       sources."block-stream-0.0.9"
-      sources."bluebird-3.5.1"
+      sources."bluebird-3.5.2"
       sources."brace-expansion-1.1.11"
       (sources."braces-2.3.2" // {
         dependencies = [
@@ -41613,9 +43948,10 @@ in
       })
       sources."cli-cursor-2.1.0"
       sources."cli-width-2.2.0"
-      (sources."cliui-2.1.0" // {
+      (sources."cliui-4.1.0" // {
         dependencies = [
-          sources."wordwrap-0.0.2"
+          sources."ansi-regex-3.0.0"
+          sources."strip-ansi-4.0.0"
         ];
       })
       sources."clone-1.0.4"
@@ -41665,9 +44001,10 @@ in
       sources."dateformat-3.0.3"
       sources."debug-2.6.9"
       sources."debuglog-1.0.1"
-      sources."decamelize-1.2.0"
+      sources."decamelize-2.0.0"
       (sources."decamelize-keys-1.1.0" // {
         dependencies = [
+          sources."decamelize-1.2.0"
           sources."map-obj-1.0.1"
         ];
       })
@@ -41739,7 +44076,7 @@ in
           sources."extend-shallow-2.0.1"
         ];
       })
-      sources."find-up-2.1.0"
+      sources."find-up-3.0.0"
       sources."flush-write-stream-1.0.3"
       sources."for-in-1.0.2"
       sources."forever-agent-0.6.1"
@@ -41763,6 +44100,7 @@ in
         dependencies = [
           sources."camelcase-2.1.1"
           sources."camelcase-keys-2.1.0"
+          sources."decamelize-1.2.0"
           sources."indent-string-2.1.0"
           sources."map-obj-1.0.1"
           sources."meow-3.7.0"
@@ -41883,7 +44221,7 @@ in
       sources."lazy-cache-1.0.4"
       sources."lcid-1.0.0"
       sources."load-json-file-4.0.0"
-      sources."locate-path-2.0.0"
+      sources."locate-path-3.0.0"
       sources."lodash-4.17.10"
       sources."lodash._reinterpolate-3.0.0"
       sources."lodash.sortby-4.7.0"
@@ -41900,7 +44238,12 @@ in
       sources."mem-1.1.0"
       (sources."meow-4.0.1" // {
         dependencies = [
+          sources."find-up-2.1.0"
+          sources."locate-path-2.0.0"
           sources."minimist-1.2.0"
+          sources."p-limit-1.3.0"
+          sources."p-locate-2.0.0"
+          sources."p-try-1.0.0"
           sources."read-pkg-up-3.0.0"
         ];
       })
@@ -41989,12 +44332,13 @@ in
       sources."os-tmpdir-1.0.2"
       sources."osenv-0.1.5"
       sources."p-finally-1.0.0"
-      sources."p-limit-1.3.0"
-      sources."p-locate-2.0.0"
+      sources."p-limit-2.0.0"
+      sources."p-locate-3.0.0"
       sources."p-map-1.2.0"
       sources."p-map-series-1.0.0"
+      sources."p-pipe-1.2.0"
       sources."p-reduce-1.0.0"
-      sources."p-try-1.0.0"
+      sources."p-try-2.0.0"
       sources."p-waterfall-1.0.0"
       sources."pacote-9.1.0"
       sources."parallel-transform-1.1.0"
@@ -42010,7 +44354,15 @@ in
       sources."pify-3.0.0"
       sources."pinkie-2.0.4"
       sources."pinkie-promise-2.0.1"
-      sources."pkg-dir-2.0.0"
+      (sources."pkg-dir-2.0.0" // {
+        dependencies = [
+          sources."find-up-2.1.0"
+          sources."locate-path-2.0.0"
+          sources."p-limit-1.3.0"
+          sources."p-locate-2.0.0"
+          sources."p-try-1.0.0"
+        ];
+      })
       sources."posix-character-classes-0.1.1"
       sources."process-nextick-args-2.0.0"
       sources."promise-inflight-1.0.1"
@@ -42071,7 +44423,7 @@ in
       sources."rimraf-2.6.2"
       sources."run-async-2.3.0"
       sources."run-queue-1.0.3"
-      sources."rxjs-5.5.11"
+      sources."rxjs-5.5.12"
       sources."safe-buffer-5.1.2"
       sources."safe-regex-1.1.0"
       sources."safer-buffer-2.1.2"
@@ -42197,6 +44549,9 @@ in
       (sources."uglify-js-2.8.29" // {
         dependencies = [
           sources."camelcase-1.2.1"
+          sources."cliui-2.1.0"
+          sources."decamelize-1.2.0"
+          sources."wordwrap-0.0.2"
           sources."yargs-3.10.0"
         ];
       })
@@ -42251,19 +44606,7 @@ in
       sources."xtend-4.0.1"
       sources."y18n-4.0.0"
       sources."yallist-2.1.2"
-      (sources."yargs-12.0.1" // {
-        dependencies = [
-          sources."ansi-regex-3.0.0"
-          sources."cliui-4.1.0"
-          sources."decamelize-2.0.0"
-          sources."find-up-3.0.0"
-          sources."locate-path-3.0.0"
-          sources."p-limit-2.0.0"
-          sources."p-locate-3.0.0"
-          sources."p-try-2.0.0"
-          sources."strip-ansi-4.0.0"
-        ];
-      })
+      sources."yargs-12.0.1"
       sources."yargs-parser-10.1.0"
     ];
     buildInputs = globalBuildInputs;
@@ -43317,7 +45660,7 @@ in
       sources."longest-1.0.1"
       sources."lru-cache-2.7.3"
       sources."lru-queue-0.1.0"
-      sources."make-error-1.3.4"
+      sources."make-error-1.3.5"
       sources."make-error-cause-1.2.2"
       sources."make-iterator-1.0.1"
       sources."map-cache-0.2.2"
@@ -43529,7 +45872,7 @@ in
       sources."tunnel-agent-0.6.0"
       sources."tweetnacl-0.14.5"
       sources."typescript-2.7.2"
-      (sources."uglify-js-3.4.8" // {
+      (sources."uglify-js-3.4.9" // {
         dependencies = [
           sources."source-map-0.6.1"
         ];
@@ -43674,7 +46017,7 @@ in
       sources."mime-types-2.1.20"
       sources."ms-2.0.0"
       sources."native-promise-only-0.8.1"
-      sources."path-loader-1.0.7"
+      sources."path-loader-1.0.8"
       sources."process-nextick-args-2.0.0"
       sources."punycode-2.1.1"
       sources."qs-6.5.2"
@@ -44029,7 +46372,7 @@ in
       sources."base64-js-0.0.8"
       sources."bcrypt-pbkdf-1.0.2"
       sources."biased-opener-0.2.8"
-      sources."big-integer-1.6.34"
+      sources."big-integer-1.6.35"
       sources."block-stream-0.0.9"
       sources."body-parser-1.18.2"
       sources."boom-2.10.1"
@@ -44389,10 +46732,10 @@ in
   nodemon = nodeEnv.buildNodePackage {
     name = "nodemon";
     packageName = "nodemon";
-    version = "1.18.3";
+    version = "1.18.4";
     src = fetchurl {
-      url = "https://registry.npmjs.org/nodemon/-/nodemon-1.18.3.tgz";
-      sha512 = "XdVfAjGlDKU2nqoGgycxTndkJ5fdwvWJ/tlMGk2vHxMZBrSPVh86OM6z7viAv8BBJWjMgeuYQBofzr6LUoi+7g==";
+      url = "https://registry.npmjs.org/nodemon/-/nodemon-1.18.4.tgz";
+      sha512 = "hyK6vl65IPnky/ee+D3IWvVGgJa/m3No2/Xc/3wanS6Ce1MWjCzH6NnhPJ/vZM+6JFym16jtHx51lmCMB9HDtg==";
     };
     dependencies = [
       sources."abbrev-1.1.1"
@@ -44424,7 +46767,7 @@ in
       })
       sources."cache-base-1.0.1"
       sources."camelcase-4.1.0"
-      sources."capture-stack-trace-1.0.0"
+      sources."capture-stack-trace-1.0.1"
       sources."chalk-2.4.1"
       sources."chokidar-2.0.4"
       sources."ci-info-1.4.0"
@@ -45279,10 +47622,10 @@ in
   npm = nodeEnv.buildNodePackage {
     name = "npm";
     packageName = "npm";
-    version = "6.4.0";
+    version = "6.4.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/npm/-/npm-6.4.0.tgz";
-      sha512 = "k0VteQaxRuI1mREBxCtLUksesD2ZmX5gxjXNEjTmTrxQ3SHW22InkCKyX4NzoeGAYtgmDg5MuE7rcXYod7xgug==";
+      url = "https://registry.npmjs.org/npm/-/npm-6.4.1.tgz";
+      sha512 = "mXJL1NTVU136PtuopXCUQaNWuHlXCTp4McwlSW8S9/Aj8OEPAlSBgo8og7kJ01MjCDrkmqFQTvN5tTEhBMhXQg==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -45470,7 +47813,7 @@ in
       sources."ansi-regex-2.1.1"
       sources."ansi-styles-2.2.1"
       sources."argparse-1.0.10"
-      sources."bluebird-3.5.1"
+      sources."bluebird-3.5.2"
       (sources."boxen-1.3.0" // {
         dependencies = [
           sources."ansi-styles-3.2.1"
@@ -45479,7 +47822,7 @@ in
         ];
       })
       sources."camelcase-4.1.0"
-      sources."capture-stack-trace-1.0.0"
+      sources."capture-stack-trace-1.0.1"
       sources."chalk-1.1.3"
       sources."ci-info-1.4.0"
       sources."cint-8.2.1"
@@ -45822,7 +48165,7 @@ in
           sources."string_decoder-1.1.1"
         ];
       })
-      sources."bluebird-3.5.1"
+      sources."bluebird-3.5.2"
       (sources."body-parser-1.18.3" // {
         dependencies = [
           sources."content-type-1.0.4"
@@ -46154,7 +48497,7 @@ in
       sources."balanced-match-1.0.0"
       sources."base64-js-0.0.8"
       sources."bencode-2.0.0"
-      sources."big-integer-1.6.34"
+      sources."big-integer-1.6.35"
       sources."bitfield-0.1.0"
       (sources."bittorrent-dht-6.4.2" // {
         dependencies = [
@@ -46272,7 +48615,7 @@ in
       sources."lodash-3.10.1"
       sources."loud-rejection-1.6.0"
       sources."lru-2.0.1"
-      sources."magnet-uri-5.2.3"
+      sources."magnet-uri-5.2.4"
       sources."map-obj-1.0.1"
       sources."meow-3.7.0"
       sources."mime-2.3.1"
@@ -46354,7 +48697,7 @@ in
       sources."run-parallel-1.1.9"
       sources."run-series-1.1.8"
       sources."rusha-0.8.13"
-      sources."rxjs-5.5.11"
+      sources."rxjs-5.5.12"
       sources."safe-buffer-5.1.2"
       sources."safer-buffer-2.1.2"
       sources."semver-5.5.1"
@@ -46476,7 +48819,7 @@ in
       })
       sources."boom-0.3.8"
       sources."brace-expansion-1.1.11"
-      sources."buffer-5.2.0"
+      sources."buffer-5.2.1"
       sources."buffer-alloc-1.2.0"
       sources."buffer-alloc-unsafe-1.1.0"
       sources."buffer-crc32-0.2.13"
@@ -46883,7 +49226,7 @@ in
       sources."form-data-1.0.1"
       sources."fs-extra-0.26.7"
       sources."fs.realpath-1.0.0"
-      sources."generate-function-2.2.0"
+      sources."generate-function-2.3.1"
       sources."generate-object-property-1.2.0"
       (sources."getpass-0.1.7" // {
         dependencies = [
@@ -46979,10 +49322,10 @@ in
   pnpm = nodeEnv.buildNodePackage {
     name = "pnpm";
     packageName = "pnpm";
-    version = "2.13.6";
+    version = "2.15.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/pnpm/-/pnpm-2.13.6.tgz";
-      sha512 = "X8zmtUzmEIa/QMg0t0eeq6hSd7kmL5Zvneqpj3Tcbyn2g/FEFTPb9kaghR+DW1WdViOE51eo4ECLK7uY9oogkA==";
+      url = "https://registry.npmjs.org/pnpm/-/pnpm-2.15.0.tgz";
+      sha512 = "bMS1ShnuwRtg1SRrauo9gYFXn4CxO+tyYNRe40DsY4cDpycbLs3Lr54ulQrFZtE4Yn6m3keu3sft7f36eg0gbw==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -48047,6 +50390,583 @@ in
     production = true;
     bypassCache = true;
   };
+  scuttlebot = nodeEnv.buildNodePackage {
+    name = "scuttlebot";
+    packageName = "scuttlebot";
+    version = "11.4.2";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/scuttlebot/-/scuttlebot-11.4.2.tgz";
+      sha512 = "JbOKdMFCyoALwpiK5FM8qikpFvEqCdRycbFGiOdhhQT0VrTWCO1PXDFuDAHnCBTDYvjjO88M9njq2BOXVypvAg==";
+    };
+    dependencies = [
+      sources."abstract-leveldown-4.0.3"
+      (sources."aligned-block-file-1.1.3" // {
+        dependencies = [
+          sources."obv-0.0.0"
+        ];
+      })
+      sources."ansi-escapes-1.4.0"
+      sources."ansi-regex-2.1.1"
+      sources."ansi-styles-2.2.1"
+      sources."anymatch-1.3.2"
+      sources."append-batch-0.0.1"
+      sources."aproba-1.2.0"
+      sources."are-we-there-yet-1.1.5"
+      sources."arr-diff-2.0.0"
+      sources."arr-flatten-1.1.0"
+      sources."array-union-1.0.2"
+      sources."array-uniq-1.0.3"
+      sources."array-unique-0.2.1"
+      sources."arrify-1.0.1"
+      sources."async-each-1.0.1"
+      sources."async-single-1.0.5"
+      sources."async-write-2.1.0"
+      sources."atomic-file-0.0.1"
+      sources."attach-ware-1.1.1"
+      sources."bail-1.0.3"
+      sources."balanced-match-1.0.0"
+      sources."base64-url-2.2.0"
+      sources."bash-color-0.0.4"
+      sources."binary-extensions-1.11.0"
+      sources."binary-search-1.3.4"
+      sources."bindings-1.3.0"
+      sources."bl-1.2.2"
+      sources."blake2s-1.0.1"
+      sources."brace-expansion-1.1.11"
+      sources."braces-1.8.5"
+      sources."broadcast-stream-0.2.2"
+      sources."buffer-alloc-1.2.0"
+      sources."buffer-alloc-unsafe-1.1.0"
+      sources."buffer-fill-1.0.0"
+      sources."buffer-from-1.1.1"
+      sources."bytewise-1.1.0"
+      sources."bytewise-core-1.2.3"
+      sources."camelcase-2.1.1"
+      sources."ccount-1.0.3"
+      sources."chalk-1.1.3"
+      sources."character-entities-1.2.2"
+      sources."character-entities-html4-1.1.2"
+      sources."character-entities-legacy-1.1.2"
+      sources."character-reference-invalid-1.1.2"
+      sources."charwise-3.0.1"
+      sources."chloride-2.2.10"
+      sources."chloride-test-1.2.2"
+      sources."chokidar-1.7.0"
+      sources."chownr-1.0.1"
+      sources."cli-cursor-1.0.2"
+      sources."co-3.1.0"
+      sources."code-point-at-1.1.0"
+      sources."collapse-white-space-1.0.4"
+      sources."commander-2.17.1"
+      sources."concat-map-0.0.1"
+      sources."concat-stream-1.6.2"
+      sources."console-control-strings-1.1.0"
+      sources."cont-1.0.3"
+      sources."continuable-1.2.0"
+      (sources."continuable-hash-0.1.4" // {
+        dependencies = [
+          sources."continuable-1.1.8"
+        ];
+      })
+      (sources."continuable-list-0.1.6" // {
+        dependencies = [
+          sources."continuable-1.1.8"
+        ];
+      })
+      sources."continuable-para-1.2.0"
+      sources."continuable-series-1.2.0"
+      sources."core-util-is-1.0.2"
+      sources."cross-spawn-5.1.0"
+      sources."debug-2.6.9"
+      sources."decompress-response-3.3.0"
+      sources."deep-equal-1.0.1"
+      sources."deep-extend-0.6.0"
+      sources."deferred-leveldown-3.0.0"
+      sources."define-properties-1.1.3"
+      sources."defined-1.0.0"
+      sources."delegates-1.0.0"
+      sources."detab-1.0.2"
+      sources."detect-libc-1.0.3"
+      sources."ed2curve-0.1.4"
+      sources."elegant-spinner-1.0.1"
+      sources."emoji-named-characters-1.0.2"
+      sources."emoji-server-1.0.0"
+      (sources."encoding-down-4.0.1" // {
+        dependencies = [
+          sources."level-codec-8.0.0"
+        ];
+      })
+      sources."end-of-stream-1.4.1"
+      sources."epidemic-broadcast-trees-6.3.4"
+      sources."errno-0.1.7"
+      sources."es-abstract-1.12.0"
+      sources."es-to-primitive-1.1.1"
+      sources."escape-string-regexp-1.0.5"
+      sources."exit-hook-1.1.1"
+      sources."expand-brackets-0.1.5"
+      sources."expand-range-1.8.2"
+      sources."expand-template-1.1.1"
+      sources."explain-error-1.0.4"
+      sources."extend-3.0.2"
+      sources."extend.js-0.0.2"
+      sources."extglob-0.3.2"
+      sources."fast-future-1.0.2"
+      sources."filename-regex-2.0.1"
+      sources."fill-range-2.2.4"
+      sources."flumecodec-0.0.1"
+      sources."flumedb-0.4.9"
+      (sources."flumelog-offset-3.3.1" // {
+        dependencies = [
+          sources."looper-4.0.0"
+        ];
+      })
+      (sources."flumeview-hashtable-1.0.4" // {
+        dependencies = [
+          sources."atomic-file-1.1.5"
+        ];
+      })
+      (sources."flumeview-level-3.0.5" // {
+        dependencies = [
+          sources."obv-0.0.0"
+        ];
+      })
+      (sources."flumeview-query-6.3.0" // {
+        dependencies = [
+          sources."map-filter-reduce-3.1.0"
+        ];
+      })
+      (sources."flumeview-reduce-1.3.13" // {
+        dependencies = [
+          sources."atomic-file-1.1.5"
+          sources."flumecodec-0.0.0"
+          sources."obv-0.0.0"
+        ];
+      })
+      sources."for-each-0.3.3"
+      sources."for-in-1.0.2"
+      sources."for-own-0.1.5"
+      sources."fs-constants-1.0.0"
+      sources."fs.realpath-1.0.0"
+      sources."fsevents-1.2.4"
+      sources."function-bind-1.1.1"
+      sources."gauge-2.7.4"
+      sources."github-from-package-0.0.0"
+      sources."glob-6.0.4"
+      sources."glob-base-0.3.0"
+      sources."glob-parent-2.0.0"
+      sources."globby-4.1.0"
+      sources."graceful-fs-4.1.11"
+      sources."graphreduce-3.0.4"
+      sources."has-1.0.3"
+      sources."has-ansi-2.0.0"
+      sources."has-network-0.0.1"
+      sources."has-unicode-2.0.1"
+      sources."hashlru-2.2.1"
+      sources."he-0.5.0"
+      sources."hoox-0.0.1"
+      sources."increment-buffer-1.0.1"
+      sources."inflight-1.0.6"
+      sources."inherits-2.0.3"
+      sources."ini-1.3.5"
+      sources."int53-0.2.4"
+      sources."ip-0.3.3"
+      sources."irregular-plurals-1.4.0"
+      sources."is-alphabetical-1.0.2"
+      sources."is-alphanumerical-1.0.2"
+      sources."is-binary-path-1.0.1"
+      sources."is-buffer-1.1.6"
+      sources."is-callable-1.1.4"
+      sources."is-date-object-1.0.1"
+      sources."is-decimal-1.0.2"
+      sources."is-dotfile-1.0.3"
+      sources."is-electron-2.1.0"
+      sources."is-equal-shallow-0.1.3"
+      sources."is-extendable-0.1.1"
+      sources."is-extglob-1.0.0"
+      sources."is-fullwidth-code-point-1.0.0"
+      sources."is-glob-2.0.1"
+      sources."is-hexadecimal-1.0.2"
+      sources."is-number-2.1.0"
+      sources."is-posix-bracket-0.1.1"
+      sources."is-primitive-2.0.0"
+      sources."is-regex-1.0.4"
+      sources."is-symbol-1.0.1"
+      sources."is-valid-domain-0.0.5"
+      sources."isarray-1.0.0"
+      sources."isexe-2.0.0"
+      sources."isobject-2.1.0"
+      sources."json-buffer-2.0.11"
+      sources."kind-of-3.2.2"
+      sources."level-3.0.2"
+      sources."level-codec-6.2.0"
+      sources."level-errors-1.1.2"
+      sources."level-iterator-stream-2.0.3"
+      sources."level-packager-2.1.1"
+      sources."level-post-1.0.7"
+      (sources."level-sublevel-6.6.5" // {
+        dependencies = [
+          (sources."abstract-leveldown-0.12.4" // {
+            dependencies = [
+              sources."xtend-3.0.0"
+            ];
+          })
+          sources."bl-0.8.2"
+          sources."deferred-leveldown-0.2.0"
+          sources."isarray-0.0.1"
+          (sources."levelup-0.19.1" // {
+            dependencies = [
+              sources."xtend-3.0.0"
+            ];
+          })
+          sources."ltgt-2.1.3"
+          sources."prr-0.0.0"
+          sources."readable-stream-1.0.34"
+          sources."semver-5.1.1"
+          sources."string_decoder-0.10.31"
+        ];
+      })
+      (sources."leveldown-3.0.2" // {
+        dependencies = [
+          sources."nan-2.10.0"
+        ];
+      })
+      sources."levelup-2.0.2"
+      sources."libsodium-0.7.3"
+      sources."libsodium-wrappers-0.7.3"
+      sources."log-symbols-1.0.2"
+      sources."log-update-1.0.2"
+      sources."longest-streak-1.0.0"
+      sources."looper-3.0.0"
+      sources."lossy-store-1.2.3"
+      sources."lru-cache-4.1.3"
+      sources."ltgt-2.2.1"
+      sources."map-filter-reduce-2.2.1"
+      sources."map-merge-1.1.0"
+      sources."markdown-table-0.4.0"
+      sources."math-random-1.0.1"
+      sources."mdmanifest-1.0.8"
+      sources."micromatch-2.3.11"
+      sources."mimic-response-1.0.1"
+      sources."minimatch-3.0.4"
+      sources."minimist-1.2.0"
+      (sources."mkdirp-0.5.1" // {
+        dependencies = [
+          sources."minimist-0.0.8"
+        ];
+      })
+      sources."monotonic-timestamp-0.0.9"
+      sources."ms-2.0.0"
+      (sources."multiblob-1.13.0" // {
+        dependencies = [
+          sources."deep-extend-0.2.11"
+          sources."minimist-0.0.10"
+          sources."pull-file-0.5.0"
+          sources."rc-0.5.5"
+          sources."rimraf-2.2.8"
+          sources."strip-json-comments-0.1.3"
+        ];
+      })
+      sources."multiblob-http-0.4.2"
+      sources."multicb-1.2.2"
+      sources."multiserver-1.13.3"
+      sources."muxrpc-6.4.1"
+      (sources."muxrpc-validation-2.0.1" // {
+        dependencies = [
+          sources."pull-stream-2.28.4"
+        ];
+      })
+      (sources."muxrpcli-1.1.0" // {
+        dependencies = [
+          sources."pull-stream-2.28.4"
+        ];
+      })
+      (sources."mv-2.1.1" // {
+        dependencies = [
+          sources."rimraf-2.4.5"
+        ];
+      })
+      sources."nan-2.11.0"
+      sources."ncp-2.0.0"
+      sources."node-abi-2.4.3"
+      sources."node-gyp-build-3.4.0"
+      (sources."non-private-ip-1.4.4" // {
+        dependencies = [
+          sources."ip-1.1.5"
+        ];
+      })
+      sources."noop-logger-0.1.1"
+      sources."normalize-path-2.1.1"
+      sources."normalize-uri-1.1.1"
+      sources."npm-prefix-1.2.0"
+      sources."npmlog-4.1.2"
+      sources."number-is-nan-1.0.1"
+      sources."object-assign-4.1.1"
+      sources."object-inspect-1.6.0"
+      sources."object-keys-1.0.12"
+      sources."object.omit-2.0.1"
+      sources."observ-0.2.0"
+      sources."observ-debounce-1.1.1"
+      sources."obv-0.0.1"
+      sources."on-change-network-0.0.2"
+      sources."on-wakeup-1.0.1"
+      sources."once-1.4.0"
+      sources."onetime-1.1.0"
+      sources."opencollective-postinstall-2.0.0"
+      sources."options-0.0.6"
+      sources."os-homedir-1.0.2"
+      sources."os-tmpdir-1.0.2"
+      sources."osenv-0.1.5"
+      sources."packet-stream-2.0.4"
+      sources."packet-stream-codec-1.1.2"
+      sources."parse-entities-1.1.2"
+      sources."parse-glob-3.0.4"
+      sources."path-is-absolute-1.0.1"
+      sources."path-parse-1.0.6"
+      sources."pify-2.3.0"
+      sources."pinkie-2.0.4"
+      sources."pinkie-promise-2.0.1"
+      sources."plur-2.1.2"
+      sources."prebuild-install-4.0.0"
+      sources."preserve-0.2.0"
+      sources."private-box-0.2.1"
+      sources."process-nextick-args-2.0.0"
+      sources."prr-1.0.1"
+      sources."pseudomap-1.0.2"
+      sources."pull-abortable-4.1.1"
+      sources."pull-box-stream-1.0.13"
+      sources."pull-cat-1.1.11"
+      sources."pull-cont-0.0.0"
+      sources."pull-core-1.1.0"
+      (sources."pull-cursor-3.0.0" // {
+        dependencies = [
+          sources."looper-4.0.0"
+        ];
+      })
+      sources."pull-defer-0.2.3"
+      sources."pull-file-1.1.0"
+      sources."pull-flatmap-0.0.1"
+      (sources."pull-fs-1.1.6" // {
+        dependencies = [
+          sources."pull-file-0.5.0"
+        ];
+      })
+      sources."pull-glob-1.0.7"
+      (sources."pull-goodbye-0.0.2" // {
+        dependencies = [
+          sources."pull-stream-3.5.0"
+        ];
+      })
+      sources."pull-handshake-1.1.4"
+      sources."pull-hash-1.0.0"
+      (sources."pull-inactivity-2.1.2" // {
+        dependencies = [
+          sources."pull-abortable-4.0.0"
+        ];
+      })
+      sources."pull-level-2.0.4"
+      sources."pull-live-1.0.1"
+      (sources."pull-looper-1.0.0" // {
+        dependencies = [
+          sources."looper-4.0.0"
+        ];
+      })
+      sources."pull-many-1.0.8"
+      sources."pull-next-1.0.1"
+      sources."pull-notify-0.1.1"
+      sources."pull-pair-1.1.0"
+      (sources."pull-paramap-1.2.2" // {
+        dependencies = [
+          sources."looper-4.0.0"
+        ];
+      })
+      sources."pull-ping-2.0.2"
+      sources."pull-pushable-2.2.0"
+      sources."pull-rate-1.0.2"
+      sources."pull-reader-1.3.1"
+      sources."pull-sink-through-0.0.0"
+      sources."pull-stream-3.6.9"
+      sources."pull-stream-to-stream-1.3.4"
+      sources."pull-stringify-1.2.2"
+      sources."pull-through-1.0.18"
+      sources."pull-traverse-1.0.3"
+      sources."pull-utf8-decoder-1.0.2"
+      (sources."pull-window-2.1.4" // {
+        dependencies = [
+          sources."looper-2.0.0"
+        ];
+      })
+      (sources."pull-write-1.1.4" // {
+        dependencies = [
+          sources."looper-4.0.0"
+        ];
+      })
+      sources."pull-write-file-0.2.4"
+      sources."pull-ws-3.3.1"
+      sources."pump-2.0.1"
+      sources."push-stream-10.0.3"
+      sources."push-stream-to-pull-stream-1.0.3"
+      (sources."randomatic-3.1.0" // {
+        dependencies = [
+          sources."is-number-4.0.0"
+          sources."kind-of-6.0.2"
+        ];
+      })
+      sources."rc-1.2.8"
+      sources."readable-stream-2.3.6"
+      sources."readdirp-2.1.0"
+      sources."regex-cache-0.4.4"
+      sources."relative-url-1.0.2"
+      sources."remark-3.2.3"
+      sources."remark-html-2.0.2"
+      sources."remove-trailing-separator-1.1.0"
+      sources."repeat-element-1.1.3"
+      sources."repeat-string-1.6.1"
+      sources."resolve-1.7.1"
+      sources."restore-cursor-1.0.1"
+      sources."resumer-0.0.0"
+      (sources."rimraf-2.6.2" // {
+        dependencies = [
+          sources."glob-7.1.3"
+        ];
+      })
+      sources."safe-buffer-5.1.2"
+      sources."secret-handshake-1.1.13"
+      (sources."secret-stack-4.1.0" // {
+        dependencies = [
+          sources."ip-1.1.5"
+        ];
+      })
+      (sources."secure-scuttlebutt-18.2.0" // {
+        dependencies = [
+          sources."deep-equal-0.2.2"
+        ];
+      })
+      sources."semver-5.5.1"
+      sources."separator-escape-0.0.0"
+      sources."set-blocking-2.0.0"
+      sources."set-immediate-shim-1.0.1"
+      sources."sha.js-2.4.5"
+      sources."shebang-command-1.2.0"
+      sources."shebang-regex-1.0.0"
+      sources."shellsubstitute-1.2.0"
+      sources."signal-exit-3.0.2"
+      sources."simple-concat-1.0.0"
+      sources."simple-get-2.8.1"
+      sources."smart-buffer-4.0.1"
+      (sources."socks-2.2.1" // {
+        dependencies = [
+          sources."ip-1.1.5"
+        ];
+      })
+      sources."sodium-browserify-1.2.4"
+      (sources."sodium-browserify-tweetnacl-0.2.3" // {
+        dependencies = [
+          sources."sha.js-2.4.11"
+        ];
+      })
+      sources."sodium-chloride-1.1.0"
+      sources."sodium-native-2.2.1"
+      sources."split-buffer-1.0.0"
+      sources."ssb-blobs-1.1.5"
+      sources."ssb-client-4.6.0"
+      (sources."ssb-config-2.2.0" // {
+        dependencies = [
+          sources."deep-extend-0.4.2"
+        ];
+      })
+      sources."ssb-ebt-5.2.2"
+      (sources."ssb-friends-2.4.0" // {
+        dependencies = [
+          sources."pull-cont-0.1.1"
+        ];
+      })
+      sources."ssb-keys-7.0.16"
+      sources."ssb-links-3.0.3"
+      sources."ssb-msgs-5.2.0"
+      (sources."ssb-query-2.2.1" // {
+        dependencies = [
+          sources."flumeview-query-git://github.com/mmckegg/flumeview-query#map"
+          sources."map-filter-reduce-3.1.0"
+        ];
+      })
+      (sources."ssb-ref-2.11.2" // {
+        dependencies = [
+          sources."ip-1.1.5"
+        ];
+      })
+      sources."ssb-validate-3.0.10"
+      sources."ssb-ws-2.1.1"
+      sources."stack-0.1.0"
+      sources."statistics-3.3.0"
+      sources."stream-to-pull-stream-1.7.2"
+      sources."string-width-1.0.2"
+      sources."string.prototype.trim-1.1.2"
+      sources."string_decoder-1.1.1"
+      sources."stringify-entities-1.3.2"
+      sources."strip-ansi-3.0.1"
+      sources."strip-json-comments-2.0.1"
+      sources."supports-color-2.0.0"
+      (sources."tape-4.9.1" // {
+        dependencies = [
+          sources."glob-7.1.3"
+        ];
+      })
+      (sources."tar-fs-1.16.3" // {
+        dependencies = [
+          sources."pump-1.0.3"
+        ];
+      })
+      sources."tar-stream-1.6.1"
+      sources."text-table-0.2.0"
+      sources."through-2.3.8"
+      sources."to-buffer-1.1.1"
+      sources."to-vfile-1.0.0"
+      sources."trim-0.0.1"
+      sources."trim-lines-1.1.1"
+      sources."trim-trailing-lines-1.1.1"
+      sources."tunnel-agent-0.6.0"
+      sources."tweetnacl-0.14.5"
+      sources."tweetnacl-auth-0.3.1"
+      sources."typedarray-0.0.6"
+      sources."typewise-1.0.3"
+      sources."typewise-core-1.2.0"
+      sources."typewiselite-1.0.0"
+      sources."uint48be-1.0.2"
+      sources."ultron-1.0.2"
+      sources."unherit-1.1.1"
+      sources."unified-2.1.4"
+      sources."unist-util-is-2.1.2"
+      sources."unist-util-visit-1.4.0"
+      sources."unist-util-visit-parents-2.0.1"
+      sources."untildify-2.1.0"
+      sources."user-home-2.0.0"
+      sources."util-deprecate-1.0.2"
+      sources."vfile-1.4.0"
+      sources."vfile-find-down-1.0.0"
+      sources."vfile-find-up-1.0.0"
+      sources."vfile-reporter-1.5.0"
+      sources."vfile-sort-1.0.0"
+      sources."ware-1.3.0"
+      sources."which-1.3.1"
+      sources."which-pm-runs-1.0.0"
+      sources."wide-align-1.1.3"
+      sources."word-wrap-1.2.3"
+      sources."wrap-fn-0.1.5"
+      sources."wrappy-1.0.2"
+      sources."ws-1.1.5"
+      sources."xtend-4.0.1"
+      sources."yallist-2.1.2"
+      sources."zerr-1.0.4"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "network protocol layer for secure-scuttlebutt";
+      homepage = https://github.com/ssbc/scuttlebot;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = true;
+  };
   semver = nodeEnv.buildNodePackage {
     name = "semver";
     packageName = "semver";
@@ -49148,7 +52068,7 @@ in
       sources."bytes-1.0.0"
       sources."cache-base-1.0.1"
       sources."camelcase-4.1.0"
-      sources."capture-stack-trace-1.0.0"
+      sources."capture-stack-trace-1.0.1"
       sources."center-align-0.1.3"
       sources."chalk-1.1.3"
       sources."charenc-0.0.2"
@@ -49444,7 +52364,7 @@ in
       sources."nan-2.11.0"
       sources."nanomatch-1.2.13"
       sources."native-promise-only-0.8.1"
-      (sources."nodemon-1.18.3" // {
+      (sources."nodemon-1.18.4" // {
         dependencies = [
           sources."debug-3.1.0"
           sources."supports-color-5.5.0"
@@ -49482,7 +52402,7 @@ in
       sources."path-is-absolute-1.0.1"
       sources."path-is-inside-1.0.2"
       sources."path-key-2.0.1"
-      (sources."path-loader-1.0.7" // {
+      (sources."path-loader-1.0.8" // {
         dependencies = [
           sources."debug-3.1.0"
           sources."qs-6.5.2"
@@ -49701,7 +52621,7 @@ in
       sources."util-deprecate-1.0.2"
       sources."utils-merge-1.0.1"
       sources."valid-url-1.0.9"
-      sources."validator-10.7.0"
+      sources."validator-10.7.1"
       sources."which-1.3.1"
       sources."widest-line-2.0.0"
       sources."window-size-0.1.0"
@@ -49776,10 +52696,10 @@ in
   three = nodeEnv.buildNodePackage {
     name = "three";
     packageName = "three";
-    version = "0.95.0";
+    version = "0.96.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/three/-/three-0.95.0.tgz";
-      sha512 = "vy6jMYs7CDwn47CejYHNi+++OdQue7xGIBhbLfekQ/G6MDxKRm0QB0/xWScz46/JvQAvF6pJAS5Q907l0i5iQA==";
+      url = "https://registry.npmjs.org/three/-/three-0.96.0.tgz";
+      sha512 = "tS+A5kelQgBblElc/E1G5zR3m6wNjbqmrf6OAjijuNJM7yoYQjOktPoa+Lglx73OTiTOJ3+Ff+pgWdOFt7cOhQ==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -49897,7 +52817,7 @@ in
       sources."tough-cookie-2.3.4"
       sources."tunnel-agent-0.6.0"
       sources."tweetnacl-0.14.5"
-      sources."uglify-js-3.4.8"
+      sources."uglify-js-3.4.9"
       sources."universalify-0.1.2"
       sources."uuid-3.3.2"
       sources."verror-1.10.0"
@@ -50105,10 +53025,10 @@ in
   typescript = nodeEnv.buildNodePackage {
     name = "typescript";
     packageName = "typescript";
-    version = "3.0.1";
+    version = "3.0.3";
     src = fetchurl {
-      url = "https://registry.npmjs.org/typescript/-/typescript-3.0.1.tgz";
-      sha512 = "zQIMOmC+372pC/CCVLqnQ0zSBiY7HHodU7mpQdjiZddek4GMj31I3dUJ7gAs9o65X7mnRma6OokOkc6f9jjfBg==";
+      url = "https://registry.npmjs.org/typescript/-/typescript-3.0.3.tgz";
+      sha512 = "kk80vLW9iGtjMnIv11qyxLqZm20UklzuR2tL0QAnDIygIUIemcZMxlMWudl9OOt76H3ntVzcTiddQ1/pAAJMYg==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -50139,7 +53059,7 @@ in
       sources."array-uniq-1.0.3"
       sources."asynckit-0.4.0"
       sources."balanced-match-1.0.0"
-      sources."bluebird-3.5.1"
+      sources."bluebird-3.5.2"
       (sources."boxen-1.3.0" // {
         dependencies = [
           sources."ansi-styles-3.2.1"
@@ -50150,7 +53070,7 @@ in
       sources."brace-expansion-1.1.11"
       sources."buffer-from-1.1.1"
       sources."camelcase-4.1.0"
-      sources."capture-stack-trace-1.0.0"
+      sources."capture-stack-trace-1.0.1"
       sources."chalk-1.1.3"
       sources."ci-info-1.4.0"
       sources."cli-boxes-1.0.0"
@@ -50229,7 +53149,7 @@ in
       sources."lowercase-keys-1.0.1"
       sources."lru-cache-4.1.3"
       sources."make-dir-1.3.0"
-      sources."make-error-1.3.4"
+      sources."make-error-1.3.5"
       sources."make-error-cause-1.2.2"
       sources."mime-db-1.36.0"
       sources."mime-types-2.1.20"
@@ -50339,10 +53259,10 @@ in
   uglify-js = nodeEnv.buildNodePackage {
     name = "uglify-js";
     packageName = "uglify-js";
-    version = "3.4.8";
+    version = "3.4.9";
     src = fetchurl {
-      url = "https://registry.npmjs.org/uglify-js/-/uglify-js-3.4.8.tgz";
-      sha512 = "WatYTD84gP/867bELqI2F/2xC9PQBETn/L+7RGq9MQOA/7yFBNvY1UwXqvtILeE6n0ITwBXxp34M0/o70dzj6A==";
+      url = "https://registry.npmjs.org/uglify-js/-/uglify-js-3.4.9.tgz";
+      sha512 = "8CJsbKOtEbnJsTyv6LE6m6ZKniqMiFWmm9sRbopbkGs3gMPPfd3Fh8iIA4Ykv5MgaTbqHr4BaoGLJLZNhsrW1Q==";
     };
     dependencies = [
       sources."commander-2.17.1"
@@ -50395,7 +53315,7 @@ in
       sources."bcrypt-pbkdf-1.0.2"
       sources."better-assert-1.0.2"
       sources."blob-0.0.4"
-      sources."bluebird-3.5.1"
+      sources."bluebird-3.5.2"
       sources."blueimp-md5-2.10.0"
       sources."body-parser-1.18.3"
       sources."brace-expansion-1.1.11"
@@ -50463,7 +53383,7 @@ in
         ];
       })
       sources."ecc-jsbn-0.1.2"
-      sources."editions-2.0.1"
+      sources."editions-2.0.2"
       sources."ee-first-1.1.1"
       sources."encodeurl-1.0.2"
       (sources."engine.io-3.2.0" // {
@@ -50532,7 +53452,7 @@ in
       sources."gauge-2.7.4"
       sources."get-caller-file-1.0.3"
       sources."get-stream-3.0.0"
-      sources."getmac-1.4.5"
+      sources."getmac-1.4.6"
       sources."getpass-0.1.7"
       sources."glob-7.1.3"
       sources."graceful-fs-4.1.11"
@@ -50845,7 +53765,7 @@ in
       sources."base64-js-0.0.8"
       sources."bcrypt-pbkdf-1.0.2"
       sources."bl-1.2.2"
-      sources."bluebird-3.5.1"
+      sources."bluebird-3.5.2"
       sources."brace-expansion-1.1.11"
       sources."buffer-3.6.0"
       sources."buffer-alloc-1.2.0"
@@ -50854,12 +53774,12 @@ in
       sources."buffer-fill-1.0.0"
       sources."builtins-1.0.3"
       sources."camelcase-1.2.1"
-      sources."capture-stack-trace-1.0.0"
+      sources."capture-stack-trace-1.0.1"
       sources."caseless-0.12.0"
       sources."caw-2.0.1"
       sources."center-align-0.1.3"
       sources."chalk-2.4.1"
-      sources."chardet-0.5.0"
+      sources."chardet-0.7.0"
       sources."cli-cursor-2.1.0"
       sources."cli-spinners-1.3.1"
       sources."cli-width-2.2.0"
@@ -50910,7 +53830,7 @@ in
       sources."esprima-4.0.1"
       sources."extend-3.0.2"
       sources."extend-shallow-2.0.1"
-      sources."external-editor-3.0.1"
+      sources."external-editor-3.0.3"
       sources."extsprintf-1.3.0"
       sources."fast-deep-equal-1.1.0"
       sources."fast-json-stable-stringify-2.0.0"
@@ -51041,7 +53961,7 @@ in
       sources."right-align-0.1.3"
       sources."rimraf-2.6.2"
       sources."run-async-2.3.0"
-      sources."rxjs-6.2.2"
+      sources."rxjs-6.3.1"
       sources."safe-buffer-5.1.2"
       sources."safer-buffer-2.1.2"
       (sources."seek-bzip-1.0.5" // {
@@ -51149,7 +54069,7 @@ in
       sources."@types/graphql-0.12.6"
       sources."@types/long-4.0.0"
       sources."@types/mime-2.0.0"
-      sources."@types/node-10.9.2"
+      sources."@types/node-10.9.4"
       sources."@types/range-parser-1.2.2"
       sources."@types/serve-static-1.13.2"
       sources."@types/ws-5.1.2"
@@ -51170,11 +54090,11 @@ in
       sources."ansi-styles-3.2.1"
       sources."anymatch-2.0.0"
       sources."apollo-cache-1.1.16"
-      sources."apollo-cache-control-0.2.2"
+      sources."apollo-cache-control-0.2.3"
       sources."apollo-cache-inmemory-1.2.9"
       sources."apollo-client-2.4.1"
-      sources."apollo-datasource-0.1.2"
-      sources."apollo-engine-reporting-0.0.2"
+      sources."apollo-datasource-0.1.3"
+      sources."apollo-engine-reporting-0.0.3"
       sources."apollo-engine-reporting-protobuf-0.0.1"
       sources."apollo-link-1.2.2"
       sources."apollo-link-context-1.0.8"
@@ -51185,11 +54105,11 @@ in
       sources."apollo-link-state-0.4.1"
       sources."apollo-link-ws-1.0.8"
       sources."apollo-server-caching-0.1.2"
-      sources."apollo-server-core-2.0.4"
-      sources."apollo-server-env-2.0.2"
+      sources."apollo-server-core-2.0.5"
+      sources."apollo-server-env-2.0.3"
       sources."apollo-server-errors-2.0.2"
-      sources."apollo-server-express-2.0.4"
-      sources."apollo-tracing-0.2.2"
+      sources."apollo-server-express-2.0.5"
+      sources."apollo-tracing-0.2.3"
       sources."apollo-upload-client-8.1.0"
       sources."apollo-utilities-1.0.20"
       sources."argparse-1.0.10"
@@ -51256,11 +54176,11 @@ in
       sources."cache-base-1.0.1"
       sources."call-me-maybe-1.0.1"
       sources."camelcase-4.1.0"
-      sources."capture-stack-trace-1.0.0"
+      sources."capture-stack-trace-1.0.1"
       sources."caseless-0.12.0"
       sources."caw-2.0.1"
       sources."chalk-2.4.1"
-      sources."chardet-0.5.0"
+      sources."chardet-0.7.0"
       sources."chokidar-2.0.4"
       sources."ci-info-1.4.0"
       (sources."class-utils-0.3.6" // {
@@ -51410,7 +54330,11 @@ in
       sources."express-history-api-fallback-2.2.1"
       sources."extend-3.0.2"
       sources."extend-shallow-2.0.1"
-      sources."external-editor-3.0.1"
+      (sources."external-editor-3.0.3" // {
+        dependencies = [
+          sources."iconv-lite-0.4.24"
+        ];
+      })
       (sources."extglob-2.0.4" // {
         dependencies = [
           sources."define-property-1.0.0"
@@ -51472,7 +54396,7 @@ in
       sources."graceful-readlink-1.0.1"
       sources."graphql-0.13.2"
       sources."graphql-anywhere-4.1.18"
-      sources."graphql-extensions-0.1.2"
+      sources."graphql-extensions-0.1.3"
       sources."graphql-subscriptions-0.5.8"
       sources."graphql-tag-2.9.2"
       sources."graphql-tools-3.1.1"
@@ -51608,7 +54532,7 @@ in
       sources."ms-2.0.0"
       sources."mute-stream-0.0.7"
       sources."nan-2.11.0"
-      sources."nanoid-1.2.1"
+      sources."nanoid-1.2.2"
       (sources."nanomatch-1.2.13" // {
         dependencies = [
           sources."extend-shallow-3.0.2"
@@ -51620,7 +54544,7 @@ in
       sources."node-fetch-2.2.0"
       sources."node-ipc-9.1.1"
       sources."node-notifier-5.2.1"
-      sources."nodemon-1.18.3"
+      sources."nodemon-1.18.4"
       sources."nopt-1.0.10"
       sources."normalize-path-2.1.1"
       sources."npm-conf-1.1.3"
@@ -51731,7 +54655,7 @@ in
       sources."retry-0.10.1"
       sources."rimraf-2.6.2"
       sources."run-async-2.3.0"
-      sources."rxjs-6.2.2"
+      sources."rxjs-6.3.1"
       sources."safe-buffer-5.1.1"
       sources."safe-regex-1.1.0"
       sources."safer-buffer-2.1.2"
@@ -52000,7 +54924,7 @@ in
       sources."form-data-1.0.1"
       sources."fs-extra-0.26.7"
       sources."fs.realpath-1.0.0"
-      sources."generate-function-2.2.0"
+      sources."generate-function-2.3.1"
       sources."generate-object-property-1.2.0"
       (sources."getpass-0.1.7" // {
         dependencies = [
@@ -52167,7 +55091,7 @@ in
       sources."base64-js-1.3.0"
       sources."big.js-3.2.0"
       sources."binary-extensions-1.11.0"
-      sources."bluebird-3.5.1"
+      sources."bluebird-3.5.2"
       sources."bn.js-4.11.8"
       sources."brace-expansion-1.1.11"
       (sources."braces-2.3.2" // {
@@ -52550,7 +55474,7 @@ in
       sources."util-deprecate-1.0.2"
       sources."vm-browserify-0.0.4"
       sources."watchpack-1.6.0"
-      (sources."webpack-sources-1.1.0" // {
+      (sources."webpack-sources-1.2.0" // {
         dependencies = [
           sources."source-map-0.6.1"
         ];
@@ -52587,7 +55511,7 @@ in
       sources."bencode-2.0.0"
       sources."binary-search-1.3.4"
       sources."bitfield-2.0.0"
-      (sources."bittorrent-dht-8.4.0" // {
+      (sources."bittorrent-dht-9.0.0" // {
         dependencies = [
           sources."debug-3.1.0"
         ];
@@ -52596,6 +55520,7 @@ in
       (sources."bittorrent-protocol-3.0.1" // {
         dependencies = [
           sources."debug-3.1.0"
+          sources."readable-stream-2.3.6"
         ];
       })
       (sources."bittorrent-tracker-9.10.1" // {
@@ -52605,7 +55530,11 @@ in
         ];
       })
       sources."blob-to-buffer-1.2.8"
-      sources."block-stream2-1.1.0"
+      (sources."block-stream2-1.1.0" // {
+        dependencies = [
+          sources."readable-stream-2.3.6"
+        ];
+      })
       sources."bn.js-4.11.8"
       sources."brace-expansion-1.1.11"
       sources."browserify-package-json-1.0.1"
@@ -52625,15 +55554,23 @@ in
           sources."mime-1.6.0"
         ];
       })
-      sources."chunk-store-stream-3.0.1"
+      (sources."chunk-store-stream-3.0.1" // {
+        dependencies = [
+          sources."readable-stream-2.3.6"
+        ];
+      })
       sources."clivas-0.2.0"
       sources."closest-to-2.0.0"
       sources."colour-0.7.1"
       sources."compact2string-1.4.0"
       sources."concat-map-0.0.1"
-      sources."concat-stream-1.6.2"
+      (sources."concat-stream-1.6.2" // {
+        dependencies = [
+          sources."readable-stream-2.3.6"
+        ];
+      })
       sources."core-util-is-1.0.2"
-      sources."create-torrent-3.32.1"
+      sources."create-torrent-3.33.0"
       sources."debug-2.6.9"
       sources."decompress-response-3.3.0"
       sources."defined-1.0.0"
@@ -52644,7 +55581,7 @@ in
       })
       sources."dns-packet-1.3.1"
       sources."dns-txt-2.0.2"
-      (sources."ecstatic-3.2.1" // {
+      (sources."ecstatic-3.3.0" // {
         dependencies = [
           sources."mime-1.6.0"
         ];
@@ -52652,7 +55589,11 @@ in
       sources."elementtree-0.1.7"
       sources."end-of-stream-1.4.1"
       sources."executable-4.1.1"
-      sources."filestream-4.1.3"
+      (sources."filestream-4.1.3" // {
+        dependencies = [
+          sources."readable-stream-2.3.6"
+        ];
+      })
       sources."flatten-1.0.2"
       (sources."fs-chunk-store-1.7.0" // {
         dependencies = [
@@ -52675,8 +55616,12 @@ in
       sources."is-typedarray-1.0.0"
       sources."isarray-1.0.0"
       sources."junk-2.1.0"
-      sources."k-bucket-4.0.1"
-      sources."k-rpc-5.0.0"
+      sources."k-bucket-5.0.0"
+      (sources."k-rpc-5.0.0" // {
+        dependencies = [
+          sources."k-bucket-4.0.1"
+        ];
+      })
       sources."k-rpc-socket-1.8.0"
       sources."last-one-wins-1.0.4"
       (sources."load-ip-set-2.1.0" // {
@@ -52686,10 +55631,14 @@ in
       })
       sources."long-2.4.0"
       sources."lru-3.1.0"
-      sources."magnet-uri-5.2.3"
+      sources."magnet-uri-5.2.4"
       sources."mdns-js-0.5.0"
       sources."mdns-js-packet-0.2.0"
-      sources."mediasource-2.2.2"
+      (sources."mediasource-2.2.2" // {
+        dependencies = [
+          sources."readable-stream-2.3.6"
+        ];
+      })
       sources."memory-chunk-store-1.3.0"
       sources."mime-2.3.1"
       sources."mimic-response-1.0.1"
@@ -52702,14 +55651,22 @@ in
       })
       sources."moment-2.22.2"
       sources."mp4-box-encoding-1.3.0"
-      sources."mp4-stream-2.0.3"
+      (sources."mp4-stream-2.0.3" // {
+        dependencies = [
+          sources."readable-stream-2.3.6"
+        ];
+      })
       sources."ms-2.0.0"
       (sources."multicast-dns-6.2.3" // {
         dependencies = [
           sources."thunky-1.0.2"
         ];
       })
-      sources."multistream-2.1.1"
+      (sources."multistream-2.1.1" // {
+        dependencies = [
+          sources."readable-stream-2.3.6"
+        ];
+      })
       sources."netmask-1.0.6"
       sources."network-address-1.1.2"
       sources."next-event-1.0.0"
@@ -52744,8 +55701,12 @@ in
       sources."random-iterate-1.0.1"
       sources."randombytes-2.0.6"
       sources."range-parser-1.2.0"
-      sources."range-slice-stream-1.2.0"
-      sources."readable-stream-2.3.6"
+      (sources."range-slice-stream-1.2.0" // {
+        dependencies = [
+          sources."readable-stream-2.3.6"
+        ];
+      })
+      sources."readable-stream-3.0.2"
       sources."record-cache-1.1.0"
       (sources."render-media-3.1.3" // {
         dependencies = [
@@ -52765,12 +55726,14 @@ in
       (sources."simple-peer-9.1.2" // {
         dependencies = [
           sources."debug-3.1.0"
+          sources."readable-stream-2.3.6"
         ];
       })
       sources."simple-sha1-2.1.1"
       (sources."simple-websocket-7.2.0" // {
         dependencies = [
           sources."debug-3.1.0"
+          sources."readable-stream-2.3.6"
         ];
       })
       sources."speedometer-1.1.0"
@@ -52784,7 +55747,7 @@ in
       sources."through-2.3.8"
       sources."thunky-0.1.0"
       sources."to-arraybuffer-1.0.1"
-      (sources."torrent-discovery-9.0.2" // {
+      (sources."torrent-discovery-9.1.1" // {
         dependencies = [
           sources."debug-3.1.0"
         ];
@@ -52798,7 +55761,7 @@ in
       sources."upnp-device-client-1.0.2"
       sources."upnp-mediarenderer-client-1.2.4"
       sources."url-join-2.0.5"
-      (sources."ut_metadata-3.2.2" // {
+      (sources."ut_metadata-3.3.0" // {
         dependencies = [
           sources."debug-3.1.0"
         ];
@@ -52807,11 +55770,10 @@ in
       sources."utf-8-validate-5.0.1"
       sources."util-deprecate-1.0.2"
       sources."videostream-2.5.1"
-      sources."vlc-command-1.1.1"
-      (sources."webtorrent-0.102.2" // {
+      sources."vlc-command-1.1.2"
+      (sources."webtorrent-0.102.4" // {
         dependencies = [
           sources."debug-3.1.0"
-          sources."readable-stream-3.0.2"
           sources."simple-get-3.0.3"
         ];
       })
@@ -52822,7 +55784,6 @@ in
       sources."xmlbuilder-9.0.7"
       sources."xmldom-0.1.27"
       sources."xtend-4.0.1"
-      sources."zero-fill-2.2.3"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -52836,27 +55797,35 @@ in
   web-ext = nodeEnv.buildNodePackage {
     name = "web-ext";
     packageName = "web-ext";
-    version = "2.8.0";
+    version = "2.9.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/web-ext/-/web-ext-2.8.0.tgz";
-      sha512 = "3JuPYU3yrefysm3pvGwRP5k9plRMPUeLo5KLp2TSnE9g4t7x6SeIWZEWWG3jwVeFsPQuIj3sAuVHEDO5ai9mCw==";
+      url = "https://registry.npmjs.org/web-ext/-/web-ext-2.9.1.tgz";
+      sha512 = "sK5ebAiUNJFG+KfFjjvWks9ihecy0TdVCrrnSW/tZ15QFO6u4LCIQKCuBr7FyGMjC+IOGJFB7pS1ZbyPNJ72GQ==";
     };
     dependencies = [
       sources."@cliqz-oss/firefox-client-0.3.1"
       sources."@cliqz-oss/node-firefox-connect-1.2.1"
-      sources."@types/node-10.9.2"
+      sources."@types/node-10.9.4"
       sources."JSONSelect-0.2.1"
       sources."abbrev-1.1.1"
       sources."acorn-5.7.2"
-      sources."acorn-jsx-4.1.1"
+      (sources."acorn-jsx-3.0.1" // {
+        dependencies = [
+          sources."acorn-3.3.0"
+        ];
+      })
       sources."adbkit-2.11.0"
       sources."adbkit-logcat-1.1.0"
       sources."adbkit-monkey-1.0.1"
-      (sources."addons-linter-1.2.6" // {
+      (sources."addons-linter-1.3.1" // {
         dependencies = [
           sources."source-map-0.6.1"
           sources."source-map-support-0.5.6"
-          sources."yargs-12.0.1"
+          (sources."yargs-12.0.1" // {
+            dependencies = [
+              sources."os-locale-2.1.0"
+            ];
+          })
         ];
       })
       sources."adm-zip-0.4.11"
@@ -52945,7 +55914,7 @@ in
           sources."extend-shallow-2.0.1"
         ];
       })
-      sources."buffer-5.2.0"
+      sources."buffer-5.2.1"
       sources."buffer-alloc-1.2.0"
       sources."buffer-alloc-unsafe-1.1.0"
       sources."buffer-crc32-0.2.13"
@@ -52959,7 +55928,7 @@ in
       sources."caller-path-0.1.0"
       sources."callsites-0.2.0"
       sources."camelcase-4.1.0"
-      sources."capture-stack-trace-1.0.0"
+      sources."capture-stack-trace-1.0.1"
       sources."caseless-0.12.0"
       (sources."chalk-2.4.0" // {
         dependencies = [
@@ -53021,7 +55990,7 @@ in
       sources."crc-3.8.0"
       sources."crc32-stream-2.0.0"
       sources."create-error-class-3.0.2"
-      sources."cross-spawn-6.0.5"
+      sources."cross-spawn-5.1.0"
       sources."crx-parser-0.1.2"
       sources."crypto-random-string-1.0.0"
       sources."css-select-1.2.0"
@@ -53050,15 +56019,12 @@ in
       sources."delayed-stream-1.0.0"
       sources."depd-1.1.2"
       sources."detect-indent-4.0.0"
-      (sources."dispensary-0.21.0" // {
+      (sources."dispensary-0.22.0" // {
         dependencies = [
-          sources."ansi-styles-3.2.1"
           sources."async-2.6.1"
-          sources."chalk-2.4.1"
-          sources."pino-4.17.6"
+          sources."os-locale-2.1.0"
           sources."source-map-0.6.1"
           sources."source-map-support-0.5.9"
-          sources."supports-color-5.5.0"
           sources."yargs-12.0.1"
         ];
       })
@@ -53106,6 +56072,7 @@ in
       (sources."eslint-5.0.1" // {
         dependencies = [
           sources."ansi-regex-3.0.0"
+          sources."cross-spawn-6.0.5"
           sources."debug-3.1.0"
           sources."globals-11.7.0"
           sources."strip-ansi-4.0.0"
@@ -53113,8 +56080,6 @@ in
       })
       (sources."eslint-plugin-no-unsafe-innerhtml-1.0.16" // {
         dependencies = [
-          sources."acorn-3.3.0"
-          sources."acorn-jsx-3.0.1"
           sources."ajv-4.11.8"
           sources."ajv-keywords-1.5.1"
           sources."ansi-escapes-1.4.0"
@@ -53144,7 +56109,11 @@ in
       })
       sources."eslint-scope-4.0.0"
       sources."eslint-visitor-keys-1.0.0"
-      sources."espree-4.0.0"
+      (sources."espree-4.0.0" // {
+        dependencies = [
+          sources."acorn-jsx-4.1.1"
+        ];
+      })
       sources."esprima-3.1.3"
       sources."esquery-1.0.1"
       sources."esrecurse-4.2.1"
@@ -53152,11 +56121,7 @@ in
       sources."esutils-2.0.2"
       sources."event-emitter-0.3.5"
       sources."event-to-promise-0.8.0"
-      (sources."execa-0.7.0" // {
-        dependencies = [
-          sources."cross-spawn-5.1.0"
-        ];
-      })
+      sources."execa-0.7.0"
       sources."exit-hook-1.1.1"
       (sources."expand-brackets-2.1.4" // {
         dependencies = [
@@ -53192,11 +56157,11 @@ in
       sources."extsprintf-1.3.0"
       sources."fast-deep-equal-2.0.1"
       sources."fast-json-parse-1.0.3"
-      sources."fast-json-patch-2.0.6"
+      sources."fast-json-patch-2.0.7"
       sources."fast-json-stable-stringify-2.0.0"
       sources."fast-levenshtein-2.0.6"
       sources."fast-redact-1.1.14"
-      sources."fast-safe-stringify-1.2.3"
+      sources."fast-safe-stringify-2.0.6"
       sources."fd-slicer-1.1.0"
       sources."figures-2.0.0"
       sources."file-entry-cache-2.0.0"
@@ -53207,7 +56172,7 @@ in
         ];
       })
       sources."find-up-3.0.0"
-      (sources."firefox-profile-1.1.0" // {
+      (sources."firefox-profile-1.2.0" // {
         dependencies = [
           sources."async-2.5.0"
           sources."fs-extra-4.0.3"
@@ -53242,7 +56207,7 @@ in
           sources."which-1.2.4"
         ];
       })
-      sources."generate-function-2.2.0"
+      sources."generate-function-2.3.1"
       sources."generate-object-property-1.2.0"
       sources."get-caller-file-1.0.3"
       sources."get-stream-3.0.0"
@@ -53270,7 +56235,7 @@ in
       sources."graphlib-2.1.5"
       sources."growly-1.3.0"
       sources."har-schema-2.0.0"
-      (sources."har-validator-5.0.3" // {
+      (sources."har-validator-5.1.0" // {
         dependencies = [
           sources."ajv-5.5.2"
           sources."fast-deep-equal-1.1.0"
@@ -53539,7 +56504,7 @@ in
       sources."npm-run-path-2.0.2"
       sources."nth-check-1.0.1"
       sources."number-is-nan-1.0.1"
-      sources."oauth-sign-0.8.2"
+      sources."oauth-sign-0.9.0"
       sources."object-assign-4.1.1"
       (sources."object-copy-0.1.0" // {
         dependencies = [
@@ -53561,11 +56526,20 @@ in
       sources."opn-5.3.0"
       sources."optionator-0.8.2"
       sources."os-homedir-1.0.2"
-      sources."os-locale-2.1.0"
+      (sources."os-locale-3.0.0" // {
+        dependencies = [
+          sources."cross-spawn-6.0.5"
+          sources."execa-0.10.0"
+          sources."invert-kv-2.0.0"
+          sources."lcid-2.0.0"
+          sources."mem-3.0.1"
+        ];
+      })
       sources."os-name-2.0.1"
       sources."os-shim-0.1.3"
       sources."os-tmpdir-1.0.2"
       sources."p-finally-1.0.0"
+      sources."p-is-promise-1.1.0"
       sources."p-limit-2.0.0"
       sources."p-locate-3.0.0"
       sources."p-try-2.0.0"
@@ -53593,12 +56567,7 @@ in
       sources."pify-2.3.0"
       sources."pinkie-2.0.4"
       sources."pinkie-promise-2.0.1"
-      (sources."pino-5.0.0-rc.4" // {
-        dependencies = [
-          sources."fast-safe-stringify-2.0.6"
-          sources."quick-format-unescaped-3.0.0"
-        ];
-      })
+      sources."pino-5.0.4"
       sources."pino-std-serializers-2.2.1"
       sources."pluralize-7.0.0"
       sources."po2json-0.4.5"
@@ -53626,10 +56595,11 @@ in
       })
       sources."proxy-from-env-1.0.0"
       sources."pseudomap-1.0.2"
+      sources."psl-1.1.29"
       sources."pump-3.0.0"
       sources."punycode-2.1.1"
       sources."qs-6.5.2"
-      sources."quick-format-unescaped-1.1.2"
+      sources."quick-format-unescaped-3.0.0"
       (sources."raw-body-2.3.3" // {
         dependencies = [
           sources."iconv-lite-0.4.23"
@@ -53667,7 +56637,7 @@ in
       sources."repeat-element-1.1.3"
       sources."repeat-string-1.6.1"
       sources."repeating-2.0.1"
-      sources."request-2.87.0"
+      sources."request-2.88.0"
       sources."require-directory-2.1.1"
       sources."require-main-filename-1.0.1"
       sources."require-uncached-1.0.3"
@@ -53680,7 +56650,7 @@ in
       sources."run-async-2.3.0"
       sources."rx-lite-3.1.2"
       sources."rx-lite-aggregates-4.0.8"
-      sources."rxjs-5.5.11"
+      sources."rxjs-5.5.12"
       sources."safe-buffer-5.1.2"
       sources."safe-json-stringify-1.2.0"
       sources."safe-regex-1.1.0"
@@ -53710,11 +56680,19 @@ in
       sources."shellwords-0.1.1"
       (sources."sign-addon-0.3.1" // {
         dependencies = [
+          sources."ajv-5.5.2"
           sources."babel-polyfill-6.16.0"
           sources."es6-error-4.0.0"
+          sources."fast-deep-equal-1.1.0"
+          sources."har-validator-5.0.3"
+          sources."json-schema-traverse-0.3.1"
           sources."mz-2.5.0"
+          sources."oauth-sign-0.8.2"
+          sources."punycode-1.4.1"
           sources."regenerator-runtime-0.9.6"
+          sources."request-2.87.0"
           sources."source-map-support-0.4.6"
+          sources."tough-cookie-2.3.4"
         ];
       })
       sources."signal-exit-3.0.2"
@@ -53824,7 +56802,7 @@ in
       })
       sources."socks-1.1.10"
       sources."socks-proxy-agent-3.0.1"
-      sources."sonic-boom-0.5.0"
+      sources."sonic-boom-0.6.1"
       sources."source-map-0.5.7"
       sources."source-map-resolve-0.5.2"
       (sources."source-map-support-0.5.3" // {
@@ -53840,7 +56818,6 @@ in
       sources."spdx-license-ids-3.0.0"
       sources."split-0.3.3"
       sources."split-string-3.1.0"
-      sources."split2-2.2.0"
       sources."sprintf-js-1.0.3"
       sources."sshpk-1.14.2"
       (sources."static-extend-0.1.2" // {
@@ -53896,7 +56873,6 @@ in
       sources."thenify-3.3.0"
       sources."thenify-all-1.6.0"
       sources."through-2.3.8"
-      sources."through2-2.0.3"
       sources."thunkify-2.1.2"
       sources."timed-out-4.0.1"
       sources."tmp-0.0.33"
@@ -53907,7 +56883,7 @@ in
       sources."to-regex-range-2.1.1"
       sources."toml-2.3.3"
       sources."tosource-1.0.0"
-      (sources."tough-cookie-2.3.4" // {
+      (sources."tough-cookie-2.4.3" // {
         dependencies = [
           sources."punycode-1.4.1"
         ];
@@ -54118,10 +57094,10 @@ in
       sources."call-me-maybe-1.0.1"
       sources."camelcase-2.1.1"
       sources."camelcase-keys-2.1.0"
-      sources."capture-stack-trace-1.0.0"
+      sources."capture-stack-trace-1.0.1"
       sources."caseless-0.12.0"
       sources."chalk-2.4.1"
-      sources."chardet-0.5.0"
+      sources."chardet-0.7.0"
       sources."ci-info-1.4.0"
       (sources."class-utils-0.3.6" // {
         dependencies = [
@@ -54227,7 +57203,7 @@ in
           sources."is-extendable-1.0.1"
         ];
       })
-      sources."external-editor-3.0.1"
+      sources."external-editor-3.0.3"
       (sources."extglob-2.0.4" // {
         dependencies = [
           sources."define-property-1.0.0"
@@ -54309,7 +57285,7 @@ in
           sources."chardet-0.4.2"
           sources."external-editor-2.2.0"
           sources."inquirer-5.2.0"
-          sources."rxjs-5.5.11"
+          sources."rxjs-5.5.12"
         ];
       })
       sources."into-stream-3.1.0"
@@ -54547,7 +57523,7 @@ in
       sources."root-check-1.0.0"
       sources."run-async-2.3.0"
       sources."rx-4.1.0"
-      sources."rxjs-6.2.2"
+      sources."rxjs-6.3.1"
       sources."safe-buffer-5.1.2"
       sources."safe-regex-1.1.0"
       sources."safer-buffer-2.1.2"
diff --git a/pkgs/development/ocaml-modules/alcotest/default.nix b/pkgs/development/ocaml-modules/alcotest/default.nix
index 000ff8285c53..8723b6a1f1ff 100644
--- a/pkgs/development/ocaml-modules/alcotest/default.nix
+++ b/pkgs/development/ocaml-modules/alcotest/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchzip, ocaml, findlib, ocamlbuild, topkg, jbuilder
+{ stdenv, fetchzip, ocaml, findlib, ocamlbuild, topkg, dune
 , cmdliner, astring, fmt, result
 }:
 
@@ -6,9 +6,9 @@ let param =
   if stdenv.lib.versionAtLeast ocaml.version "4.02" then {
     version = "0.8.2";
     sha256 = "1zpg079v89mz2dpnh59f9hk5r03wl26skfn43llrv3kg24abjfpf";
-    buildInputs = [ jbuilder ];
-    buildPhase = "jbuilder build -p alcotest";
-    inherit (jbuilder) installPhase;
+    buildInputs = [ dune ];
+    buildPhase = "dune build -p alcotest";
+    inherit (dune) installPhase;
   } else {
     version = "0.7.2";
     sha256 = "1qgsz2zz5ky6s5pf3j3shc4fjc36rqnjflk8x0wl1fcpvvkr52md";
diff --git a/pkgs/development/ocaml-modules/angstrom/default.nix b/pkgs/development/ocaml-modules/angstrom/default.nix
index 97baca62e724..0c00dc2ff24e 100644
--- a/pkgs/development/ocaml-modules/angstrom/default.nix
+++ b/pkgs/development/ocaml-modules/angstrom/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, jbuilder, alcotest, result
+{ stdenv, fetchFromGitHub, ocaml, findlib, dune, alcotest, result
 , bigstringaf
 }:
 
@@ -17,15 +17,15 @@ stdenv.mkDerivation rec {
     sha256 = "0lh6024yf9ds0nh9i93r9m6p5psi8nvrqxl5x7jwl13zb0r9xfpw";
   };
 
-  buildInputs = [ ocaml findlib jbuilder alcotest ];
+  buildInputs = [ ocaml findlib dune alcotest ];
   propagatedBuildInputs = [ bigstringaf result ];
 
-  buildPhase = "jbuilder build -p angstrom";
+  buildPhase = "dune build -p angstrom";
 
   doCheck = true;
-  checkPhase = "jbuilder runtest -p angstrom";
+  checkPhase = "dune runtest -p angstrom";
 
-  inherit (jbuilder) installPhase;
+  inherit (dune) installPhase;
 
   meta = {
     homepage = https://github.com/inhabitedtype/angstrom;
diff --git a/pkgs/development/ocaml-modules/atd/default.nix b/pkgs/development/ocaml-modules/atd/default.nix
index 52a1fc36921c..d5cd38bba728 100644
--- a/pkgs/development/ocaml-modules/atd/default.nix
+++ b/pkgs/development/ocaml-modules/atd/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, menhir, easy-format, ocaml, findlib, fetchFromGitHub, jbuilder, which, biniou, yojson }:
+{ stdenv, menhir, easy-format, ocaml, findlib, fetchFromGitHub, dune, which, biniou, yojson }:
 
 stdenv.mkDerivation rec {
   version = "2.0.0";
@@ -14,11 +14,11 @@ stdenv.mkDerivation rec {
 
   createFindlibDestdir = true;
 
-  buildInputs = [ which jbuilder ocaml findlib menhir ];
+  buildInputs = [ which dune ocaml findlib menhir ];
   propagatedBuildInputs = [ easy-format biniou yojson ];
 
   buildPhase = "jbuilder build";
-  inherit (jbuilder) installPhase;
+  inherit (dune) installPhase;
 
   meta = with stdenv.lib; {
     homepage = https://github.com/mjambon/atd;
diff --git a/pkgs/development/ocaml-modules/batteries/default.nix b/pkgs/development/ocaml-modules/batteries/default.nix
index e71496e84f04..473c30b43459 100644
--- a/pkgs/development/ocaml-modules/batteries/default.nix
+++ b/pkgs/development/ocaml-modules/batteries/default.nix
@@ -1,23 +1,19 @@
 { stdenv, fetchzip, ocaml, findlib, ocamlbuild, qtest, num }:
 
-let version = "2.8.0"; in
+let version = "2.9.0"; in
 
 stdenv.mkDerivation {
   name = "ocaml${ocaml.version}-batteries-${version}";
 
   src = fetchzip {
     url = "https://github.com/ocaml-batteries-team/batteries-included/archive/v${version}.tar.gz";
-    sha256 = "1cvgljg8lxvfx0v3367z3p43dysg9m33v8gfy43bhw7fjr1bmyas";
+    sha256 = "1wianim29kkkf4c31k7injjp3ji69ki5krrp6csq8ycswg791dby";
   };
 
   buildInputs = [ ocaml findlib ocamlbuild qtest ];
   propagatedBuildInputs = [ num ];
 
-  configurePhase = if num != null then ''
-    export CAML_LD_LIBRARY_PATH="''${CAML_LD_LIBRARY_PATH}''${CAML_LD_LIBRARY_PATH:+:}${num}/lib/ocaml/${ocaml.version}/site-lib/stublibs/"
-  '' else "true";      # Skip configure
-
-  doCheck = true;
+  doCheck = !stdenv.lib.versionAtLeast ocaml.version "4.07" && !stdenv.isAarch64;
   checkTarget = "test test";
 
   createFindlibDestdir = true;
diff --git a/pkgs/development/ocaml-modules/bigstringaf/default.nix b/pkgs/development/ocaml-modules/bigstringaf/default.nix
index 21a0e3943923..fc9a5379b178 100644
--- a/pkgs/development/ocaml-modules/bigstringaf/default.nix
+++ b/pkgs/development/ocaml-modules/bigstringaf/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, jbuilder, alcotest }:
+{ stdenv, fetchFromGitHub, ocaml, findlib, dune, alcotest }:
 
 if !stdenv.lib.versionAtLeast ocaml.version "4.03"
 then throw "bigstringaf is not available for OCaml ${ocaml.version}"
@@ -15,12 +15,12 @@ stdenv.mkDerivation rec {
     sha256 = "1yx6hv8rk0ldz1h6kk00rwg8abpfc376z00aifl9f5rn7xavpscs";
   };
 
-  buildInputs = [ ocaml findlib jbuilder alcotest ];
+  buildInputs = [ ocaml findlib dune alcotest ];
 
   doCheck = true;
   checkPhase = "dune runtest";
 
-  inherit (jbuilder) installPhase;
+  inherit (dune) installPhase;
 
   meta = {
     description = "Bigstring intrinsics and fast blits based on memcpy/memmove";
diff --git a/pkgs/development/ocaml-modules/biniou/default.nix b/pkgs/development/ocaml-modules/biniou/default.nix
index 97c4750002e6..439fce3bfd5b 100644
--- a/pkgs/development/ocaml-modules/biniou/default.nix
+++ b/pkgs/development/ocaml-modules/biniou/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, jbuilder, easy-format }:
+{ stdenv, fetchFromGitHub, ocaml, findlib, dune, easy-format }:
 
 stdenv.mkDerivation rec {
   version = "1.2.0";
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
     sha256 = "0mjpgwyfq2b2izjw0flmlpvdjgqpq8shs89hxj1np2r50csr8dcb";
   };
 
-  buildInputs = [ ocaml findlib jbuilder ];
+  buildInputs = [ ocaml findlib dune ];
 
   propagatedBuildInputs = [ easy-format ];
 
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
    patchShebangs .
   '';
 
-  inherit (jbuilder) installPhase;
+  inherit (dune) installPhase;
 
   meta = {
     inherit (src.meta) homepage;
diff --git a/pkgs/development/ocaml-modules/bitstring/default.nix b/pkgs/development/ocaml-modules/bitstring/default.nix
index 13424272bcf8..93bcb3cb1e99 100644
--- a/pkgs/development/ocaml-modules/bitstring/default.nix
+++ b/pkgs/development/ocaml-modules/bitstring/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, jbuilder
+{ stdenv, fetchFromGitHub, ocaml, findlib, dune
 , ppx_tools_versioned
 , ounit
 }:
@@ -13,14 +13,14 @@ stdenv.mkDerivation rec {
     sha256 = "0r49qax7as48jgknzaq6p9rbpmrvnmlic713wzz5bj60j5h0396f";
   };
 
-  buildInputs = [ ocaml findlib jbuilder ppx_tools_versioned ounit ];
+  buildInputs = [ ocaml findlib dune ppx_tools_versioned ounit ];
 
   buildPhase = "jbuilder build";
 
   doCheck = true;
   checkPhase = "jbuilder runtest";
 
-  inherit (jbuilder) installPhase;
+  inherit (dune) installPhase;
 
   meta = with stdenv.lib; {
     description = "This library adds Erlang-style bitstrings and matching over bitstrings as a syntax extension and library for OCaml";
diff --git a/pkgs/development/ocaml-modules/camlimages/default.nix b/pkgs/development/ocaml-modules/camlimages/default.nix
index def710f3f1b0..b5ef173c9ff8 100644
--- a/pkgs/development/ocaml-modules/camlimages/default.nix
+++ b/pkgs/development/ocaml-modules/camlimages/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchzip, findlib, jbuilder, ocaml, configurator, cppo, lablgtk }:
+{ stdenv, fetchzip, findlib, dune, ocaml, configurator, cppo, lablgtk }:
 stdenv.mkDerivation rec {
   name = "camlimages-${version}";
   version = "5.0.0";
@@ -6,9 +6,9 @@ stdenv.mkDerivation rec {
     url = "https://bitbucket.org/camlspotter/camlimages/get/${version}.tar.gz";
     sha256 = "00qvwxkfnhv93yi1iq7vy3p5lxyi9xigxcq464s4ii6bmp32d998";
   };
-  buildInputs = [ findlib jbuilder ocaml configurator cppo lablgtk ];
-  buildPhase = "jbuilder build -p camlimages";
-  inherit (jbuilder) installPhase;
+  buildInputs = [ findlib dune ocaml configurator cppo lablgtk ];
+  buildPhase = "dune build -p camlimages";
+  inherit (dune) installPhase;
   
   meta = with stdenv.lib; {
     branch = "5.0";
diff --git a/pkgs/development/ocaml-modules/camomile/default.nix b/pkgs/development/ocaml-modules/camomile/default.nix
index fc0ecfc1502f..53c45d17854c 100644
--- a/pkgs/development/ocaml-modules/camomile/default.nix
+++ b/pkgs/development/ocaml-modules/camomile/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, jbuilder, cppo }:
+{ stdenv, fetchFromGitHub, ocaml, findlib, dune, cppo }:
 
 stdenv.mkDerivation rec {
 	version = "0.8.7";
@@ -11,11 +11,11 @@ stdenv.mkDerivation rec {
 		sha256 = "0rh58nl5jrnx01hf0yqbdcc2ncx107pq29zblchww82ci0x1xwsf";
 	};
 
-	buildInputs = [ ocaml findlib jbuilder cppo ];
+	buildInputs = [ ocaml findlib dune cppo ];
 
 	configurePhase = "ocaml configure.ml --share $out/share/camomile";
 
-	inherit (jbuilder) installPhase;
+	inherit (dune) installPhase;
 
 	meta = {
 		inherit (ocaml.meta) platforms;
diff --git a/pkgs/development/ocaml-modules/cohttp/default.nix b/pkgs/development/ocaml-modules/cohttp/default.nix
index 962525b47e42..79dc919556ae 100644
--- a/pkgs/development/ocaml-modules/cohttp/default.nix
+++ b/pkgs/development/ocaml-modules/cohttp/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, jbuilder
+{ stdenv, fetchFromGitHub, ocaml, findlib, dune
 , ppx_fields_conv, ppx_sexp_conv, ppx_deriving
 , base64, fieldslib, jsonm, re, stringext, uri
 }:
@@ -14,13 +14,13 @@ stdenv.mkDerivation rec {
 		sha256 = "0zgn32axmjvkmbvyfkbjcqximzc4zcfxs118b98xyrqnvwb0k7ka";
 	};
 
-	buildInputs = [ ocaml findlib jbuilder jsonm ppx_fields_conv ppx_sexp_conv ];
+	buildInputs = [ ocaml findlib dune jsonm ppx_fields_conv ppx_sexp_conv ];
 
 	propagatedBuildInputs = [ ppx_deriving base64 fieldslib re stringext uri ];
 
-	buildPhase = "jbuilder build -p cohttp";
+	buildPhase = "dune build -p cohttp";
 
-	inherit (jbuilder) installPhase;
+	inherit (dune) installPhase;
 
 	meta = {
 		description = "HTTP(S) library for Lwt, Async and Mirage";
diff --git a/pkgs/development/ocaml-modules/cohttp/lwt-unix.nix b/pkgs/development/ocaml-modules/cohttp/lwt-unix.nix
index c526a101dd9d..6489a583198c 100644
--- a/pkgs/development/ocaml-modules/cohttp/lwt-unix.nix
+++ b/pkgs/development/ocaml-modules/cohttp/lwt-unix.nix
@@ -1,4 +1,4 @@
-{ stdenv, ocaml, findlib, jbuilder, cohttp-lwt
+{ stdenv, ocaml, findlib, dune, cohttp-lwt
 , conduit-lwt-unix, ppx_sexp_conv
 , cmdliner, fmt, magic-mime
 }:
@@ -11,9 +11,9 @@ stdenv.mkDerivation rec {
 	name = "ocaml${ocaml.version}-cohttp-lwt-unix-${version}";
 	inherit (cohttp-lwt) version src installPhase meta;
 
-	buildInputs = [ ocaml findlib jbuilder cmdliner ppx_sexp_conv ];
+	buildInputs = [ ocaml findlib dune cmdliner ppx_sexp_conv ];
 
 	propagatedBuildInputs = [ cohttp-lwt conduit-lwt-unix fmt magic-mime ];
 
-	buildPhase = "jbuilder build -p cohttp-lwt-unix";
+	buildPhase = "dune build -p cohttp-lwt-unix";
 }
diff --git a/pkgs/development/ocaml-modules/cohttp/lwt.nix b/pkgs/development/ocaml-modules/cohttp/lwt.nix
index 21bea646d721..1630bfd131e4 100644
--- a/pkgs/development/ocaml-modules/cohttp/lwt.nix
+++ b/pkgs/development/ocaml-modules/cohttp/lwt.nix
@@ -1,4 +1,4 @@
-{ stdenv, ocaml, findlib, jbuilder, cohttp, lwt3, uri, ppx_sexp_conv }:
+{ stdenv, ocaml, findlib, dune, cohttp, lwt3, uri, ppx_sexp_conv }:
 
 if !stdenv.lib.versionAtLeast cohttp.version "0.99"
 then cohttp
@@ -8,9 +8,9 @@ stdenv.mkDerivation rec {
 	name = "ocaml${ocaml.version}-cohttp-lwt-${version}";
 	inherit (cohttp) version src installPhase meta;
 
-	buildInputs = [ ocaml findlib jbuilder uri ppx_sexp_conv ];
+	buildInputs = [ ocaml findlib dune uri ppx_sexp_conv ];
 
 	propagatedBuildInputs = [ cohttp lwt3 ];
 
-	buildPhase = "jbuilder build -p cohttp-lwt";
+	buildPhase = "dune build -p cohttp-lwt";
 }
diff --git a/pkgs/development/ocaml-modules/conduit/default.nix b/pkgs/development/ocaml-modules/conduit/default.nix
index 98ac997383c7..fdfd2bed1f15 100644
--- a/pkgs/development/ocaml-modules/conduit/default.nix
+++ b/pkgs/development/ocaml-modules/conduit/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, jbuilder
+{ stdenv, fetchFromGitHub, ocaml, findlib, dune
 , ppx_sexp_conv
 , astring, ipaddr, uri
 }:
@@ -14,12 +14,12 @@ stdenv.mkDerivation rec {
 		sha256 = "1ryigzh7sfif1mly624fpm87aw5h60n5wzdlrvqsf71qcpxc6iiz";
 	};
 
-	buildInputs = [ ocaml findlib jbuilder ppx_sexp_conv ];
+	buildInputs = [ ocaml findlib dune ppx_sexp_conv ];
 	propagatedBuildInputs = [ astring ipaddr uri ];
 
-	buildPhase = "jbuilder build -p conduit";
+	buildPhase = "dune build -p conduit";
 
-	inherit (jbuilder) installPhase;
+	inherit (dune) installPhase;
 
 	meta = {
 		description = "Network connection library for TCP and SSL";
diff --git a/pkgs/development/ocaml-modules/conduit/lwt-unix.nix b/pkgs/development/ocaml-modules/conduit/lwt-unix.nix
index 5f33bbc42c10..b4357979de75 100644
--- a/pkgs/development/ocaml-modules/conduit/lwt-unix.nix
+++ b/pkgs/development/ocaml-modules/conduit/lwt-unix.nix
@@ -1,4 +1,4 @@
-{ stdenv, ocaml, findlib, jbuilder, conduit-lwt
+{ stdenv, ocaml, findlib, dune, conduit-lwt
 , logs, ppx_sexp_conv, lwt_ssl
 }:
 
@@ -10,9 +10,9 @@ stdenv.mkDerivation rec {
 	name = "ocaml${ocaml.version}-conduit-lwt-unix-${version}";
 	inherit (conduit-lwt) version src installPhase meta;
 
-	buildInputs = [ ocaml findlib jbuilder ppx_sexp_conv ];
+	buildInputs = [ ocaml findlib dune ppx_sexp_conv ];
 
 	propagatedBuildInputs = [ conduit-lwt logs lwt_ssl ];
 
-	buildPhase = "jbuilder build -p conduit-lwt-unix";
+	buildPhase = "dune build -p conduit-lwt-unix";
 }
diff --git a/pkgs/development/ocaml-modules/conduit/lwt.nix b/pkgs/development/ocaml-modules/conduit/lwt.nix
index 8ee3d827ecc1..5b085239cfd0 100644
--- a/pkgs/development/ocaml-modules/conduit/lwt.nix
+++ b/pkgs/development/ocaml-modules/conduit/lwt.nix
@@ -1,4 +1,4 @@
-{ stdenv, ocaml, findlib, jbuilder, ppx_sexp_conv, conduit, lwt3 }:
+{ stdenv, ocaml, findlib, dune, ppx_sexp_conv, conduit, lwt3 }:
 
 if !stdenv.lib.versionAtLeast conduit.version "1.0"
 then conduit
@@ -8,9 +8,9 @@ stdenv.mkDerivation rec {
 	name = "ocaml${ocaml.version}-conduit-lwt-${version}";
 	inherit (conduit) version src installPhase meta;
 
-	buildInputs = [ ocaml findlib jbuilder ppx_sexp_conv ];
+	buildInputs = [ ocaml findlib dune ppx_sexp_conv ];
 
 	propagatedBuildInputs = [ conduit lwt3 ];
 
-	buildPhase = "jbuilder build -p conduit-lwt";
+	buildPhase = "dune build -p conduit-lwt";
 }
diff --git a/pkgs/development/ocaml-modules/cstruct/default.nix b/pkgs/development/ocaml-modules/cstruct/default.nix
index 0f5380f9a41f..1a5a992f2be1 100644
--- a/pkgs/development/ocaml-modules/cstruct/default.nix
+++ b/pkgs/development/ocaml-modules/cstruct/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, ocaml, jbuilder, findlib, sexplib, ocplib-endian }:
+{ stdenv, fetchurl, ocaml, dune, findlib, sexplib, ocplib-endian }:
 
 stdenv.mkDerivation rec {
   name = "ocaml${ocaml.version}-cstruct-${version}";
@@ -10,13 +10,13 @@ stdenv.mkDerivation rec {
 
   unpackCmd = "tar -xjf $curSrc";
 
-  buildInputs = [ ocaml jbuilder findlib ];
+  buildInputs = [ ocaml dune findlib ];
 
   propagatedBuildInputs = [ sexplib ocplib-endian ];
 
-  buildPhase = "jbuilder build -p cstruct";
+  buildPhase = "dune build -p cstruct";
 
-  inherit (jbuilder) installPhase;
+  inherit (dune) installPhase;
 
   meta = {
     description = "Access C-like structures directly from OCaml";
diff --git a/pkgs/development/ocaml-modules/cstruct/ppx.nix b/pkgs/development/ocaml-modules/cstruct/ppx.nix
index 9d19e1751e23..1696e200750c 100644
--- a/pkgs/development/ocaml-modules/cstruct/ppx.nix
+++ b/pkgs/development/ocaml-modules/cstruct/ppx.nix
@@ -9,5 +9,5 @@ stdenv.mkDerivation rec {
 	buildInputs = cstruct.buildInputs ++ [ ppx_tools_versioned ];
 	propagatedBuildInputs = [ cstruct ];
 
-	buildPhase = "jbuilder build -p ppx_cstruct";
+	buildPhase = "dune build -p ppx_cstruct";
 }
diff --git a/pkgs/development/ocaml-modules/csv/default.nix b/pkgs/development/ocaml-modules/csv/default.nix
index 804cbb8ea858..6c6f8a68f814 100644
--- a/pkgs/development/ocaml-modules/csv/default.nix
+++ b/pkgs/development/ocaml-modules/csv/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, ocaml, findlib, jbuilder }:
+{ stdenv, fetchurl, ocaml, findlib, dune }:
 
 stdenv.mkDerivation rec {
 	version = "2.1";
@@ -10,11 +10,11 @@ stdenv.mkDerivation rec {
 
 	unpackCmd = "tar -xjf $src";
 
-	buildInputs = [ ocaml findlib jbuilder ];
+	buildInputs = [ ocaml findlib dune ];
 
-	buildPhase = "jbuilder build -p csv";
+	buildPhase = "dune build -p csv";
 
-	inherit (jbuilder) installPhase;
+	inherit (dune) installPhase;
 
 	meta = {
 		description = "A pure OCaml library to read and write CSV files";
diff --git a/pkgs/development/ocaml-modules/dtoa/default.nix b/pkgs/development/ocaml-modules/dtoa/default.nix
index 9b6e56266143..a76e0c61450b 100644
--- a/pkgs/development/ocaml-modules/dtoa/default.nix
+++ b/pkgs/development/ocaml-modules/dtoa/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, ocaml, findlib, jbuilder }:
+{ stdenv, fetchurl, ocaml, findlib, dune }:
 
 assert stdenv.lib.versionAtLeast (stdenv.lib.getVersion ocaml) "4.01";
 
@@ -14,11 +14,11 @@ stdenv.mkDerivation rec {
 
   unpackCmd = "tar xjf $src";
 
-  buildInputs = [ ocaml findlib jbuilder ];
+  buildInputs = [ ocaml findlib dune ];
 
-  buildPhase = "jbuilder build -p dtoa";
+  buildPhase = "dune build -p dtoa";
 
-  inherit (jbuilder) installPhase;
+  inherit (dune) installPhase;
 
   hardeningDisable = stdenv.lib.optional stdenv.isDarwin "strictoverflow";
 
diff --git a/pkgs/development/ocaml-modules/ezjsonm/default.nix b/pkgs/development/ocaml-modules/ezjsonm/default.nix
index 1dcafe4c6a48..d38cf51c1531 100644
--- a/pkgs/development/ocaml-modules/ezjsonm/default.nix
+++ b/pkgs/development/ocaml-modules/ezjsonm/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchzip, ocaml, findlib, jbuilder, jsonm, hex, sexplib }:
+{ stdenv, fetchzip, ocaml, findlib, dune, jsonm, hex, sexplib }:
 
 let version = "0.6.0"; in
 
@@ -10,12 +10,12 @@ stdenv.mkDerivation {
     sha256 = "18g64lhai0bz65b9fil12vlgfpwa9b5apj7x6d7n4zzm18qfazvj";
   };
 
-  buildInputs = [ ocaml findlib jbuilder ];
+  buildInputs = [ ocaml findlib dune ];
   propagatedBuildInputs = [ jsonm hex sexplib ];
 
-  buildPhase = "jbuilder build -p ezjsonm";
+  buildPhase = "dune build -p ezjsonm";
 
-  inherit (jbuilder) installPhase;
+  inherit (dune) installPhase;
 
   meta = {
     description = "An easy interface on top of the Jsonm library";
diff --git a/pkgs/development/ocaml-modules/faraday/default.nix b/pkgs/development/ocaml-modules/faraday/default.nix
index 8f30ec519777..6af808654f53 100644
--- a/pkgs/development/ocaml-modules/faraday/default.nix
+++ b/pkgs/development/ocaml-modules/faraday/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, jbuilder, alcotest }:
+{ stdenv, fetchFromGitHub, ocaml, findlib, dune, alcotest }:
 
 if !stdenv.lib.versionAtLeast ocaml.version "4.02"
 then throw "faraday is not available for OCaml ${ocaml.version}"
@@ -15,14 +15,14 @@ stdenv.mkDerivation rec {
     sha256 = "1kql0il1frsbx6rvwqd7ahi4m14ik6la5an6c2w4x7k00ndm4d7n";
   };
 
-  buildInputs = [ ocaml findlib jbuilder alcotest ];
+  buildInputs = [ ocaml findlib dune alcotest ];
 
-  buildPhase = "jbuilder build -p faraday";
+  buildPhase = "dune build -p faraday";
 
   doCheck = true;
   checkPhase = "jbuilder runtest";
 
-  inherit (jbuilder) installPhase;
+  inherit (dune) installPhase;
 
   meta = {
     description = "Serialization library built for speed and memory efficiency";
diff --git a/pkgs/development/ocaml-modules/gapi-ocaml/default.nix b/pkgs/development/ocaml-modules/gapi-ocaml/default.nix
index 9c7be26503f5..bf7418ab27eb 100644
--- a/pkgs/development/ocaml-modules/gapi-ocaml/default.nix
+++ b/pkgs/development/ocaml-modules/gapi-ocaml/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, jbuilder, ocurl, cryptokit, ocaml_extlib, yojson, ocamlnet, xmlm }:
+{ stdenv, fetchFromGitHub, ocaml, findlib, dune, ocurl, cryptokit, ocaml_extlib, yojson, ocamlnet, xmlm }:
 
 if !stdenv.lib.versionAtLeast ocaml.version "4.02"
 then throw "gapi-ocaml is not available for OCaml ${ocaml.version}"
@@ -13,10 +13,10 @@ stdenv.mkDerivation rec {
     rev = "v${version}";
     sha256 = "0qgsy51bhkpfgl5rdnjw4bqs5fbh2w4vwrfbl8y3lh1wrqmnwci4";
   };
-  buildInputs = [ ocaml jbuilder findlib ];
+  buildInputs = [ ocaml dune findlib ];
   propagatedBuildInputs = [ ocurl cryptokit ocaml_extlib yojson ocamlnet xmlm ];
 
-  inherit (jbuilder) installPhase;
+  inherit (dune) installPhase;
 
   meta = {
     description = "OCaml client for google services";
diff --git a/pkgs/development/ocaml-modules/git-http/default.nix b/pkgs/development/ocaml-modules/git-http/default.nix
index 5e757b5b6727..c6abb0171b03 100644
--- a/pkgs/development/ocaml-modules/git-http/default.nix
+++ b/pkgs/development/ocaml-modules/git-http/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, ocaml, findlib, jbuilder, git, cohttp-lwt
+{ stdenv, ocaml, findlib, dune, git, cohttp-lwt
 , alcotest, mtime, nocrypto
 }:
 
@@ -6,16 +6,16 @@ stdenv.mkDerivation rec {
 	name = "ocaml${ocaml.version}-git-http-${version}";
 	inherit (git) version src;
 
-	buildInputs = [ ocaml findlib jbuilder alcotest mtime nocrypto ];
+	buildInputs = [ ocaml findlib dune alcotest mtime nocrypto ];
 
 	propagatedBuildInputs = [ git cohttp-lwt ];
 
-	buildPhase = "jbuilder build -p git-http";
+	buildPhase = "dune build -p git-http";
 
-	inherit (jbuilder) installPhase;
+	inherit (dune) installPhase;
 
 	doCheck = true;
-	checkPhase = "jbuilder runtest -p git-http";
+	checkPhase = "dune runtest -p git-http";
 
 	meta = {
 		description = "Client implementation of the “Smart” HTTP Git protocol in pure OCaml";
diff --git a/pkgs/development/ocaml-modules/git-unix/default.nix b/pkgs/development/ocaml-modules/git-unix/default.nix
index afeb3f1957b0..7a796ca089d5 100644
--- a/pkgs/development/ocaml-modules/git-unix/default.nix
+++ b/pkgs/development/ocaml-modules/git-unix/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, ocaml, findlib, jbuilder, git-http
+{ stdenv, ocaml, findlib, dune, git-http
 , cohttp-lwt-unix
 , tls, cmdliner, mtime
 }:
@@ -7,13 +7,13 @@ stdenv.mkDerivation rec {
 	name = "ocaml${ocaml.version}-git-unix-${version}";
 	inherit (git-http) version src;
 
-	buildInputs = [ ocaml findlib jbuilder cmdliner mtime ];
+	buildInputs = [ ocaml findlib dune cmdliner mtime ];
 
 	propagatedBuildInputs = [ cohttp-lwt-unix git-http tls ];
 
-	buildPhase = "jbuilder build -p git-unix";
+	buildPhase = "dune build -p git-unix";
 
-	inherit (jbuilder) installPhase;
+	inherit (dune) installPhase;
 
 	meta = {
 		description = "Unix backend for the Git protocol(s)";
diff --git a/pkgs/development/ocaml-modules/git/default.nix b/pkgs/development/ocaml-modules/git/default.nix
index 0bf43174412c..777184ed2e94 100644
--- a/pkgs/development/ocaml-modules/git/default.nix
+++ b/pkgs/development/ocaml-modules/git/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, jbuilder
+{ stdenv, fetchFromGitHub, ocaml, findlib, dune
 , astring, decompress, fmt, hex, logs, mstruct, ocaml_lwt, ocamlgraph, uri
 , alcotest, mtime, nocrypto
 }:
@@ -14,16 +14,16 @@ stdenv.mkDerivation rec {
 		sha256 = "0r1bxpxjjnl9hh8xbabsxl7svzvd19hfy73a2y1m4kljmw64dpfh";
 	};
 
-	buildInputs = [ ocaml findlib jbuilder alcotest mtime nocrypto ];
+	buildInputs = [ ocaml findlib dune alcotest mtime nocrypto ];
 
 	propagatedBuildInputs = [ astring decompress fmt hex logs mstruct ocaml_lwt ocamlgraph uri ];
 
-	buildPhase = "jbuilder build -p git";
+	buildPhase = "dune build -p git";
 
-	inherit (jbuilder) installPhase;
+	inherit (dune) installPhase;
 
 	doCheck = true;
-	checkPhase = "jbuilder runtest -p git";
+	checkPhase = "dune runtest -p git";
 
 	meta = {
 		description = "Git format and protocol in pure OCaml";
diff --git a/pkgs/development/ocaml-modules/hex/default.nix b/pkgs/development/ocaml-modules/hex/default.nix
index 596f6a0fa531..71a9ebf9ad5d 100644
--- a/pkgs/development/ocaml-modules/hex/default.nix
+++ b/pkgs/development/ocaml-modules/hex/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, ocaml, findlib, jbuilder, cstruct }:
+{ stdenv, fetchurl, ocaml, findlib, dune, cstruct }:
 
 if !stdenv.lib.versionAtLeast ocaml.version "4.02"
 then throw "hex is not available for OCaml ${ocaml.version}"
@@ -16,13 +16,13 @@ stdenv.mkDerivation {
 
   unpackCmd = "tar -xjf $curSrc";
 
-  buildInputs = [ ocaml findlib jbuilder ];
+  buildInputs = [ ocaml findlib dune ];
   propagatedBuildInputs = [ cstruct ];
 
-  buildPhase = "jbuilder build -p hex";
+  buildPhase = "dune build -p hex";
   doCheck = true;
   checkPhase = "jbuilder runtest";
-  inherit (jbuilder) installPhase;
+  inherit (dune) installPhase;
 
   meta = {
     description = "Mininal OCaml library providing hexadecimal converters";
diff --git a/pkgs/development/ocaml-modules/httpaf/default.nix b/pkgs/development/ocaml-modules/httpaf/default.nix
index bb712d40827e..e8638e4cf184 100644
--- a/pkgs/development/ocaml-modules/httpaf/default.nix
+++ b/pkgs/development/ocaml-modules/httpaf/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, jbuilder
+{ stdenv, fetchFromGitHub, ocaml, findlib, dune
 , angstrom, faraday, alcotest
 }:
 
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
     sha256 = "0i2r004ihj00hd97475y8nhjqjln58xx087zcjl0dfp0n7q80517";
   };
 
-  buildInputs = [ ocaml findlib jbuilder alcotest ];
+  buildInputs = [ ocaml findlib dune alcotest ];
   propagatedBuildInputs = [ angstrom faraday ];
 
   buildPhase = "dune build -p httpaf";
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   doCheck = true;
   checkPhase = "dune runtest -p httpaf";
 
-  inherit (jbuilder) installPhase;
+  inherit (dune) installPhase;
 
   meta = {
     description = "A high-performance, memory-efficient, and scalable web server for OCaml";
diff --git a/pkgs/development/ocaml-modules/io-page/default.nix b/pkgs/development/ocaml-modules/io-page/default.nix
index 72b7a3a54ce7..7c3d3a20c4d7 100644
--- a/pkgs/development/ocaml-modules/io-page/default.nix
+++ b/pkgs/development/ocaml-modules/io-page/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchzip, ocaml, findlib, jbuilder, configurator, cstruct }:
+{ stdenv, fetchzip, ocaml, findlib, dune, configurator, cstruct }:
 
 let version = "2.0.1"; in
 
@@ -10,10 +10,10 @@ stdenv.mkDerivation {
     sha256 = "1rw04dwrlx5hah5dkjf7d63iff82j9cifr8ifjis5pdwhgwcff8i";
   };
 
-  buildInputs = [ ocaml findlib jbuilder configurator ];
+  buildInputs = [ ocaml findlib dune configurator ];
   propagatedBuildInputs = [ cstruct ];
 
-  inherit (jbuilder) installPhase;
+  inherit (dune) installPhase;
 
   meta = {
     homepage = https://github.com/mirage/io-page;
diff --git a/pkgs/development/ocaml-modules/ipaddr/default.nix b/pkgs/development/ocaml-modules/ipaddr/default.nix
index 2f0aa3429950..9a12fb44fffb 100644
--- a/pkgs/development/ocaml-modules/ipaddr/default.nix
+++ b/pkgs/development/ocaml-modules/ipaddr/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, ocaml, ocamlbuild, findlib
-, jbuilder, sexplib, ppx_sexp_conv
+, dune, sexplib, ppx_sexp_conv
 }:
 
 stdenv.mkDerivation rec {
@@ -11,10 +11,10 @@ stdenv.mkDerivation rec {
     sha256 = "1amb1pbm9ybpxy6190qygpj6nmbzzs2r6vx4xh5r6v89szx9rfxw";
   };
 
-  buildInputs = [ ocaml findlib ocamlbuild jbuilder ];
+  buildInputs = [ ocaml findlib ocamlbuild dune ];
   propagatedBuildInputs = [ ppx_sexp_conv sexplib ];
 
-  inherit (jbuilder) installPhase;
+  inherit (dune) installPhase;
 
   meta = with stdenv.lib; {
     homepage = https://github.com/mirage/ocaml-ipaddr;
diff --git a/pkgs/development/ocaml-modules/janestreet/janePackage.nix b/pkgs/development/ocaml-modules/janestreet/janePackage.nix
index d17e595199e1..439c6f500bc9 100644
--- a/pkgs/development/ocaml-modules/janestreet/janePackage.nix
+++ b/pkgs/development/ocaml-modules/janestreet/janePackage.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, ocaml, jbuilder, findlib, defaultVersion ? "0.11.0" }:
+{ stdenv, fetchFromGitHub, ocaml, dune, findlib, defaultVersion ? "0.11.0" }:
 
 { name, version ? defaultVersion, buildInputs ? [], hash, meta, ...}@args:
 
@@ -16,9 +16,9 @@ stdenv.mkDerivation (args // {
     sha256 = hash;
   };
 
-  buildInputs = [ ocaml jbuilder findlib ] ++ buildInputs;
+  buildInputs = [ ocaml dune findlib ] ++ buildInputs;
 
-  inherit (jbuilder) installPhase;
+  inherit (dune) installPhase;
 
   meta = {
     license = stdenv.lib.licenses.asl20;
diff --git a/pkgs/development/ocaml-modules/lambda-term/default.nix b/pkgs/development/ocaml-modules/lambda-term/default.nix
index 62b1f7b1a8e0..ba68c0463f8f 100644
--- a/pkgs/development/ocaml-modules/lambda-term/default.nix
+++ b/pkgs/development/ocaml-modules/lambda-term/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, libev, ocaml, findlib, jbuilder
+{ stdenv, fetchurl, libev, ocaml, findlib, dune
 , zed, lwt_log, lwt_react
 }:
 
@@ -13,13 +13,13 @@ stdenv.mkDerivation rec {
     sha256 = "1hy5ryagqclgdm9lzh1qil5mrynlypv7mn6qm858hdcnmz9zzn0l";
   };
 
-  buildInputs = [ libev ocaml findlib jbuilder ];
+  buildInputs = [ libev ocaml findlib dune ];
 
   propagatedBuildInputs = [ zed lwt_log lwt_react ];
 
-  buildPhase = "jbuilder build -p lambda-term";
+  buildPhase = "dune build -p lambda-term";
 
-  inherit (jbuilder) installPhase;
+  inherit (dune) installPhase;
 
   hasSharedObjects = true;
 
diff --git a/pkgs/development/ocaml-modules/linenoise/default.nix b/pkgs/development/ocaml-modules/linenoise/default.nix
index 53ac918c47e6..e7120ad38572 100644
--- a/pkgs/development/ocaml-modules/linenoise/default.nix
+++ b/pkgs/development/ocaml-modules/linenoise/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, ocaml, jbuilder, findlib, result }:
+{ stdenv, fetchFromGitHub, ocaml, dune, findlib, result }:
 
 if !stdenv.lib.versionAtLeast ocaml.version "4.02"
 then throw "linenoise is not available for OCaml ${ocaml.version}"
@@ -14,10 +14,10 @@ stdenv.mkDerivation rec {
     sha256 = "1h6rqfgmhmd7p5z8yhk6zkbrk4yzw1v2fgwas2b7g3hqs6y0xj0q";
   };
 
-  buildInputs = [ ocaml findlib jbuilder ];
+  buildInputs = [ ocaml findlib dune ];
   propagatedBuildInputs = [ result ];
 
-  inherit (jbuilder) installPhase;
+  inherit (dune) installPhase;
 
   meta = {
     description = "OCaml bindings to linenoise";
diff --git a/pkgs/development/ocaml-modules/lwt/default.nix b/pkgs/development/ocaml-modules/lwt/default.nix
index 345ca037fec9..c8371feb9052 100644
--- a/pkgs/development/ocaml-modules/lwt/default.nix
+++ b/pkgs/development/ocaml-modules/lwt/default.nix
@@ -1,7 +1,7 @@
-{ stdenv, fetchzip, pkgconfig, ncurses, libev, jbuilder
+{ stdenv, fetchzip, pkgconfig, ncurses, libev, dune
 , ocaml, findlib, cppo
 , ocaml-migrate-parsetree, ppx_tools_versioned, result
-, withP4 ? !stdenv.lib.versionAtLeast ocaml.version "4.07"
+, withP4 ? true
 , camlp4 ? null
 }:
 
@@ -19,14 +19,14 @@ stdenv.mkDerivation rec {
   '';
 
   nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ ncurses ocaml findlib jbuilder cppo
+  buildInputs = [ ncurses ocaml findlib dune cppo
     ocaml-migrate-parsetree ppx_tools_versioned ]
   ++ stdenv.lib.optional withP4 camlp4;
   propagatedBuildInputs = [ libev result ];
 
   installPhase = ''
     ocaml src/util/install_filter.ml
-    ${jbuilder.installPhase}
+    ${dune.installPhase}
   '';
 
   meta = {
diff --git a/pkgs/development/ocaml-modules/lwt/ppx.nix b/pkgs/development/ocaml-modules/lwt/ppx.nix
index 3cf08d06f1eb..89e326557b5d 100644
--- a/pkgs/development/ocaml-modules/lwt/ppx.nix
+++ b/pkgs/development/ocaml-modules/lwt/ppx.nix
@@ -1,16 +1,16 @@
-{ stdenv, jbuilder, ocaml, findlib, lwt, ppx_tools_versioned }:
+{ stdenv, dune, ocaml, findlib, lwt, ppx_tools_versioned }:
 
 stdenv.mkDerivation {
   name = "ocaml${ocaml.version}-lwt_ppx-${lwt.version}";
 
   inherit (lwt) src;
 
-  buildInputs = [ jbuilder ocaml findlib ppx_tools_versioned ];
+  buildInputs = [ dune ocaml findlib ppx_tools_versioned ];
 
   propagatedBuildInputs = [ lwt ];
 
-  buildPhase = "jbuilder build -p lwt_ppx";
-  installPhase = "${jbuilder.installPhase} lwt_ppx.install";
+  buildPhase = "dune build -p lwt_ppx";
+  installPhase = "${dune.installPhase} lwt_ppx.install";
 
   meta = {
     description = "Ppx syntax extension for Lwt";
diff --git a/pkgs/development/ocaml-modules/lwt_log/default.nix b/pkgs/development/ocaml-modules/lwt_log/default.nix
index bdabe677a858..42ff2f26b7d3 100644
--- a/pkgs/development/ocaml-modules/lwt_log/default.nix
+++ b/pkgs/development/ocaml-modules/lwt_log/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, ocaml, findlib, jbuilder, lwt }:
+{ stdenv, ocaml, findlib, dune, lwt }:
 
 stdenv.mkDerivation rec {
   version = "1.0.0";
@@ -6,13 +6,13 @@ stdenv.mkDerivation rec {
 
   inherit (lwt) src;
 
-  buildInputs = [ ocaml findlib jbuilder ];
+  buildInputs = [ ocaml findlib dune ];
 
   propagatedBuildInputs = [ lwt ];
 
-  buildPhase = "jbuilder build -p lwt_log";
+  buildPhase = "dune build -p lwt_log";
 
-  inherit (jbuilder) installPhase;
+  inherit (dune) installPhase;
 
   meta = {
     description = "Lwt logging library (deprecated)";
diff --git a/pkgs/development/ocaml-modules/lwt_ssl/default.nix b/pkgs/development/ocaml-modules/lwt_ssl/default.nix
index e53c835a2911..8fbec7cd4dff 100644
--- a/pkgs/development/ocaml-modules/lwt_ssl/default.nix
+++ b/pkgs/development/ocaml-modules/lwt_ssl/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchzip, ocaml, findlib, jbuilder, ssl, lwt }:
+{ stdenv, fetchzip, ocaml, findlib, dune, ssl, lwt }:
 
 stdenv.mkDerivation rec {
   version = "1.1.2";
@@ -9,10 +9,10 @@ stdenv.mkDerivation rec {
     sha256 = "1q0an3djqjxv83v3iswi7m81braqx93kcrcwrxwmf6jzhdm4pn15";
   };
 
-  buildInputs = [ ocaml findlib jbuilder ];
+  buildInputs = [ ocaml findlib dune ];
   propagatedBuildInputs = [ ssl lwt ];
 
-  inherit (jbuilder) installPhase;
+  inherit (dune) installPhase;
 
   meta = {
     homepage = "https://github.com/aantron/lwt_ssl";
diff --git a/pkgs/development/ocaml-modules/mstruct/default.nix b/pkgs/development/ocaml-modules/mstruct/default.nix
index 5682b75d6a14..9184975f0698 100644
--- a/pkgs/development/ocaml-modules/mstruct/default.nix
+++ b/pkgs/development/ocaml-modules/mstruct/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, jbuilder
+{ stdenv, fetchFromGitHub, ocaml, findlib, dune
 , cstruct
 }:
 
@@ -17,11 +17,11 @@ stdenv.mkDerivation rec {
 		sha256 = "1p4ygwzs3n1fj4apfib0z0sabpph21bkq1dgjk4bsa59pq4prncm";
 	};
 
-	buildInputs = [ ocaml findlib jbuilder ];
+	buildInputs = [ ocaml findlib dune ];
 
 	propagatedBuildInputs = [ cstruct ];
 
-	inherit (jbuilder) installPhase;
+	inherit (dune) installPhase;
 
 	meta = {
 		description = "A thin mutable layer on top of cstruct";
diff --git a/pkgs/development/ocaml-modules/ocaml-migrate-parsetree/default.nix b/pkgs/development/ocaml-modules/ocaml-migrate-parsetree/default.nix
index 9a2af140e312..131f478d32ed 100644
--- a/pkgs/development/ocaml-modules/ocaml-migrate-parsetree/default.nix
+++ b/pkgs/development/ocaml-modules/ocaml-migrate-parsetree/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, ocamlbuild, jbuilder, result }:
+{ stdenv, fetchFromGitHub, ocaml, findlib, ocamlbuild, dune, result }:
 
 if !stdenv.lib.versionAtLeast ocaml.version "4.02"
 then throw "ocaml-migrate-parsetree is not available for OCaml ${ocaml.version}"
@@ -15,10 +15,10 @@ stdenv.mkDerivation rec {
      sha256 = "05kbgs9n1x64fk6g3wbjnwjd17w10k3k8dzglnc45xg4hr7z651n";
    };
 
-   buildInputs = [ ocaml findlib ocamlbuild jbuilder ];
+   buildInputs = [ ocaml findlib ocamlbuild dune ];
    propagatedBuildInputs = [ result ];
 
-   inherit (jbuilder) installPhase;
+   inherit (dune) installPhase;
 
    meta = {
      description = "Convert OCaml parsetrees between different major versions";
diff --git a/pkgs/development/ocaml-modules/ppx_blob/default.nix b/pkgs/development/ocaml-modules/ppx_blob/default.nix
index 45dd73d4a321..72e0e5e121ad 100644
--- a/pkgs/development/ocaml-modules/ppx_blob/default.nix
+++ b/pkgs/development/ocaml-modules/ppx_blob/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, ocaml, findlib, jbuilder, alcotest
+{ stdenv, fetchurl, ocaml, findlib, dune, alcotest
 , ocaml-migrate-parsetree
 }:
 
@@ -13,14 +13,14 @@ stdenv.mkDerivation rec {
 
   unpackCmd = "tar xjf $curSrc";
 
-  buildInputs = [ ocaml findlib jbuilder alcotest ocaml-migrate-parsetree ];
+  buildInputs = [ ocaml findlib dune alcotest ocaml-migrate-parsetree ];
 
   buildPhase = "dune build -p ppx_blob";
 
   doCheck = true;
   checkPhase = "dune runtest -p ppx_blob";
 
-  inherit (jbuilder) installPhase;
+  inherit (dune) installPhase;
 
   meta = with stdenv.lib; {
     homepage = https://github.com/johnwhitington/ppx_blob;
diff --git a/pkgs/development/ocaml-modules/ppx_derivers/default.nix b/pkgs/development/ocaml-modules/ppx_derivers/default.nix
index 2dc7ef2b13e5..edd086067610 100644
--- a/pkgs/development/ocaml-modules/ppx_derivers/default.nix
+++ b/pkgs/development/ocaml-modules/ppx_derivers/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, jbuilder }:
+{ stdenv, fetchFromGitHub, ocaml, findlib, dune }:
 
 if !stdenv.lib.versionAtLeast ocaml.version "4.02"
 then throw "ppx_derivers is not available for OCaml ${ocaml.version}"
@@ -15,9 +15,9 @@ stdenv.mkDerivation rec {
 		sha256 = "0bnhihl1w31as5w2czly1v3d6pbir9inmgsjg2cj6aaj9v1dzd85";
 	};
 
-	buildInputs = [ ocaml findlib jbuilder ];
+	buildInputs = [ ocaml findlib dune ];
 
-	inherit (jbuilder) installPhase;
+	inherit (dune) installPhase;
 
 	meta = {
 		description = "Shared [@@deriving] plugin registry";
diff --git a/pkgs/development/ocaml-modules/ppx_gen_rec/default.nix b/pkgs/development/ocaml-modules/ppx_gen_rec/default.nix
index 39b0c53e0e94..4c458b983d33 100644
--- a/pkgs/development/ocaml-modules/ppx_gen_rec/default.nix
+++ b/pkgs/development/ocaml-modules/ppx_gen_rec/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, ocaml, findlib, jbuilder, ocaml-migrate-parsetree }:
+{ stdenv, fetchurl, ocaml, findlib, dune, ocaml-migrate-parsetree }:
 
 assert stdenv.lib.versionAtLeast (stdenv.lib.getVersion ocaml) "4.01";
 
@@ -14,11 +14,11 @@ stdenv.mkDerivation rec {
 
   unpackCmd = "tar xjf $src";
 
-  buildInputs = [ ocaml findlib jbuilder ocaml-migrate-parsetree ];
+  buildInputs = [ ocaml findlib dune ocaml-migrate-parsetree ];
 
-  buildPhase = "jbuilder build -p ppx_gen_rec";
+  buildPhase = "dune build -p ppx_gen_rec";
 
-  inherit (jbuilder) installPhase;
+  inherit (dune) installPhase;
 
   meta = with stdenv.lib; {
     homepage = https://github.com/flowtype/ocaml-ppx_gen_rec;
diff --git a/pkgs/development/ocaml-modules/ppxlib/default.nix b/pkgs/development/ocaml-modules/ppxlib/default.nix
index 889e4acd2b50..656b650b13f7 100644
--- a/pkgs/development/ocaml-modules/ppxlib/default.nix
+++ b/pkgs/development/ocaml-modules/ppxlib/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, jbuilder
+{ stdenv, fetchFromGitHub, ocaml, findlib, dune
 , ocaml-compiler-libs, ocaml-migrate-parsetree, ppx_derivers, stdio
 }:
 
@@ -13,15 +13,15 @@ stdenv.mkDerivation rec {
     sha256 = "0csp49jh7zgjnqh46mxbf322whlbmgy7v1a12nvxh97qg6i5fvsy";
   };
 
-  buildInputs = [ ocaml findlib jbuilder ];
+  buildInputs = [ ocaml findlib dune ];
 
   propagatedBuildInputs = [
     ocaml-compiler-libs ocaml-migrate-parsetree ppx_derivers stdio
   ];
 
-  buildPhase = "jbuilder build";
+  buildPhase = "dune build";
 
-  inherit (jbuilder) installPhase;
+  inherit (dune) installPhase;
 
   meta = {
     description = "Comprehensive ppx tool set";
diff --git a/pkgs/development/ocaml-modules/re/default.nix b/pkgs/development/ocaml-modules/re/default.nix
index c6f1b6d17581..c4215b98a50f 100644
--- a/pkgs/development/ocaml-modules/re/default.nix
+++ b/pkgs/development/ocaml-modules/re/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchzip, ocaml, findlib, jbuilder, ounit }:
+{ stdenv, fetchzip, ocaml, findlib, dune, ounit, seq }:
 
 if !stdenv.lib.versionAtLeast ocaml.version "4.02"
 then throw "re is not available for OCaml ${ocaml.version}"
@@ -6,19 +6,20 @@ else
 
 stdenv.mkDerivation rec {
   name = "ocaml${ocaml.version}-re-${version}";
-  version = "1.7.3";
+  version = "1.8.0";
 
   src = fetchzip {
     url = "https://github.com/ocaml/ocaml-re/archive/${version}.tar.gz";
-    sha256 = "1pb6w9wqg6gzcfaaw6ckv1bqjgjpmrzzqz7r0mp9w16qbf3i54zr";
+    sha256 = "0ch6hvmm4ym3w2vghjxf3ka5j1023a37980fqi4zcb7sx756z20i";
   };
 
-  buildInputs = [ ocaml findlib jbuilder ounit ];
+  buildInputs = [ ocaml findlib dune ounit ];
+  propagatedBuildInputs = [ seq ];
 
   doCheck = true;
   checkPhase = "jbuilder runtest";
 
-  inherit (jbuilder) installPhase;
+  inherit (dune) installPhase;
 
   meta = {
     homepage = https://github.com/ocaml/ocaml-re;
diff --git a/pkgs/development/ocaml-modules/rope/default.nix b/pkgs/development/ocaml-modules/rope/default.nix
index dfb8c56c23e8..9e9ebea6b6a7 100644
--- a/pkgs/development/ocaml-modules/rope/default.nix
+++ b/pkgs/development/ocaml-modules/rope/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, jbuilder, benchmark }:
+{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, dune, benchmark }:
 
 let param =
   if stdenv.lib.versionAtLeast ocaml.version "4.03"
@@ -6,11 +6,11 @@ let param =
     version = "0.6";
     url = " https://github.com/Chris00/ocaml-rope/releases/download/0.6/rope-0.6.tbz";
     sha256 = "06pkbnkad2ck50jn59ggwv154yd9vb01abblihvam6p27m4za1pc";
-    buildInputs = [ jbuilder ];
+    buildInputs = [ dune ];
     extra = {
       unpackCmd = "tar -xjf $curSrc";
-      buildPhase = "jbuilder build -p rope";
-      inherit (jbuilder) installPhase;
+      buildPhase = "dune build -p rope";
+      inherit (dune) installPhase;
     };
   } else {
     version = "0.5";
diff --git a/pkgs/development/ocaml-modules/seq/default.nix b/pkgs/development/ocaml-modules/seq/default.nix
new file mode 100644
index 000000000000..f4918b420c40
--- /dev/null
+++ b/pkgs/development/ocaml-modules/seq/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, fetchFromGitHub, ocaml, findlib, ocamlbuild }:
+
+stdenv.mkDerivation rec {
+  version = "0.1";
+  name = "ocaml${ocaml.version}-seq-${version}";
+
+  src = fetchFromGitHub {
+    owner = "c-cube";
+    repo = "seq";
+    rev = version;
+    sha256 = "1cjpsc7q76yfgq9iyvswxgic4kfq2vcqdlmxjdjgd4lx87zvcwrv";
+  };
+
+  buildInputs = [ ocaml findlib ocamlbuild ];
+
+  createFindlibDestdir = true;
+
+  meta = {
+    description = "Compatibility package for OCaml’s standard iterator type starting from 4.07";
+    license = stdenv.lib.licenses.lgpl21;
+    maintainers = [ stdenv.lib.maintainers.vbgl ];
+    inherit (src.meta) homepage;
+    inherit (ocaml.meta) platforms;
+  };
+}
diff --git a/pkgs/development/ocaml-modules/sequence/default.nix b/pkgs/development/ocaml-modules/sequence/default.nix
index f06282df4fc6..59641458338f 100644
--- a/pkgs/development/ocaml-modules/sequence/default.nix
+++ b/pkgs/development/ocaml-modules/sequence/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, jbuilder, qtest, result }:
+{ stdenv, fetchFromGitHub, ocaml, findlib, dune, qtest, result }:
 
 if !stdenv.lib.versionAtLeast ocaml.version "4.02"
 then throw "sequence is not available for OCaml ${ocaml.version}"
@@ -16,13 +16,13 @@ stdenv.mkDerivation {
     sha256 = "08j37nldw47syq3yw4mzhhvya43knl0d7biddp0q9hwbaxhzgi44";
   };
 
-  buildInputs = [ ocaml findlib jbuilder qtest ];
+  buildInputs = [ ocaml findlib dune qtest ];
   propagatedBuildInputs = [ result ];
 
   doCheck = true;
-  checkPhase = "jbuilder runtest";
+  checkPhase = "dune runtest";
 
-  inherit (jbuilder) installPhase;
+  inherit (dune) installPhase;
 
   meta = {
     homepage = https://github.com/c-cube/sequence;
diff --git a/pkgs/development/ocaml-modules/sqlexpr/default.nix b/pkgs/development/ocaml-modules/sqlexpr/default.nix
index c7ed72dc523c..cad4dcafb642 100644
--- a/pkgs/development/ocaml-modules/sqlexpr/default.nix
+++ b/pkgs/development/ocaml-modules/sqlexpr/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, ocaml, findlib, jbuilder, ocaml_lwt
+{ stdenv, fetchurl, ocaml, findlib, dune, ocaml_lwt
 , lwt_ppx, ocaml-migrate-parsetree, ppx_tools_versioned, csv, ocaml_sqlite3
 }:
 
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
   sha256 = "0z0bkzi1mh0m39alzr2ds7hjpfxffx6azpfsj2wpaxrg64ks8ypd";
   };
 
-  buildInputs = [ ocaml findlib jbuilder lwt_ppx ocaml-migrate-parsetree ppx_tools_versioned ];
+  buildInputs = [ ocaml findlib dune lwt_ppx ocaml-migrate-parsetree ppx_tools_versioned ];
 
   propagatedBuildInputs = [ ocaml_lwt csv ocaml_sqlite3 ];
 
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
   doCheck = true;
   checkPhase = "dune runtest -p sqlexpr";
 
-  inherit (jbuilder) installPhase;
+  inherit (dune) installPhase;
 
   meta = {
     description = "Type-safe, convenient SQLite database access";
diff --git a/pkgs/development/ocaml-modules/sqlexpr/ppx.nix b/pkgs/development/ocaml-modules/sqlexpr/ppx.nix
index c15378e8240a..b908e173257c 100644
--- a/pkgs/development/ocaml-modules/sqlexpr/ppx.nix
+++ b/pkgs/development/ocaml-modules/sqlexpr/ppx.nix
@@ -1,4 +1,4 @@
-{ stdenv, ocaml, findlib, jbuilder, sqlexpr, ounit
+{ stdenv, ocaml, findlib, dune, sqlexpr, ounit
 , ppx_core, ppx_tools_versioned, re, lwt_ppx
 }:
 
@@ -6,7 +6,7 @@ stdenv.mkDerivation rec {
   name = "ocaml${ocaml.version}-ppx_sqlexpr-${version}";
   inherit (sqlexpr) version src installPhase meta;
 
-  buildInputs = [ ocaml findlib jbuilder sqlexpr ounit ppx_core ppx_tools_versioned re lwt_ppx ];
+  buildInputs = [ ocaml findlib dune sqlexpr ounit ppx_core ppx_tools_versioned re lwt_ppx ];
 
   buildPhase = "dune build -p ppx_sqlexpr";
 
diff --git a/pkgs/development/ocaml-modules/tyxml/default.nix b/pkgs/development/ocaml-modules/tyxml/default.nix
index b34c9279c307..a38040e6e1fe 100644
--- a/pkgs/development/ocaml-modules/tyxml/default.nix
+++ b/pkgs/development/ocaml-modules/tyxml/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchzip, ocaml, findlib, ocamlbuild, uutf, markup, ppx_tools_versioned, re
-, withP4 ? !stdenv.lib.versionAtLeast ocaml.version "4.07"
+, withP4 ? true
 , camlp4 ? null
 }:
 
diff --git a/pkgs/development/ocaml-modules/uri/default.nix b/pkgs/development/ocaml-modules/uri/default.nix
index c846cca1282f..4959ef7b34a7 100644
--- a/pkgs/development/ocaml-modules/uri/default.nix
+++ b/pkgs/development/ocaml-modules/uri/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, ocaml, findlib, jbuilder, ppx_sexp_conv, ounit
+{ stdenv, fetchurl, ocaml, findlib, dune, ppx_sexp_conv, ounit
 , re, sexplib, stringext
 }:
 
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
 
   unpackCmd = "tar -xjf $curSrc";
 
-  buildInputs = [ ocaml findlib jbuilder ounit ];
+  buildInputs = [ ocaml findlib dune ounit ];
   propagatedBuildInputs = [ ppx_sexp_conv re sexplib stringext ];
 
   buildPhase = "jbuilder build";
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   doCheck = true;
   checkPhase = "jbuilder runtest";
 
-  inherit (jbuilder) installPhase;
+  inherit (dune) installPhase;
 
   meta = {
     homepage = "https://github.com/mirage/ocaml-uri";
diff --git a/pkgs/development/ocaml-modules/wtf8/default.nix b/pkgs/development/ocaml-modules/wtf8/default.nix
index 4cde95c0c4cc..58ce7778c417 100644
--- a/pkgs/development/ocaml-modules/wtf8/default.nix
+++ b/pkgs/development/ocaml-modules/wtf8/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, ocaml, findlib, jbuilder }:
+{ stdenv, fetchurl, ocaml, findlib, dune }:
 
 assert stdenv.lib.versionAtLeast (stdenv.lib.getVersion ocaml) "4.01";
 
@@ -14,13 +14,11 @@ stdenv.mkDerivation rec {
 
   unpackCmd = "tar xjf $src";
 
-  buildInputs = [ ocaml findlib jbuilder ];
+  buildInputs = [ ocaml findlib dune ];
 
-  buildPhase = "jbuilder build -p wtf8";
+  buildPhase = "dune build -p wtf8";
 
-  inherit (jbuilder) installPhase;
-
-  createFindLibDestdir = true;
+  inherit (dune) installPhase;
 
   meta = with stdenv.lib; {
     homepage = https://github.com/flowtype/ocaml-wtf8;
diff --git a/pkgs/development/ocaml-modules/yojson/default.nix b/pkgs/development/ocaml-modules/yojson/default.nix
index f494a8cf17cc..dfef72835cc1 100644
--- a/pkgs/development/ocaml-modules/yojson/default.nix
+++ b/pkgs/development/ocaml-modules/yojson/default.nix
@@ -1,12 +1,12 @@
-{ stdenv, fetchzip, ocaml, findlib, jbuilder, cppo, easy-format, biniou }:
+{ stdenv, fetchzip, ocaml, findlib, dune, cppo, easy-format, biniou }:
 let
   pname = "yojson";
   param =
   if stdenv.lib.versionAtLeast ocaml.version "4.02" then {
     version = "1.4.1";
     sha256 = "0nwsfkmqpyfab4rxq76q8ff7giyanghw08094jyrp275v99zdjr9";
-    buildInputs = [ jbuilder ];
-    extra = { inherit (jbuilder) installPhase; };
+    buildInputs = [ dune ];
+    extra = { inherit (dune) installPhase; };
   } else {
     version = "1.2.3";
     sha256 = "10dvkndgwanvw4agbjln7kgb1n9s6lii7jw82kwxczl5rd1sgmvl";
diff --git a/pkgs/development/ocaml-modules/zed/default.nix b/pkgs/development/ocaml-modules/zed/default.nix
index 1ddb6d180405..d9dcf1a53851 100644
--- a/pkgs/development/ocaml-modules/zed/default.nix
+++ b/pkgs/development/ocaml-modules/zed/default.nix
@@ -1,14 +1,14 @@
-{ stdenv, fetchzip, ocaml, findlib, ocamlbuild, camomile, react, jbuilder }:
+{ stdenv, fetchzip, ocaml, findlib, ocamlbuild, camomile, react, dune }:
 
 let param =
   if stdenv.lib.versionAtLeast ocaml.version "4.02" then
   {
     version = "1.6";
     sha256 = "00hhxcjf3bj3w2qm8nzs9x6vrqkadf4i0277s5whzy2rmiknj63v";
-    buildInputs = [ jbuilder ];
+    buildInputs = [ dune ];
     extra = {
-     buildPhase = "jbuilder build -p zed";
-     inherit (jbuilder) installPhase; };
+     buildPhase = "dune build -p zed";
+     inherit (dune) installPhase; };
   } else {
     version = "1.4";
     sha256 = "0d8qfy0qiydrrqi8qc9rcwgjigql6vx9gl4zp62jfz1lmjgb2a3w";
diff --git a/pkgs/development/python-modules/Flask-PyMongo/default.nix b/pkgs/development/python-modules/Flask-PyMongo/default.nix
index 862fd84c4921..7c37bdaddd51 100644
--- a/pkgs/development/python-modules/Flask-PyMongo/default.nix
+++ b/pkgs/development/python-modules/Flask-PyMongo/default.nix
@@ -2,6 +2,7 @@
 , fetchPypi
 , flask
 , pymongo
+, vcversioner
 , lib
 , pytest
 }:
@@ -18,17 +19,17 @@ buildPythonPackage rec {
   checkInputs = [ pytest ];
 
   checkPhase = ''
-    py.test tests
+    py.test
   '';
 
   # Tests seem to hang
   doCheck = false;
 
-  propagatedBuildInputs = [ flask pymongo ];
+  propagatedBuildInputs = [ flask pymongo vcversioner ];
 
   meta = {
     homepage = "http://flask-pymongo.readthedocs.org/";
     description = "PyMongo support for Flask applications";
     license = lib.licenses.bsd2;
   };
-}
\ No newline at end of file
+}
diff --git a/pkgs/development/python-modules/alot/default.nix b/pkgs/development/python-modules/alot/default.nix
index dd06d4dde7a6..7c4e15f85683 100644
--- a/pkgs/development/python-modules/alot/default.nix
+++ b/pkgs/development/python-modules/alot/default.nix
@@ -47,6 +47,8 @@ buildPythonPackage rec {
     mkdir -p $out/share/{applications,alot}
     cp -r extra/themes $out/share/alot
 
+    install -D extra/completion/alot-completion.zsh $out/share/zsh/site-functions/_alot
+
     sed "s,/usr/bin,$out/bin,g" extra/alot.desktop > $out/share/applications/alot.desktop
   '';
 
diff --git a/pkgs/development/python-modules/asyncssh/default.nix b/pkgs/development/python-modules/asyncssh/default.nix
index 1ac393ff2d71..82723163a5e8 100644
--- a/pkgs/development/python-modules/asyncssh/default.nix
+++ b/pkgs/development/python-modules/asyncssh/default.nix
@@ -1,18 +1,19 @@
 { stdenv, buildPythonPackage, fetchPypi, pythonOlder
 , cryptography
-, bcrypt, gssapi, libnacl, libsodium, nettle, pyopenssl }:
+, bcrypt, gssapi, libnacl, libsodium, nettle, pyopenssl
+, openssl }:
 
 buildPythonPackage rec {
   pname = "asyncssh";
-  version = "1.13.3";
+  version = "1.14.0";
   disabled = pythonOlder "3.4";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "eb5b190badc5cd2a506a1b6ced3e92f948166974eef7d1abab61acc67aa379e6";
+    sha256 = "0f1i5a760a3jylkj00bxkshnylzyhyqz50v8mb8s9ygllpzja058";
   };
 
-  propagatedBuildInputs = [ 
+  propagatedBuildInputs = [
     bcrypt
     cryptography
     gssapi
@@ -22,6 +23,8 @@ buildPythonPackage rec {
     pyopenssl
   ];
 
+  checkInputs = [ openssl ];
+
   # Disables windows specific test (specifically the GSSAPI wrapper for Windows)
   postPatch = ''
     rm ./tests/sspi_stub.py
@@ -29,8 +32,8 @@ buildPythonPackage rec {
 
   meta = with stdenv.lib; {
     description = "Provides an asynchronous client and server implementation of the SSHv2 protocol on top of the Python asyncio framework";
-    homepage = https://pypi.python.org/pypi/asyncssh;
-    license = licenses.epl10;
+    homepage    = https://pypi.python.org/pypi/asyncssh;
+    license     = licenses.epl20;
     maintainers = with maintainers; [ worldofpeace ];
   };
 }
diff --git a/pkgs/development/python-modules/authres/default.nix b/pkgs/development/python-modules/authres/default.nix
index b5aad787dfbf..a0ec276f22d7 100644
--- a/pkgs/development/python-modules/authres/default.nix
+++ b/pkgs/development/python-modules/authres/default.nix
@@ -21,7 +21,7 @@ buildPythonPackage rec {
       Authentication-Results Headers generation and parsing for
       Python/Python3.
     '';
-    homepage = https://launchpad.net/authres;
+    homepage = https://launchpad.net/authentication-results-python;
     license = licenses.bsd3;
     maintainers = with maintainers; [ leenaars ];
   };
diff --git a/pkgs/development/python-modules/backports-shutil-which/default.nix b/pkgs/development/python-modules/backports-shutil-which/default.nix
new file mode 100644
index 000000000000..9900f86567e0
--- /dev/null
+++ b/pkgs/development/python-modules/backports-shutil-which/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, fetchPypi, fetchFromGitHub, buildPythonPackage, pytest }:
+
+buildPythonPackage rec {
+  pname = "backports.shutil_which";
+  version = "3.5.1";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "16sa3adkf71862cb9pk747pw80a2f1v5m915ijb4fgj309xrlhyx";
+  };
+
+  checkInputs = [ pytest ];
+
+  checkPhase = ''
+    py.test test
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Backport of shutil.which from Python 3.3";
+    homepage = https://github.com/minrk/backports.shutil_which;
+    license = licenses.psfl;
+    maintainers = with maintainers; [ jluttine ];
+  };
+}
diff --git a/pkgs/development/python-modules/btrees/default.nix b/pkgs/development/python-modules/btrees/default.nix
index c96d305a7f61..665d5347bbaf 100644
--- a/pkgs/development/python-modules/btrees/default.nix
+++ b/pkgs/development/python-modules/btrees/default.nix
@@ -15,6 +15,12 @@ buildPythonPackage rec {
   propagatedBuildInputs = [ persistent zope_interface ];
   checkInputs = [ zope_testrunner ];
 
+  # disable a failing test that looks broken
+  postPatch = ''
+    substituteInPlace BTrees/tests/common.py \
+      --replace "testShortRepr" "no_testShortRepr"
+  '';
+
   src = fetchPypi {
     inherit pname version;
     sha256 = "dcc096c3cf92efd6b9365951f89118fd30bc209c9af83bf050a28151a9992786";
diff --git a/pkgs/development/python-modules/confluent-kafka/default.nix b/pkgs/development/python-modules/confluent-kafka/default.nix
index 0638ea3a36d2..a0183e4595c4 100644
--- a/pkgs/development/python-modules/confluent-kafka/default.nix
+++ b/pkgs/development/python-modules/confluent-kafka/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildPythonPackage, fetchPypi, isPy3k, rdkafka, requests, avro3k, avro}:
+{ stdenv, buildPythonPackage, fetchPypi, isPy3k, rdkafka, requests, avro3k, avro, futures}:
 
 buildPythonPackage rec {
   version = "0.11.5";
@@ -9,7 +9,7 @@ buildPythonPackage rec {
     sha256 = "bfb5807bfb5effd74f2cfe65e4e3e8564a9e72b25e099f655d8ad0d362a63b9f";
   };
 
-  buildInputs = [ rdkafka requests ] ++ (if isPy3k then [ avro3k ] else [ avro ]) ;
+  buildInputs = [ rdkafka requests ] ++ (if isPy3k then [ avro3k ] else [ avro futures ]) ;
 
   # Tests fail for python3 under this pypi release
   doCheck = if isPy3k then false else true;
diff --git a/pkgs/development/python-modules/construct/default.nix b/pkgs/development/python-modules/construct/default.nix
index 680f6e02cd01..f8e739f0bc7d 100644
--- a/pkgs/development/python-modules/construct/default.nix
+++ b/pkgs/development/python-modules/construct/default.nix
@@ -1,23 +1,26 @@
-{ stdenv, buildPythonPackage, fetchFromGitHub, six, pytest }:
+{ stdenv, buildPythonPackage, fetchFromGitHub
+, six, pytest, arrow
+}:
 
 buildPythonPackage rec {
-  pname = "construct";
-  version = "2.8.16";
-  name = pname + "-" + version;
+  pname   = "construct";
+  version = "2.9.45";
 
   src = fetchFromGitHub {
-    owner = "construct";
-    repo = "construct";
-    rev = "v${version}";
-    sha256 = "0lzz1dy419n254qccch7yx4nkpwd0fsyjhnsnaf6ysgwzqxxv63j";
+    owner  = pname;
+    repo   = pname;
+    rev    = "v${version}";
+    sha256 = "0ig66xrzswpkhhmw123p2nvr15a9lxz54a1fmycfdh09327c1d3y";
   };
 
   propagatedBuildInputs = [ six ];
 
-  checkInputs = [ pytest ];
+  checkInputs = [ pytest arrow ];
 
+  # TODO: figure out missing dependencies
+  doCheck = false;
   checkPhase = ''
-    py.test -k 'not test_numpy' tests
+    py.test -k 'not test_numpy and not test_gallery' tests
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/python-modules/cozy/default.nix b/pkgs/development/python-modules/cozy/default.nix
index 0feca2773b37..7515891456e9 100644
--- a/pkgs/development/python-modules/cozy/default.nix
+++ b/pkgs/development/python-modules/cozy/default.nix
@@ -1,4 +1,4 @@
-{ buildPythonPackage, fetchFromGitHub, lib,
+{ buildPythonPackage, isPy3k, fetchFromGitHub, lib,
   z3, ply, python-igraph, oset, ordered-set, dictionaries }:
 
 buildPythonPackage {
@@ -29,6 +29,8 @@ buildPythonPackage {
     $out/bin/cozy --help
   '';
 
+  disabled = !isPy3k;
+
   meta = {
     description = "The collection synthesizer";
     homepage = https://cozy.uwplse.org/;
diff --git a/pkgs/development/python-modules/daphne/default.nix b/pkgs/development/python-modules/daphne/default.nix
index 7ead1cacfa66..258fc746e4b5 100644
--- a/pkgs/development/python-modules/daphne/default.nix
+++ b/pkgs/development/python-modules/daphne/default.nix
@@ -4,7 +4,7 @@
 }:
 buildPythonPackage rec {
   pname = "daphne";
-  version = "2.1.0";
+  version = "2.2.2";
 
   disabled = !isPy3k;
 
@@ -12,7 +12,7 @@ buildPythonPackage rec {
     owner = "django";
     repo = pname;
     rev = version;
-    sha256 = "1lbpn0l796ar77amqy8dap30zxmsn6as8y2lbmp4lk8m9awscwi8";
+    sha256 = "1pr3b7zxjp2jx31lpiy1hfyprpmyiv2kd18n8x6kh6gd5nr0dgp8";
   };
 
   nativeBuildInputs = [ pytestrunner ];
@@ -21,9 +21,10 @@ buildPythonPackage rec {
 
   checkInputs = [ hypothesis pytest pytest-asyncio ];
 
+  doCheck = !stdenv.isDarwin; # most tests fail on darwin
+
   checkPhase = ''
-    # Other tests fail, seems to be due to filesystem access
-    py.test -k "test_cli or test_utils"
+    py.test
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/python-modules/dendropy/default.nix b/pkgs/development/python-modules/dendropy/default.nix
index 6220a1e15f0c..6409a5d12e59 100644
--- a/pkgs/development/python-modules/dendropy/default.nix
+++ b/pkgs/development/python-modules/dendropy/default.nix
@@ -1,29 +1,33 @@
 { lib
 , pkgs
 , buildPythonPackage
-, fetchPypi
+, fetchFromGitHub
+, pytest
 }:
 
 buildPythonPackage rec {
   pname   = "DendroPy";
   version = "4.4.0";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "f0a0e2ce78b3ed213d6c1791332d57778b7f63d602430c1548a5d822acf2799c";
+  # tests are incorrectly packaged in pypi version
+  src = fetchFromGitHub {
+    owner = "jeetsukumaran";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "097hfyv2kaf4x92i4rjx0paw2cncxap48qivv8zxng4z7nhid0x9";
   };
 
-  prePatch = ''
-    # Test removed/disabled and reported upstream: https://github.com/jeetsukumaran/DendroPy/issues/74
-    rm -f dendropy/test/test_dataio_nexml_reader_tree_list.py
-  '';
-
   preCheck = ''
     # Needed for unicode python tests
     export LC_ALL="en_US.UTF-8"
+    cd tests  # to find the 'support' module
   '';
 
-  checkInputs = [ pkgs.glibcLocales ];
+  checkInputs = [ pytest pkgs.glibcLocales ];
+
+  checkPhase = ''
+    pytest -k 'not test_dataio_nexml_reader_tree_list and not test_pscores_with'
+  '';
 
   meta = {
     homepage = http://dendropy.org/;
diff --git a/pkgs/development/python-modules/distributed/default.nix b/pkgs/development/python-modules/distributed/default.nix
new file mode 100644
index 000000000000..987b64439a53
--- /dev/null
+++ b/pkgs/development/python-modules/distributed/default.nix
@@ -0,0 +1,62 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pytest
+, pytest-repeat
+, pytest-faulthandler
+, pytest-timeout
+, mock
+, joblib
+, click
+, cloudpickle
+, dask
+, msgpack
+, psutil
+, six
+, sortedcontainers
+, tblib
+, toolz
+, tornado
+, zict
+, pyyaml
+, pythonOlder
+, futures
+, singledispatch
+}:
+
+buildPythonPackage rec {
+  pname = "distributed";
+  version = "1.22.1";
+
+  # get full repository need conftest.py to run tests
+  src = fetchFromGitHub {
+    owner = "dask";
+    repo = pname;
+    rev = version;
+    sha256 = "0xvx55rhbhlyys3kjndihwq6y6260qzy9mr3miclh5qddaiw2d5z";
+  };
+
+  checkInputs = [ pytest pytest-repeat pytest-faulthandler pytest-timeout mock joblib ];
+  propagatedBuildInputs = [
+      click cloudpickle dask msgpack psutil six
+      sortedcontainers tblib toolz tornado zict pyyaml
+  ] ++ lib.optional (pythonOlder "3.2") [ futures ]
+    ++ lib.optional (pythonOlder "3.4") [ singledispatch ];
+
+  # tests take about 10-15 minutes
+  # ignore 5 cli tests out of 1000 total tests that fail due to subprocesses
+  # these tests are not critical to the library (only the cli)
+  checkPhase = ''
+    py.test distributed -m "not avoid-travis" -r s --timeout-method=thread --timeout=0 --durations=20 --ignore="distributed/cli/tests"
+  '';
+
+  # when tested random tests would fail and not repeatably
+  doCheck = false;
+
+  meta = {
+    description = "Distributed computation in Python.";
+    homepage = http://distributed.readthedocs.io/en/latest/;
+    license = lib.licenses.bsd3;
+    maintainers = with lib.maintainers; [ teh costrouc ];
+  };
+}
diff --git a/pkgs/development/python-modules/django-raster/default.nix b/pkgs/development/python-modules/django-raster/default.nix
index 19ef783fe759..39634b8d293a 100644
--- a/pkgs/development/python-modules/django-raster/default.nix
+++ b/pkgs/development/python-modules/django-raster/default.nix
@@ -1,11 +1,13 @@
-{ stdenv, buildPythonPackage, fetchPypi,
+{ stdenv, buildPythonPackage, fetchPypi, isPy3k,
   numpy, django_colorful, pillow, psycopg2,
-  pyparsing, django, celery
+  pyparsing, django_2_1, celery, boto3
 }:
 buildPythonPackage rec {
   version = "0.6";
   pname = "django-raster";
 
+  disabled = !isPy3k;
+
   src = fetchPypi {
     inherit pname version;
     sha256 = "9a0f8e71ebeeeb5380c6ca68e027e9de335f43bc15e89dd22e7a470c4eb7aeb8";
@@ -15,7 +17,7 @@ buildPythonPackage rec {
   doCheck = false;
 
   propagatedBuildInputs = [ numpy django_colorful pillow psycopg2
-                            pyparsing django celery ];
+                            pyparsing django_2_1 celery boto3 ];
 
   meta = with stdenv.lib; {
     description = "Basic raster data integration for Django";
diff --git a/pkgs/development/python-modules/eth-hash/default.nix b/pkgs/development/python-modules/eth-hash/default.nix
new file mode 100644
index 000000000000..ce5fce1b1cba
--- /dev/null
+++ b/pkgs/development/python-modules/eth-hash/default.nix
@@ -0,0 +1,45 @@
+{ lib, fetchPypi, buildPythonPackage, pythonOlder, pytest, pysha3, pycrypto,
+  pycryptodome }:
+
+buildPythonPackage rec {
+  pname = "eth-hash";
+  version = "0.2.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0xpiz0wrxxj11ki9yapvsibl25qnki90bl3d39nqascg14nw17a9";
+  };
+
+  checkInputs = [ pytest ];
+
+  propagatedBuildInputs = [ pysha3 pycrypto pycryptodome ];
+
+  # setuptools-markdown uses pypandoc which is broken at the moment
+  preConfigure = ''
+    substituteInPlace setup.py --replace \'setuptools-markdown\' ""
+  '';
+
+  # Run tests separately because we don't want to run tests on tests/backends/
+  # but only on its selected subdirectories. Also, the directories under
+  # tests/backends/ must be run separately because they have identically named
+  # test files so pytest would raise errors because of that.
+  #
+  # Also, tests in tests/core/test_import.py are broken so just ignore them:
+  # https://github.com/ethereum/eth-hash/issues/25
+  # There is a pull request to fix the tests:
+  # https://github.com/ethereum/eth-hash/pull/26
+  checkPhase = ''
+    pytest tests/backends/pycryptodome/
+    pytest tests/backends/pysha3/
+    # pytest tests/core/
+  '';
+
+  disabled = pythonOlder "3.5";
+
+  meta = {
+    description = "The Ethereum hashing function keccak256";
+    homepage = https://github.com/ethereum/eth-hash;
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ jluttine ];
+  };
+}
diff --git a/pkgs/development/python-modules/eth-typing/default.nix b/pkgs/development/python-modules/eth-typing/default.nix
new file mode 100644
index 000000000000..070923c83855
--- /dev/null
+++ b/pkgs/development/python-modules/eth-typing/default.nix
@@ -0,0 +1,35 @@
+{ lib, fetchFromGitHub, buildPythonPackage, pythonOlder, pytest }:
+
+buildPythonPackage rec {
+  pname = "eth-typing";
+  version = "1.3.0";
+
+  # Tests are missing from the PyPI source tarball so let's use GitHub
+  # https://github.com/ethereum/eth-typing/issues/8
+  src = fetchFromGitHub {
+    owner = "ethereum";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0703z7vlsfa3dvgcq22f9rzmj0svyp2a8wc7h73d0aac28ydhpv9";
+  };
+
+  # setuptools-markdown uses pypandoc which is broken at the moment
+  preConfigure = ''
+    substituteInPlace setup.py --replace \'setuptools-markdown\' ""
+  '';
+
+  disabled = pythonOlder "3.5";
+
+  checkInputs = [ pytest ];
+
+  checkPhase = ''
+    pytest .
+  '';
+
+  meta = {
+    description = "Common type annotations for Ethereum Python packages";
+    homepage = https://github.com/ethereum/eth-typing;
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ jluttine ];
+  };
+}
diff --git a/pkgs/development/python-modules/eth-utils/default.nix b/pkgs/development/python-modules/eth-utils/default.nix
new file mode 100644
index 000000000000..cae3f34f0c9f
--- /dev/null
+++ b/pkgs/development/python-modules/eth-utils/default.nix
@@ -0,0 +1,35 @@
+{ lib, fetchFromGitHub, buildPythonPackage, pytest, eth-hash, eth-typing,
+  cytoolz, hypothesis }:
+
+buildPythonPackage rec {
+  pname = "eth-utils";
+  version = "1.2.1";
+
+  # Tests are missing from the PyPI source tarball so let's use GitHub
+  # https://github.com/ethereum/eth-utils/issues/130
+  src = fetchFromGitHub {
+    owner = "ethereum";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0g8f5vdjh7qd8kgsqqd9qkm6m79rx3w9yp0rf9vpdsv3xfzrkh1w";
+  };
+
+  checkInputs = [ pytest hypothesis ];
+  propagatedBuildInputs = [ eth-hash eth-typing cytoolz ];
+
+  # setuptools-markdown uses pypandoc which is broken at the moment
+  preConfigure = ''
+    substituteInPlace setup.py --replace \'setuptools-markdown\' ""
+  '';
+
+  checkPhase = ''
+    pytest .
+  '';
+
+  meta = {
+    description = "Common utility functions for codebases which interact with ethereum";
+    homepage = https://github.com/ethereum/eth-utils;
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ jluttine ];
+  };
+}
diff --git a/pkgs/development/python-modules/eve/default.nix b/pkgs/development/python-modules/eve/default.nix
index b8daa5304c77..b145f1b2e2b8 100644
--- a/pkgs/development/python-modules/eve/default.nix
+++ b/pkgs/development/python-modules/eve/default.nix
@@ -1,5 +1,5 @@
-{ stdenv, buildPythonPackage, fetchPypi, flask, jinja2, itsdangerous, events
-, markupsafe, pymongo, flask-pymongo, werkzeug, simplejson, cerberus }:
+{ stdenv, buildPythonPackage, fetchPypi, flask, events
+, pymongo, simplejson, cerberus }:
 
 buildPythonPackage rec {
   pname = "Eve";
@@ -13,14 +13,9 @@ buildPythonPackage rec {
   propagatedBuildInputs = [
     cerberus
     events
-    flask-pymongo
     flask
-    itsdangerous
-    jinja2
-    markupsafe
     pymongo
     simplejson
-    werkzeug
   ];
 
   # tests call a running mongodb instance
diff --git a/pkgs/development/python-modules/fiona/default.nix b/pkgs/development/python-modules/fiona/default.nix
index e6d347b440d3..0e6ab256d0d8 100644
--- a/pkgs/development/python-modules/fiona/default.nix
+++ b/pkgs/development/python-modules/fiona/default.nix
@@ -12,6 +12,8 @@ buildPythonPackage rec {
     sha256 = "a156129f0904cb7eb24aa0745b6075da54f2c31db168ed3bcac8a4bd716d77b2";
   };
 
+  CXXFLAGS = stdenv.lib.optionalString stdenv.cc.isClang "-std=c++11";
+
   buildInputs = [
     gdal
   ];
diff --git a/pkgs/development/python-modules/flask-ldap-login/default.nix b/pkgs/development/python-modules/flask-ldap-login/default.nix
index b95e694a232f..99b57dac816f 100644
--- a/pkgs/development/python-modules/flask-ldap-login/default.nix
+++ b/pkgs/development/python-modules/flask-ldap-login/default.nix
@@ -1,16 +1,27 @@
-{ stdenv, buildPythonPackage, fetchPypi
+{ stdenv, buildPythonPackage, isPy3k, fetchFromGitHub, fetchpatch
 , flask, flask_wtf, flask_testing, ldap
 , mock, nose }:
 
 buildPythonPackage rec {
   pname = "flask-ldap-login";
-  version = "0.3.0";
+  version = "0.3.4";
+  disabled = isPy3k;
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "085rik7q8xrp5g95346p6jcp9m2yr8kamwb2kbiw4q0b0fpnnlgq";
+  src = fetchFromGitHub {
+    owner = "ContinuumIO";
+    repo = "flask-ldap-login";
+    rev = version;
+    sha256 = "1l6zahqhwn5g9fmhlvjv80288b5h2fk5mssp7amdkw5ysk570wzp";
   };
 
+  patches = [
+    # Fix flask_wtf>=0.9.0 incompatibility. See https://github.com/ContinuumIO/flask-ldap-login/issues/41
+    (fetchpatch {
+      url = https://github.com/ContinuumIO/flask-ldap-login/commit/ed08c03c818dc63b97b01e2e7c56862eaa6daa43.patch;
+      sha256 = "19pkhbldk8jq6m10kdylvjf1c8m84fvvj04v5qda4cjyks15aq48";
+    })
+  ];
+
   checkInputs = [ nose mock flask_testing ];
   propagatedBuildInputs = [ flask flask_wtf ldap ];
 
diff --git a/pkgs/development/python-modules/genanki/default.nix b/pkgs/development/python-modules/genanki/default.nix
new file mode 100644
index 000000000000..bcc462e7237d
--- /dev/null
+++ b/pkgs/development/python-modules/genanki/default.nix
@@ -0,0 +1,38 @@
+{ stdenv, buildPythonPackage, fetchPypi, isPy3k
+, cached-property, frozendict, pystache, pyyaml, pytest, pytestrunner
+}:
+
+buildPythonPackage rec {
+  pname = "genanki";
+  version = "0.6.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0xj8yd3acl8h457sh42balvcd0z4mg5idd4q63f7qlfzc5wgbb74";
+  };
+
+  propagatedBuildInputs = [
+		pytestrunner
+    cached-property
+    frozendict
+    pystache
+    pyyaml
+  ];
+
+  checkInputs = [ pytest ];
+
+  disabled = !isPy3k;
+
+  # relies on upstream anki
+	doCheck = false;
+  checkPhase = ''
+    py.test
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = http://github.com/kerrickstaley/genanki;
+    description = "Generate Anki decks programmatically";
+    license = licenses.mit;
+    maintainers = with maintainers; [ teto ];
+  };
+}
diff --git a/pkgs/development/python-modules/geopandas/default.nix b/pkgs/development/python-modules/geopandas/default.nix
index cab25a60f3b4..976df0952615 100644
--- a/pkgs/development/python-modules/geopandas/default.nix
+++ b/pkgs/development/python-modules/geopandas/default.nix
@@ -1,23 +1,23 @@
 { stdenv, buildPythonPackage, fetchFromGitHub
 , pandas, shapely, fiona, descartes, pyproj
-, pytest }:
+, pytest, Rtree }:
 
 buildPythonPackage rec {
   pname = "geopandas";
-  version = "0.3.0";
+  version = "0.4.0";
   name = pname + "-" + version;
 
   src = fetchFromGitHub {
     owner = "geopandas";
     repo = "geopandas";
     rev = "v${version}";
-    sha256 = "0maafafr7sjjmlg2f19bizg06c8a5z5igmbcgq6kgmi7rklx8xxz";
+    sha256 = "025zpgck5pnmidvzk0805pr345rd7k6z66qb2m34gjh1814xjkhv";
   };
 
-  checkInputs = [ pytest ];
+  checkInputs = [ pytest Rtree ];
 
   checkPhase = ''
-    py.test geopandas
+    py.test geopandas -m "not web"
   '';
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/gmpy/default.nix b/pkgs/development/python-modules/gmpy/default.nix
new file mode 100644
index 000000000000..81af4b5e5501
--- /dev/null
+++ b/pkgs/development/python-modules/gmpy/default.nix
@@ -0,0 +1,24 @@
+{ buildPythonPackage, fetchurl, isPyPy, gmp } :
+
+let
+  pname = "gmpy";
+  version = "1.17";
+in
+
+buildPythonPackage {
+  inherit pname version;
+
+  disabled = isPyPy;
+
+  src = fetchurl {
+    url = "mirror://pypi/g/gmpy/${pname}-${version}.zip";
+    sha256 = "1a79118a5332b40aba6aa24b051ead3a31b9b3b9642288934da754515da8fa14";
+  };
+
+  buildInputs = [ gmp ];
+
+  meta = {
+    description = "GMP or MPIR interface to Python 2.4+ and 3.x";
+    homepage = http://code.google.com/p/gmpy/;
+  };
+}
diff --git a/pkgs/development/python-modules/gmpy2/default.nix b/pkgs/development/python-modules/gmpy2/default.nix
new file mode 100644
index 000000000000..5d1f82356a01
--- /dev/null
+++ b/pkgs/development/python-modules/gmpy2/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, buildPythonPackage, fetchurl, isPyPy, gmp, mpfr, libmpc } :
+
+let
+  pname = "gmpy2";
+  version = "2.0.8";
+in
+
+buildPythonPackage {
+  inherit pname version;
+
+  disabled = isPyPy;
+
+  src = fetchurl {
+    url = "mirror://pypi/g/gmpy2/${pname}-${version}.zip";
+    sha256 = "0grx6zmi99iaslm07w6c2aqpnmbkgrxcqjrqpfq223xri0r3w8yx";
+  };
+
+  buildInputs = [ gmp mpfr libmpc ];
+
+  meta = with stdenv.lib; {
+    description = "GMP/MPIR, MPFR, and MPC interface to Python 2.6+ and 3.x";
+    homepage = http://code.google.com/p/gmpy/;
+    license = licenses.gpl3Plus;
+  };
+}
diff --git a/pkgs/development/python-modules/inflect/default.nix b/pkgs/development/python-modules/inflect/default.nix
new file mode 100644
index 000000000000..94b0fc801fa9
--- /dev/null
+++ b/pkgs/development/python-modules/inflect/default.nix
@@ -0,0 +1,15 @@
+{ buildPythonPackage, fetchPypi, setuptools_scm, nose, six }:
+
+buildPythonPackage rec {
+  pname = "inflect";
+  version = "1.0.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0ll34l5b2wsbcw9i2hvkhmq6szxrp7fzc2hjmpz1cvny81bhg3kx";
+  };
+
+  buildInputs = [ setuptools_scm ];
+  checkInputs = [ nose ];
+  propagatedBuildInputs = [ six ];
+}
diff --git a/pkgs/development/python-modules/irc/default.nix b/pkgs/development/python-modules/irc/default.nix
new file mode 100644
index 000000000000..2df571dde8e6
--- /dev/null
+++ b/pkgs/development/python-modules/irc/default.nix
@@ -0,0 +1,25 @@
+{ buildPythonPackage, fetchPypi
+, six, jaraco_logging, jaraco_text, jaraco_stream, pytz, jaraco_itertools
+, setuptools_scm }:
+
+buildPythonPackage rec {
+  pname = "irc";
+  version = "16.4";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0l2fh2aqs54w4xihckgyz575qkd6mgzbp3zll4g0z9j6h88ghqf1";
+  };
+
+  doCheck = false;
+
+  buildInputs = [ setuptools_scm ];
+  propagatedBuildInputs = [
+    six
+    jaraco_logging
+    jaraco_text
+    jaraco_stream
+    pytz
+    jaraco_itertools
+  ];
+}
diff --git a/pkgs/development/python-modules/jaraco_classes/default.nix b/pkgs/development/python-modules/jaraco_classes/default.nix
new file mode 100644
index 000000000000..35c70c3c0330
--- /dev/null
+++ b/pkgs/development/python-modules/jaraco_classes/default.nix
@@ -0,0 +1,13 @@
+{ buildPythonPackage, fetchPypi, setuptools_scm, six }:
+
+buildPythonPackage rec {
+  pname = "jaraco.classes";
+  version = "1.5";
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "002zsifikv6qwigkjlij7jhyvbwv6793m8h9ckbkx2jizmgc80fi";
+  };
+  doCheck = false;
+  buildInputs = [ setuptools_scm ];
+  propagatedBuildInputs = [ six ];
+}
diff --git a/pkgs/development/python-modules/jaraco_collections/default.nix b/pkgs/development/python-modules/jaraco_collections/default.nix
new file mode 100644
index 000000000000..0f2e53715cc3
--- /dev/null
+++ b/pkgs/development/python-modules/jaraco_collections/default.nix
@@ -0,0 +1,20 @@
+{ buildPythonPackage, fetchPypi, setuptools_scm
+, six, jaraco_classes }:
+
+buildPythonPackage rec {
+  pname = "jaraco.collections";
+  version = "1.5.3";
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "05cmcq5k39bx73kjr00xfm2yr0npyrv89cxdh41ni6x8pkki1jyr";
+  };
+
+  doCheck = false;
+  buildInputs = [ setuptools_scm ];
+  propagatedBuildInputs = [ six jaraco_classes ];
+
+  # break dependency cycle
+  patchPhase = ''
+    sed -i "/'jaraco.text',/d" setup.py
+  '';
+}
diff --git a/pkgs/development/python-modules/jaraco_itertools/default.nix b/pkgs/development/python-modules/jaraco_itertools/default.nix
new file mode 100644
index 000000000000..c7a66c890407
--- /dev/null
+++ b/pkgs/development/python-modules/jaraco_itertools/default.nix
@@ -0,0 +1,14 @@
+{ buildPythonPackage, fetchPypi, setuptools_scm
+, inflect, more-itertools, six }:
+
+buildPythonPackage rec {
+  pname = "jaraco.itertools";
+  version = "2.4";
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "18cwjbnnnbwld70s3r24sys3blcss84d9ha9hhxsg2d35f9vywd5";
+  };
+  doCheck = false;
+  buildInputs = [ setuptools_scm ];
+  propagatedBuildInputs = [ inflect more-itertools six ];
+}
diff --git a/pkgs/development/python-modules/jaraco_logging/default.nix b/pkgs/development/python-modules/jaraco_logging/default.nix
new file mode 100644
index 000000000000..2aeb0dc3fa40
--- /dev/null
+++ b/pkgs/development/python-modules/jaraco_logging/default.nix
@@ -0,0 +1,14 @@
+{ buildPythonPackage, fetchPypi, setuptools_scm
+, tempora, six }:
+
+buildPythonPackage rec {
+  pname = "jaraco.logging";
+  version = "1.5.2";
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "199pgwx9ziab3gxg6p0c24z8dp3bjpsvvshnmlph9zjsssq0xc93";
+  };
+  doCheck = false;
+  buildInputs = [ setuptools_scm ];
+  propagatedBuildInputs = [ tempora six ];
+}
diff --git a/pkgs/development/python-modules/jaraco_stream/default.nix b/pkgs/development/python-modules/jaraco_stream/default.nix
new file mode 100644
index 000000000000..5788a52dfff7
--- /dev/null
+++ b/pkgs/development/python-modules/jaraco_stream/default.nix
@@ -0,0 +1,13 @@
+{ buildPythonPackage, fetchPypi, setuptools_scm, six }:
+
+buildPythonPackage rec {
+  pname = "jaraco.stream";
+  version = "1.2";
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "06qsjyab56vi0ikr819ghb7f8ymf09n92vla7gcn8j12113m2mib";
+  };
+  doCheck = false;
+  buildInputs = [ setuptools_scm ];
+  propagatedBuildInputs = [ six ];
+}
diff --git a/pkgs/development/python-modules/jaraco_text/default.nix b/pkgs/development/python-modules/jaraco_text/default.nix
new file mode 100644
index 000000000000..01309e0c4d92
--- /dev/null
+++ b/pkgs/development/python-modules/jaraco_text/default.nix
@@ -0,0 +1,14 @@
+{ buildPythonPackage, fetchPypi, setuptools_scm
+, jaraco_functools, jaraco_collections }:
+
+buildPythonPackage rec {
+  pname = "jaraco.text";
+  version = "1.10.1";
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "07ccc0zc28sb1kyfyviw3n8f581qynrshqvqg1xsp4gkf1m2ibhh";
+  };
+  doCheck = false;
+  buildInputs =[ setuptools_scm ];
+  propagatedBuildInputs = [ jaraco_functools jaraco_collections ];
+}
diff --git a/pkgs/development/python-modules/joblib/default.nix b/pkgs/development/python-modules/joblib/default.nix
index 7164fd1197b8..d96752ba05f3 100644
--- a/pkgs/development/python-modules/joblib/default.nix
+++ b/pkgs/development/python-modules/joblib/default.nix
@@ -1,29 +1,36 @@
 { lib
 , buildPythonPackage
-, fetchPypi
+, fetchFromGitHub
 , sphinx
 , numpydoc
 , pytest
+, python-lz4
 }:
 
 
 buildPythonPackage rec {
   pname = "joblib";
-  version = "0.12.3";
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "333b9bf16ff015d6b56bf80b9831afdd243443cb84c7ff7b6e342f117e354c42";
+  version = "0.12.4";
+
+  # get full repository inorder to run tests
+  src = fetchFromGitHub {
+    owner = "joblib";
+    repo = pname;
+    rev = version;
+    sha256 = "06zszgp7wpa4jr554wkk6kkigp4k9n5ad5h08i6w9qih963rlimb";
   };
 
   checkInputs = [ sphinx numpydoc pytest ];
+  propagatedBuildInputs = [ python-lz4 ];
 
   checkPhase = ''
-    py.test -k 'not test_disk_used and not test_nested_parallel_warnings' joblib/test
+    py.test joblib
   '';
 
   meta = {
     description = "Lightweight pipelining: using Python functions as pipeline jobs";
     homepage = https://pythonhosted.org/joblib/;
     license = lib.licenses.bsd3;
+    maintainers = with lib.maintainers; [ costrouc ];
   };
 }
diff --git a/pkgs/development/python-modules/jupyterlab_launcher/default.nix b/pkgs/development/python-modules/jupyterlab_launcher/default.nix
index 1831b47ee792..af29b9155a58 100644
--- a/pkgs/development/python-modules/jupyterlab_launcher/default.nix
+++ b/pkgs/development/python-modules/jupyterlab_launcher/default.nix
@@ -1,7 +1,8 @@
-{ lib, buildPythonPackage, fetchPypi, jsonschema, notebook }:
+{ lib, buildPythonPackage, fetchPypi, jsonschema, notebook, pythonOlder }:
 buildPythonPackage rec {
   pname = "jupyterlab_launcher";
   version = "0.13.1";
+  disabled = pythonOlder "3.5";
 
   src = fetchPypi {
     inherit pname version;
diff --git a/pkgs/development/python-modules/keras/default.nix b/pkgs/development/python-modules/keras/default.nix
index ea699c9c04a9..43f3bd935d24 100644
--- a/pkgs/development/python-modules/keras/default.nix
+++ b/pkgs/development/python-modules/keras/default.nix
@@ -25,6 +25,14 @@ buildPythonPackage rec {
     keras-applications keras-preprocessing
   ];
 
+  # Keras 2.2.2 expects older versions of keras_applications
+  # and keras_preprocessing. These substitutions can be removed
+  # for for the next Keras release.
+  postPatch = ''
+    substituteInPlace setup.py --replace "keras_applications==1.0.4" "keras_applications==1.0.5"
+    substituteInPlace setup.py --replace "keras_preprocessing==1.0.2" "keras_preprocessing==1.0.3"
+  '';
+
   # Couldn't get tests working
   doCheck = false;
 
diff --git a/pkgs/development/python-modules/kubernetes/default.nix b/pkgs/development/python-modules/kubernetes/default.nix
index 030766eb6982..55d29729db83 100644
--- a/pkgs/development/python-modules/kubernetes/default.nix
+++ b/pkgs/development/python-modules/kubernetes/default.nix
@@ -1,5 +1,5 @@
 { stdenv, buildPythonPackage, fetchPypi, pythonAtLeast,
-  ipaddress, websocket_client, urllib3, pyyaml, requests_oauthlib, python-dateutil, google_auth,
+  ipaddress, websocket_client, urllib3, pyyaml, requests_oauthlib, python-dateutil, google_auth, adal,
   isort, pytest, coverage, mock, sphinx, autopep8, pep8, codecov, recommonmark, nose }:
 
 buildPythonPackage rec {
@@ -27,7 +27,7 @@ buildPythonPackage rec {
   };
 
   checkInputs = [ isort coverage pytest mock sphinx autopep8 pep8 codecov recommonmark nose ];
-  propagatedBuildInputs = [ ipaddress websocket_client urllib3 pyyaml requests_oauthlib python-dateutil google_auth ];
+  propagatedBuildInputs = [ ipaddress websocket_client urllib3 pyyaml requests_oauthlib python-dateutil google_auth adal ];
 
   meta = with stdenv.lib; {
     description = "Kubernetes python client";
diff --git a/pkgs/development/python-modules/ledgerblue/default.nix b/pkgs/development/python-modules/ledgerblue/default.nix
index 4f6c2a96c566..d324afcc647a 100644
--- a/pkgs/development/python-modules/ledgerblue/default.nix
+++ b/pkgs/development/python-modules/ledgerblue/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchPypi, buildPythonPackage, hidapi
-, pycrypto, pillow, protobuf, future, ecpy
+, pycrypto, pillow, protobuf, future, ecpy, python-u2flib-host, pycryptodomex
 }:
 
 buildPythonPackage rec {
@@ -11,7 +11,12 @@ buildPythonPackage rec {
     sha256 = "3969b3c375c0f3fb60ff1645621ebf2f39fb697a53851620705f27ed7b283097";
   };
 
-  buildInputs = [ hidapi pycrypto pillow protobuf future ecpy ];
+  propagatedBuildInputs = [
+    hidapi pycrypto pillow protobuf future ecpy python-u2flib-host pycryptodomex
+  ];
+
+  # No tests
+  doCheck = false;
 
   meta = with stdenv.lib; {
     description = "Python library to communicate with Ledger Blue/Nano S";
diff --git a/pkgs/development/python-modules/libagent/default.nix b/pkgs/development/python-modules/libagent/default.nix
index 950a0dd5ba6f..f70d538bb8d0 100644
--- a/pkgs/development/python-modules/libagent/default.nix
+++ b/pkgs/development/python-modules/libagent/default.nix
@@ -1,6 +1,6 @@
-{ stdenv, fetchPypi, buildPythonPackage, ed25519, ecdsa
-, semver, keepkey, trezor, mnemonic, ledgerblue, unidecode, mock, pytest
-}:
+{ stdenv, fetchPypi, buildPythonPackage, ed25519, ecdsa , semver, mnemonic,
+  unidecode, mock, pytest , backports-shutil-which, ConfigArgParse,
+  pythondaemon, pymsgbox }:
 
 buildPythonPackage rec {
   pname = "libagent";
@@ -11,12 +11,8 @@ buildPythonPackage rec {
     sha256 = "55af1ad2a6c95aef1fc5588c2002c9e54edbb14e248776b64d00628235ceda3e";
   };
 
-  buildInputs = [
-    ed25519 ecdsa semver keepkey
-    trezor mnemonic ledgerblue
-  ];
-
-  propagatedBuildInputs = [ unidecode ];
+  propagatedBuildInputs = [ unidecode backports-shutil-which ConfigArgParse
+    pythondaemon pymsgbox ecdsa ed25519 mnemonic semver ];
 
   checkInputs = [ mock pytest ];
 
diff --git a/pkgs/development/python-modules/libnacl/default.nix b/pkgs/development/python-modules/libnacl/default.nix
index a8acb4dc9696..c575e5594be3 100644
--- a/pkgs/development/python-modules/libnacl/default.nix
+++ b/pkgs/development/python-modules/libnacl/default.nix
@@ -14,8 +14,9 @@ buildPythonPackage rec {
   buildInputs = [ pytest ];
   propagatedBuildInputs = [ libsodium ];
 
-  postPatch = ''
-    substituteInPlace "./libnacl/__init__.py" --replace "ctypes.cdll.LoadLibrary('libsodium.so')" "ctypes.cdll.LoadLibrary('${libsodium}/lib/libsodium.so')"
+  postPatch =
+    let soext = stdenv.hostPlatform.extensions.sharedLibrary; in ''
+    substituteInPlace "./libnacl/__init__.py" --replace "ctypes.cdll.LoadLibrary('libsodium${soext}')" "ctypes.cdll.LoadLibrary('${libsodium}/lib/libsodium${soext}')"
   '';
 
   checkPhase = ''
@@ -27,6 +28,6 @@ buildPythonPackage rec {
     description = "Python bindings for libsodium based on ctypes";
     homepage = https://pypi.python.org/pypi/libnacl;
     license = licenses.asl20;
-    platforms = platforms.linux;
+    platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/python-modules/libusb1/default.nix b/pkgs/development/python-modules/libusb1/default.nix
index 245ea90038ea..8a9b5da68ef9 100644
--- a/pkgs/development/python-modules/libusb1/default.nix
+++ b/pkgs/development/python-modules/libusb1/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, buildPythonPackage, fetchPypi, python, libusb1 }:
+{ stdenv, lib, buildPythonPackage, fetchPypi, python, libusb1, pytest }:
 
 buildPythonPackage rec {
   pname = "libusb1";
@@ -9,7 +9,7 @@ buildPythonPackage rec {
     sha256 = "a49917a2262cf7134396f6720c8be011f14aabfc5cdc53f880cc672c0f39d271";
   };
 
-  postPatch = lib.optionalString stdenv.isLinux ''
+  postPatch = ''
     substituteInPlace usb1/libusb1.py --replace \
       "ctypes.util.find_library(base_name)" \
       "'${libusb1}/lib/libusb-1.0${stdenv.hostPlatform.extensions.sharedLibrary}'"
@@ -17,8 +17,12 @@ buildPythonPackage rec {
 
   buildInputs = [ libusb1 ];
 
+  checkInputs = [ pytest ];
+
   checkPhase = ''
-    ${python.interpreter} -m usb1.testUSB1
+    # USBPollerThread is unreliable. Let's not test it.
+    # See: https://github.com/vpelletier/python-libusb1/issues/16
+    py.test -k 'not testUSBPollerThreadExit' usb1/testUSB1.py
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/python-modules/locustio/default.nix b/pkgs/development/python-modules/locustio/default.nix
index c3e27c8b36a0..18875f840644 100644
--- a/pkgs/development/python-modules/locustio/default.nix
+++ b/pkgs/development/python-modules/locustio/default.nix
@@ -1,8 +1,8 @@
 { buildPythonPackage
-, fetchPypi
+, fetchFromGitHub
 , mock
 , unittest2
-, msgpack-python
+, msgpack
 , requests
 , flask
 , gevent
@@ -11,18 +11,16 @@
 
 buildPythonPackage rec {
   pname = "locustio";
-  version = "0.8.1";
+  version = "0.9.0";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "64583987ba1c330bb071aee3e29d2eedbfb7c8b342fa064bfb74fafcff660d61";
+  src = fetchFromGitHub {
+    owner = "locustio";
+    repo = "locust";
+    rev = "${version}";
+    sha256 = "1645d63ig4ymw716b6h53bhmjqqc13p9r95k1xfx66ck6vdqnisd";
   };
 
-  patchPhase = ''
-    sed -i s/"pyzmq=="/"pyzmq>="/ setup.py
-  '';
-
-  propagatedBuildInputs = [ msgpack-python requests flask gevent pyzmq ];
+  propagatedBuildInputs = [ msgpack requests flask gevent pyzmq ];
   buildInputs = [ mock unittest2 ];
 
   meta = {
diff --git a/pkgs/development/python-modules/mahotas/default.nix b/pkgs/development/python-modules/mahotas/default.nix
new file mode 100644
index 000000000000..a7e92e0b5b8e
--- /dev/null
+++ b/pkgs/development/python-modules/mahotas/default.nix
@@ -0,0 +1,33 @@
+{ buildPythonPackage, fetchFromGitHub, nose, pillow, scipy, numpy, imread, stdenv }:
+
+buildPythonPackage rec {
+  pname = "mahotas";
+  version = "1.4.2";
+
+  src = fetchFromGitHub {
+    owner = "luispedro";
+    repo = "mahotas";
+    rev = "v${version}";
+    sha256 = "1d2hciag5sxw00qj7qz7lbna477ifzmpgl0cv3xqzjkhkn5m4d7r";
+  };
+
+  # remove this as soon as https://github.com/luispedro/mahotas/issues/97 is fixed
+  patches = [ ./disable-impure-tests.patch ];
+
+  propagatedBuildInputs = [ numpy imread pillow scipy ];
+  checkInputs = [ nose ];
+
+  checkPhase= ''
+    python setup.py test
+  '';
+
+  disabled = stdenv.isi686; # Failing tests
+
+  meta = with stdenv.lib; {
+    description = "Computer vision package based on numpy";
+    homepage = http://mahotas.readthedocs.io/;
+    maintainers = with maintainers; [ luispedro ];
+    license = licenses.mit;
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/development/python-modules/mahotas/disable-impure-tests.patch b/pkgs/development/python-modules/mahotas/disable-impure-tests.patch
new file mode 100644
index 000000000000..f19bd329e662
--- /dev/null
+++ b/pkgs/development/python-modules/mahotas/disable-impure-tests.patch
@@ -0,0 +1,76 @@
+diff --git a/mahotas/tests/test_colors.py b/mahotas/tests/test_colors.py
+index 8a8183b..0d34c9f 100644
+--- a/mahotas/tests/test_colors.py
++++ b/mahotas/tests/test_colors.py
+@@ -2,7 +2,9 @@ import mahotas
+ import numpy as np
+ from mahotas.tests.utils import luispedro_jpg
+ from mahotas.colors import rgb2xyz, rgb2lab, xyz2rgb, rgb2grey, rgb2sepia
++from nose.tools import nottest
+ 
++@nottest
+ def test_colors():
+     f = luispedro_jpg()
+     lab = rgb2lab(f)
+diff --git a/mahotas/tests/test_features_shape.py b/mahotas/tests/test_features_shape.py
+index 462f467..2381793 100644
+--- a/mahotas/tests/test_features_shape.py
++++ b/mahotas/tests/test_features_shape.py
+@@ -2,6 +2,7 @@ import mahotas.features.shape
+ import numpy as np
+ import mahotas as mh
+ from mahotas.features.shape import roundness, eccentricity
++from nose.tools import nottest
+ 
+ def test_eccentricity():
+     D = mh.disk(32, 2)
+@@ -29,6 +30,7 @@ def test_zeros():
+     I[8:4:12] = 1
+     assert eccentricity(I) == 0
+ 
++@nottest
+ def test_ellipse_axes():
+     Y,X = np.mgrid[:1024,:1024]
+     Y = Y/1024.
+diff --git a/mahotas/tests/test_moments.py b/mahotas/tests/test_moments.py
+index 686c7c3..ba3487b 100644
+--- a/mahotas/tests/test_moments.py
++++ b/mahotas/tests/test_moments.py
+@@ -1,6 +1,7 @@
+ import numpy as np
+ import mahotas as mh
+ from mahotas.features.moments import moments
++from nose.tools import nottest
+ 
+ def _slow(A, p0, p1, cm):
+     c0,c1 = cm
+@@ -28,7 +29,7 @@ def test_against_slow():
+     yield perform, 1, 2, (0, 0), A
+     yield perform, 1, 0, (0, 0), A
+ 
+-
++@nottest
+ def test_normalize():
+     A,B = np.meshgrid(np.arange(128),np.arange(128))
+     for p0,p1 in [(1,1), (1,2), (2,1), (2,2)]:
+diff --git a/mahotas/tests/test_texture.py b/mahotas/tests/test_texture.py
+index 7e101ba..af1305d 100644
+--- a/mahotas/tests/test_texture.py
++++ b/mahotas/tests/test_texture.py
+@@ -2,7 +2,7 @@ import numpy as np
+ from mahotas.features import texture
+ import mahotas as mh
+ import mahotas.features._texture
+-from nose.tools import raises
++from nose.tools import raises, nottest
+ 
+ def test__cooccurence():
+     cooccurence = mahotas.features._texture.cooccurence
+@@ -149,6 +149,7 @@ def test_float_haralick():
+     A[2,2]=12
+     texture.haralick(A)
+ 
++@nottest
+ def test_haralick3d():
+     np.random.seed(22)
+     img = mahotas.stretch(255*np.random.rand(20,20,4))
diff --git a/pkgs/development/python-modules/markerlib/default.nix b/pkgs/development/python-modules/markerlib/default.nix
new file mode 100644
index 000000000000..640b11a6f280
--- /dev/null
+++ b/pkgs/development/python-modules/markerlib/default.nix
@@ -0,0 +1,30 @@
+{ stdenv
+, buildPythonPackage
+, fetchPypi
+, setuptools
+, nose
+}:
+
+buildPythonPackage rec {
+  version = "0.6.0";
+  pname = "markerlib";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "2fdb3939441f5bf4f090b1979a34f84a11d33eed6c0e3995de88ae5c06b6e3ae";
+  };
+
+  buildInputs = [ setuptools ];
+  checkInputs = [ nose ];
+
+  checkPhase = ''
+    nosetests
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = https://bitbucket.org/dholth/markerlib/;
+    description = "A compiler for PEP 345 environment markers";
+    license = licenses.mit;
+    maintainers = [ maintainers.costrouc ];
+  };
+}
diff --git a/pkgs/development/python-modules/ncclient/default.nix b/pkgs/development/python-modules/ncclient/default.nix
index 9dc7710ff28f..9933e849d0be 100644
--- a/pkgs/development/python-modules/ncclient/default.nix
+++ b/pkgs/development/python-modules/ncclient/default.nix
@@ -2,6 +2,7 @@
 , buildPythonPackage
 , fetchPypi
 , paramiko
+, selectors2
 , lxml
 , libxml2
 , libxslt
@@ -21,7 +22,7 @@ buildPythonPackage rec {
   checkInputs = [ nose rednose ];
 
   propagatedBuildInputs = [
-    paramiko lxml libxml2 libxslt
+    paramiko lxml libxml2 libxslt selectors2
   ];
 
   checkPhase = ''
diff --git a/pkgs/development/python-modules/nilearn/default.nix b/pkgs/development/python-modules/nilearn/default.nix
index 93871d9a9a7e..bf8ae217705c 100644
--- a/pkgs/development/python-modules/nilearn/default.nix
+++ b/pkgs/development/python-modules/nilearn/default.nix
@@ -11,9 +11,13 @@ buildPythonPackage rec {
     sha256 = "5049363eb6da2e7c35589477dfc79bf69929ca66de2d7ed2e9dc07acf78636f4";
   };
 
-  checkPhase = "nosetests --exclude with_expand_user nilearn/tests";
+  # disable some failing tests
+  checkPhase = ''
+    nosetests nilearn/tests \
+    -e test_cache_mixin_with_expand_user -e test_clean_confounds -e test_detrend
+  '';
 
-  buildInputs = [ nose ];
+  checkInputs = [ nose ];
 
   propagatedBuildInputs = [
     matplotlib
diff --git a/pkgs/development/python-modules/nipype/default.nix b/pkgs/development/python-modules/nipype/default.nix
index 8b0ee06b3495..a092123da826 100644
--- a/pkgs/development/python-modules/nipype/default.nix
+++ b/pkgs/development/python-modules/nipype/default.nix
@@ -18,6 +18,8 @@
 , psutil
 , pydot
 , pytest
+, pytest_xdist
+, pytest-forked
 , scipy
 , simplejson
 , traits
@@ -47,8 +49,6 @@ buildPythonPackage rec {
   postPatch = ''
     substituteInPlace nipype/interfaces/base/tests/test_core.py \
       --replace "/usr/bin/env bash" "${bash}/bin/bash"
-
-    rm pytest.ini
   '';
 
   propagatedBuildInputs = [
@@ -56,7 +56,6 @@ buildPythonPackage rec {
     dateutil
     funcsigs
     future
-    futures
     networkx
     nibabel
     numpy
@@ -70,9 +69,10 @@ buildPythonPackage rec {
     xvfbwrapper
   ] ++ stdenv.lib.optional (!isPy3k) [
     configparser
+    futures
   ];
 
-  checkInputs = [ pytest mock pytestcov codecov which glibcLocales ];
+  checkInputs = [ pytest mock pytestcov pytest_xdist pytest-forked codecov which glibcLocales ];
 
   checkPhase = ''
     LC_ALL="en_US.UTF-8" py.test -v --doctest-modules nipype
diff --git a/pkgs/development/python-modules/ordered-set/default.nix b/pkgs/development/python-modules/ordered-set/default.nix
index bf20f7827be3..4044ad3f2fd1 100644
--- a/pkgs/development/python-modules/ordered-set/default.nix
+++ b/pkgs/development/python-modules/ordered-set/default.nix
@@ -1,10 +1,10 @@
-{ buildPythonPackage, fetchPypi, lib, pytest }:
+{ buildPythonPackage, fetchPypi, lib, pytest, pytestrunner }:
 
 buildPythonPackage rec {
   pname = "ordered-set";
   version = "3.0.1";
 
-  buildInputs = [ pytest ];
+  buildInputs = [ pytest pytestrunner ];
 
   src = fetchPypi {
     inherit pname version;
@@ -21,6 +21,3 @@ buildPythonPackage rec {
     maintainers = [ lib.maintainers.MostAwesomeDude ];
   };
 }
-
-
-
diff --git a/pkgs/development/python-modules/persistent/default.nix b/pkgs/development/python-modules/persistent/default.nix
index 542a68728af1..721385f3ed6a 100644
--- a/pkgs/development/python-modules/persistent/default.nix
+++ b/pkgs/development/python-modules/persistent/default.nix
@@ -1,12 +1,14 @@
 { buildPythonPackage
 , fetchPypi
 , zope_interface
+, sphinx, manuel
 }:
 
 buildPythonPackage rec {
   pname = "persistent";
   version = "4.4.2";
 
+  nativeBuildInputs = [ sphinx manuel ];
   propagatedBuildInputs = [ zope_interface ];
 
   src = fetchPypi {
diff --git a/pkgs/development/python-modules/phe/default.nix b/pkgs/development/python-modules/phe/default.nix
new file mode 100644
index 000000000000..b016a9bd92c3
--- /dev/null
+++ b/pkgs/development/python-modules/phe/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, buildPythonPackage, fetchPypi, isPyPy, isPy3k, click, gmpy2, numpy } :
+
+let
+  pname = "phe";
+  version = "1.4.0";
+in
+
+buildPythonPackage {
+  inherit pname version;
+
+  # https://github.com/n1analytics/python-paillier/issues/51
+  disabled = isPyPy || ! isPy3k;
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0wzlk7d24kp0f5kpm0kvvc88mm42144f5cg9pcpb1dsfha75qy5m";
+  };
+
+  buildInputs = [ click gmpy2 numpy ];
+
+  # 29/233 tests fail
+  doCheck = false;
+
+  meta = with stdenv.lib; {
+    description = "A library for Partially Homomorphic Encryption in Python";
+    homepage = https://github.com/n1analytics/python-paillier;
+    license = licenses.gpl3;
+  };
+}
diff --git a/pkgs/development/python-modules/phonopy/default.nix b/pkgs/development/python-modules/phonopy/default.nix
index cf15ccc18fce..903b2b90c300 100644
--- a/pkgs/development/python-modules/phonopy/default.nix
+++ b/pkgs/development/python-modules/phonopy/default.nix
@@ -10,9 +10,12 @@ buildPythonPackage rec {
   };
 
   propagatedBuildInputs = [ numpy pyyaml matplotlib h5py ];
-  
+
   checkPhase = ''
-    cd test/phonopy
+    cd test
+    # dynamic structure factor test ocassionally fails do to roundoff
+    # see issue https://github.com/atztogo/phonopy/issues/79
+    rm spectrum/test_dynamic_structure_factor.py
     ${python.interpreter} -m unittest discover -b
     cd ../..
   '';
@@ -24,4 +27,3 @@ buildPythonPackage rec {
     maintainers = with maintainers; [ psyanticy ];
   };
 }
-
diff --git a/pkgs/development/python-modules/py3status/default.nix b/pkgs/development/python-modules/py3status/default.nix
index 8a7dcc63f572..fd42faaad213 100644
--- a/pkgs/development/python-modules/py3status/default.nix
+++ b/pkgs/development/python-modules/py3status/default.nix
@@ -1,6 +1,7 @@
 { stdenv
 , buildPythonPackage
 , fetchPypi
+, fetchpatch
 , requests
 , pytz
 , tzlocal
@@ -19,10 +20,18 @@
 buildPythonPackage rec {
   pname = "py3status";
   version = "3.12";
+  
   src = fetchPypi {
     inherit pname version;
     sha256 = "c9ef49f72c2d83976d2841ab7e70faee3c77f4d7dbb2d3390ef0f0509473ea9a";
   };
+
+  # ImportError: cannot import name '_to_ascii'
+  patches = fetchpatch {
+    url = "${meta.homepage}/commit/8a48e01cb68b514b532f56037e4f5a6c19662de5.patch";
+    sha256 = "0v1yja5lvdjk6vh13lvh07n7aw5hjcy7v9lrs2dfb0y0cjw4kx9n";
+  };
+
   doCheck = false;
   propagatedBuildInputs = [ pytz requests tzlocal ];
   buildInputs = [ file ];
diff --git a/pkgs/development/python-modules/pycaption/default.nix b/pkgs/development/python-modules/pycaption/default.nix
index d4ed6088409b..468011e2a807 100644
--- a/pkgs/development/python-modules/pycaption/default.nix
+++ b/pkgs/development/python-modules/pycaption/default.nix
@@ -17,7 +17,7 @@ buildPythonPackage rec {
   prePatch = ''
     substituteInPlace setup.py \
       --replace 'beautifulsoup4>=4.2.1,<4.5.0' \
-                'beautifulsoup4>=4.2.1,<=4.6.0'
+                'beautifulsoup4>=4.2.1,<=4.6.3'
   '';
 
   # don't require enum34 on python >= 3.4
diff --git a/pkgs/development/python-modules/pydub/default.nix b/pkgs/development/python-modules/pydub/default.nix
index 28a76da4bd96..0770c78b674b 100644
--- a/pkgs/development/python-modules/pydub/default.nix
+++ b/pkgs/development/python-modules/pydub/default.nix
@@ -1,19 +1,29 @@
-{ stdenv, buildPythonPackage, fetchPypi, scipy, ffmpeg-full }:
+{ stdenv, buildPythonPackage, fetchFromGitHub, scipy, ffmpeg-full }:
 
 buildPythonPackage rec {
   pname = "pydub";
   version = "0.22.1";
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "20beff39e9959a3b2cb4392802aecb9b2417837fff635d2b00b5ef5f5326d313";
+  # pypi version doesn't include required data files for tests
+  src = fetchFromGitHub {
+    owner = "jiaaro";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0xqyvzgdfy01p98wnvsrf6iwdfq91ad377r6j12r8svm13ygx5bv";
   };
 
-  patches = [
-    ./pyaudioop-python3.patch
-  ];
+
+  # disable a test that fails on aarch64 due to rounding errors
+  postPatch = stdenv.lib.optionalString stdenv.isAarch64 ''
+    substituteInPlace test/test.py \
+      --replace "test_overlay_with_gain_change" "notest_overlay_with_gain_change"
+  '';
 
   checkInputs = [ scipy ffmpeg-full ];
 
+  checkPhase = ''
+    python test/test.py
+  '';
+
   meta = with stdenv.lib; {
     description = "Manipulate audio with a simple and easy high level interface.";
     homepage    = "http://pydub.com/";
diff --git a/pkgs/development/python-modules/pydub/pyaudioop-python3.patch b/pkgs/development/python-modules/pydub/pyaudioop-python3.patch
deleted file mode 100644
index 58c56db5b8a5..000000000000
--- a/pkgs/development/python-modules/pydub/pyaudioop-python3.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-diff --git i/pydub/pyaudioop.py w/pydub/pyaudioop.py
-index 8f8f017..aa6bb8c 100644
---- i/pydub/pyaudioop.py
-+++ w/pydub/pyaudioop.py
-@@ -1,4 +1,4 @@
--import __builtin__
-+import builtins
- import math
- import struct
- from fractions import gcd
-@@ -79,7 +79,7 @@ def _get_minval(size, signed=True):
- def _get_clipfn(size, signed=True):
-     maxval = _get_maxval(size, signed)
-     minval = _get_minval(size, signed)
--    return lambda val: __builtin__.max(min(val, maxval), minval)
-+    return lambda val: builtins.max(min(val, maxval), minval)
- 
- 
- def _overflow(val, size, signed=True):
-@@ -109,7 +109,7 @@ def max(cp, size):
-     if len(cp) == 0:
-         return 0
- 
--    return __builtin__.max(abs(sample) for sample in _get_samples(cp, size))
-+    return builtins.max(abs(sample) for sample in _get_samples(cp, size))
- 
- 
- def minmax(cp, size):
-@@ -117,8 +117,8 @@ def minmax(cp, size):
- 
-     max_sample, min_sample = 0, 0
-     for sample in _get_samples(cp, size):
--        max_sample = __builtin__.max(sample, max_sample)
--        min_sample = __builtin__.min(sample, min_sample)
-+        max_sample = builtins.max(sample, max_sample)
-+        min_sample = builtins.min(sample, min_sample)
- 
-     return min_sample, max_sample
- 
-@@ -542,4 +542,4 @@ def lin2adpcm(cp, size, state):
- 
- 
- def adpcm2lin(cp, size, state):
--    raise NotImplementedError()
-\ No newline at end of file
-+    raise NotImplementedError()
diff --git a/pkgs/development/python-modules/pyfakefs/default.nix b/pkgs/development/python-modules/pyfakefs/default.nix
index cfb575c7675e..64d547ce97ed 100644
--- a/pkgs/development/python-modules/pyfakefs/default.nix
+++ b/pkgs/development/python-modules/pyfakefs/default.nix
@@ -1,7 +1,7 @@
 { stdenv, buildPythonPackage, fetchFromGitHub, python, pytest, glibcLocales }:
 
 buildPythonPackage rec {
-  version = "3.4.1";
+  version = "3.4.3";
   pname = "pyfakefs";
 
   # no tests in PyPI tarball
@@ -10,22 +10,30 @@ buildPythonPackage rec {
     owner = "jmcgeheeiv";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0i8kq7sl8bczr927hllgfhsmirjqjh89c9184kcqmprc13ac4kxy";
+    sha256 = "0rhbkcb5h2x8kmyxivr5jr1db2xvmpjdbsfjxl142qhfb29hr2hp";
   };
 
   postPatch = ''
     # test doesn't work in sandbox
-    substituteInPlace tests/fake_filesystem_test.py \
+    substituteInPlace pyfakefs/tests/fake_filesystem_test.py \
       --replace "test_expand_root" "notest_expand_root"
-    substituteInPlace tests/fake_os_test.py \
-      --replace "test_append_mode" "notest_append_mode"
-  '';
+    substituteInPlace pyfakefs/tests/fake_os_test.py \
+      --replace "test_path_links_not_resolved" "notest_path_links_not_resolved" \
+      --replace "test_append_mode_tell_linux_windows" "notest_append_mode_tell_linux_windows"
+    substituteInPlace pyfakefs/tests/fake_filesystem_unittest_test.py \
+      --replace "test_copy_real_file" "notest_copy_real_file"
+  '' + (stdenv.lib.optionalString stdenv.isDarwin ''
+    # this test fails on darwin due to case-insensitive file system
+    substituteInPlace pyfakefs/tests/fake_os_test.py \
+      --replace "test_rename_dir_to_existing_dir" "notest_rename_dir_to_existing_dir"
+  '');
 
   checkInputs = [ pytest glibcLocales ];
 
   checkPhase = ''
-    LC_ALL=en_US.UTF-8 ${python.interpreter} -m tests.all_tests
-    py.test tests/pytest_plugin_test.py
+    export LC_ALL=en_US.UTF-8
+    ${python.interpreter} -m pyfakefs.tests.all_tests
+    ${python.interpreter} -m pytest pyfakefs/tests/pytest_plugin_test.py
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/python-modules/pykeepass/default.nix b/pkgs/development/python-modules/pykeepass/default.nix
new file mode 100644
index 000000000000..68c35ed0df12
--- /dev/null
+++ b/pkgs/development/python-modules/pykeepass/default.nix
@@ -0,0 +1,26 @@
+{ lib, fetchPypi, buildPythonPackage
+, lxml, pycryptodome, construct
+, argon2_cffi, dateutil, enum34
+}:
+
+buildPythonPackage rec {
+  pname   = "pykeepass";
+  version = "3.0.2";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1kfnh42nimsbdpwpny2c9df82b2n4fb5fagh54ck06f3x483vd90";
+  };
+
+  propagatedBuildInputs = [
+    lxml pycryptodome construct
+    argon2_cffi dateutil enum34
+  ];
+
+  meta = {
+    homepage = https://github.com/pschmitt/pykeepass;
+    description = "Python library to interact with keepass databases (supports KDBX3 and KDBX4)";
+    license = lib.licenses.gpl3;
+  };
+
+}
diff --git a/pkgs/development/python-modules/pymatgen/default.nix b/pkgs/development/python-modules/pymatgen/default.nix
index d810a5d6b4df..523e7f808064 100644
--- a/pkgs/development/python-modules/pymatgen/default.nix
+++ b/pkgs/development/python-modules/pymatgen/default.nix
@@ -1,17 +1,17 @@
-{ stdenv, buildPythonPackage, fetchPypi, glibcLocales, numpy, pydispatcher, sympy, requests, monty, ruamel_yaml, six, scipy, tabulate, enum34, matplotlib, palettable, spglib, pandas }:
+{ stdenv, buildPythonPackage, fetchPypi, glibcLocales, numpy, pydispatcher, sympy, requests, monty, ruamel_yaml, six, scipy, tabulate, enum34, matplotlib, palettable, spglib, pandas, networkx }:
 
 buildPythonPackage rec {
   pname = "pymatgen";
-  version = "2018.8.10";
+  version = "2018.9.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "9bb3b170ca8654c956fa2efdd31107570c0610f7585d90e4a541eb99cee41603";
+    sha256 = "dee5dbd8008081de9f27759c20c550d09a07136eeebfe941e3d05fd88ccace18";
   };
 
   nativeBuildInputs = [ glibcLocales ];
-  propagatedBuildInputs = [ numpy pydispatcher sympy requests monty ruamel_yaml six scipy tabulate enum34 matplotlib palettable spglib pandas ];
-  
+  propagatedBuildInputs = [ numpy pydispatcher sympy requests monty ruamel_yaml six scipy tabulate enum34 matplotlib palettable spglib pandas networkx ];
+
   # No tests in pypi tarball.
   doCheck = false;
 
@@ -22,4 +22,3 @@ buildPythonPackage rec {
     maintainers = with maintainers; [ psyanticy ];
   };
 }
-
diff --git a/pkgs/development/python-modules/pymetar/default.nix b/pkgs/development/python-modules/pymetar/default.nix
index a918528bdf87..339ddcbc7910 100644
--- a/pkgs/development/python-modules/pymetar/default.nix
+++ b/pkgs/development/python-modules/pymetar/default.nix
@@ -1,20 +1,30 @@
-{ stdenv, buildPythonPackage, isPy3k, fetchPypi }:
+{ stdenv, python, buildPythonPackage, isPy3k, fetchPypi }:
 
 buildPythonPackage rec {
   pname = "pymetar";
-  version = "0.21";
+  version = "1.0";
 
-  disabled = isPy3k;
+  disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1sh3nm5ilnsgpnzbb2wv4xndnizjayw859qp72798jadqpcph69k";
+    sha256 = "1n4k5aic4sgp43ki6j3zdw9b21r3biqqws8ah57b77n44b8wzrap";
   };
 
+  checkPhase = ''
+    cd testing/smoketest
+    tar xzf reports.tgz
+    mkdir logs
+    patchShebangs runtests.sh
+    substituteInPlace runtests.sh --replace "break" "exit 1"  # fail properly
+    export PYTHONPATH="$PYTHONPATH:$out/${python.sitePackages}"
+    ./runtests.sh
+  '';
+
   meta = with stdenv.lib; {
     description = "A command-line tool to show the weather report by a given station ID";
     homepage = http://www.schwarzvogel.de/software/pymetar.html;
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = with maintainers; [ erosennin ];
   };
 }
diff --git a/pkgs/development/python-modules/pymsgbox/default.nix b/pkgs/development/python-modules/pymsgbox/default.nix
new file mode 100644
index 000000000000..38cc411f54df
--- /dev/null
+++ b/pkgs/development/python-modules/pymsgbox/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, fetchPypi, buildPythonPackage, tkinter }:
+
+buildPythonPackage rec {
+  pname = "PyMsgBox";
+  version = "1.0.6";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0kmd00w7p6maiyqpqqb2j8m6v2gh9c0h5i198pa02bc1c1m1321q";
+    extension = "zip";
+  };
+
+  propagatedBuildInputs = [ tkinter ];
+
+  # Finding tests fails
+  doCheck = false;
+
+  meta = with stdenv.lib; {
+    description = "A simple, cross-platform, pure Python module for JavaScript-like message boxes";
+    homepage = https://github.com/asweigart/PyMsgBox;
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ jluttine ];
+  };
+}
diff --git a/pkgs/development/python-modules/pyodbc/default.nix b/pkgs/development/python-modules/pyodbc/default.nix
index b28c1a876479..45ba2a2e307e 100644
--- a/pkgs/development/python-modules/pyodbc/default.nix
+++ b/pkgs/development/python-modules/pyodbc/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildPythonPackage, fetchPypi, isPyPy, libiodbc }:
+{ stdenv, buildPythonPackage, fetchPypi, isPyPy, unixODBC }:
 
 buildPythonPackage rec {
   pname = "pyodbc";
@@ -10,7 +10,9 @@ buildPythonPackage rec {
     sha256 = "4326abb737dec36156998d52324921673d30f575e1e0998f0c5edd7de20e61d4";
   };
 
-  buildInputs = [ libiodbc ];
+  buildInputs = [ unixODBC ];
+
+  doCheck = false; # tests require a database server
 
   meta = with stdenv.lib; {
     description = "Python ODBC module to connect to almost any database";
diff --git a/pkgs/development/python-modules/pyowm/default.nix b/pkgs/development/python-modules/pyowm/default.nix
index 58a8dee155a8..c853965469a9 100644
--- a/pkgs/development/python-modules/pyowm/default.nix
+++ b/pkgs/development/python-modules/pyowm/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchPypi, requests }:
+{ lib, buildPythonPackage, fetchPypi, requests, geojson }:
 
 buildPythonPackage rec {
   pname = "pyowm";
@@ -9,11 +9,13 @@ buildPythonPackage rec {
     sha256 = "ed175873823a2fedb48e453505c974ca39f3f75006ef1af54fdbcf72e6796849";
   };
 
-  propagatedBuildInputs = [ requests ];
+  propagatedBuildInputs = [ requests geojson ];
 
   # This may actually break the package.
   postPatch = ''
-    substituteInPlace setup.py --replace "requests>=2.18.2,<2.19" "requests"
+    substituteInPlace setup.py \
+      --replace "requests>=2.18.2,<2.19" "requests"  \
+      --replace "geojson>=2.3.0,<2.4" "geojson<2.5,>=2.3.0"
   '';
 
   # No tests in archive
diff --git a/pkgs/development/python-modules/pyreadability/default.nix b/pkgs/development/python-modules/pyreadability/default.nix
new file mode 100644
index 000000000000..a95074b906e3
--- /dev/null
+++ b/pkgs/development/python-modules/pyreadability/default.nix
@@ -0,0 +1,26 @@
+{ lib, fetchPypi, buildPythonPackage
+, requests, chardet, cssselect, lxml
+, pytest
+}:
+
+buildPythonPackage rec {
+  pname   = "PyReadability";
+  version = "0.4.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1k6fq416pdmjcdqh6gdxl0y0k8kj1zlpzwp5574xsvsha18p2zpn";
+  };
+
+  propagatedBuildInputs = [ requests chardet cssselect lxml ];
+
+  # ModuleNotFoundError: No module named 'tests'
+  doCheck = false;
+
+  meta = {
+    homepage = https://github.com/hyperlinkapp/python-readability;
+    description = "fast python port of arc90's readability tool, updated to match latest readability.js!";
+    license = lib.licenses.asl20;
+  };
+
+}
diff --git a/pkgs/development/python-modules/pyslurm/default.nix b/pkgs/development/python-modules/pyslurm/default.nix
index 9057c3970e15..f004ab1054dd 100644
--- a/pkgs/development/python-modules/pyslurm/default.nix
+++ b/pkgs/development/python-modules/pyslurm/default.nix
@@ -2,13 +2,13 @@
 
 buildPythonPackage rec {
   pname = "pyslurm";
-  version = "20180604";
+  version = "20180908";
 
   src = fetchFromGitHub {
     repo = "pyslurm";
     owner = "PySlurm";
-    rev = "9dd4817e785fee138a9e29c3d71d2ea44898eedc";
-    sha256 = "14ivwc27sjnk0z0jpfgyy9bd91m2bhcz11lzp1kk9xn4495i7wvj";
+    rev = "50dc113e99d82e70e84fc2e812333733708be4ed";
+    sha256 = "1j2i4rvhmk2ihhcvsjdlqlxqb5a05jg8k9bqkv3zrvdj71yn4z9k";
   };
 
   buildInputs = [ cython slurm ];
diff --git a/pkgs/development/python-modules/pytest-faulthandler/default.nix b/pkgs/development/python-modules/pytest-faulthandler/default.nix
new file mode 100644
index 000000000000..852de1fd49cd
--- /dev/null
+++ b/pkgs/development/python-modules/pytest-faulthandler/default.nix
@@ -0,0 +1,34 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, setuptools_scm
+, pytest
+, pytest-mock
+, pythonOlder
+, faulthandler
+}:
+
+buildPythonPackage rec {
+  pname = "pytest-faulthandler";
+  version = "1.5.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "bf8634c3fd6309ef786ec03b913a5366163fdb094ebcfdebc35626400d790e0d";
+  };
+
+  buildInputs = [ setuptools_scm pytest ];
+  checkInputs = [ pytest-mock ];
+  propagatedBuildInputs = lib.optional (pythonOlder "3.0") faulthandler;
+
+  checkPhase = ''
+    py.test
+  '';
+
+  meta = {
+    description = "Py.test plugin that activates the fault handler module for tests";
+    homepage = https://github.com/pytest-dev/pytest-faulthandler;
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ costrouc ];
+  };
+}
diff --git a/pkgs/development/python-modules/pytest-fixture-config/default.nix b/pkgs/development/python-modules/pytest-fixture-config/default.nix
index df700526d1b4..67ceebef3057 100644
--- a/pkgs/development/python-modules/pytest-fixture-config/default.nix
+++ b/pkgs/development/python-modules/pytest-fixture-config/default.nix
@@ -1,5 +1,5 @@
 { stdenv, buildPythonPackage, fetchPypi
-, setuptools-git, pytest, six }:
+, setuptools-git, pytest }:
 
 buildPythonPackage rec {
   pname = "pytest-fixture-config";
@@ -14,11 +14,7 @@ buildPythonPackage rec {
 
   buildInputs = [ pytest ];
 
-  checkInputs = [ six ];
-
-  checkPhase = ''
-    py.test
-  '';
+  doCheck = false;
 
   meta = with stdenv.lib; {
     description = "Simple configuration objects for Py.test fixtures. Allows you to skip tests when their required config variables aren’t set.";
diff --git a/pkgs/development/python-modules/pytest-flakes/default.nix b/pkgs/development/python-modules/pytest-flakes/default.nix
index f8823b966da0..52cfed14150a 100644
--- a/pkgs/development/python-modules/pytest-flakes/default.nix
+++ b/pkgs/development/python-modules/pytest-flakes/default.nix
@@ -1,5 +1,5 @@
 { stdenv, buildPythonPackage, fetchPypi
-, pytestpep8, pytest, pyflakes, pytestcache }:
+, pytestpep8, pytest, pyflakes }:
 
 buildPythonPackage rec {
   pname = "pytest-flakes";
@@ -11,10 +11,11 @@ buildPythonPackage rec {
   };
 
   buildInputs = [ pytestpep8 pytest ];
-  propagatedBuildInputs = [ pyflakes pytestcache ];
+  propagatedBuildInputs = [ pyflakes ];
 
+  # disable one test case that looks broken
   checkPhase = ''
-    py.test test_flakes.py
+    py.test test_flakes.py -k 'not test_syntax_error'
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/python-modules/pytest-repeat/default.nix b/pkgs/development/python-modules/pytest-repeat/default.nix
new file mode 100644
index 000000000000..eca14c8289a9
--- /dev/null
+++ b/pkgs/development/python-modules/pytest-repeat/default.nix
@@ -0,0 +1,29 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, setuptools_scm
+, pytest
+}:
+
+buildPythonPackage rec {
+  pname = "pytest-repeat";
+  version = "0.6.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "84aba2fcca5dc2f32ae626a01708f469f17b3384ec3d1f507698077f274909d6";
+  };
+
+  buildInputs = [ setuptools_scm pytest ];
+
+  checkPhase = ''
+    py.test
+  '';
+
+  meta = {
+    description = "Pytest plugin for repeating tests";
+    homepage = https://github.com/pytest-dev/pytest-repeat;
+    maintainers = with lib.maintainers; [ costrouc ];
+    license = lib.licenses.mpl20;
+  };
+}
diff --git a/pkgs/development/python-modules/pytest-rerunfailures/default.nix b/pkgs/development/python-modules/pytest-rerunfailures/default.nix
index 5931afa37e20..d71cc420d59b 100644
--- a/pkgs/development/python-modules/pytest-rerunfailures/default.nix
+++ b/pkgs/development/python-modules/pytest-rerunfailures/default.nix
@@ -9,10 +9,13 @@ buildPythonPackage rec {
     sha256 = "be6bf93ed618c8899aeb6721c24f8009c769879a3b4931e05650f3c173ec17c5";
   };
 
-  checkInputs = [ pytest mock ];
+  checkInputs = [ mock ];
 
+  propagatedBuildInputs = [ pytest ];
+
+  # disable tests that fail with pytest 3.7.4
   checkPhase = ''
-    py.test
+    py.test test_pytest_rerunfailures.py -k 'not test_reruns_with_delay'
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/python-modules/pytest-timeout/default.nix b/pkgs/development/python-modules/pytest-timeout/default.nix
index 8c697b8b2ec9..6b9522460ba1 100644
--- a/pkgs/development/python-modules/pytest-timeout/default.nix
+++ b/pkgs/development/python-modules/pytest-timeout/default.nix
@@ -1,5 +1,6 @@
 { buildPythonPackage
 , fetchPypi
+, fetchpatch
 , lib
 , pexpect
 , pytest
@@ -13,7 +14,7 @@ buildPythonPackage rec {
     inherit pname version;
     sha256 = "1117fc0536e1638862917efbdc0895e6b62fa61e6cf4f39bb655686af7af9627";
   };
-  buildInputs = [ pytest ];
+
   checkInputs = [ pytest pexpect ];
   checkPhase = ''pytest -ra'';
 
@@ -21,6 +22,6 @@ buildPythonPackage rec {
     description = "py.test plugin to abort hanging tests";
     homepage = https://bitbucket.org/pytest-dev/pytest-timeout/;
     license = licenses.mit;
-    maintainers = with maintainers; [ makefu ];
+    maintainers = with maintainers; [ makefu costrouc ];
   };
 }
diff --git a/pkgs/development/python-modules/python-jsonrpc-server/default.nix b/pkgs/development/python-modules/python-jsonrpc-server/default.nix
new file mode 100644
index 000000000000..508f18e6da00
--- /dev/null
+++ b/pkgs/development/python-modules/python-jsonrpc-server/default.nix
@@ -0,0 +1,34 @@
+{ stdenv, buildPythonPackage, fetchFromGitHub, pythonOlder
+, pytest, mock, pytestcov, coverage
+, future, futures
+}:
+
+buildPythonPackage rec {
+  pname = "python-jsonrpc-server";
+  version = "0.0.1";
+
+  src = fetchFromGitHub {
+    owner = "palantir";
+    repo = "python-jsonrpc-server";
+    rev = version;
+    sha256 = "0p5dj1hxx3yz8vjk59dcp3h6ci1hrjkbzf9lr3vviy0xw327409k";
+  };
+
+  checkInputs = [
+    pytest mock pytestcov coverage
+  ];
+
+  checkPhase = ''
+    pytest
+  '';
+
+  propagatedBuildInputs = [ future ]
+    ++ stdenv.lib.optional (pythonOlder "3.2") futures;
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/palantir/python-jsonrpc-server;
+    description = "A Python 2 and 3 asynchronous JSON RPC server";
+    license = licenses.mit;
+    maintainers = [ maintainers.mic92 ];
+  };
+}
diff --git a/pkgs/development/python-modules/python-language-server/default.nix b/pkgs/development/python-modules/python-language-server/default.nix
index 800c9eba2abb..56c00fa11a9f 100644
--- a/pkgs/development/python-modules/python-language-server/default.nix
+++ b/pkgs/development/python-modules/python-language-server/default.nix
@@ -1,5 +1,5 @@
 { stdenv, buildPythonPackage, fetchFromGitHub, pythonOlder, isPy27
-, configparser, futures, future, jedi, pluggy
+, configparser, futures, future, jedi, pluggy, python-jsonrpc-server
 , pytest, mock, pytestcov, coverage
 , # Allow building a limited set of providers, e.g. ["pycodestyle"].
   providers ? ["*"]
@@ -20,13 +20,13 @@ in
 
 buildPythonPackage rec {
   pname = "python-language-server";
-  version = "0.19.0";
+  version = "0.21.2";
 
   src = fetchFromGitHub {
     owner = "palantir";
     repo = "python-language-server";
     rev = version;
-    sha256 = "0glnhnjmsnnh1vs73n9dglknfkhcgp03nkjbpz0phh1jlqrkrwm6";
+    sha256 = "11fvrpv1kymj2fzh8fhys4qk1xc64j1rbdrz252awyab7b3509i7";
   };
 
   # The tests require all the providers, disable otherwise.
@@ -43,7 +43,7 @@ buildPythonPackage rec {
     HOME=$TEMPDIR pytest
   '';
 
-  propagatedBuildInputs = [ jedi pluggy future ]
+  propagatedBuildInputs = [ jedi pluggy future python-jsonrpc-server ]
     ++ stdenv.lib.optional (withProvider "autopep8") autopep8
     ++ stdenv.lib.optional (withProvider "mccabe") mccabe
     ++ stdenv.lib.optional (withProvider "pycodestyle") pycodestyle
diff --git a/pkgs/development/python-modules/python-lz4/default.nix b/pkgs/development/python-modules/python-lz4/default.nix
new file mode 100644
index 000000000000..a0fe6666d849
--- /dev/null
+++ b/pkgs/development/python-modules/python-lz4/default.nix
@@ -0,0 +1,40 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pytestrunner
+, pytest
+, psutil
+, setuptools_scm
+, pkgconfig
+, isPy3k
+, future
+}:
+
+buildPythonPackage rec {
+  pname = "python-lz4";
+  version = "2.1.0";
+
+  # get full repository inorder to run tests
+  src = fetchFromGitHub {
+    owner = pname;
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1vjfplj37jcw1mf8l810dv76dx0raia3ylgyfy7sfsb3g17brjq6";
+  };
+
+  buildInputs = [ setuptools_scm pkgconfig pytestrunner ];
+  checkInputs = [ pytest psutil ];
+  propagatedBuildInputs = lib.optionals (!isPy3k) [ future ];
+
+  # give a hint to setuptools_scm on package version
+  preBuild = ''
+    export SETUPTOOLS_SCM_PRETEND_VERSION="v${version}"
+  '';
+
+  meta = {
+     description = "LZ4 Bindings for Python";
+     homepage = https://github.com/python-lz4/python-lz4;
+     license = lib.licenses.bsd0;
+     maintainers = with lib.maintainers; [ costrouc ];
+  };
+}
diff --git a/pkgs/development/python-modules/python-u2flib-host/default.nix b/pkgs/development/python-modules/python-u2flib-host/default.nix
new file mode 100644
index 000000000000..38785d813138
--- /dev/null
+++ b/pkgs/development/python-modules/python-u2flib-host/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, fetchPypi, buildPythonPackage, requests, hidapi }:
+
+buildPythonPackage rec {
+  pname = "python-u2flib-host";
+  version = "3.0.3";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "02pwafd5kyjpc310ys0pgnd0adff1laz18naxxwsfrllqafqnrxb";
+  };
+
+  propagatedBuildInputs = [ requests hidapi ];
+
+  # Tests fail: "ValueError: underlying buffer has been detached"
+  doCheck = false;
+
+  meta = with stdenv.lib; {
+    description = "Python based U2F host library";
+    homepage = https://github.com/Yubico/python-u2flib-host;
+    license = licenses.bsd2;
+    maintainers = with maintainers; [ jluttine ];
+  };
+}
diff --git a/pkgs/development/python-modules/readme_renderer/default.nix b/pkgs/development/python-modules/readme_renderer/default.nix
index 4690dcc89bc8..d6c333ce36de 100644
--- a/pkgs/development/python-modules/readme_renderer/default.nix
+++ b/pkgs/development/python-modules/readme_renderer/default.nix
@@ -27,7 +27,8 @@ buildPythonPackage rec {
   ];
 
   checkPhase = ''
-    py.test
+    # disable one failing test case
+    py.test -k "not test_invalid_link"
   '';
 
   meta = {
diff --git a/pkgs/development/python-modules/requests-file/default.nix b/pkgs/development/python-modules/requests-file/default.nix
new file mode 100644
index 000000000000..fac222176519
--- /dev/null
+++ b/pkgs/development/python-modules/requests-file/default.nix
@@ -0,0 +1,20 @@
+{ lib, fetchPypi, buildPythonPackage, requests, six }:
+
+buildPythonPackage rec {
+  pname   = "requests-file";
+  version = "1.4.3";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1yp2jaxg3v86pia0q512dg3hz6s9y5vzdivsgrba1kds05ial14g";
+  };
+
+  propagatedBuildInputs = [ requests six ];
+
+  meta = {
+    homepage = https://github.com/dashea/requests-file;
+    description = "Transport adapter for fetching file:// URLs with the requests python library";
+    license = lib.licenses.asl20;
+  };
+
+}
diff --git a/pkgs/development/python-modules/restview/default.nix b/pkgs/development/python-modules/restview/default.nix
index e8a8b9dd637d..a6b22220da35 100644
--- a/pkgs/development/python-modules/restview/default.nix
+++ b/pkgs/development/python-modules/restview/default.nix
@@ -1,6 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchPypi
+, fetchpatch
 , docutils
 , readme_renderer
 , pygments
@@ -19,6 +20,15 @@ buildPythonPackage rec {
   propagatedBuildInputs = [ docutils readme_renderer pygments ];
   checkInputs = [ mock ];
 
+  patches = [
+    # fix tests after readme_renderer update
+    # TODO remove on next update
+    (fetchpatch {
+      url = "https://github.com/mgedmin/restview/commit/541743ded13ae55dea4c437046984a5f13d06e8b.patch";
+      sha256 = "031b1dlqx346bz7afpc011lslnq771lnxb6iy1l2285pph534bci";
+    })
+  ];
+
   postPatch = ''
     # dict order breaking tests
     sed -i 's@<a href="http://www.example.com" rel="nofollow">@...@' src/restview/tests.py
diff --git a/pkgs/development/python-modules/rlp/default.nix b/pkgs/development/python-modules/rlp/default.nix
index 77ada95b3019..150234a3dd29 100644
--- a/pkgs/development/python-modules/rlp/default.nix
+++ b/pkgs/development/python-modules/rlp/default.nix
@@ -1,4 +1,4 @@
-{ lib, fetchPypi, buildPythonPackage, pytest }:
+{ lib, fetchPypi, buildPythonPackage, pytest, hypothesis, eth-utils }:
 
 buildPythonPackage rec {
   pname = "rlp";
@@ -9,8 +9,18 @@ buildPythonPackage rec {
     sha256 = "040fb5172fa23d27953a886c40cac989fc031d0629db934b5a9edcd2fb28df1e";
   };
 
-  checkInputs = [ pytest ];
-  propagatedBuildInputs = [ ];
+  checkInputs = [ pytest hypothesis ];
+  propagatedBuildInputs = [ eth-utils ];
+
+  # setuptools-markdown uses pypandoc which is broken at the moment
+  preConfigure = ''
+    substituteInPlace setup.py --replace \'setuptools-markdown\' ""
+    substituteInPlace setup.py --replace "long_description_markdown_filename='README.md'," ""
+  '';
+
+  checkPhase = ''
+    pytest .
+  '';
 
   meta = {
     description = "A package for encoding and decoding data in and from Recursive Length Prefix notation";
diff --git a/pkgs/development/python-modules/selectors2/default.nix b/pkgs/development/python-modules/selectors2/default.nix
new file mode 100644
index 000000000000..030178fef830
--- /dev/null
+++ b/pkgs/development/python-modules/selectors2/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, buildPythonPackage, fetchPypi
+, nose, psutil, mock }:
+
+buildPythonPackage rec {
+  version = "2.0.1";
+  pname = "selectors2";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "81b77c4c6f607248b1d6bbdb5935403fef294b224b842a830bbfabb400c81884";
+  };
+
+  checkInputs = [ nose psutil mock ];
+
+  checkPhase = ''
+    # https://github.com/NixOS/nixpkgs/pull/46186#issuecomment-419450064
+    # Trick to disable certain tests that depend on timing which
+    # will always fail on hydra
+    export TRAVIS=""
+    nosetests tests/test_selectors2.py
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = https://www.github.com/SethMichaelLarson/selectors2;
+    description = "Back-ported, durable, and portable selectors";
+    license = licenses.mit;
+    maintainers = [ maintainers.costrouc ];
+  };
+}
diff --git a/pkgs/development/python-modules/sniffio/default.nix b/pkgs/development/python-modules/sniffio/default.nix
new file mode 100644
index 000000000000..9893bc5828a0
--- /dev/null
+++ b/pkgs/development/python-modules/sniffio/default.nix
@@ -0,0 +1,30 @@
+{ buildPythonPackage, lib, fetchPypi, glibcLocales, isPy3k, contextvars
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "sniffio";
+  version = "1.0.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1dzb0nx3m1hpjgsv6s6w5ac2jcmywcz6gqnfkw8rwz1vkr1836rf";
+  };
+
+  # breaks with the following error:
+  # > TypeError: 'encoding' is an invalid keyword argument for this function
+  disabled = !isPy3k;
+
+  buildInputs = [ glibcLocales ];
+
+  propagatedBuildInputs = lib.optionals (pythonOlder "3.7") [ contextvars ];
+
+  # no tests distributed with PyPI
+  doCheck = false;
+
+  meta = with lib; {
+    homepage = https://github.com/python-trio/sniffio;
+    license = licenses.asl20;
+    description = "Sniff out which async library your code is running under";
+  };
+}
diff --git a/pkgs/development/python-modules/spacy/default.nix b/pkgs/development/python-modules/spacy/default.nix
index dc0509e226c0..0667565c0de8 100644
--- a/pkgs/development/python-modules/spacy/default.nix
+++ b/pkgs/development/python-modules/spacy/default.nix
@@ -37,7 +37,8 @@ buildPythonPackage rec {
       --replace "ftfy==" "ftfy>=" \
       --replace "msgpack-python==" "msgpack-python>=" \
       --replace "msgpack-numpy==" "msgpack-numpy>=" \
-      --replace "pathlib" "pathlib; python_version<\"3.4\""
+      --replace "thinc>=6.10.3,<6.11.0" "thinc>=6.10.3" \
+      --replace "plac<1.0.0,>=0.9.6" "plac>=0.9.6"
   '';
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/spacy/models.json b/pkgs/development/python-modules/spacy/models.json
index e9c163c65259..34b8082872b7 100644
--- a/pkgs/development/python-modules/spacy/models.json
+++ b/pkgs/development/python-modules/spacy/models.json
@@ -1,42 +1,78 @@
 [{
-  "pname": "es_core_web_md",
-  "version": "1.0.0",
-  "sha256": "0ikyakdhnj6rrfpr8k83695d1gd3z9n60a245hwwchv94jmr7r6s",
+  "pname": "de_core_news_sm",
+  "version": "2.0.0",
+  "sha256": "13fs4f46qg9mlxd9ynmh81gxizm11kfq3g52pk8d2m7wp89xfc6a",
   "license": "cc-by-sa-40"
 },
 {
-  "pname": "fr_depvec_web_lg",
-  "version": "1.0.0",
-  "sha256": "0nxmdszs1s5by2874cz37azrmwamh1ngdsiylffkfihzq6s8bhka",
-  "license": "cc-by-nc-sa-40"
+  "pname": "en_core_web_lg",
+  "version": "2.0.0",
+  "sha256": "1r33l02jrkzjn78nd0bzzzd6rwjlz7qfgs3bg5yr2ki6q0m7qxvw",
+  "license": "cc-by-sa-40"
 },
 {
   "pname": "en_core_web_md",
-  "version": "1.2.1",
-  "sha256": "12prr4hcbfdaky9rcna1y1ykr417jkhkks2r8l06g8fb7am3pvp3",
+  "version": "2.0.0",
+  "sha256": "1b5g5gma1gzm8ffj0pgli1pllccx5jpjvb7a19n7c8bfswpifxzc",
   "license": "cc-by-sa-40"
 },
 {
-  "pname": "en_depent_web_md",
-  "version": "1.2.1",
-  "sha256": "0giyr35q5lpp5drpcamyvb5gsjnhj62mk3ndfr49nm1s6d5f6m52",
+  "pname": "en_core_web_sm",
+  "version": "2.0.0",
+  "sha256": "161298pl6kzc0cgf2g7ji84xbqv8ayrgsrmmg0hxiflwghfj77cx",
   "license": "cc-by-sa-40"
 },
 {
-  "pname": "en_core_web_sm",
-  "version": "1.2.0",
-  "sha256": "0vc4l77dcwa9lmzyqdci8ikjc0m2rhasl2zvyba547vf76qb0528",
+  "pname": "en_vectors_web_lg",
+  "version": "2.0.0",
+  "sha256": "15qfd8vzdv56x41fzghy7k5x1c8ql92ds70r37b6a8hkb87z9byw",
+  "license": "cc-by-sa-40"
+},
+{
+  "pname": "es_core_news_md",
+  "version": "2.0.0",
+  "sha256": "03056qz866r641q4nagymw6pc78qnn5vdvcp7p1ph2cvxh7081kp",
+  "license": "cc-by-sa-40"
+},
+{
+  "pname": "es_core_news_sm",
+  "version": "2.0.0",
+  "sha256": "1b91lcmw2kyqmcrxlfq7m5vlj1a57i3bb9a5h4y31smjgzmsr81s",
+  "license": "cc-by-sa-40"
+},
+{
+  "pname": "fr_core_news_md",
+  "version": "2.0.0",
+  "sha256": "06kva46l1nw819bidzj2vks69ap1a9fa7rnvpd28l3z2haci38ls",
+  "license": "cc-by-sa-40"
+},
+{
+  "pname": "fr_core_news_sm",
+  "version": "2.0.0",
+  "sha256": "1zlhm9646g3cwcv4cs33160f3v8gxmzdr02x8hx7jpw1fbnmc5mx",
+  "license": "cc-by-sa-40"
+},
+{
+  "pname": "it_core_news_sm",
+  "version": "2.0.0",
+  "sha256": "0fs68rdq19migb3x3hb510b96aabibsi01adlk1fipll1x48msaz",
+  "license": "cc-by-sa-40"
+},
+{
+  "pname": "nl_core_news_sm",
+  "version": "2.0.0",
+  "sha256": "0n5x61jp8rdxa3ki250ipbd68rjpp9li6xwbx3fbzycpngffwy8z",
   "license": "cc-by-sa-40"
 },
 {
-  "pname": "de_core_news_md",
-  "version": "1.0.0",
-  "sha256": "072jz2rdi1nckny7k16avp86vjg4didfdsw816kfl9zwr88iny6g",
+  "pname": "pt_core_news_sm",
+  "version": "2.0.0",
+  "sha256": "1sg500b3f3qnx1ga32hbq9p4qfynqhpdzhlmdjrxgqw8i58ys23g",
   "license": "cc-by-sa-40"
 },
 {
-  "pname": "en_vectors_glove_md",
-  "version": "1.0.0",
-  "sha256": "1jbr27xnh5fdww8yphpvk2brfnzb174wfnxkzdqwv3iyi02zsin6",
+  "pname": "xx_ent_wiki_sm",
+  "version": "2.0.0",
+  "sha256": "0mc3mm6nfjp31wbjysdj2x72akyi52hgprm1g54djxfypm3pmn35",
   "license": "cc-by-sa-40"
 }]
diff --git a/pkgs/development/python-modules/tflearn/default.nix b/pkgs/development/python-modules/tflearn/default.nix
new file mode 100644
index 000000000000..341c1da56801
--- /dev/null
+++ b/pkgs/development/python-modules/tflearn/default.nix
@@ -0,0 +1,24 @@
+{ lib, fetchPypi, buildPythonPackage, fetchurl, pytest, scipy, h5py
+, pillow, tensorflow }:
+
+buildPythonPackage rec {
+  pname = "tflearn";
+  version = "0.3.2";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "034lvbslcivyj64r4w6xmr90ckmyxmrnkka9kal50x4175h02n1z";
+  };
+
+  buildInputs = [ pytest ];
+
+  propagatedBuildInputs = [ scipy h5py pillow tensorflow ];
+
+  doCheck = false;
+
+  meta = with lib; {
+    description = "Deep learning library featuring a higher-level API for TensorFlow";
+    homepage    = "https://github.com/tflearn/tflearn";
+    license     = licenses.mit;
+  };
+}
diff --git a/pkgs/development/python-modules/thinc/default.nix b/pkgs/development/python-modules/thinc/default.nix
index 88e6c8d16742..6217a4200574 100644
--- a/pkgs/development/python-modules/thinc/default.nix
+++ b/pkgs/development/python-modules/thinc/default.nix
@@ -6,6 +6,7 @@
 , pytest
 , cython
 , cymem
+, darwin
 , msgpack-numpy
 , msgpack-python
 , preshed
@@ -35,9 +36,15 @@ buildPythonPackage rec {
   postPatch = ''
     substituteInPlace setup.py \
       --replace "msgpack-python==" "msgpack-python>=" \
-      --replace "msgpack-numpy==" "msgpack-numpy>="
+      --replace "msgpack-numpy==" "msgpack-numpy>=" \
+      --replace "plac>=0.9,<1.0" "plac>=0.9" \
+      --replace "hypothesis>=2,<3" "hypothesis>=2"
   '';
 
+  buildInputs = lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [
+    Accelerate CoreFoundation CoreGraphics CoreVideo
+  ]);
+
   propagatedBuildInputs = [
    cython
    cymem
diff --git a/pkgs/development/python-modules/tifffile/default.nix b/pkgs/development/python-modules/tifffile/default.nix
index 159051b9a6a8..3910ddf07256 100644
--- a/pkgs/development/python-modules/tifffile/default.nix
+++ b/pkgs/development/python-modules/tifffile/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchPypi, buildPythonPackage, isPy27, pythonOlder
-, numpy, nose, enum34, futures }:
+, numpy, nose, enum34, futures, pathlib }:
 
 buildPythonPackage rec {
   pname = "tifffile";
@@ -16,7 +16,7 @@ buildPythonPackage rec {
   '';
 
   propagatedBuildInputs = [ numpy ]
-    ++ lib.optional isPy27 futures
+    ++ lib.optional isPy27 [ futures pathlib ]
     ++ lib.optional (pythonOlder "3.0") enum34;
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/python-modules/tldextract/default.nix b/pkgs/development/python-modules/tldextract/default.nix
new file mode 100644
index 000000000000..4e494244d314
--- /dev/null
+++ b/pkgs/development/python-modules/tldextract/default.nix
@@ -0,0 +1,24 @@
+{ lib, fetchPypi, buildPythonPackage
+, requests, requests-file, idna, pytest
+, responses
+}:
+
+buildPythonPackage rec {
+  pname   = "tldextract";
+  version = "2.2.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1d5s8v6kpsgazyahflhji1cfdcf89rv7l7z55v774bhzvcjp2y99";
+  };
+
+  propagatedBuildInputs = [ requests requests-file idna ];
+  checkInputs = [ pytest responses ];
+
+  meta = {
+    homepage = https://github.com/john-kurkowski/tldextract;
+    description = "Accurately separate the TLD from the registered domain and subdomains of a URL, using the Public Suffix List.";
+    license = lib.licenses.bsd3;
+  };
+
+}
diff --git a/pkgs/development/python-modules/tornado/default.nix b/pkgs/development/python-modules/tornado/default.nix
index 6d86404e1925..d446d377e66f 100644
--- a/pkgs/development/python-modules/tornado/default.nix
+++ b/pkgs/development/python-modules/tornado/default.nix
@@ -8,12 +8,25 @@
 , singledispatch
 , pythonOlder
 , futures
+, version ? "5.1"
 }:
 
+let
+  versionMap = {
+    "4.5.3" = {
+      sha256 = "02jzd23l4r6fswmwxaica9ldlyc2p6q8dk6dyff7j58fmdzf853d";
+    };
+    "5.1" = {
+      sha256 = "4f66a2172cb947387193ca4c2c3e19131f1c70fa8be470ddbbd9317fd0801582";
+    };
+  };
+in
+
+with versionMap.${version};
+
 buildPythonPackage rec {
   pname = "tornado";
-  version = "5.1";
-
+  inherit version;
 
   propagatedBuildInputs = [ backports_abc  certifi singledispatch ]
     ++ lib.optional (pythonOlder "3.5") backports_ssl_match_hostname
@@ -26,8 +39,7 @@ buildPythonPackage rec {
   '';
 
   src = fetchPypi {
-    inherit pname version;
-    sha256 = "4f66a2172cb947387193ca4c2c3e19131f1c70fa8be470ddbbd9317fd0801582";
+    inherit pname sha256 version;
   };
 
   meta = {
diff --git a/pkgs/development/python-modules/trio/default.nix b/pkgs/development/python-modules/trio/default.nix
index 4924fa527c62..89addb377dc4 100644
--- a/pkgs/development/python-modules/trio/default.nix
+++ b/pkgs/development/python-modules/trio/default.nix
@@ -8,6 +8,7 @@
 , pytest
 , pyopenssl
 , trustme
+, sniffio
 }:
 
 buildPythonPackage rec {
@@ -31,6 +32,7 @@ buildPythonPackage rec {
     async_generator
     idna
     outcome
+    sniffio
   ] ++ lib.optionals (pythonOlder "3.7") [ contextvars ];
 
   meta = {
diff --git a/pkgs/development/python-modules/urlgrabber/default.nix b/pkgs/development/python-modules/urlgrabber/default.nix
index f399f4d426ee..528846d72381 100644
--- a/pkgs/development/python-modules/urlgrabber/default.nix
+++ b/pkgs/development/python-modules/urlgrabber/default.nix
@@ -15,7 +15,7 @@ buildPythonPackage rec {
   propagatedBuildInputs = [ pycurl ];
 
   meta = with stdenv.lib; {
-    homepage = "urlgrabber.baseurl.org";
+    homepage = http://urlgrabber.baseurl.org;
     license = licenses.lgpl2Plus;
     description = "Python module for downloading files";
     maintainers = with maintainers; [ qknight ];
diff --git a/pkgs/development/python-modules/us/default.nix b/pkgs/development/python-modules/us/default.nix
index eb001410ce5f..53b5bc9ad166 100644
--- a/pkgs/development/python-modules/us/default.nix
+++ b/pkgs/development/python-modules/us/default.nix
@@ -15,6 +15,13 @@ buildPythonPackage rec {
     sha256 = "1niglalkp7pinibzbxjdz9mxx9qmwkrh8884dag3kr72cfkrpp09";
   };
 
+  # Upstream requires jellyfish==0.5.6 but we have 0.6.1
+  postPatch = ''
+    substituteInPlace setup.py --replace "jellyfish==" "jellyfish>="
+  '';
+
+  doCheck = false; # pypi version doesn't include tests
+
   meta = {
     description = "A package for easily working with US and state metadata";
     longDescription = ''
diff --git a/pkgs/development/python-modules/vowpalwabbit/default.nix b/pkgs/development/python-modules/vowpalwabbit/default.nix
index a8661fd3a985..9bc2bbc27047 100644
--- a/pkgs/development/python-modules/vowpalwabbit/default.nix
+++ b/pkgs/development/python-modules/vowpalwabbit/default.nix
@@ -1,5 +1,5 @@
-{ lib, buildPythonPackage, fetchPypi, python, boost, zlib, clang, ncurses
-, pytest, docutils, pygments, numpy, scipy, scikitlearn }:
+{ stdenv, lib, buildPythonPackage, fetchPypi, python, boost, zlib, clang
+, ncurses, pytest, docutils, pygments, numpy, scipy, scikitlearn }:
 
 buildPythonPackage rec {
   pname = "vowpalwabbit";
@@ -9,15 +9,27 @@ buildPythonPackage rec {
     inherit pname version;
     sha256 = "0b517371fc64f1c728a0af42a31fa93def27306e9b4d25d6e5fd01bcff1b7304";
   };
+
+  # Should be fixed in next Python release after 8.5.0:
+  # https://github.com/JohnLangford/vowpal_wabbit/pull/1533
+  patches = [
+    ./vowpal-wabbit-find-boost.diff
+  ];
+
   # vw tries to write some explicit things to home
   # python installed: The directory '/homeless-shelter/.cache/pip/http'
   preInstall = ''
     export HOME=$PWD
   '';
 
-  buildInputs = [ boost.dev zlib.dev clang ncurses pytest docutils pygments ];
+  buildInputs = [ python.pkgs.boost zlib.dev clang ncurses pytest docutils pygments ];
   propagatedBuildInputs = [ numpy scipy scikitlearn ];
 
+  # Python ctypes.find_library uses DYLD_LIBRARY_PATH.
+  preConfigure = lib.optionalString stdenv.isDarwin ''
+    export DYLD_LIBRARY_PATH="${python.pkgs.boost}/lib"
+  '';
+
   checkPhase = ''
     # check-manifest requires a git clone, not a tarball
     # check-manifest --ignore "Makefile,PACKAGE.rst,*.cc,tox.ini,tests*,examples*,src*"
@@ -28,6 +40,7 @@ buildPythonPackage rec {
     description = "Vowpal Wabbit is a fast machine learning library for online learning, and this is the python wrapper for the project.";
     homepage    = https://github.com/JohnLangford/vowpal_wabbit;
     license     = licenses.bsd3;
+    broken      = stdenv.isAarch64;
     maintainers = with maintainers; [ teh ];
   };
 }
diff --git a/pkgs/development/python-modules/vowpalwabbit/vowpal-wabbit-find-boost.diff b/pkgs/development/python-modules/vowpalwabbit/vowpal-wabbit-find-boost.diff
new file mode 100644
index 000000000000..645956594bf6
--- /dev/null
+++ b/pkgs/development/python-modules/vowpalwabbit/vowpal-wabbit-find-boost.diff
@@ -0,0 +1,34 @@
+--- vowpalwabbit-8.5.0.orig/setup.py	2018-09-03 20:32:39.000000000 +0200
++++ vowpalwabbit-8.5.0/setup.py	2018-09-03 20:34:09.000000000 +0200
+@@ -23,18 +23,11 @@
+ 
+ def find_boost():
+     """Find correct boost-python library information """
+-    if system == 'Linux':
++    if system == 'Linux' or system == 'Darwin':
+         # use version suffix if present
+-        boost_lib = 'boost_python-py{v[0]}{v[1]}'.format(v=sys.version_info)
+-        if sys.version_info.major == 3:
+-            for candidate in ['-py36', '-py35', '-py34', '3']:
+-                boost_lib = 'boost_python{}'.format(candidate)
+-                if find_library(boost_lib):
+-                    exit
++        boost_lib = 'boost_python{v[0]}{v[1]}'.format(v=sys.version_info)
+         if not find_library(boost_lib):
+             boost_lib = "boost_python"
+-    elif system == 'Darwin':
+-        boost_lib = 'boost_python-mt' if sys.version_info[0] == 2 else 'boost_python3-mt'
+     elif system == 'Cygwin':
+         boost_lib = 'boost_python-mt' if sys.version_info[0] == 2 else 'boost_python3-mt'
+     else:
+--- vowpalwabbit-8.5.0.orig/src/Makefile	2018-09-03 20:32:40.000000000 +0200
++++ vowpalwabbit-8.5.0/src/Makefile	2018-09-03 21:42:30.000000000 +0200
+@@ -37,7 +37,7 @@
+   NPROCS:=$(shell grep -c ^processor /proc/cpuinfo)
+ endif
+ ifeq ($(UNAME), Darwin)
+-  LIBS = -lboost_program_options-mt -lboost_serialization-mt -l pthread -l z
++  LIBS = -lboost_program_options -lboost_serialization -l pthread -l z
+   # On Macs, the location isn't always clear
+   #	brew uses /usr/local
+   #	but /opt/local seems to be preferred by some users
diff --git a/pkgs/development/python-modules/wordfreq/default.nix b/pkgs/development/python-modules/wordfreq/default.nix
index 9de1fd5b3922..d672cb8bae90 100644
--- a/pkgs/development/python-modules/wordfreq/default.nix
+++ b/pkgs/development/python-modules/wordfreq/default.nix
@@ -6,27 +6,28 @@
 , msgpack
 , mecab-python3
 , jieba
-, nose
+, pytest
 , pythonOlder
 , fetchFromGitHub
 }:
 
 buildPythonPackage rec {
   pname = "wordfreq";
-  version = "2.0";
+  version = "2.2.0";
 
    src = fetchFromGitHub {
     owner = "LuminosoInsight";
     repo = "wordfreq";
-    rev = "e3a1b470d9f8e0d82e9f179ffc41abba434b823b";
-    sha256 = "1wjkhhj7nxfnrghwvmvwc672s30lp4b7yr98gxdxgqcq6wdshxwv";
+    # upstream don't tag by version
+    rev = "bc12599010c8181a725ec97d0b3990758a48da36";
+    sha256 = "195794vkzq5wsq3mg1dgfhlnz2f7vi1xajlifq6wkg4lzwyq262m";
    };
 
-  checkInputs = [ nose ];
+  checkInputs = [ pytest ];
 
   checkPhase = ''
     # These languages require additional dictionaries
-    nosetests -e test_japanese -e test_korean -e test_languages
+    pytest tests -k 'not test_japanese and not test_korean and not test_languages and not test_french_and_related'
   '';
    
   propagatedBuildInputs = [ regex langcodes ftfy msgpack mecab-python3 jieba ];
diff --git a/pkgs/development/python-modules/zodb/default.nix b/pkgs/development/python-modules/zodb/default.nix
index c23f332638d0..848da5b21717 100644
--- a/pkgs/development/python-modules/zodb/default.nix
+++ b/pkgs/development/python-modules/zodb/default.nix
@@ -4,7 +4,6 @@
 , zope_testrunner
 , transaction
 , six
-, wheel
 , zope_interface
 , zodbpickle
 , zconfig
@@ -24,15 +23,16 @@ buildPythonPackage rec {
     };
 
     patches = [
-      ./ZODB-5.3.0-fix-tests.patch
+      ./ZODB-5.3.0-fix-tests.patch # still needeed with 5.4.0
+      # Upstream patch to fix tests with persistent 4.4,
+      # cannot fetchpatch because only one hunk of the upstream commit applies.
+      # TODO remove on next release
+      ./fix-tests-with-persistent-4.4.patch
     ];
 
     propagatedBuildInputs = [
-      manuel
       transaction
-      zope_testrunner
       six
-      wheel
       zope_interface
       zodbpickle
       zconfig
@@ -41,6 +41,11 @@ buildPythonPackage rec {
       BTrees
     ];
 
+    checkInputs = [
+      manuel
+      zope_testrunner
+    ];
+
     meta = with stdenv.lib; {
       description = "Zope Object Database: object database and persistence";
       homepage = https://pypi.python.org/pypi/ZODB;
diff --git a/pkgs/development/python-modules/zodb/fix-tests-with-persistent-4.4.patch b/pkgs/development/python-modules/zodb/fix-tests-with-persistent-4.4.patch
new file mode 100644
index 000000000000..57946dd29863
--- /dev/null
+++ b/pkgs/development/python-modules/zodb/fix-tests-with-persistent-4.4.patch
@@ -0,0 +1,26 @@
+From 2d0ae7199501795617a82a32bafe19b4b5ae89c3 Mon Sep 17 00:00:00 2001
+From: Jason Madden <jamadden@gmail.com>
+Date: Wed, 22 Aug 2018 10:43:19 -0500
+Subject: [PATCH] Fix tests with, and depend on, persistent 4.4.
+
+Fixes #213.
+---
+ src/ZODB/tests/util.py | 5 +++++
+ 3 files changed, 9 insertions(+), 3 deletions(-)
+
+diff --git a/src/ZODB/tests/util.py b/src/ZODB/tests/util.py
+index 4ffde92c1..e9bf547fa 100644
+--- a/src/ZODB/tests/util.py
++++ b/src/ZODB/tests/util.py
+@@ -37,6 +37,11 @@
+      r"\1"),
+     (re.compile('b(".*?")'),
+      r"\1"),
++    # Persistent 4.4 changes the repr of persistent subclasses,
++    # and it is slightly different with the C extension and
++    # pure-Python module
++    (re.compile('ZODB.tests.testcrossdatabasereferences.'),
++     ''),
+     # Python 3 adds module name to exceptions.
+     (re.compile("ZODB.interfaces.BlobError"),
+      r"BlobError"),
diff --git a/pkgs/development/r-modules/default.nix b/pkgs/development/r-modules/default.nix
index 9bbab76d4a2f..a2c586c06a96 100644
--- a/pkgs/development/r-modules/default.nix
+++ b/pkgs/development/r-modules/default.nix
@@ -906,6 +906,14 @@ let
       TCLLIBPATH = "${pkgs.bwidget}/lib/bwidget${pkgs.bwidget.version}";
     });
 
+    RPostgres = old.RPostgres.overrideDerivation (attrs: {
+      preConfigure = ''
+        export INCLUDE_DIR=${pkgs.postgresql}/include
+        export LIB_DIR=${pkgs.postgresql.lib}/lib
+        patchShebangs configure
+        '';
+    });
+
     OpenMx = old.OpenMx.overrideDerivation (attrs: {
       preConfigure = ''
         patchShebangs configure
diff --git a/pkgs/development/ruby-modules/solargraph/Gemfile.lock b/pkgs/development/ruby-modules/solargraph/Gemfile.lock
index ed670c11c92d..436d31830ff4 100644
--- a/pkgs/development/ruby-modules/solargraph/Gemfile.lock
+++ b/pkgs/development/ruby-modules/solargraph/Gemfile.lock
@@ -17,7 +17,7 @@ GEM
     rainbow (3.0.0)
     reverse_markdown (1.1.0)
       nokogiri
-    rubocop (0.58.2)
+    rubocop (0.59.1)
       jaro_winkler (~> 1.5.1)
       parallel (~> 1.10)
       parser (>= 2.5, != 2.5.1.1)
@@ -26,7 +26,7 @@ GEM
       ruby-progressbar (~> 1.7)
       unicode-display_width (~> 1.0, >= 1.0.1)
     ruby-progressbar (1.10.0)
-    solargraph (0.25.1)
+    solargraph (0.27.1)
       coderay (~> 1.1)
       eventmachine (~> 1.2, >= 1.2.5)
       htmlentities (~> 4.3, >= 4.3.4)
diff --git a/pkgs/development/ruby-modules/solargraph/gemset.nix b/pkgs/development/ruby-modules/solargraph/gemset.nix
index 00395518af46..840cf922419b 100644
--- a/pkgs/development/ruby-modules/solargraph/gemset.nix
+++ b/pkgs/development/ruby-modules/solargraph/gemset.nix
@@ -110,10 +110,10 @@
     dependencies = ["jaro_winkler" "parallel" "parser" "powerpack" "rainbow" "ruby-progressbar" "unicode-display_width"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0fc1fw9z98qd91ipsh9hdvpcb401qvkhw518s35l8a67sv4vdnj3";
+      sha256 = "0hz4slfisbq8nqs83mvvh6yv5hb7z7zx9fxvv9cka6b9ldvr2i2b";
       type = "gem";
     };
-    version = "0.58.2";
+    version = "0.59.1";
   };
   ruby-progressbar = {
     source = {
@@ -127,10 +127,10 @@
     dependencies = ["coderay" "eventmachine" "htmlentities" "kramdown" "parser" "reverse_markdown" "rubocop" "thor" "tilt" "yard"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1b5dljgskjpkpv2l0jpb6i8j73hidskcbp2v7fhjp7kpx94x6php";
+      sha256 = "1wp4k6ayv9gv1rzxqccz6zb1fss7klszqwha9wvs6mj3c1vhghac";
       type = "gem";
     };
-    version = "0.25.1";
+    version = "0.27.1";
   };
   thor = {
     source = {
diff --git a/pkgs/development/tools/ammonite/default.nix b/pkgs/development/tools/ammonite/default.nix
index f139e296d35e..0e98d63fdd3e 100644
--- a/pkgs/development/tools/ammonite/default.nix
+++ b/pkgs/development/tools/ammonite/default.nix
@@ -5,12 +5,12 @@
 with stdenv.lib;
 stdenv.mkDerivation rec {
   name = "ammonite-${version}";
-  version = "1.1.2";
+  version = "1.2.0";
   scalaVersion = "2.12";
 
   src = fetchurl {
     url = "https://github.com/lihaoyi/Ammonite/releases/download/${version}/${scalaVersion}-${version}";
-    sha256 = "1balr7ya7xlyq32jwb0w9c4klnw13mdn2c5azkwngq5cp29yrfrc";
+    sha256 = "08kh4j9jsg3c3ks9q5f01i13d1ak701vjviy5wb3y6xsajg62nfj";
   };
 
   propagatedBuildInputs = [ jre ] ;
diff --git a/pkgs/development/tools/analysis/pmd/default.nix b/pkgs/development/tools/analysis/pmd/default.nix
index 78dd57789622..187b2d7b03f9 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.5.0";
+  version = "6.7.0";
 
   buildInputs = [ unzip ];
 
   src = fetchurl {
     url = "mirror://sourceforge/pmd/pmd-bin-${version}.zip";
-    sha256 = "10jdgps1ikx75ljp2gi76ff7payg28pmiy5y3vp17gg47mv991aw";
+    sha256 = "0bnbr8zq28dgvwka563g5lbya5jhmjrahnbwagcs4afpsrm7zj6c";
   };
 
   installPhase = ''
diff --git a/pkgs/development/tools/analysis/radare2/cutter.nix b/pkgs/development/tools/analysis/radare2/cutter.nix
index 4269661a4ff3..659d6a94f5eb 100644
--- a/pkgs/development/tools/analysis/radare2/cutter.nix
+++ b/pkgs/development/tools/analysis/radare2/cutter.nix
@@ -8,7 +8,7 @@
 , python3 }:
 
 let
-  version = "1.7";
+  version = "1.7.1";
 in
 stdenv.mkDerivation rec {
   name = "radare2-cutter-${version}";
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
     owner = "radareorg";
     repo = "cutter";
     rev = "v${version}";
-    sha256 = "0z9wzxd5hw0ivakrg3xiv4zx1rjj032hlmizq0pxj22xjrj1gg9n";
+    sha256 = "0dfi6f016jnh3swppvks5qkvmk0j2hvggh9sd1f40kg9pg5p08hy";
   };
 
   postUnpack = "export sourceRoot=$sourceRoot/src";
@@ -49,6 +49,6 @@ stdenv.mkDerivation rec {
     description = "A Qt and C++ GUI for radare2 reverse engineering framework";
     homepage = src.meta.homepage;
     license = licenses.gpl3;
-    maintainers = with maintainers; [ dtzWill ];
+    maintainers = with maintainers; [ mic92 dtzWill ];
   };
 }
diff --git a/pkgs/development/tools/analysis/radare2/default.nix b/pkgs/development/tools/analysis/radare2/default.nix
index 85559269f279..f10b820a73ea 100644
--- a/pkgs/development/tools/analysis/radare2/default.nix
+++ b/pkgs/development/tools/analysis/radare2/default.nix
@@ -86,22 +86,22 @@ in {
   #<generated>
   # DO NOT EDIT! Automatically generated by ./update.py
   radare2 = generic {
-    version_commit = "19251";
-    gittap = "2.8.0";
-    gittip = "a76b965410aba07b4ef8b96d90b25b271c2003dd";
-    rev = "2.8.0";
-    version = "2.8.0";
-    sha256 = "1d9rkzc3vychy2h1bnywwx4why83rr18r0lvvl1cqx87ad5awcjk";
+    version_commit = "19349";
+    gittap = "2.9.0";
+    gittip = "d5e9539ec8068ca2ab4759dc3b0697781ded4cc8";
+    rev = "2.9.0";
+    version = "2.9.0";
+    sha256 = "0zz6337p9095picfvjrcnqaxdi2a2b68h9my523ilnw8ynwfhdzw";
     cs_tip = "782ea67e17a391ca0d3faafdc365b335a1a8930a";
     cs_sha256 = "1maww4ir78a193pm3f8lr2kdkizi7rywn68ffa65ipyr7j4pl6i4";
   };
   r2-for-cutter = generic {
-    version_commit = "19251";
-    gittap = "2.8.0-118-gb0547831f";
-    gittip = "b0547831f127b7357e3c93bc43933482a4d6213b";
-    rev = "b0547831f127b7357e3c93bc43933482a4d6213b";
-    version = "2018-08-07";
-    sha256 = "1ix42kipd1aayb494ajbxawzc1cwikm9fxk343d1kchxx4a30a1m";
+    version_commit = "19349";
+    gittap = "2.8.0-189-gf82b28982";
+    gittip = "f82b289822825e4c7403734f3b95dfd7f5e4f725";
+    rev = "f82b289822825e4c7403734f3b95dfd7f5e4f725";
+    version = "2018-08-14";
+    sha256 = "0zc2a09xmwbxphxd1b0ia0zm8323wfcmxwwx6k239681jj9qwgr1";
     cs_tip = "782ea67e17a391ca0d3faafdc365b335a1a8930a";
     cs_sha256 = "1maww4ir78a193pm3f8lr2kdkizi7rywn68ffa65ipyr7j4pl6i4";
   };
diff --git a/pkgs/development/tools/analysis/radare2/update.py b/pkgs/development/tools/analysis/radare2/update.py
index fae6a52a3920..45920fd1e4bf 100755
--- a/pkgs/development/tools/analysis/radare2/update.py
+++ b/pkgs/development/tools/analysis/radare2/update.py
@@ -13,6 +13,8 @@ from datetime import datetime
 from pathlib import Path
 from typing import Dict
 
+SCRIPT_DIR = Path(__file__).parent.resolve()
+
 
 def sh(*args: str) -> str:
     out = subprocess.check_output(list(args))
@@ -34,8 +36,17 @@ def get_radare2_rev() -> str:
     return release["tag_name"]
 
 
+def get_cutter_version() -> str:
+    version_expr = """
+(with import <nixpkgs> {}; (builtins.parseDrvName (qt5.callPackage ./cutter.nix {}).name).version)
+"""
+    with SCRIPT_DIR:
+        return sh("nix", "eval", "--raw", version_expr.strip())
+
+
 def get_r2_cutter_rev() -> str:
-    url = "https://api.github.com/repos/radareorg/cutter/contents/"
+    version = get_cutter_version()
+    url = f"https://api.github.com/repos/radareorg/cutter/contents?ref=v{version}"
     with urllib.request.urlopen(url) as response:
         data = json.load(response)  # type: ignore
     for entry in data:
diff --git a/pkgs/development/tools/analysis/splint/default.nix b/pkgs/development/tools/analysis/splint/default.nix
index 2d6129dd3764..57a83e54d705 100644
--- a/pkgs/development/tools/analysis/splint/default.nix
+++ b/pkgs/development/tools/analysis/splint/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
   doCheck = true;
 
   meta = with stdenv.lib; {
-    homepage = http://splint.org/;
+    homepage = http://www.splint.org/;
     description = "Annotation-assisted lightweight static analyzer for C";
 
     longDescription = ''
diff --git a/pkgs/development/tools/backblaze-b2/default.nix b/pkgs/development/tools/backblaze-b2/default.nix
index 6b133d959ccb..79041b055579 100644
--- a/pkgs/development/tools/backblaze-b2/default.nix
+++ b/pkgs/development/tools/backblaze-b2/default.nix
@@ -33,7 +33,7 @@ buildPythonApplication rec {
   postInstall = ''
     mv "$out/bin/b2" "$out/bin/backblaze-b2"
 
-    sed 's/^have b2 \&\&$/_have backblaze-b2 \&\&/'  -i contrib/bash_completion/b2
+    sed 's/^_have b2 \&\&$/_have backblaze-b2 \&\&/'  -i contrib/bash_completion/b2
     sed 's/^\(complete -F _b2\) b2/\1 backblaze-b2/' -i contrib/bash_completion/b2
 
     mkdir -p "$out/etc/bash_completion.d"
diff --git a/pkgs/development/tools/build-managers/bazel/default.nix b/pkgs/development/tools/build-managers/bazel/default.nix
index 6a25aef8b36a..e9f005f79917 100644
--- a/pkgs/development/tools/build-managers/bazel/default.nix
+++ b/pkgs/development/tools/build-managers/bazel/default.nix
@@ -1,11 +1,13 @@
 { stdenv, lib, fetchurl, fetchpatch, runCommand, makeWrapper
 , jdk, zip, unzip, bash, writeCBin, coreutils
 , which, python, perl, gnused, gnugrep, findutils
+# Apple dependencies
+, cctools, clang, libcxx, CoreFoundation, CoreServices, Foundation
+# Allow to independently override the jdks used to build and run respectively
+, buildJdk ? jdk, runJdk ? jdk
 # Always assume all markers valid (don't redownload dependencies).
 # Also, don't clean up environment variables.
 , enableNixHacks ? false
-# Apple dependencies
-, cctools, clang, libcxx, CoreFoundation, CoreServices, Foundation
 }:
 
 let
@@ -26,7 +28,7 @@ let
 in
 stdenv.mkDerivation rec {
 
-  version = "0.16.0";
+  version = "0.17.1";
 
   meta = with lib; {
     homepage = "https://github.com/bazelbuild/bazel/";
@@ -40,7 +42,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://github.com/bazelbuild/bazel/releases/download/${version}/bazel-${version}-dist.zip";
-    sha256 = "1ca9pncnj6v4r1kvgxys7607wpz4d2ic6g0i7lpsc2zg2qwmjc67";
+    sha256 = "081z40vsxvw6ndiinik4pn09gxmv140k6l9zv93dgjr86qf2ir13";
   };
 
   sourceRoot = ".";
@@ -87,6 +89,9 @@ stdenv.mkDerivation rec {
       # and linkers from Xcode instead of from PATH
       export BAZEL_USE_CPP_ONLY_TOOLCHAIN=1
 
+      # Explicitly configure gcov since we don't have it on Darwin, so autodetection fails
+      export GCOV=${coreutils}/bin/false
+
       # Framework search paths aren't added by bintools hook
       # https://github.com/NixOS/nixpkgs/pull/41914
       export NIX_LDFLAGS="$NIX_LDFLAGS -F${CoreFoundation}/Library/Frameworks -F${CoreServices}/Library/Frameworks -F${Foundation}/Library/Frameworks"
@@ -95,6 +100,10 @@ stdenv.mkDerivation rec {
       # https://github.com/NixOS/nixpkgs/pull/41589
       export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -isystem ${libcxx}/include/c++/v1"
 
+      # 10.10 apple_sdk Foundation doesn't have type arguments on classes
+      # Remove this when we update apple_sdk
+      sed -i -e 's/<.*\*>//g' tools/osx/xcode_locator.m
+
       # don't use system installed Xcode to run clang, use Nix clang instead
       sed -i -e "s;/usr/bin/xcrun clang;${clang}/bin/clang $NIX_CFLAGS_COMPILE $NIX_LDFLAGS -framework CoreFoundation;g" \
         scripts/bootstrap/compile.sh \
@@ -152,7 +161,7 @@ stdenv.mkDerivation rec {
      + genericPatches;
 
   buildInputs = [
-    jdk
+    buildJdk
   ];
 
   nativeBuildInputs = [
@@ -190,7 +199,7 @@ stdenv.mkDerivation rec {
   installPhase = ''
     mkdir -p $out/bin
     mv output/bazel $out/bin
-    wrapProgram "$out/bin/bazel" --set JAVA_HOME "${jdk}"
+    wrapProgram "$out/bin/bazel" --set JAVA_HOME "${runJdk}"
     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/
diff --git a/pkgs/development/tools/build-managers/bear/default.nix b/pkgs/development/tools/build-managers/bear/default.nix
index fb12b5a9c14a..51e8d12d3147 100644
--- a/pkgs/development/tools/build-managers/bear/default.nix
+++ b/pkgs/development/tools/build-managers/bear/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "bear-${version}";
-  version = "2.3.12";
+  version = "2.3.13";
 
   src = fetchFromGitHub {
     owner = "rizsotto";
     repo = "Bear";
     rev = version;
-    sha256 = "1zzz2yiiny9pm4h6ayb82xzxc2j5djcpf8va2wagcw92m7w6miqw";
+    sha256 = "0imvvs22gyr1v6ydgp5yn2nq8fb8llmz0ra1m733ikjaczl3jm7z";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/tools/build-managers/gn/default.nix b/pkgs/development/tools/build-managers/gn/default.nix
index 399486c4d902..a273afd71580 100644
--- a/pkgs/development/tools/build-managers/gn/default.nix
+++ b/pkgs/development/tools/build-managers/gn/default.nix
@@ -1,107 +1,38 @@
-{ stdenv, lib, fetchgit, fetchzip, fetchpatch
-, libevent, ninja, python, darwin }:
+{ stdenv, lib, fetchgit, fetchzip, fetchpatch, darwin, writeText
+, git, ninja, python }:
 
 let
-  depsGit = {
-    "tools/gn" = fetchgit {
-      url = "https://chromium.googlesource.com/chromium/src/tools/gn";
-      rev = "0fa417a0d2d8484e9a5a636e3301da322f586601";
-      sha256 = "0pigcl14yc4aak6q1ghfjxdz2ah4fg4m2r5y3asw2rz6mpr5y9z0";
-    };
-    "base" = fetchgit {
-      url = "https://chromium.googlesource.com/chromium/src/base";
-      rev = "ab1d7c3b92ce9c9bc756bdefb8338360d1a33a1e";
-      sha256 = "15wis6qg9ka62k6v1vamg0bp3v5vkpapg485jsn4bbfcaqp6di0f";
-    };
-    "build" = fetchgit {
-      url = "https://chromium.googlesource.com/chromium/src/build";
-      rev = "8d44c08a4c9997695db8098198bdd5026bc7a6f9";
-      sha256 = "19sajgf55xfmvnwvy2ss7g6pyljp751cfsws30w415m6m00lmpxl";
-    };
-    "config" = fetchgit {
-      url = "https://chromium.googlesource.com/chromium/src/build/config";
-      rev = "14116c0cdcb9e28995ca8bb384a12e5c9dbd1dbb";
-      sha256 = "04nif0lm4wcy05b7xhal023874s4r0iq067q57cgwdm72i2gml40";
-    };
-    "testing/gtest" = fetchgit {
-      url = "https://chromium.googlesource.com/chromium/testing/gtest";
-      rev = "585ec31ea716f08233a815e680fc0d4699843938";
-      sha256 = "0csn1cza66851nmxxiw42smsm3422mx67vcyykwn0a71lcjng6rc";
-    };
-    "third_party/apple_apsl" = fetchzip {
-      url = "https://chromium.googlesource.com/chromium/src/third_party/+archive/8e6ccb8c74db6dfa15dd21401ace3ac96c054cf7/apple_apsl.tar.gz";
-      sha256 = "1vgcg741lwz84kdy0qc5wn9dxx3j9zh6a9d185fpygdsipwikqv8";
-      stripRoot = false;
-    };
-    "buildtools/third_party/libc++/trunk" = fetchgit {
-      url = "https://chromium.googlesource.com/chromium/llvm-project/libcxx";
-      rev = "ece1de8658d749e19c12cacd4458cc330eca94e3";
-      sha256 = "1nlyvfkzhchwv9b18bh82jcamqv3acj26ah9ajs31f2dql05amhg";
-    };
-    "buildtools/third_party/libc++abi/trunk" = fetchgit {
-      url = "https://chromium.googlesource.com/chromium/llvm-project/libcxxabi";
-      rev = "52c7a3760aef1df328a9bc957f686410872f0dc0";
-      sha256 = "1aam539j01381q27b7xhij18pz3h0lhw08hglvqq4hgvlqx5cn2s";
-    };
-  };
+  rev = "106b823805adcc043b2bfe5bc21d58f160a28a7b";
+  sha256 = "1a5s6i07s8l4f1bakh3fyaym00xz7zgd49sp6awm10xb7yjh95ba";
 
-in stdenv.mkDerivation rec {
-  name = "gn-${version}";
-  version = "20180423";
-  sourceRoot = ".";
+  shortRev = builtins.substring 0 7 rev;
+  lastCommitPosition = writeText "last_commit_position.h" ''
+    #ifndef OUT_LAST_COMMIT_POSITION_H_
+    #define OUT_LAST_COMMIT_POSITION_H_
 
-  unpackPhase = ''
-    ${lib.concatStringsSep "\n" (
-      lib.mapAttrsToList (n: v: ''
-        mkdir -p $sourceRoot/${n}
-        if [ -d ${v} ]; then
-          cp -r ${v}/* $sourceRoot/${n}
-        else
-          mkdir -p $sourceRoot/${n}
-          pushd $sourceRoot/${n}
-          unpackFile ${v}
-          popd
-        fi
-      '') depsGit)}
+    #define LAST_COMMIT_POSITION "(${shortRev})"
 
-    chmod u+w -R $sourceRoot
+    #endif  // OUT_LAST_COMMIT_POSITION_H_
   '';
 
-  patches = [
-    (fetchpatch {
-      url = "https://raw.githubusercontent.com/Eloston/ungoogled-chromium/3375fbc7b865dafe1230431a1e3f9bffd27ec184/resources/patches/ungoogled-chromium/macos/fix-gn-bootstrap.patch";
-      sha256 = "1h8jgxznm7zrxlzb4wcfx4zx4lyvfrmpd0r7cd7h0s23wn8ibb3a";
-    })
-  ];
+in
+stdenv.mkDerivation rec {
+  name = "gn-${version}";
+  version = "20180830";
 
-  postPatch = ''
-    # Disable libevent bootstrapping (we will provide it).
-    sed -i -e '/static_libraries.*libevent/,/^ *\]\?[})]$/d' \
-      tools/gn/bootstrap/bootstrap.py
+  src = fetchgit {
+    url = "https://gn.googlesource.com/gn";
+    inherit rev sha256;
+  };
 
+  postPatch = ''
     # FIXME Needed with old Apple SDKs
     substituteInPlace base/mac/foundation_util.mm \
       --replace "NSArray<NSString*>*" "NSArray*"
-    substituteInPlace 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"
-
-    # Patch shebangs (for sandbox build)
-    patchShebangs build
   '';
 
-  # FIXME again this shouldn't be necessary but I can't figure out a better way
-  NIX_CFLAGS_COMPILE = "-DMAC_OS_X_VERSION_MAX_ALLOWED=MAC_OS_X_VERSION_10_10 -DMAC_OS_X_VERSION_MIN_REQUIRED=MAC_OS_X_VERSION_10_10";
-
-  NIX_LDFLAGS = "-levent";
-
-  nativeBuildInputs = [ ninja python ];
-  buildInputs = [ libevent ]
-
-  # FIXME These dependencies shouldn't be needed but can't find a way
-  # around it. Chromium pulls this in while bootstrapping GN.
-  ++ lib.optionals stdenv.isDarwin (with darwin; with apple_sdk.frameworks; [
+  nativeBuildInputs = [ ninja python git ];
+  buildInputs = lib.optionals stdenv.isDarwin (with darwin; with apple_sdk.frameworks; [
     libobjc
     cctools
 
@@ -109,25 +40,21 @@ in stdenv.mkDerivation rec {
     ApplicationServices
     Foundation
     AppKit
-    ImageCaptureCore
-    CoreBluetooth
-    IOBluetooth
-    CoreWLAN
-    Quartz
-    Cocoa
   ]);
 
   buildPhase = ''
-    python tools/gn/bootstrap/bootstrap.py -s
+    python build/gen.py --no-sysroot --no-last-commit-position
+    ln -s ${lastCommitPosition} out/last_commit_position.h
+    ninja -j $NIX_BUILD_CORES -C out gn
   '';
 
   installPhase = ''
-    install -vD out/Release/gn "$out/bin/gn"
+    install -vD out/gn "$out/bin/gn"
   '';
 
   meta = with lib; {
     description = "A meta-build system that generates NinjaBuild files";
-    homepage = https://chromium.googlesource.com/chromium/src/tools/gn;
+    homepage = https://gn.googlesource.com/gn;
     license = licenses.bsd3;
     platforms = platforms.unix;
     maintainers = with maintainers; [ stesie matthewbauer ];
diff --git a/pkgs/development/tools/build-managers/nant/default.nix b/pkgs/development/tools/build-managers/nant/default.nix
deleted file mode 100644
index c394d87e09ec..000000000000
--- a/pkgs/development/tools/build-managers/nant/default.nix
+++ /dev/null
@@ -1,71 +0,0 @@
-{ stdenv, fetchFromGitHub, pkgconfig, mono, makeWrapper
-, targetVersion ? "4.5" }:
-
-let
-   version = "2015-11-15";
-
-  src = fetchFromGitHub {
-    owner = "nant";
-    repo = "nant";
-    rev = "19bec6eca205af145e3c176669bbd57e1712be2a";
-    sha256 = "11l5y76csn686p8i3kww9s0sxy659ny9l64krlqg3y2nxaz0fk6l";
-  };
-
-  nant-bootstrapped = stdenv.mkDerivation {
-    name = "nant-bootstrapped-${version}";
-    inherit src;
-
-  nativeBuildInputs = [ pkgconfig ];
-    buildInputs = [ mono makeWrapper ];
-
-    buildFlags = "bootstrap";
-
-    dontStrip = true;
-
-    installPhase = ''
-      mkdir -p $out/lib/nant-bootstrap
-      cp -r bootstrap/* $out/lib/nant-bootstrap
-
-      mkdir -p $out/bin
-      makeWrapper "${mono}/bin/mono" $out/bin/nant \
-        --add-flags "$out/lib/nant-bootstrap/NAnt.exe"
-    '';
-  };
-
-in stdenv.mkDerivation {
-  name = "nant-${version}";
-  inherit src;
-
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ mono makeWrapper nant-bootstrapped ];
-
-  dontStrip = true;
-
-  buildPhase = ''
-    nant -t:mono-${targetVersion}
-  '';
-
-  installPhase = ''
-    mkdir -p $out/lib/nant
-    cp -r build/mono-${targetVersion}.unix/nant-debug/bin/* $out/lib/nant/
-
-    mkdir -p $out/bin
-    makeWrapper "${mono}/bin/mono" $out/bin/nant \
-      --add-flags "$out/lib/nant/NAnt.exe"
-  '';
-
-  meta = with stdenv.lib; {
-    homepage = http://nant.sourceforge.net;
-    description = "NAnt is a free .NET build tool";
-
-    longDescription = ''
-      NAnt is a free .NET build tool. In theory it is kind of like make without
-      make's wrinkles. In practice it's a lot like Ant.
-    '';
-
-    license = licenses.gpl2Plus;
-    maintainers = with maintainers; [ zohl ];
-    platforms = platforms.linux;
-  };
-}
-
diff --git a/pkgs/development/tools/build-managers/pants/default.nix b/pkgs/development/tools/build-managers/pants/default.nix
index 1ad52f327e15..02bf9c23cbac 100644
--- a/pkgs/development/tools/build-managers/pants/default.nix
+++ b/pkgs/development/tools/build-managers/pants/default.nix
@@ -17,6 +17,7 @@ in buildPythonApplication rec {
 
   prePatch = ''
     sed -E -i "s/'([[:alnum:].-]+)[=><][[:digit:]=><.,]*'/'\\1'/g" setup.py
+    substituteInPlace setup.py --replace "requests[security]<2.19,>=2.5.0" "requests[security]<2.20,>=2.5.0"
   '';
 
   # Unnecessary, and causes some really weird behavior around .class files, which
diff --git a/pkgs/development/tools/build-managers/sbt/default.nix b/pkgs/development/tools/build-managers/sbt/default.nix
index b5751a19455e..bbbbbf462ec8 100644
--- a/pkgs/development/tools/build-managers/sbt/default.nix
+++ b/pkgs/development/tools/build-managers/sbt/default.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation rec {
   name = "sbt-${version}";
-  version = "1.2.1";
+  version = "1.2.3";
 
   src = fetchurl {
     urls = [
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
       "https://github.com/sbt/sbt/releases/download/v${version}/sbt-${version}.tgz"
       "https://cocl.us/sbt-${version}.tgz"
     ];
-    sha256 = "1pyp98svh5x8b6yp5vfl0jhz8aysjm0dqvqf7znyb3l7knfqk726";
+    sha256 = "1szyp9hgrvr3r5rhr98cn5mkhca1mr0qfs6cd8fiihm6hzjzn0nm";
   };
 
   patchPhase = ''
diff --git a/pkgs/development/tools/cargo-web/default.nix b/pkgs/development/tools/cargo-web/default.nix
index 06d6697ef965..e350e475f73c 100644
--- a/pkgs/development/tools/cargo-web/default.nix
+++ b/pkgs/development/tools/cargo-web/default.nix
@@ -1,4 +1,6 @@
-{ stdenv, fetchFromGitHub, openssl, pkgconfig, rustPlatform }:
+{ stdenv, fetchFromGitHub, openssl, pkgconfig, rustPlatform
+, CoreServices, Security
+}:
 
 rustPlatform.buildRustPackage rec {
   name = "cargo-web-${version}";
@@ -14,12 +16,14 @@ rustPlatform.buildRustPackage rec {
   cargoSha256 = "157av9zkirr00w9v11mh7yp8w36sy7rw6i80i5jmi0mgrdvcg5si";
 
   nativeBuildInputs = [ openssl pkgconfig ];
+  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ CoreServices Security ];
 
   meta = with stdenv.lib; {
     description = "A Cargo subcommand for the client-side Web";
     homepage = https://github.com/koute/cargo-web;
     license = with licenses; [asl20 /* or */ mit];
     maintainers = [ maintainers.kevincox ];
+    broken = stdenv.isDarwin;  # test with CoreFoundation 10.11
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/development/tools/castxml/default.nix b/pkgs/development/tools/castxml/default.nix
index 603b155ee4f9..aea94633bae3 100644
--- a/pkgs/development/tools/castxml/default.nix
+++ b/pkgs/development/tools/castxml/default.nix
@@ -17,6 +17,11 @@ stdenv.mkDerivation rec {
     sha256 = "1hjh8ihjyp1m2jb5yypp5c45bpbz8k004f4p1cjw4gc7pxhjacdj";
   };
 
+  cmakeFlags = [
+    "-DCLANG_RESOURCE_DIR=${llvmPackages.clang-unwrapped}"
+    "-DSPHINX_MAN=${if withMan then "ON" else "OFF"}"
+  ];
+
   buildInputs = [
     cmake
     llvmPackages.clang-unwrapped
@@ -25,11 +30,6 @@ stdenv.mkDerivation rec {
 
   propagatedbuildInputs = [ llvmPackages.libclang ];
 
-  preConfigure = ''
-    cmakeFlagsArray+=(
-     ${if withMan then "-DSPHINX_MAN=ON" else ""}
-  )'';
-
   # 97% tests passed, 96 tests failed out of 2866
   # mostly because it checks command line and nix append -isystem and all
   doCheck=false;
diff --git a/pkgs/development/tools/continuous-integration/jenkins/default.nix b/pkgs/development/tools/continuous-integration/jenkins/default.nix
index c6fcaa0a44a0..a6a6e9a11054 100644
--- a/pkgs/development/tools/continuous-integration/jenkins/default.nix
+++ b/pkgs/development/tools/continuous-integration/jenkins/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "jenkins-${version}";
-  version = "2.121.2";
+  version = "2.138.1";
 
   src = fetchurl {
     url = "http://mirrors.jenkins.io/war-stable/${version}/jenkins.war";
-    sha256 = "00ln31ahhsihnxba2hldrjxdpyxl7xw731493a24cqlkdq89s3ys";
+    sha256 = "09svkqii9lv1br0al6wjn1l0fsqf6s7fdrfc0awmfsg8fmjlpf7c";
   };
 
   buildCommand = ''
diff --git a/pkgs/development/tools/dep2nix/default.nix b/pkgs/development/tools/dep2nix/default.nix
index 6367f6be2981..e7033c44dd49 100644
--- a/pkgs/development/tools/dep2nix/default.nix
+++ b/pkgs/development/tools/dep2nix/default.nix
@@ -1,9 +1,9 @@
 { stdenv, fetchFromGitHub, buildGoPackage
-, makeWrapper, nix-prefetch-git }:
+, makeWrapper, nix-prefetch-scripts }:
 
 buildGoPackage rec {
   name = "dep2nix-${version}";
-  version = "0.0.1";
+  version = "0.0.2";
 
   goPackagePath = "github.com/nixcloud/dep2nix";
 
@@ -11,7 +11,7 @@ buildGoPackage rec {
     owner = "nixcloud";
     repo = "dep2nix";
     rev = version;
-    sha256 = "05b06wgcy88fb5ccqwq3mfhrhcblr1akpxgsf44kgbdwf5nzz87g";
+    sha256 = "17csgnd6imr1l0gpirsvr5qg7z0mpzxj211p2nwqilrvbp8zj7vg";
   };
 
   nativeBuildInputs = [
@@ -20,7 +20,7 @@ buildGoPackage rec {
 
   postFixup = ''
     wrapProgram $bin/bin/dep2nix \
-      --prefix PATH : ${nix-prefetch-git}/bin
+      --prefix PATH : ${nix-prefetch-scripts}/bin
   '';
 
   goDeps = ./deps.nix;
diff --git a/pkgs/development/tools/flatpak-builder/default.nix b/pkgs/development/tools/flatpak-builder/default.nix
index 33f9ade46811..d2052bc0e8e2 100644
--- a/pkgs/development/tools/flatpak-builder/default.nix
+++ b/pkgs/development/tools/flatpak-builder/default.nix
@@ -29,6 +29,7 @@
 , libcap
 , libdwarf
 , libsoup
+, libyaml
 , ostree
 , patch
 , rpm
@@ -72,6 +73,7 @@ in stdenv.mkDerivation rec {
     libdwarf
     libsoup
     libxml2
+    libyaml
     ostree
   ];
 
diff --git a/pkgs/development/tools/gocode/default.nix b/pkgs/development/tools/gocode/default.nix
index a20e1658988c..64921ec6e10e 100644
--- a/pkgs/development/tools/gocode/default.nix
+++ b/pkgs/development/tools/gocode/default.nix
@@ -1,20 +1,47 @@
-{ stdenv, buildGoPackage, fetchgit }:
+{ stdenv, buildGoPackage, fetchFromGitHub }:
 
 buildGoPackage rec {
   name = "gocode-${version}";
-  version = "20170903-${stdenv.lib.strings.substring 0 7 rev}";
-  rev = "c7fddb39ecbc9ebd1ebe7d2a3af473ed0fffffa1";
+  version = "20180727-${stdenv.lib.strings.substring 0 7 rev}";
+  rev = "00e7f5ac290aeb20a3d8d31e737ae560a191a1d5";
 
-  goPackagePath = "github.com/nsf/gocode";
+  goPackagePath = "github.com/mdempsky/gocode";
 
   # we must allow references to the original `go` package,
   # because `gocode` needs to dig into $GOROOT to provide completions for the
   # standard packages.
   allowGoReference = true;
 
-  src = fetchgit {
+  src = fetchFromGitHub {
+    owner = "mdempsky";
+    repo = "gocode";
     inherit rev;
-    url = "https://github.com/nsf/gocode";
-    sha256 = "0qx8pq38faig41xkl1a4hrgp3ziyjyn6g53vn5wj7cdgm5kk67nb";
+    sha256 = "0vrwjq4r90za47hm88yx5h2mvkv7y4yaj2xbx3skg62wq2drsq31";
+  };
+
+  preBuild = ''
+    # getting an error building the testdata because they contain invalid files
+    # on purpose as part of the testing.
+    rm -r go/src/$goPackagePath/internal/suggest/testdata
+  '';
+
+  meta = with stdenv.lib; {
+    description = "An autocompletion daemon for the Go programming language";
+    longDescription = ''
+      Gocode is a helper tool which is intended to be integrated with your
+      source code editor, like vim, neovim and emacs. It provides several
+      advanced capabilities, which currently includes:
+
+        - Context-sensitive autocompletion
+
+      It is called daemon, because it uses client/server architecture for
+      caching purposes. In particular, it makes autocompletions very fast.
+      Typical autocompletion time with warm cache is 30ms, which is barely
+      noticeable.
+    '';
+    homepage = https://github.com/mdempsky/gocode;
+    license = licenses.mit;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ kalbasit ];
   };
 }
diff --git a/pkgs/development/tools/govendor/default.nix b/pkgs/development/tools/govendor/default.nix
new file mode 100644
index 000000000000..2030c8ba444a
--- /dev/null
+++ b/pkgs/development/tools/govendor/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, buildGoPackage, fetchFromGitHub }:
+
+buildGoPackage rec {
+  name = "govendor-${version}";
+  version = "1.0.9";
+
+  goPackagePath = "github.com/kardianos/govendor";
+
+  src = fetchFromGitHub {
+    owner = "kardianos";
+    repo = "govendor";
+    rev = "v${version}";
+    sha256 = "0g02cd25chyijg0rzab4xr627pkvk5k33mscd6r0gf1v5xvadcfq";
+  };
+
+  meta = with stdenv.lib; {
+    homepage = "https://github.com/kardianos/govendor";
+    description = "Go vendor tool that works with the standard vendor file";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ zimbatm ];
+  };
+}
diff --git a/pkgs/development/tools/haskell/leksah/default.nix b/pkgs/development/tools/haskell/leksah/default.nix
index f1c754ddff96..ec2fb334a3b3 100644
--- a/pkgs/development/tools/haskell/leksah/default.nix
+++ b/pkgs/development/tools/haskell/leksah/default.nix
@@ -14,4 +14,8 @@ in stdenv.mkDerivation {
       --prefix PATH : "${leksahEnv}/bin" \
       --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
   '';
+
+  meta = {
+    broken = true; # 2018-09-13, no successful hydra build since 2017-08-19
+  };
 }
diff --git a/pkgs/development/tools/haskell/vaultenv/default.nix b/pkgs/development/tools/haskell/vaultenv/default.nix
index b607cc5604cd..6bf5e9be7bf2 100644
--- a/pkgs/development/tools/haskell/vaultenv/default.nix
+++ b/pkgs/development/tools/haskell/vaultenv/default.nix
@@ -1,28 +1,35 @@
-{ mkDerivation, fetchzip, async, base, bytestring, hpack, http-conduit
-, lens, lens-aeson, optparse-applicative, retry, stdenv, text, unix
-, unordered-containers, utf8-string
+{ mkDerivation, async, base, bytestring, connection, containers
+, directory, hpack, hspec, hspec-discover, hspec-expectations
+, http-client, http-conduit, lens, lens-aeson, megaparsec, mtl
+, optparse-applicative, parser-combinators, retry, stdenv, text
+, unix, unordered-containers, utf8-string, fetchzip
 }:
-
 mkDerivation rec {
   pname = "vaultenv";
-  version = "0.5.3";
+  version = "0.8.0";
 
   src = fetchzip {
     url = "https://github.com/channable/vaultenv/archive/v${version}.tar.gz";
-    sha256 = "1kxq2pp8l8xf7xwjyd9cwyi7z192013s6psq5fk8jrkkhrk8z3li";
+    sha256 = "04hrwyy7gsybdwljrks4ym3pshqk1i43f8wpirjx7b0dfjgsd2l5";
   };
 
   buildTools = [ hpack ];
-  preConfigure = "hpack .";
 
   isLibrary = false;
   isExecutable = true;
   executableHaskellDepends = [
-    async base bytestring http-conduit lens lens-aeson
-    optparse-applicative retry text unix unordered-containers
-    utf8-string
+    async base bytestring connection containers http-client
+    http-conduit lens lens-aeson megaparsec mtl optparse-applicative
+    parser-combinators retry text unix unordered-containers utf8-string
+  ];
+  testHaskellDepends = [
+    async base bytestring connection containers directory hspec
+    hspec-discover hspec-expectations http-client http-conduit lens
+    lens-aeson megaparsec mtl optparse-applicative parser-combinators
+    retry text unix unordered-containers utf8-string
   ];
-  homepage = "https://github.com/channable/vaultenv";
+  preConfigure = "hpack";
+  homepage = "https://github.com/channable/vaultenv#readme";
   description = "Runs processes with secrets from HashiCorp Vault";
   license = stdenv.lib.licenses.bsd3;
   maintainers = with stdenv.lib.maintainers; [ lnl7 ];
diff --git a/pkgs/development/tools/hcloud/default.nix b/pkgs/development/tools/hcloud/default.nix
index 877080508d40..b3fa6f852f76 100644
--- a/pkgs/development/tools/hcloud/default.nix
+++ b/pkgs/development/tools/hcloud/default.nix
@@ -14,6 +14,19 @@ buildGoPackage rec {
 
   buildFlagsArray = [ "-ldflags=" "-w -X github.com/hetznercloud/cli/cli.Version=${version}" ];
 
+  postInstall = ''
+    mkdir -p \
+      $bin/etc/bash_completion.d \
+      $bin/share/zsh/vendor-completions
+
+    # Add bash completions
+    $bin/bin/hcloud completion bash > "$bin/etc/bash_completion.d/hcloud"
+
+    # Add zsh completions
+    echo "#compdef hcloud" > "$bin/share/zsh/vendor-completions/_hcloud"
+    $bin/bin/hcloud completion zsh >> "$bin/share/zsh/vendor-completions/_hcloud"
+  '';
+
   meta = {
     description = "A command-line interface for Hetzner Cloud, a provider for cloud virtual private servers";
     homepage = https://github.com/hetznercloud/cli;
diff --git a/pkgs/development/tools/heroku/default.nix b/pkgs/development/tools/heroku/default.nix
index 9c5cbb1aa285..ba9ac923d11c 100644
--- a/pkgs/development/tools/heroku/default.nix
+++ b/pkgs/development/tools/heroku/default.nix
@@ -1,70 +1,32 @@
-{ stdenv, lib, fetchurl, makeWrapper, buildGoPackage, fetchFromGitHub
-, nodejs-6_x, postgresql, ruby }:
+{ stdenv, lib, fetchurl, makeWrapper, nodejs }:
 
-with stdenv.lib;
-
-let
-  cli = buildGoPackage rec {
-    name = "cli-${version}";
-    version = "5.6.32";
-
-    goPackagePath = "github.com/heroku/cli";
-
-    src = fetchFromGitHub {
-      owner  = "heroku";
-      repo   = "cli";
-      rev    = "v${version}";
-      sha256 = "062aa79mv2njjb0ix7isbz6646wxmsldv27bsz5v2pbv597km0vz";
-    };
-
-    buildFlagsArray = ''
-      -ldflags=
-        -X=main.Version=${version}
-        -X=main.Channel=stable
-        -X=main.Autoupdate=no
-    '';
-
-    preCheck = ''
-      export HOME=/tmp
-    '';
-
-    doCheck = true;
-  };
-
-in stdenv.mkDerivation rec {
+stdenv.mkDerivation rec {
   name = "heroku-${version}";
-  version = "3.43.16";
+  version = "7.16.0";
 
-  meta = {
-    homepage = https://toolbelt.heroku.com;
-    description = "Everything you need to get started using Heroku";
-    maintainers = with maintainers; [ aflatter mirdhyn peterhoeg ];
-    license = licenses.mit;
-    platforms = with platforms; unix;
-    broken = true; # Outdated function, not supported upstream. https://github.com/NixOS/nixpkgs/issues/27447
+  src = fetchurl {
+    url = "https://cli-assets.heroku.com/heroku-v${version}/heroku-v${version}.tar.xz";
+    sha256 = "434573b4773ce7ccbb21b43b19529475d941fa7dd219b01b75968b42e6b62abe";
   };
 
-  binPath = lib.makeBinPath [ postgresql ruby ];
-
   buildInputs = [ makeWrapper ];
 
-  doUnpack = false;
-
-  src = fetchurl {
-    url = "https://s3.amazonaws.com/assets.heroku.com/heroku-client/heroku-client-${version}.tgz";
-    sha256 = "08pai3cjaj7wshhyjcmkvyr1qxv5ab980whcm406798ng8f91hn7";
-  };
+  dontBuild = true;
 
   installPhase = ''
-    mkdir -p $out
-
-    tar xzf $src -C $out --strip-components=1
-    install -Dm755 ${cli}/bin/cli $out/share/heroku/cli/bin/heroku
-
-    wrapProgram $out/bin/heroku \
-      --set HEROKU_NODE_PATH ${nodejs-6_x}/bin/node \
-      --set XDG_DATA_HOME    $out/share \
-      --set XDG_DATA_DIRS    $out/share \
-      --prefix PATH : ${binPath}
+    mkdir -p $out/share/heroku $out/bin
+    cp -pr * $out/share/heroku
+    substituteInPlace $out/share/heroku/bin/run \
+      --replace "/usr/bin/env node" "${nodejs}/bin/node"
+    makeWrapper $out/share/heroku/bin/run $out/bin/heroku \
+      --set HEROKU_DISABLE_AUTOUPDATE 1
   '';
+
+  meta = {
+    homepage = https://cli.heroku.com;
+    description = "Everything you need to get started using Heroku";
+    maintainers = with lib.maintainers; [ aflatter mirdhyn peterhoeg ];
+    license = lib.licenses.mit;
+    platforms = with lib.platforms; unix;
+  };
 }
diff --git a/pkgs/development/tools/jbake/default.nix b/pkgs/development/tools/jbake/default.nix
index 152cddc101d6..9c3094fb4fec 100644
--- a/pkgs/development/tools/jbake/default.nix
+++ b/pkgs/development/tools/jbake/default.nix
@@ -11,6 +11,8 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ makeWrapper jre ];
 
+  postPatch = "patchShebangs .";
+
   installPhase = ''
     mkdir -p $out
     cp -vr * $out
diff --git a/pkgs/development/tools/misc/dfu-util/default.nix b/pkgs/development/tools/misc/dfu-util/default.nix
index d0a68caace68..2657e570106e 100644
--- a/pkgs/development/tools/misc/dfu-util/default.nix
+++ b/pkgs/development/tools/misc/dfu-util/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
       phones. With dfu-util you are able to download firmware to your device or
       upload firmware from it.
     '';
-    homepage = http://dfu-util.gnumonks.org/;
+    homepage = http://dfu-util.sourceforge.net;
     license = licenses.gpl2Plus;
     platforms = platforms.unix;
     maintainers = [ maintainers.fpletz ];
diff --git a/pkgs/development/tools/misc/gede/default.nix b/pkgs/development/tools/misc/gede/default.nix
index 9e8ce3d93314..9db0062023ce 100644
--- a/pkgs/development/tools/misc/gede/default.nix
+++ b/pkgs/development/tools/misc/gede/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "gede-${version}";
-  version = "2.6.1";
+  version = "2.10.9";
 
   src = fetchurl {
     url = "http://gede.acidron.com/uploads/source/${name}.tar.xz";
-    sha256 = "0jallpchl3c3i90hwic4n7n0ggk5wra0fki4by9ag26ln0k42c4r";
+    sha256 = "0av9v3r6x6anjjm4hzn8wxnvrqc8zp1g7570m5ndg7cgc3sy3bg6";
   };
 
   nativeBuildInputs = [ qmake makeWrapper python ];
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
     description = "Graphical frontend (GUI) to GDB";
     homepage = http://gede.acidron.com;
     license = licenses.bsd2;
-    platforms = platforms.unix;
+    platforms = platforms.linux;
     maintainers = with maintainers; [ juliendehos ];
   };
 }
diff --git a/pkgs/development/tools/misc/kconfig-frontends/default.nix b/pkgs/development/tools/misc/kconfig-frontends/default.nix
index d1415569ca33..bceb15f11659 100644
--- a/pkgs/development/tools/misc/kconfig-frontends/default.nix
+++ b/pkgs/development/tools/misc/kconfig-frontends/default.nix
@@ -1,24 +1,26 @@
-{ stdenv, fetchurl, pkgconfig, bison, flex, gperf, ncurses }:
+{ stdenv, fetchurl, pkgconfig, bison, flex, gperf, ncurses, pythonPackages }:
 
 stdenv.mkDerivation rec {
   basename = "kconfig-frontends";
-  version = "3.12.0.0";
+  version = "4.11.0.1";
   name = "${basename}-${version}";
 
   src = fetchurl {
-    sha256 = "01zlph9bq2xzznlpmfpn0zrmhf2iqw02yh1q7g7adgkl5jk1a9pa";
+    sha256 = "1xircdw3k7aaz29snf96q2fby1cs48bidz5l1kkj0a5gbivw31i3";
     url = "http://ymorin.is-a-geek.org/download/${basename}/${name}.tar.xz";
   };
 
   nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ bison flex gperf ncurses ];
-
-  hardeningDisable = [ "format" ];
+  buildInputs = [ bison flex gperf ncurses pythonPackages.python pythonPackages.wrapPython ];
 
   configureFlags = [
     "--enable-frontends=conf,mconf,nconf"
   ];
 
+  postInstall = ''
+    wrapPythonPrograms
+  '';
+
   meta = with stdenv.lib; {
     description = "Out of Linux tree packaging of the kconfig infrastructure";
     longDescription = ''
diff --git a/pkgs/development/tools/misc/lsof/default.nix b/pkgs/development/tools/misc/lsof/default.nix
index 28c2660ac3d7..0a5a3c487810 100644
--- a/pkgs/development/tools/misc/lsof/default.nix
+++ b/pkgs/development/tools/misc/lsof/default.nix
@@ -51,15 +51,16 @@ stdenv.mkDerivation rec {
     cp lsof $out/bin
   '';
 
-  meta = {
-    homepage = ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/;
+  meta = with stdenv.lib; {
+    homepage = https://people.freebsd.org/~abe/;
     description = "A tool to list open files";
     longDescription = ''
       List open files. Can show what process has opened some file,
       socket (IPv6/IPv4/UNIX local), or partition (by opening a file
       from it).
     '';
-    maintainers = [ stdenv.lib.maintainers.dezgeg ];
-    platforms = stdenv.lib.platforms.unix;
+    maintainers = [ maintainers.dezgeg ];
+    platforms = platforms.unix;
+    license = licenses.purdueBsd;
   };
 }
diff --git a/pkgs/development/tools/misc/lttng-ust/default.nix b/pkgs/development/tools/misc/lttng-ust/default.nix
index b708ce490d29..039e5b1ec542 100644
--- a/pkgs/development/tools/misc/lttng-ust/default.nix
+++ b/pkgs/development/tools/misc/lttng-ust/default.nix
@@ -13,11 +13,11 @@
 
 stdenv.mkDerivation rec {
   name = "lttng-ust-${version}";
-  version = "2.10.1";
+  version = "2.10.2";
 
   src = fetchurl {
     url = "https://lttng.org/files/lttng-ust/${name}.tar.bz2";
-    sha256 = "17gfi1dn6bgg59qn4ihf8hag96lalx0g7dym2ccpzdz7f45krk07";
+    sha256 = "0if0hrs32r98sp85c8c63zpgy5xjw6cx8wrs65xq227b0jwj5jn4";
   };
 
   buildInputs = [ python ];
diff --git a/pkgs/development/tools/misc/texinfo/common.nix b/pkgs/development/tools/misc/texinfo/common.nix
index 101298cd3052..c6877ed4d1a1 100644
--- a/pkgs/development/tools/misc/texinfo/common.nix
+++ b/pkgs/development/tools/misc/texinfo/common.nix
@@ -17,6 +17,9 @@ stdenv.mkDerivation rec {
     inherit sha256;
   };
 
+  # TODO: fix on mass rebuild
+  ${if interactive then "patches" else null} = optional (version == "6.5") ./perl.patch;
+
   # We need a native compiler to build perl XS extensions
   # when cross-compiling.
   depsBuildBuild = [ buildPackages.stdenv.cc perl ];
diff --git a/pkgs/development/tools/misc/texinfo/perl.patch b/pkgs/development/tools/misc/texinfo/perl.patch
new file mode 100644
index 000000000000..e651b37371c7
--- /dev/null
+++ b/pkgs/development/tools/misc/texinfo/perl.patch
@@ -0,0 +1,43 @@
+Adapted from http://svn.savannah.gnu.org/viewvc/texinfo/
+Author: gavin
+--- trunk/tp/Texinfo/Parser.pm  2018-06-04 19:51:36 UTC (rev 8006)
++++ trunk/tp/Texinfo/Parser.pm  2018-07-13 15:31:28 UTC (rev 8007)
+@@ -5531,11 +5531,11 @@
+     }
+   } elsif ($command eq 'clickstyle') {
+     # REMACRO
+-    if ($line =~ /^\s+@([[:alnum:]][[:alnum:]\-]*)({})?\s*/) {
++    if ($line =~ /^\s+@([[:alnum:]][[:alnum:]\-]*)(\{\})?\s*/) {
+       $args = ['@'.$1];
+       $self->{'clickstyle'} = $1;
+       $remaining = $line;
+-      $remaining =~ s/^\s+@([[:alnum:]][[:alnum:]\-]*)({})?\s*(\@(c|comment)((\@|\s+).*)?)?//;
++      $remaining =~ s/^\s+@([[:alnum:]][[:alnum:]\-]*)(\{\})?\s*(\@(c|comment)((\@|\s+).*)?)?//;
+       $has_comment = 1 if (defined($4));
+     } else {
+       $self->line_error (sprintf($self->__(
+--- trunk/tp/Texinfo/Convert/XSParagraph/xspara.c       2018-07-13 15:31:28 UTC (rev 8007)
++++ trunk/tp/Texinfo/Convert/XSParagraph/xspara.c       2018-07-13 15:39:29 UTC (rev 8008)
+@@ -248,6 +248,11 @@
+ 
+   dTHX;
+ 
++#if PERL_VERSION > 27 || (PERL_VERSION == 27 && PERL_SUBVERSION > 8)
++  /* needed due to thread-safe locale handling in newer perls */
++  switch_to_global_locale();
++#endif
++
+   if (setlocale (LC_CTYPE, "en_US.UTF-8")
+       || setlocale (LC_CTYPE, "en_US.utf8"))
+     goto success;
+@@ -320,6 +325,10 @@
+     {
+ success: ;
+       free (utf8_locale);
++#if PERL_VERSION > 27 || (PERL_VERSION == 27 && PERL_SUBVERSION > 8)
++      /* needed due to thread-safe locale handling in newer perls */
++      sync_locale();
++#endif
+       /*
+       fprintf (stderr, "tried to set LC_CTYPE to UTF-8.\n");
+       fprintf (stderr, "character encoding is: %s\n",
diff --git a/pkgs/development/tools/ocaml/cppo/default.nix b/pkgs/development/tools/ocaml/cppo/default.nix
index d7d086e74f97..0611ec8d3bbd 100644
--- a/pkgs/development/tools/ocaml/cppo/default.nix
+++ b/pkgs/development/tools/ocaml/cppo/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, ocamlbuild, jbuilder }:
+{ stdenv, fetchFromGitHub, ocaml, findlib, ocamlbuild, dune }:
 let
   pname = "cppo";
   webpage = "http://mjambon.com/${pname}.html";
@@ -9,9 +9,9 @@ let param =
   if stdenv.lib.versionAtLeast ocaml.version "4.02" then {
     version = "1.6.4";
     sha256 = "16mlwck0wngr5pmlr8dxc471zzhhcja3mv4xf4n8jm9nhb3iikvh";
-    buildInputs = [ jbuilder ];
+    buildInputs = [ dune ];
     extra = {
-      inherit (jbuilder) installPhase;
+      inherit (dune) installPhase;
     };
   } else {
     version = "1.5.0";
diff --git a/pkgs/development/tools/ocaml/jbuilder/default.nix b/pkgs/development/tools/ocaml/dune/default.nix
index c30478132cf2..a9ed66a8efe1 100644
--- a/pkgs/development/tools/ocaml/jbuilder/default.nix
+++ b/pkgs/development/tools/ocaml/dune/default.nix
@@ -1,13 +1,13 @@
 { stdenv, fetchFromGitHub, ocamlPackages, opaline }:
 
 stdenv.mkDerivation rec {
-  name = "jbuilder-${version}";
-  version = "1.0.1";
+  name = "dune-${version}";
+  version = "1.1.1";
   src = fetchFromGitHub {
     owner = "ocaml";
     repo = "dune";
     rev = "${version}";
-    sha256 = "0k6r9qrbwlnb4rqwqys5fr7khwza7n7d8wpgl9jbb3xpag2zl3q9";
+    sha256 = "0v2pnxpmqsvrvidpwxvbsypzhqfdnjs5crjp9y61qi8nyj8d75zw";
   };
 
   buildInputs = with ocamlPackages; [ ocaml findlib ];
@@ -16,8 +16,6 @@ stdenv.mkDerivation rec {
 
   installPhase = "${opaline}/bin/opaline -prefix $out -libdir $OCAMLFIND_DESTDIR";
 
-  preFixup = "rm -rf $out/jbuilder";
-
   meta = {
     inherit (src.meta) homepage;
     description = "Fast, portable and opinionated build system";
diff --git a/pkgs/development/tools/ocaml/js_of_ocaml/3.0.nix b/pkgs/development/tools/ocaml/js_of_ocaml/3.0.nix
index d8c289015b2f..1307635abb99 100644
--- a/pkgs/development/tools/ocaml/js_of_ocaml/3.0.nix
+++ b/pkgs/development/tools/ocaml/js_of_ocaml/3.0.nix
@@ -1,4 +1,4 @@
-{ stdenv, ocaml, findlib, jbuilder, js_of_ocaml-compiler
+{ stdenv, ocaml, findlib, dune, js_of_ocaml-compiler
 , ocaml-migrate-parsetree, ppx_tools_versioned, uchar
 }:
 
@@ -7,11 +7,11 @@ stdenv.mkDerivation rec {
 
 	inherit (js_of_ocaml-compiler) version src installPhase meta;
 
-	buildInputs = [ ocaml findlib jbuilder ocaml-migrate-parsetree ppx_tools_versioned ];
+	buildInputs = [ ocaml findlib dune ocaml-migrate-parsetree ppx_tools_versioned ];
 
   postPatch = "patchShebangs lib/generate_stubs.sh";
 
 	propagatedBuildInputs = [ js_of_ocaml-compiler uchar ];
 
-	buildPhase = "jbuilder build -p js_of_ocaml";
+	buildPhase = "dune build -p js_of_ocaml";
 }
diff --git a/pkgs/development/tools/ocaml/js_of_ocaml/camlp4.nix b/pkgs/development/tools/ocaml/js_of_ocaml/camlp4.nix
index 3caeabaae78b..139ffef186b5 100644
--- a/pkgs/development/tools/ocaml/js_of_ocaml/camlp4.nix
+++ b/pkgs/development/tools/ocaml/js_of_ocaml/camlp4.nix
@@ -1,4 +1,4 @@
-{ stdenv, ocaml, findlib, jbuilder, js_of_ocaml-compiler
+{ stdenv, ocaml, findlib, dune, js_of_ocaml-compiler
 , camlp4, ocsigen_deriving
 }:
 
@@ -7,7 +7,7 @@ stdenv.mkDerivation rec {
 
 	inherit (js_of_ocaml-compiler) version src installPhase meta;
 
-	buildInputs = [ ocaml findlib jbuilder camlp4 ocsigen_deriving ];
+	buildInputs = [ ocaml findlib dune camlp4 ocsigen_deriving ];
 
-	buildPhase = "jbuilder build -p js_of_ocaml-camlp4";
+	buildPhase = "dune build -p js_of_ocaml-camlp4";
 }
diff --git a/pkgs/development/tools/ocaml/js_of_ocaml/compiler.nix b/pkgs/development/tools/ocaml/js_of_ocaml/compiler.nix
index 798013045955..cd242b5bd377 100644
--- a/pkgs/development/tools/ocaml/js_of_ocaml/compiler.nix
+++ b/pkgs/development/tools/ocaml/js_of_ocaml/compiler.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, jbuilder
+{ stdenv, fetchFromGitHub, ocaml, findlib, dune
 , cmdliner, cppo, yojson
 }:
 
@@ -17,13 +17,13 @@ stdenv.mkDerivation rec {
 		sha256 = "0dxxdxgrbg9xvvi3i627krnk6rb1ja0ypp2diwdkpnmy45wak9lv";
 	};
 
-	buildInputs = [ ocaml findlib jbuilder cmdliner cppo ];
+	buildInputs = [ ocaml findlib dune cmdliner cppo ];
 
 	propagatedBuildInputs = [ yojson ];
 
-	buildPhase = "jbuilder build -p js_of_ocaml-compiler";
+	buildPhase = "dune build -p js_of_ocaml-compiler";
 
-	inherit (jbuilder) installPhase;
+	inherit (dune) installPhase;
 
 	meta = {
 		description = "Compiler from OCaml bytecode to Javascript";
diff --git a/pkgs/development/tools/ocaml/js_of_ocaml/lwt.nix b/pkgs/development/tools/ocaml/js_of_ocaml/lwt.nix
index 5ec8cca344d4..e7a31c1ce2e5 100644
--- a/pkgs/development/tools/ocaml/js_of_ocaml/lwt.nix
+++ b/pkgs/development/tools/ocaml/js_of_ocaml/lwt.nix
@@ -1,4 +1,4 @@
-{ stdenv, ocaml, findlib, jbuilder, js_of_ocaml-compiler, js_of_ocaml-ppx
+{ stdenv, ocaml, findlib, dune, js_of_ocaml-compiler, js_of_ocaml-ppx
 , ocaml-migrate-parsetree, ppx_tools_versioned
 , js_of_ocaml, ocaml_lwt, lwt_log
 }:
@@ -8,9 +8,9 @@ stdenv.mkDerivation rec {
 
 	inherit (js_of_ocaml-compiler) version src installPhase meta;
 
-	buildInputs = [ ocaml findlib jbuilder js_of_ocaml-ppx ocaml-migrate-parsetree ppx_tools_versioned ];
+	buildInputs = [ ocaml findlib dune js_of_ocaml-ppx ocaml-migrate-parsetree ppx_tools_versioned ];
 
 	propagatedBuildInputs = [ js_of_ocaml ocaml_lwt lwt_log ];
 
-	buildPhase = "jbuilder build -p js_of_ocaml-lwt";
+	buildPhase = "dune build -p js_of_ocaml-lwt";
 }
diff --git a/pkgs/development/tools/ocaml/js_of_ocaml/ocamlbuild.nix b/pkgs/development/tools/ocaml/js_of_ocaml/ocamlbuild.nix
index 60ad695dc0bd..bf33b4e59e52 100644
--- a/pkgs/development/tools/ocaml/js_of_ocaml/ocamlbuild.nix
+++ b/pkgs/development/tools/ocaml/js_of_ocaml/ocamlbuild.nix
@@ -1,4 +1,4 @@
-{ stdenv, ocaml, findlib, jbuilder, js_of_ocaml-compiler
+{ stdenv, ocaml, findlib, dune, js_of_ocaml-compiler
 , ocamlbuild
 }:
 
@@ -7,9 +7,9 @@ stdenv.mkDerivation rec {
 
 	inherit (js_of_ocaml-compiler) version src installPhase meta;
 
-	buildInputs = [ ocaml findlib jbuilder ];
+	buildInputs = [ ocaml findlib dune ];
 
 	propagatedBuildInputs = [ ocamlbuild ];
 
-	buildPhase = "jbuilder build -p js_of_ocaml-ocamlbuild";
+	buildPhase = "dune build -p js_of_ocaml-ocamlbuild";
 }
diff --git a/pkgs/development/tools/ocaml/js_of_ocaml/ppx.nix b/pkgs/development/tools/ocaml/js_of_ocaml/ppx.nix
index 4f6b281c8b96..0649aee162a5 100644
--- a/pkgs/development/tools/ocaml/js_of_ocaml/ppx.nix
+++ b/pkgs/development/tools/ocaml/js_of_ocaml/ppx.nix
@@ -1,4 +1,4 @@
-{ stdenv, ocaml, findlib, jbuilder, js_of_ocaml-compiler
+{ stdenv, ocaml, findlib, dune, js_of_ocaml-compiler
 , ocaml-migrate-parsetree, ppx_tools_versioned
 , js_of_ocaml
 }:
@@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
 
 	inherit (js_of_ocaml-compiler) version src installPhase meta;
 
-	buildInputs = [ ocaml findlib jbuilder ocaml-migrate-parsetree ppx_tools_versioned js_of_ocaml ];
+	buildInputs = [ ocaml findlib dune ocaml-migrate-parsetree ppx_tools_versioned js_of_ocaml ];
 
-	buildPhase = "jbuilder build -p js_of_ocaml-ppx";
+	buildPhase = "dune build -p js_of_ocaml-ppx";
 }
diff --git a/pkgs/development/tools/ocaml/js_of_ocaml/ppx_deriving_json.nix b/pkgs/development/tools/ocaml/js_of_ocaml/ppx_deriving_json.nix
index 8f32887c5bf5..ddea73b3c766 100644
--- a/pkgs/development/tools/ocaml/js_of_ocaml/ppx_deriving_json.nix
+++ b/pkgs/development/tools/ocaml/js_of_ocaml/ppx_deriving_json.nix
@@ -1,4 +1,4 @@
-{ stdenv, ocaml, findlib, jbuilder, js_of_ocaml-compiler
+{ stdenv, ocaml, findlib, dune, js_of_ocaml-compiler
 , js_of_ocaml, ppx_deriving
 }:
 
@@ -7,9 +7,9 @@ stdenv.mkDerivation rec {
 
 	inherit (js_of_ocaml-compiler) version src installPhase meta;
 
-	buildInputs = [ ocaml findlib jbuilder ];
+	buildInputs = [ ocaml findlib dune ];
 
 	propagatedBuildInputs = [ js_of_ocaml ppx_deriving ];
 
-	buildPhase = "jbuilder build -p js_of_ocaml-ppx_deriving_json";
+	buildPhase = "dune build -p js_of_ocaml-ppx_deriving_json";
 }
diff --git a/pkgs/development/tools/ocaml/js_of_ocaml/tyxml.nix b/pkgs/development/tools/ocaml/js_of_ocaml/tyxml.nix
index 041fd71f92fa..1ba9ddd0ab7f 100644
--- a/pkgs/development/tools/ocaml/js_of_ocaml/tyxml.nix
+++ b/pkgs/development/tools/ocaml/js_of_ocaml/tyxml.nix
@@ -1,4 +1,4 @@
-{ stdenv, ocaml, findlib, jbuilder, js_of_ocaml-compiler
+{ stdenv, ocaml, findlib, dune, js_of_ocaml-compiler
 , js_of_ocaml-ppx, ocaml-migrate-parsetree, ppx_tools_versioned
 , js_of_ocaml, reactivedata, tyxml
 }:
@@ -8,9 +8,9 @@ stdenv.mkDerivation rec {
 
 	inherit (js_of_ocaml-compiler) version src installPhase meta;
 
-	buildInputs = [ ocaml findlib jbuilder js_of_ocaml-ppx ocaml-migrate-parsetree ppx_tools_versioned ];
+	buildInputs = [ ocaml findlib dune js_of_ocaml-ppx ocaml-migrate-parsetree ppx_tools_versioned ];
 
 	propagatedBuildInputs = [ js_of_ocaml reactivedata tyxml ];
 
-	buildPhase = "jbuilder build -p js_of_ocaml-tyxml";
+	buildPhase = "dune build -p js_of_ocaml-tyxml";
 }
diff --git a/pkgs/development/tools/ocaml/ocaml-top/default.nix b/pkgs/development/tools/ocaml/ocaml-top/default.nix
index 744a136c9ef2..ddea2aa9784b 100644
--- a/pkgs/development/tools/ocaml/ocaml-top/default.nix
+++ b/pkgs/development/tools/ocaml/ocaml-top/default.nix
@@ -1,6 +1,7 @@
 { stdenv, fetchzip, ncurses
 , ocamlPackages
-, jbuilder }:
+, dune
+}:
 
 stdenv.mkDerivation rec {
   version = "1.1.5";
@@ -10,7 +11,7 @@ stdenv.mkDerivation rec {
     sha256 = "1d4i6aanrafgrgk4mh154k6lkwk0b6mh66rykz33awlf5pfqd8yv";
   };
 
-  buildInputs = [ ncurses jbuilder ]
+  buildInputs = [ ncurses dune ]
   ++ (with ocamlPackages; [ ocaml ocp-build findlib lablgtk ocp-index ]);
 
   configurePhase = ''
@@ -20,7 +21,7 @@ stdenv.mkDerivation rec {
 
   buildPhase = "jbuilder build";
 
-  inherit (jbuilder) installPhase;
+  inherit (dune) installPhase;
 
   meta = {
     homepage = https://www.typerex.org/ocaml-top.html;
diff --git a/pkgs/development/tools/ocaml/ocp-indent/default.nix b/pkgs/development/tools/ocaml/ocp-indent/default.nix
index 43898d250d91..2cffccdbfcdf 100644
--- a/pkgs/development/tools/ocaml/ocp-indent/default.nix
+++ b/pkgs/development/tools/ocaml/ocp-indent/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchzip, ocaml, findlib, jbuilder, ocp-build, cmdliner }:
+{ stdenv, fetchzip, ocaml, findlib, dune, ocp-build, cmdliner }:
 
 let inherit (stdenv.lib) getVersion versionAtLeast; in
 
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ ocp-build ];
   buildInputs = [ ocaml findlib cmdliner ];
 
-  inherit (jbuilder) installPhase;
+  inherit (dune) installPhase;
 
   meta = with stdenv.lib; {
     homepage = http://typerex.ocamlpro.com/ocp-indent.html;
diff --git a/pkgs/development/tools/ocaml/ocp-index/default.nix b/pkgs/development/tools/ocaml/ocp-index/default.nix
index 0a63ae805342..b041efefac77 100644
--- a/pkgs/development/tools/ocaml/ocp-index/default.nix
+++ b/pkgs/development/tools/ocaml/ocp-index/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, jbuilder, ocp-build, ocp-indent, cmdliner, re }:
+{ stdenv, fetchFromGitHub, ocaml, findlib, dune, ocp-build, ocp-indent, cmdliner, re }:
 
 stdenv.mkDerivation rec {
 
@@ -12,12 +12,12 @@ stdenv.mkDerivation rec {
     sha256 = "0p367aphz9w71qbm3y47qwhgqmyai28l96i1ifb6kg7awph5qmj3";
   };
 
-  buildInputs = [ ocaml findlib jbuilder ocp-build cmdliner re ];
+  buildInputs = [ ocaml findlib dune ocp-build cmdliner re ];
   propagatedBuildInputs = [ ocp-indent ];
 
-  buildPhase = "jbuilder build -p ocp-index";
+  buildPhase = "dune build -p ocp-index";
 
-  inherit (jbuilder) installPhase;
+  inherit (dune) installPhase;
 
   meta = {
     homepage = http://typerex.ocamlpro.com/ocp-index.html;
diff --git a/pkgs/development/tools/ocaml/opam/1.2.2.nix b/pkgs/development/tools/ocaml/opam/1.2.2.nix
new file mode 100644
index 000000000000..7e84719ae47d
--- /dev/null
+++ b/pkgs/development/tools/ocaml/opam/1.2.2.nix
@@ -0,0 +1,92 @@
+{ stdenv, lib, fetchurl, makeWrapper,
+  ocaml, unzip, ncurses, curl, aspcud
+}:
+
+assert lib.versionAtLeast ocaml.version "3.12.1";
+
+let
+  srcs = {
+    cudf = fetchurl {
+      url = "https://gforge.inria.fr/frs/download.php/file/33593/cudf-0.7.tar.gz";
+      sha256 = "92c8a9ed730bbac73f3513abab41127d966c9b9202ab2aaffcd02358c030a701";
+    };
+    extlib = fetchurl {
+      url = "http://ocaml-extlib.googlecode.com/files/extlib-1.5.3.tar.gz";
+      sha256 = "c095eef4202a8614ff1474d4c08c50c32d6ca82d1015387785cf03d5913ec021";
+    };
+    ocaml_re = fetchurl {
+      url = "https://github.com/ocaml/ocaml-re/archive/ocaml-re-1.2.0.tar.gz";
+      sha256 = "a34dd9d6136731436a963bbab5c4bbb16e5d4e21b3b851d34887a3dec451999f";
+    };
+    ocamlgraph = fetchurl {
+      url = "http://ocamlgraph.lri.fr/download/ocamlgraph-1.8.5.tar.gz";
+      sha256 = "d167466435a155c779d5ec25b2db83ad851feb42ebc37dca8ffa345ddaefb82f";
+    };
+    dose3 = fetchurl {
+      url = "https://gforge.inria.fr/frs/download.php/file/34277/dose3-3.3.tar.gz";
+      sha256 = "8dc4dae9b1a81bb3a42abb283df785ba3eb00ade29b13875821c69f03e00680e";
+    };
+    cmdliner = fetchurl {
+      url = "http://erratique.ch/software/cmdliner/releases/cmdliner-0.9.7.tbz";
+      sha256 = "9c19893cffb5d3c3469ee0cce85e3eeeba17d309b33b9ace31aba06f68f0bf7a";
+    };
+    uutf = fetchurl {
+      url = "http://erratique.ch/software/uutf/releases/uutf-0.9.3.tbz";
+      sha256 = "1f364f89b1179e5182a4d3ad8975f57389d45548735d19054845e06a27107877";
+    };
+    jsonm = fetchurl {
+      url = "http://erratique.ch/software/jsonm/releases/jsonm-0.9.1.tbz";
+      sha256 = "3fd4dca045d82332da847e65e981d8b504883571d299a3f7e71447d46bc65f73";
+    };
+    opam = fetchurl {
+      url = "https://github.com/ocaml/opam/archive/1.2.2.zip";
+      sha256 = "c590ce55ae69ec74f46215cf16a156a02b23c5f3ecb22f23a3ad9ba3d91ddb6e";
+    };
+  };
+in stdenv.mkDerivation rec {
+  name = "opam-${version}";
+  version = "1.2.2";
+
+  buildInputs = [ unzip curl ncurses ocaml makeWrapper ];
+
+  src = srcs.opam;
+
+  postUnpack = ''
+    ln -sv ${srcs.cudf} $sourceRoot/src_ext/${srcs.cudf.name}
+    ln -sv ${srcs.extlib} $sourceRoot/src_ext/${srcs.extlib.name}
+    ln -sv ${srcs.ocaml_re} $sourceRoot/src_ext/${srcs.ocaml_re.name}
+    ln -sv ${srcs.ocamlgraph} $sourceRoot/src_ext/${srcs.ocamlgraph.name}
+    ln -sv ${srcs.dose3} $sourceRoot/src_ext/${srcs.dose3.name}
+    ln -sv ${srcs.cmdliner} $sourceRoot/src_ext/${srcs.cmdliner.name}
+    ln -sv ${srcs.uutf} $sourceRoot/src_ext/${srcs.uutf.name}
+    ln -sv ${srcs.jsonm} $sourceRoot/src_ext/${srcs.jsonm.name}
+  '';
+
+  preConfigure = ''
+    substituteInPlace ./src_ext/Makefile --replace "%.stamp: %.download" "%.stamp:"
+  '';
+
+  postConfigure = "make lib-ext";
+
+  # Dirty, but apparently ocp-build requires a TERM
+  makeFlags = ["TERM=screen"];
+
+  # change argv0 to "opam" as a workaround for
+  # https://github.com/ocaml/opam/issues/2142
+  postInstall = ''
+    mv $out/bin/opam $out/bin/.opam-wrapped
+    makeWrapper $out/bin/.opam-wrapped $out/bin/opam \
+      --argv0 "opam" \
+      --suffix PATH : ${aspcud}/bin:${unzip}/bin:${curl}/bin
+  '';
+
+  doCheck = false;
+
+  meta = with stdenv.lib; {
+    description = "A package manager for OCaml";
+    homepage = http://opam.ocamlpro.com/;
+    maintainers = [ maintainers.henrytill ];
+    platforms = platforms.all;
+    license = licenses.lgpl21Plus;
+  };
+}
diff --git a/pkgs/development/tools/ocaml/opam/default.nix b/pkgs/development/tools/ocaml/opam/default.nix
index 7e84719ae47d..8e89dd3fadd2 100644
--- a/pkgs/development/tools/ocaml/opam/default.nix
+++ b/pkgs/development/tools/ocaml/opam/default.nix
@@ -1,69 +1,87 @@
-{ stdenv, lib, fetchurl, makeWrapper,
-  ocaml, unzip, ncurses, curl, aspcud
+{ stdenv, lib, fetchurl, makeWrapper, getconf,
+  ocaml, unzip, ncurses, curl, aspcud, bubblewrap
 }:
 
-assert lib.versionAtLeast ocaml.version "3.12.1";
+assert lib.versionAtLeast ocaml.version "4.02.3";
 
 let
   srcs = {
+    cmdliner = fetchurl {
+      url = "http://erratique.ch/software/cmdliner/releases/cmdliner-1.0.2.tbz";
+      sha256 = "18jqphjiifljlh9jg8zpl6310p3iwyaqphdkmf89acyaix0s4kj1";
+    };
+    cppo = fetchurl {
+      url = "https://github.com/mjambon/cppo/archive/v1.6.4.tar.gz";
+      sha256 = "0jdb7d21lfa3ck4k59mrqs5pljzq5rb504jq57nnrc6klljm42j7";
+    };
     cudf = fetchurl {
-      url = "https://gforge.inria.fr/frs/download.php/file/33593/cudf-0.7.tar.gz";
-      sha256 = "92c8a9ed730bbac73f3513abab41127d966c9b9202ab2aaffcd02358c030a701";
+      url = "https://gforge.inria.fr/frs/download.php/36602/cudf-0.9.tar.gz";
+      sha256 = "0771lwljqwwn3cryl0plny5a5dyyrj4z6bw66ha5n8yfbpcy8clr";
+    };
+    dose3 = fetchurl {
+      url = "https://gforge.inria.fr/frs/download.php/file/36063/dose3-5.0.1.tar.gz";
+      sha256 = "00yvyfm4j423zqndvgc1ycnmiffaa2l9ab40cyg23pf51qmzk2jm";
     };
     extlib = fetchurl {
-      url = "http://ocaml-extlib.googlecode.com/files/extlib-1.5.3.tar.gz";
-      sha256 = "c095eef4202a8614ff1474d4c08c50c32d6ca82d1015387785cf03d5913ec021";
+      url = "http://ygrek.org.ua/p/release/ocaml-extlib/extlib-1.7.5.tar.gz";
+      sha256 = "19slqf5bdj0rrph2w41giwmn6df2qm07942jn058pjkjrnk30d4s";
     };
-    ocaml_re = fetchurl {
-      url = "https://github.com/ocaml/ocaml-re/archive/ocaml-re-1.2.0.tar.gz";
-      sha256 = "a34dd9d6136731436a963bbab5c4bbb16e5d4e21b3b851d34887a3dec451999f";
+    jbuilder = fetchurl {
+      url = "https://github.com/ocaml/dune/releases/download/1.0+beta20/jbuilder-1.0.beta20.tbz";
+      sha256 = "07hl9as5llffgd6hbw41rs76i1ibgn3n9r0dba5h0mdlkapcwb10";
     };
-    ocamlgraph = fetchurl {
-      url = "http://ocamlgraph.lri.fr/download/ocamlgraph-1.8.5.tar.gz";
-      sha256 = "d167466435a155c779d5ec25b2db83ad851feb42ebc37dca8ffa345ddaefb82f";
+    mccs = fetchurl {
+      url = "https://github.com/AltGr/ocaml-mccs/archive/1.1+8.tar.gz";
+      sha256 = "0xavfvxfrcf3lmry8ymma1yzy0hw3ijbx94c9zq3pzlwnylrapa4";
     };
-    dose3 = fetchurl {
-      url = "https://gforge.inria.fr/frs/download.php/file/34277/dose3-3.3.tar.gz";
-      sha256 = "8dc4dae9b1a81bb3a42abb283df785ba3eb00ade29b13875821c69f03e00680e";
+    ocamlgraph = fetchurl {
+      url = "http://ocamlgraph.lri.fr/download/ocamlgraph-1.8.8.tar.gz";
+      sha256 = "0m9g16wrrr86gw4fz2fazrh8nkqms0n863w7ndcvrmyafgxvxsnr";
     };
-    cmdliner = fetchurl {
-      url = "http://erratique.ch/software/cmdliner/releases/cmdliner-0.9.7.tbz";
-      sha256 = "9c19893cffb5d3c3469ee0cce85e3eeeba17d309b33b9ace31aba06f68f0bf7a";
+    opam-file-format = fetchurl {
+      url = "https://github.com/ocaml/opam-file-format/archive/2.0.0-rc2.tar.gz";
+      sha256 = "1mgk08msp7hxn0hs0m82vky3yv6hcq4pw5402b3vhx4c49431jsb";
     };
-    uutf = fetchurl {
-      url = "http://erratique.ch/software/uutf/releases/uutf-0.9.3.tbz";
-      sha256 = "1f364f89b1179e5182a4d3ad8975f57389d45548735d19054845e06a27107877";
+    re = fetchurl {
+      url = "https://github.com/ocaml/ocaml-re/releases/download/1.7.3/re-1.7.3.tbz";
+      sha256 = "0nv933qfl8y9i19cqvhsalwzif3dkm28vg478rpnr4hgfqjlfryr";
     };
-    jsonm = fetchurl {
-      url = "http://erratique.ch/software/jsonm/releases/jsonm-0.9.1.tbz";
-      sha256 = "3fd4dca045d82332da847e65e981d8b504883571d299a3f7e71447d46bc65f73";
+    result = fetchurl {
+      url = "https://github.com/janestreet/result/releases/download/1.3/result-1.3.tbz";
+      sha256 = "1lrnbxdq80gbhnp85mqp1kfk0bkh6q1c93sfz2qgnq2qyz60w4sk";
     };
     opam = fetchurl {
-      url = "https://github.com/ocaml/opam/archive/1.2.2.zip";
-      sha256 = "c590ce55ae69ec74f46215cf16a156a02b23c5f3ecb22f23a3ad9ba3d91ddb6e";
+      url = "https://github.com/ocaml/opam/archive/2.0.0.zip";
+      sha256 = "0m4ilsldrfkkn0vlvl119bk76j2pwvqvdi8mpg957z4kqflfbfp8";
     };
   };
 in stdenv.mkDerivation rec {
   name = "opam-${version}";
-  version = "1.2.2";
+  version = "2.0.0";
 
-  buildInputs = [ unzip curl ncurses ocaml makeWrapper ];
+  buildInputs = [ unzip curl ncurses ocaml makeWrapper getconf ] ++ lib.optional stdenv.isLinux bubblewrap;
 
   src = srcs.opam;
 
   postUnpack = ''
-    ln -sv ${srcs.cudf} $sourceRoot/src_ext/${srcs.cudf.name}
-    ln -sv ${srcs.extlib} $sourceRoot/src_ext/${srcs.extlib.name}
-    ln -sv ${srcs.ocaml_re} $sourceRoot/src_ext/${srcs.ocaml_re.name}
-    ln -sv ${srcs.ocamlgraph} $sourceRoot/src_ext/${srcs.ocamlgraph.name}
-    ln -sv ${srcs.dose3} $sourceRoot/src_ext/${srcs.dose3.name}
-    ln -sv ${srcs.cmdliner} $sourceRoot/src_ext/${srcs.cmdliner.name}
-    ln -sv ${srcs.uutf} $sourceRoot/src_ext/${srcs.uutf.name}
-    ln -sv ${srcs.jsonm} $sourceRoot/src_ext/${srcs.jsonm.name}
+    ln -sv ${srcs.cmdliner} $sourceRoot/src_ext/cmdliner.tbz
+    ln -sv ${srcs.cppo} $sourceRoot/src_ext/cppo.tar.gz
+    ln -sv ${srcs.cudf} $sourceRoot/src_ext/cudf.tar.gz
+    ln -sv ${srcs.dose3} $sourceRoot/src_ext/dose3.tar.gz
+    ln -sv ${srcs.extlib} $sourceRoot/src_ext/extlib.tar.gz
+    ln -sv ${srcs.jbuilder} $sourceRoot/src_ext/jbuilder.tbz
+    ln -sv ${srcs.mccs} $sourceRoot/src_ext/mccs.tar.gz
+    ln -sv ${srcs.ocamlgraph} $sourceRoot/src_ext/ocamlgraph.tar.gz
+    ln -sv ${srcs.opam-file-format} $sourceRoot/src_ext/opam-file-format.tar.gz
+    ln -sv ${srcs.re} $sourceRoot/src_ext/re.tbz
+    ln -sv ${srcs.result} $sourceRoot/src_ext/result.tbz
   '';
 
+  patches = [ ./opam-pull-3487.patch ./opam-shebangs.patch ./opam-mccs-darwin.patch ];
+
   preConfigure = ''
     substituteInPlace ./src_ext/Makefile --replace "%.stamp: %.download" "%.stamp:"
+    patchShebangs src/state/shellscripts
   '';
 
   postConfigure = "make lib-ext";
@@ -71,13 +89,17 @@ in stdenv.mkDerivation rec {
   # Dirty, but apparently ocp-build requires a TERM
   makeFlags = ["TERM=screen"];
 
+  outputs = [ "out" "installer" ];
+  setOutputFlags = false;
+
   # change argv0 to "opam" as a workaround for
   # https://github.com/ocaml/opam/issues/2142
   postInstall = ''
     mv $out/bin/opam $out/bin/.opam-wrapped
     makeWrapper $out/bin/.opam-wrapped $out/bin/opam \
       --argv0 "opam" \
-      --suffix PATH : ${aspcud}/bin:${unzip}/bin:${curl}/bin
+      --suffix PATH : ${aspcud}/bin:${unzip}/bin:${curl}/bin:${lib.optionalString stdenv.isLinux "${bubblewrap}/bin:"}${getconf}/bin
+    $out/bin/opam-installer --prefix=$installer opam-installer.install
   '';
 
   doCheck = false;
@@ -87,6 +109,6 @@ in stdenv.mkDerivation rec {
     homepage = http://opam.ocamlpro.com/;
     maintainers = [ maintainers.henrytill ];
     platforms = platforms.all;
-    license = licenses.lgpl21Plus;
   };
 }
+# Generated by: ./opam.nix.pl -v 2.0.0 -p opam-pull-3487.patch,opam-shebangs.patch,opam-mccs-darwin.patch
diff --git a/pkgs/development/tools/ocaml/opam/opam-mccs-darwin.patch b/pkgs/development/tools/ocaml/opam/opam-mccs-darwin.patch
new file mode 100644
index 000000000000..501242c40a01
--- /dev/null
+++ b/pkgs/development/tools/ocaml/opam/opam-mccs-darwin.patch
@@ -0,0 +1,18 @@
+diff --git a/src_ext/patches/mccs/build-on-darwin.patch b/src_ext/patches/mccs/build-on-darwin.patch
+new file mode 100644
+index 00000000..157e2094
+--- /dev/null
++++ b/src_ext/patches/mccs/build-on-darwin.patch
+@@ -0,0 +1,12 @@
++diff --git a/src/context_flags.ml b/src/context_flags.ml
++index 7470030..6e07370 100644
++--- a/src/context_flags.ml
+++++ b/src/context_flags.ml
++@@ -24,6 +24,7 @@ let ifc c x = if c then x else []
++ 
++ let cxxflags =
++   let flags =
+++    (ifc (Config.system = "macosx") ["-x"; "c++"]) @
++     (ifc (Sys.win32 && Config.ccomp_type = "msvc") ["/EHsc"]) @
++     (ifc useGLPK ["-DUSEGLPK"]) @
++     (ifc useCOIN ["-DUSECOIN"]) @
diff --git a/pkgs/development/tools/ocaml/opam/opam-pull-3487.patch b/pkgs/development/tools/ocaml/opam/opam-pull-3487.patch
new file mode 100644
index 000000000000..e047c8298bc3
--- /dev/null
+++ b/pkgs/development/tools/ocaml/opam/opam-pull-3487.patch
@@ -0,0 +1,23 @@
+diff --git a/src/state/shellscripts/bwrap.sh b/src/state/shellscripts/bwrap.sh
+index 6f5d7dbea..3e1a3e1b4 100755
+--- a/src/state/shellscripts/bwrap.sh
++++ b/src/state/shellscripts/bwrap.sh
+@@ -1,4 +1,6 @@
+-#!/bin/bash -ue
++#!/usr/bin/env bash
++
++set -ue
+ 
+ if ! command -v bwrap >/dev/null; then
+     echo "The 'bwrap' command was not found. Install 'bubblewrap' on your system, or" >&2
+@@ -11,7 +13,9 @@ fi
+ 
+ ARGS=(--unshare-net --new-session)
+ ARGS=("${ARGS[@]}" --proc /proc --dev /dev)
+-ARGS=("${ARGS[@]}" --bind /tmp /tmp --tmpfs /run --tmpfs /var)
++ARGS=("${ARGS[@]}" --bind "${TMPDIR:-/tmp}" /tmp)
++ARGS=("${ARGS[@]}" --setenv TMPDIR /tmp --setenv TMP /tmp --setenv TEMPDIR /tmp --setenv TEMP /tmp)
++ARGS=("${ARGS[@]}" --tmpfs /run --tmpfs /var)
+ 
+ add_mounts() {
+     case "$1" in
diff --git a/pkgs/development/tools/ocaml/opam/opam-shebangs.patch b/pkgs/development/tools/ocaml/opam/opam-shebangs.patch
new file mode 100644
index 000000000000..f74ac84ca6b2
--- /dev/null
+++ b/pkgs/development/tools/ocaml/opam/opam-shebangs.patch
@@ -0,0 +1,128 @@
+diff --git a/src/client/opamInitDefaults.ml b/src/client/opamInitDefaults.ml
+index eca13a7c..1fd66f43 100644
+--- a/src/client/opamInitDefaults.ml
++++ b/src/client/opamInitDefaults.ml
+@@ -35,11 +35,15 @@ let eval_variables = [
+ let os_filter os =
+   FOp (FIdent ([], OpamVariable.of_string "os", None), `Eq, FString os)
+ 
++let os_distribution_filter distro =
++  FOp (FIdent ([], OpamVariable.of_string "os-distribution", None), `Eq, FString distro)
++
+ let linux_filter = os_filter "linux"
+ let macos_filter = os_filter "macos"
+ let openbsd_filter = os_filter "openbsd"
+ let freebsd_filter = os_filter "freebsd"
+ let sandbox_filter = FOr (linux_filter, macos_filter)
++let nixos_filter = os_distribution_filter "nixos"
+ 
+ let gpatch_filter = FOr (openbsd_filter, freebsd_filter)
+ let patch_filter = FNot gpatch_filter
+@@ -50,6 +54,11 @@ let wrappers ~sandboxing () =
+     CString t, None;
+   ] in
+   let w = OpamFile.Wrappers.empty in
++  let w = { w with
++            OpamFile.Wrappers.
++            pre_build = [[CString "%{hooks}%/shebangs.sh", None], Some nixos_filter];
++          }
++  in
+   if sandboxing then
+     { w with
+       OpamFile.Wrappers.
+@@ -113,6 +122,7 @@ let required_tools ~sandboxing () =
+ let init_scripts () = [
+   ("sandbox.sh", OpamScript.bwrap), Some bwrap_filter;
+   ("sandbox.sh", OpamScript.sandbox_exec), Some macos_filter;
++  ("shebangs.sh", OpamScript.patch_shebangs), Some nixos_filter;
+ ]
+ 
+ module I = OpamFile.InitConfig
+diff --git a/src/state/opamScript.mli b/src/state/opamScript.mli
+index 03449970..83de0b53 100644
+--- a/src/state/opamScript.mli
++++ b/src/state/opamScript.mli
+@@ -20,3 +20,4 @@ val env_hook : string
+ val env_hook_zsh : string
+ val env_hook_csh : string
+ val env_hook_fish : string
++val patch_shebangs : string
+diff --git a/src/state/shellscripts/patch_shebangs.sh b/src/state/shellscripts/patch_shebangs.sh
+new file mode 100755
+index 00000000..3ea84e2d
+--- /dev/null
++++ b/src/state/shellscripts/patch_shebangs.sh
+@@ -0,0 +1,73 @@
++#!/usr/bin/env bash
++# This setup hook causes the fixup phase to rewrite all script
++# interpreter file names (`#!  /path') to paths found in $PATH.  E.g.,
++# /bin/sh will be rewritten to /nix/store/<hash>-some-bash/bin/sh.
++# /usr/bin/env gets special treatment so that ".../bin/env python" is
++# rewritten to /nix/store/<hash>/bin/python.  Interpreters that are
++# already in the store are left untouched.
++
++header() { echo "$1"; }
++stopNest() { true; }
++
++fixupOutputHooks+=('if [ -z "$dontPatchShebangs" -a -e "$prefix" ]; then patchShebangs "$prefix"; fi')
++
++patchShebangs() {
++    local dir="$1"
++    header "patching script interpreter paths in $dir"
++    local f
++    local oldPath
++    local newPath
++    local arg0
++    local args
++    local oldInterpreterLine
++    local newInterpreterLine
++
++    find "$dir" -type f -perm -0100 | while read f; do
++        if [ "$(head -1 "$f" | head -c+2)" != '#!' ]; then
++            # missing shebang => not a script
++            continue
++        fi
++
++        oldInterpreterLine=$(head -1 "$f" | tail -c+3)
++        read -r oldPath arg0 args <<< "$oldInterpreterLine"
++
++        if $(echo "$oldPath" | grep -q "/bin/env$"); then
++            # Check for unsupported 'env' functionality:
++            # - options: something starting with a '-'
++            # - environment variables: foo=bar
++            if $(echo "$arg0" | grep -q -- "^-.*\|.*=.*"); then
++                echo "unsupported interpreter directive \"$oldInterpreterLine\" (set dontPatchShebangs=1 and handle shebang patching yourself)"
++                exit 1
++            fi
++            newPath="$(command -v "$arg0" || true)"
++        else
++            if [ "$oldPath" = "" ]; then
++                # If no interpreter is specified linux will use /bin/sh. Set
++                # oldpath="/bin/sh" so that we get /nix/store/.../sh.
++                oldPath="/bin/sh"
++            fi
++            newPath="$(command -v "$(basename "$oldPath")" || true)"
++            args="$arg0 $args"
++        fi
++
++        # Strip trailing whitespace introduced when no arguments are present
++        newInterpreterLine="$(echo "$newPath $args" | sed 's/[[:space:]]*$//')"
++
++        if [ -n "$oldPath" -a "${oldPath:0:${#NIX_STORE}}" != "$NIX_STORE" ]; then
++            if [ -n "$newPath" -a "$newPath" != "$oldPath" ]; then
++                echo "$f: interpreter directive changed from \"$oldInterpreterLine\" to \"$newInterpreterLine\""
++                # escape the escape chars so that sed doesn't interpret them
++                escapedInterpreterLine=$(echo "$newInterpreterLine" | sed 's|\\|\\\\|g')
++                # Preserve times, see: https://github.com/NixOS/nixpkgs/pull/33281
++                touch -r "$f" "$f.timestamp"
++                sed -i -e "1 s|.*|#\!$escapedInterpreterLine|" "$f"
++                touch -r "$f.timestamp" "$f"
++                rm "$f.timestamp"
++            fi
++        fi
++    done
++
++    stopNest
++}
++
++patchShebangs .
diff --git a/pkgs/development/tools/ocaml/opam/opam.nix.pl b/pkgs/development/tools/ocaml/opam/opam.nix.pl
new file mode 100755
index 000000000000..1862add452d6
--- /dev/null
+++ b/pkgs/development/tools/ocaml/opam/opam.nix.pl
@@ -0,0 +1,130 @@
+#!/usr/bin/env perl
+
+use strict;
+use warnings qw<all>;
+use Getopt::Std;
+
+my $gencmd = "# Generated by: " . join(" ", $0, @ARGV) . "\n";
+
+our $opt_v;
+our $opt_p;
+our $opt_r;
+our $opt_t;
+getopts "v:p:t:r:";
+
+my $OPAM_RELEASE = $opt_v // "2.0.0";
+my $OPAM_TAG = $opt_t // $OPAM_RELEASE;
+my $OPAM_GITHUB_REPO = $opt_r // "ocaml/opam";
+my $OPAM_RELEASE_URL = "https://github.com/$OPAM_GITHUB_REPO/archive/$OPAM_TAG.zip";
+my $OPAM_RELEASE_SHA256 = `nix-prefetch-url \Q$OPAM_RELEASE_URL\E`;
+chomp $OPAM_RELEASE_SHA256;
+
+my $OPAM_BASE_URL = "https://raw.githubusercontent.com/$OPAM_GITHUB_REPO/$OPAM_TAG";
+my $OPAM_OPAM = `curl -L --url \Q$OPAM_BASE_URL\E/opam-devel.opam`;
+my($OCAML_MIN_VERSION) = $OPAM_OPAM =~ /^available: ocaml-version >= "(.*)"$/m
+  or die "could not parse ocaml version bound\n";
+
+print <<"EOF";
+{ stdenv, lib, fetchurl, makeWrapper, getconf,
+  ocaml, unzip, ncurses, curl, aspcud, bubblewrap
+}:
+
+assert lib.versionAtLeast ocaml.version "$OCAML_MIN_VERSION";
+
+let
+  srcs = {
+EOF
+
+my %urls = ();
+my %md5s = ();
+
+open(SOURCES, "-|", "curl", "-L", "--url", "$OPAM_BASE_URL/src_ext/Makefile.sources");
+while (<SOURCES>) {
+  if (/^URL_(?!PKG_)([-\w]+)\s*=\s*(\S+)$/) {
+    $urls{$1} = $2;
+  } elsif (/^MD5_(?!PKG_)([-\w]+)\s*=\s*(\S+)$/) {
+    $md5s{$1} = $2;
+  }
+}
+for my $src (sort keys %urls) {
+  my ($sha256,$store_path) = split /\n/, `nix-prefetch-url --print-path \Q$urls{$src}\E`;
+  system "echo \Q$md5s{$src}\E' *'\Q$store_path\E | md5sum -c 1>&2";
+  die "md5 check failed for $urls{$src}\n" if $?;
+  print <<"EOF";
+    $src = fetchurl {
+      url = "$urls{$src}";
+      sha256 = "$sha256";
+    };
+EOF
+}
+
+print <<"EOF";
+    opam = fetchurl {
+      url = "$OPAM_RELEASE_URL";
+      sha256 = "$OPAM_RELEASE_SHA256";
+    };
+  };
+in stdenv.mkDerivation rec {
+  name = "opam-\${version}";
+  version = "$OPAM_RELEASE";
+
+  buildInputs = [ unzip curl ncurses ocaml makeWrapper getconf ] ++ lib.optional stdenv.isLinux bubblewrap;
+
+  src = srcs.opam;
+
+  postUnpack = ''
+EOF
+for my $src (sort keys %urls) {
+  my($ext) = $urls{$src} =~ /(\.(?:t(?:ar\.|)|)(?:gz|bz2?))$/
+    or die "could not find extension for $urls{$src}\n";
+  print <<"EOF";
+    ln -sv \${srcs.$src} \$sourceRoot/src_ext/$src$ext
+EOF
+}
+print <<'EOF';
+  '';
+
+EOF
+if (defined $opt_p) {
+  print "  patches = [ ";
+  for my $patch (split /[, ]/, $opt_p) {
+    $patch =~ s/^(?=[^\/]*$)/.\//;
+    print "$patch ";
+  }
+  print "];\n\n";
+}
+print <<'EOF';
+  preConfigure = ''
+    substituteInPlace ./src_ext/Makefile --replace "%.stamp: %.download" "%.stamp:"
+    patchShebangs src/state/shellscripts
+  '';
+
+  postConfigure = "make lib-ext";
+
+  # Dirty, but apparently ocp-build requires a TERM
+  makeFlags = ["TERM=screen"];
+
+  outputs = [ "out" "installer" ];
+  setOutputFlags = false;
+
+  # change argv0 to "opam" as a workaround for
+  # https://github.com/ocaml/opam/issues/2142
+  postInstall = ''
+    mv $out/bin/opam $out/bin/.opam-wrapped
+    makeWrapper $out/bin/.opam-wrapped $out/bin/opam \
+      --argv0 "opam" \
+      --suffix PATH : ${aspcud}/bin:${unzip}/bin:${curl}/bin:${lib.optionalString stdenv.isLinux "${bubblewrap}/bin:"}${getconf}/bin
+    $out/bin/opam-installer --prefix=$installer opam-installer.install
+  '';
+
+  doCheck = false;
+
+  meta = with stdenv.lib; {
+    description = "A package manager for OCaml";
+    homepage = http://opam.ocamlpro.com/;
+    maintainers = [ maintainers.henrytill ];
+    platforms = platforms.all;
+  };
+}
+EOF
+print $gencmd;
diff --git a/pkgs/development/tools/ocaml/utop/default.nix b/pkgs/development/tools/ocaml/utop/default.nix
index 1341e071842b..434f8b3af2ea 100644
--- a/pkgs/development/tools/ocaml/utop/default.nix
+++ b/pkgs/development/tools/ocaml/utop/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, jbuilder
+{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, dune
 , lambdaTerm, cppo, makeWrapper
 }:
 
@@ -16,11 +16,11 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ makeWrapper ];
-  buildInputs = [ ocaml findlib ocamlbuild cppo jbuilder ];
+  buildInputs = [ ocaml findlib ocamlbuild cppo dune ];
 
   propagatedBuildInputs = [ lambdaTerm ];
 
-  inherit (jbuilder) installPhase;
+  inherit (dune) installPhase;
 
   postFixup =
    let
diff --git a/pkgs/development/tools/pyre/default.nix b/pkgs/development/tools/pyre/default.nix
index 1d7f8025bb0e..c466d39eb4e1 100644
--- a/pkgs/development/tools/pyre/default.nix
+++ b/pkgs/development/tools/pyre/default.nix
@@ -1,24 +1,30 @@
-{ stdenv, fetchFromGitHub, ocamlPackages, makeWrapper, writeScript }:
+{ stdenv, fetchFromGitHub, ocamlPackages, makeWrapper, writeScript
+, dune, python3, rsync, fetchpatch }:
 let
   # Manually set version - the setup script requires
   # hg and git + keeping the .git directory around.
-  version = "0.0.10";
+  pyre-version = "0.0.11";
   versionFile = writeScript "version.ml" ''
     cat > "./version.ml" <<EOF
+    open Core
     let build_info () =
-    "pyre-nixpkgs ${version}"
+    "pyre-nixpkgs ${pyre-version}"
     let version () =
-    "${version}"
+    "${pyre-version}"
+
+    let log_version_banner () =
+      Log.info "Running as pid: %d" (Pid.to_int (Unix.getpid ()));
+      Log.info "Version: %s" (version ());
     EOF
   '';
-in stdenv.mkDerivation {
-  name = "pyre-${version}";
+ pyre-bin = stdenv.mkDerivation {
+  name = "pyre-${pyre-version}";
 
   src = fetchFromGitHub {
     owner = "facebook";
     repo = "pyre-check";
-    rev = "v${version}";
-    sha256 = "17fk2izq434jsr8dfz828754356qdwa6zv0lbzm6z1kgq4jg7brv";
+    rev = "v${pyre-version}";
+    sha256 = "0ig7bx2kfn2kbxw74wysh5365yp5gyby42l9l29iclrzdghgk32l";
   };
 
   nativeBuildInputs = [ makeWrapper ];
@@ -33,6 +39,8 @@ in stdenv.mkDerivation {
     ppx_deriving_yojson
     ocamlbuild
     ppxlib
+    dune
+    ounit
     # python36Packages.python36Full # TODO
   ];
 
@@ -41,13 +49,15 @@ in stdenv.mkDerivation {
     export HOME=.
 
     # "external" because https://github.com/facebook/pyre-check/pull/8/files
-    sed "s/%VERSION%/external ${version}/" Makefile.template > Makefile
+    cp Makefile.template Makefile
+    sed "s/%VERSION%/external/" dune.in > dune
 
     cp ${versionFile} ./scripts/generate-version-number.sh
 
     mkdir $(pwd)/build
     export OCAMLFIND_DESTDIR=$(pwd)/build
     export OCAMLPATH=$OCAMLPATH:$(pwd)/build
+
     make release
   '';
 
@@ -60,7 +70,7 @@ in stdenv.mkDerivation {
   # Improvement for a future version.
   installPhase = ''
     mkdir -p $out/bin
-    cp _build/all/main.native $out/bin/pyre.bin
+    cp ./_build/default/main.exe $out/bin/pyre.bin
   '';
 
   meta = with stdenv.lib; {
@@ -70,4 +80,54 @@ in stdenv.mkDerivation {
     platforms = with platforms; linux;
     maintainers = with maintainers; [ teh ];
   };
+};
+typeshed = stdenv.mkDerivation {
+  name = "typeshed";
+  # typeshed doesn't have versions, it seems to be synchronized with
+  # mypy relases. I'm assigning a random version here (same as pyre).
+  version = pyre-version;
+  src = fetchFromGitHub {
+    owner = "python";
+    repo = "typeshed";
+    rev = "a08c6ea";
+    sha256 = "0wy8yh43vhyyc4g7iqnmlj66kz5in02y5qc0c4jdckhpa3mchaqk";
+  };
+  phases = [ "unpackPhase" "installPhase" ];
+  installPhase = "cp -r $src $out";
+};
+in python3.pkgs.buildPythonApplication rec {
+  pname = "pyre-check";
+  version = pyre-version;
+  src = fetchFromGitHub {
+    owner = "facebook";
+    repo = "pyre-check";
+    rev = "v${pyre-version}";
+    sha256 = "0ig7bx2kfn2kbxw74wysh5365yp5gyby42l9l29iclrzdghgk32l";
+  };
+  patches = [
+    (fetchpatch {
+      url = "https://github.com/facebook/pyre-check/commit/b473d2ed9fc11e7c1cd0c7b8c42f521e5cdc2003.patch";
+      sha256 = "05xvyp7j4n6z92bxf64rxfq5pvaadxgx1c8c5qziy75vdz72lkcy";
+    })
+    ./pyre-bdist-wheel.patch
+  ];
+
+  # The build-pypi-package script does some funky stuff with build
+  # directories - easier to patch it a bit than to replace it
+  # completely though:
+  postPatch = ''
+    mkdir ./build
+    substituteInPlace scripts/build-pypi-package.sh \
+        --replace 'NIX_BINARY_FILE' '${pyre-bin}/bin/pyre.bin' \
+        --replace 'BUILD_ROOT="$(mktemp -d)"' "BUILD_ROOT=$(pwd)/build"
+  '';
+
+  buildInputs = [ pyre-bin rsync ];
+  propagatedBuildInputs = with python3.pkgs; [ docutils typeshed ];
+  buildPhase = ''
+    bash scripts/build-pypi-package.sh --version ${pyre-version} --bundle-typeshed ${typeshed}
+    cp -r build/dist dist
+  '';
+
+  doCheck = false; # can't open file 'nix_run_setup':
 }
diff --git a/pkgs/development/tools/pyre/pyre-bdist-wheel.patch b/pkgs/development/tools/pyre/pyre-bdist-wheel.patch
new file mode 100644
index 000000000000..1b6fea024e03
--- /dev/null
+++ b/pkgs/development/tools/pyre/pyre-bdist-wheel.patch
@@ -0,0 +1,43 @@
+diff --git a/scripts/build-pypi-package.sh b/scripts/build-pypi-package.sh
+index 1035591..bb8cbae 100755
+--- a/scripts/build-pypi-package.sh
++++ b/scripts/build-pypi-package.sh
+@@ -98,7 +98,7 @@ rsync -avm --filter='- tests/' --filter='+ */' --filter='-! *.py' "${SCRIPTS_DIR
+ sed -i -e "/__version__/s/= \".*\"/= \"${PACKAGE_VERSION}\"/" "${BUILD_ROOT}/${MODULE_NAME}/version.py"
+ 
+ # Copy binary files.
+-BINARY_FILE="${SCRIPTS_DIRECTORY}/../_build/default/main.exe"
++BINARY_FILE="NIX_BINARY_FILE"
+ if [[ ! -f "${BINARY_FILE}" ]]; then
+   echo "The binary file ${BINARY_FILE} does not exist."
+   echo "Have you run 'make' in the toplevel directory?"
+@@ -146,7 +146,7 @@ def find_typeshed_files(base):
+         result.append((target, files))
+     return result
+ 
+-with open('README.md') as f:
++with open('README.md', encoding='utf8') as f:
+     long_description = f.read()
+ 
+ setup(
+@@ -205,20 +205,3 @@ fi
+ 
+ # Build.
+ python3 setup.py bdist_wheel
+-
+-# Move artifact outside the build directory.
+-mkdir -p "${SCRIPTS_DIRECTORY}/dist"
+-files_count="$(find "${BUILD_ROOT}/dist/" -type f | wc -l | tr -d ' ')"
+-[[ "${files_count}" == '1' ]] || \
+-  die "${files_count} files created in ${BUILD_ROOT}/dist, but only one was expected"
+-source_file="$(find "${BUILD_ROOT}/dist/" -type f)"
+-destination="$(basename "${source_file}")"
+-destination="${destination/%-any.whl/-${WHEEL_DISTRIBUTION_PLATFORM}.whl}"
+-mv "${source_file}" "${SCRIPTS_DIRECTORY}/dist/${destination}"
+-
+-# Cleanup.
+-cd "${SCRIPTS_DIRECTORY}"
+-rm -rf "${BUILD_ROOT}"
+-
+-printf '\nAll done. Build artifact available at:\n  %s\n' "${SCRIPTS_DIRECTORY}/dist/${destination}"
+-exit 0
diff --git a/pkgs/development/tools/richgo/default.nix b/pkgs/development/tools/richgo/default.nix
new file mode 100644
index 000000000000..aa537df15084
--- /dev/null
+++ b/pkgs/development/tools/richgo/default.nix
@@ -0,0 +1,21 @@
+{ stdenv, buildGoPackage, fetchFromGitHub }:
+
+buildGoPackage rec {
+  name = "richgo-${version}";
+  version = "0.2.8";
+  goPackagePath = "github.com/kyoh86/richgo";
+
+  src = fetchFromGitHub {
+    owner = "kyoh86";
+    repo = "richgo";
+    rev = "v${version}";
+    sha256 = "0kbwl3a2gima23zmahk0jxp7wga91bs927a1rp5xl889ikng1n4j";
+  };
+
+  meta = with stdenv.lib; {
+    description = "Enrich `go test` outputs with text decorations.";
+    homepage = https://github.com/kyoh86/richgo;
+    license = licenses.unlicense; # NOTE: The project switched to MIT in https://git.io/fA1ik
+    maintainers = with maintainers; [ rvolosatovs ];
+  };
+}
diff --git a/pkgs/development/tools/solarus-quest-editor/default.nix b/pkgs/development/tools/solarus-quest-editor/default.nix
index 3df6d3de3e16..5a340d309495 100644
--- a/pkgs/development/tools/solarus-quest-editor/default.nix
+++ b/pkgs/development/tools/solarus-quest-editor/default.nix
@@ -1,17 +1,17 @@
-{ stdenv, fetchFromGitHub, cmake, luajit,
+{ stdenv, fetchFromGitLab, cmake, luajit,
   SDL2, SDL2_image, SDL2_ttf, physfs,
   openal, libmodplug, libvorbis, solarus,
-  qtbase, qttools }:
+  qtbase, qttools, fetchpatch }:
 
 stdenv.mkDerivation rec {
   name = "solarus-quest-editor-${version}";
-  version = "1.4.5";
+  version = "1.5.3";
     
-  src = fetchFromGitHub {
-    owner = "christopho";
+  src = fetchFromGitLab {
+    owner = "solarus-games";
     repo = "solarus-quest-editor";
-    rev = "61f0fa7a5048994fcd9c9f3a3d1255d0be2967df";
-    sha256 = "1fpq55nvs5k2rxgzgf39c069rmm73vmv4gr5lvmqzgsz07rkh07f";
+    rev = "v1.5.3";
+    sha256 = "1b9mg04yy4pnrl745hbc82rz79k0f8ci3wv7gvsm3a998q8m98si";
   };
   
   buildInputs = [ cmake luajit SDL2
@@ -19,7 +19,18 @@ stdenv.mkDerivation rec {
     openal libmodplug libvorbis
     solarus qtbase qttools ];
     
-  patches = [ ./patches/fix-install.patch ];
+  patches = [
+    ./patches/fix-install.patch
+
+    # Next two patches should be fine to remove for next release.
+    # This commit fixes issues AND adds features *sighs*
+    ./patches/partial-f285beab62594f73e57190c49848c848487214cf.patch
+
+    (fetchpatch {
+      url = https://gitlab.com/solarus-games/solarus-quest-editor/commit/8f308463030c18cd4f7c8a6052028fff3b7ca35a.patch;
+      sha256 = "1jq48ghhznrp47q9lq2rhh48a1z4aylyy4qaniaqyfyq3vihrchr";
+    })
+  ];
 
   meta = with stdenv.lib; {
     description = "The editor for the Zelda-like ARPG game engine, Solarus";
diff --git a/pkgs/development/tools/solarus-quest-editor/patches/partial-f285beab62594f73e57190c49848c848487214cf.patch b/pkgs/development/tools/solarus-quest-editor/patches/partial-f285beab62594f73e57190c49848c848487214cf.patch
new file mode 100644
index 000000000000..73e817fcfbe8
--- /dev/null
+++ b/pkgs/development/tools/solarus-quest-editor/patches/partial-f285beab62594f73e57190c49848c848487214cf.patch
@@ -0,0 +1,33 @@
+From f285beab62594f73e57190c49848c848487214cf Mon Sep 17 00:00:00 2001
+From: stdgregwar <gregoirehirt@gmail.com>
+Date: Sun, 1 Jul 2018 00:00:41 +0200
+Subject: [PATCH] Shader previewer base
+
+
+diff --git a/include/widgets/tileset_view.h b/include/widgets/tileset_view.h
+index 615f432..799a4c6 100644
+--- a/include/widgets/tileset_view.h
++++ b/include/widgets/tileset_view.h
+@@ -23,6 +23,7 @@
+ #include "pattern_separation.h"
+ #include <QGraphicsView>
+ #include <QPointer>
++#include <QMenu>
+ 
+ class QAction;
+ 
+diff --git a/src/widgets/text_editor.cpp b/src/widgets/text_editor.cpp
+index 4f2ff68..90080a9 100644
+--- a/src/widgets/text_editor.cpp
++++ b/src/widgets/text_editor.cpp
+@@ -26,6 +26,7 @@
+ #include <QList>
+ #include <QPlainTextEdit>
+ #include <QScrollBar>
++#include <QAction>
+ #include <QTextStream>
+ #include <QUndoStack>
+ 
+-- 
+2.18.0
+
diff --git a/pkgs/development/tools/valadoc/default.nix b/pkgs/development/tools/valadoc/default.nix
index 8f9087ee3b3a..6515e220f3d5 100644
--- a/pkgs/development/tools/valadoc/default.nix
+++ b/pkgs/development/tools/valadoc/default.nix
@@ -11,8 +11,6 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ automake autoconf which gnome3.vala libtool pkgconfig gobjectIntrospection ];
   buildInputs = [ graphviz glib gnome3.libgee expat ];
 
-  preConfigure = "./autogen.sh";
-
   passthru = {
     updateScript = gnome3.updateScript {
       packageName = "valadoc";
@@ -20,10 +18,10 @@ stdenv.mkDerivation rec {
   };
 
   meta = with stdenv.lib; {
-    description = "valadoc is a documentation generator for generating API documentation from Vala source code";
-    homepage = https://valadoc.org;
-    license = stdenv.lib.licenses.gpl2;
+    description = "A documentation generator for generating API documentation from Vala source code";
+    homepage    = https://valadoc.org;
+    license     = licenses.gpl2;
     maintainers = with maintainers; [ sternenseemann ];
-    platforms = with platforms; linux;
+    platforms   = platforms.linux;
   };
 }
diff --git a/pkgs/development/tools/wp-cli/default.nix b/pkgs/development/tools/wp-cli/default.nix
index 2f5552945714..e2250297c8eb 100644
--- a/pkgs/development/tools/wp-cli/default.nix
+++ b/pkgs/development/tools/wp-cli/default.nix
@@ -1,42 +1,46 @@
 { stdenv, lib, fetchurl, writeScript, writeText, php }:
 
 let
-  name = "wp-cli-${version}";
-  version = "2.0.0";
-
-  src = fetchurl {
-    url    = "https://github.com/wp-cli/wp-cli/releases/download/v${version}/${name}.phar";
-    sha256 = "1s8pv8vdjwiwknpwsxc59l1zxc2np7nrp6bjd0s8jwsrv5fgjzsp";
-  };
+  version = "2.0.1";
 
   completion = fetchurl {
     url    = "https://raw.githubusercontent.com/wp-cli/wp-cli/v${version}/utils/wp-completion.bash";
     sha256 = "15d330x6d3fizrm6ckzmdknqg6wjlx5fr87bmkbd5s6a1ihs0g24";
   };
 
-  bin = writeScript "wp" ''
-    #! ${stdenv.shell}
+in stdenv.mkDerivation rec {
+  name = "wp-cli-${version}";
+  inherit version;
 
-    set -euo pipefail
+  src = fetchurl {
+    url    = "https://github.com/wp-cli/wp-cli/releases/download/v${version}/${name}.phar";
+    sha256 = "05lbay4c0477465vv4h8d2j94pk3haz1a7f0ncb127fvxz3a2pcg";
+  };
 
-    exec ${lib.getBin php}/bin/php \
-      -c ${ini} \
-      -f ${src} -- "$@"
-  '';
+  buildCommand = ''
+    dir=$out/share/wp-cli
+    mkdir -p $out/bin $dir
 
-  ini = writeText "wp-cli.ini" ''
-    [PHP]
-    memory_limit = -1 ; no limit as composer uses a lot of memory
+    cat <<_EOF > $out/bin/wp
+#!${stdenv.shell}
 
-    [Phar]
-    phar.readonly = Off
-  '';
+set -euo pipefail
 
-in stdenv.mkDerivation rec {
-  inherit name version;
+exec ${lib.getBin php}/bin/php \\
+  -c $dir/php.ini \\
+  -f $dir/wp-cli -- "\$@"
+_EOF
+    chmod 0755 $out/bin/wp
 
-  buildCommand = ''
-    install -Dm755 ${bin}        $out/bin/wp
+    cat <<_EOF > $dir/php.ini
+[PHP]
+memory_limit = -1 ; no limit as composer uses a lot of memory
+
+[Phar]
+phar.readonly = Off
+_EOF
+
+    install -Dm644 ${src}        $dir/wp-cli
     install -Dm644 ${completion} $out/share/bash-completion/completions/wp
 
     # this is a very basic run test
diff --git a/pkgs/development/tools/ydiff/default.nix b/pkgs/development/tools/ydiff/default.nix
new file mode 100644
index 000000000000..c2f72138db5f
--- /dev/null
+++ b/pkgs/development/tools/ydiff/default.nix
@@ -0,0 +1,45 @@
+{ stdenv, lib, pythonPackages, python3Packages, less, patchutils, git
+, subversion, coreutils, which }:
+
+with pythonPackages;
+
+buildPythonApplication rec {
+  pname = "ydiff";
+  version = "1.1";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0mxcl17sx1d4vaw22ammnnn3y19mm7r6ljbarcjzi519klz26bnf";
+  };
+
+  patchPhase = ''
+    substituteInPlace tests/test_ydiff.py \
+      --replace /bin/rm ${coreutils}/bin/rm \
+      --replace /bin/sh ${stdenv.shell}
+    substituteInPlace Makefile \
+      --replace "pep8 --ignore" "# pep8 --ignore" \
+      --replace "python3 \`which coverage\`" "${python3Packages.coverage}/bin/coverage3" \
+      --replace /bin/sh ${stdenv.shell} \
+      --replace tests/regression.sh "${stdenv.shell} tests/regression.sh"
+    patchShebangs tests/*.sh
+  '';
+
+  buildInputs = [ docutils pygments ];
+  propagatedBuildInputs = [ less patchutils ];
+  checkInputs = [ coverage coreutils git subversion which ];
+
+  checkTarget = if isPy3k then "test3" else "test";
+
+  meta = {
+    homepage = https://github.com/ymattw/ydiff;
+    description = "View colored, incremental diff in workspace or from stdin";
+    longDescription = ''
+      Term based tool to view colored, incremental diff in a version
+      controlled workspace (supports Git, Mercurial, Perforce and Svn
+      so far) or from stdin, with side by side (similar to diff -y)
+      and auto pager support.
+    '';
+    license = lib.licenses.bsd3;
+    maintainers = with lib.maintainers; [ leenaars ];
+  };
+}
diff --git a/pkgs/development/web/nodejs/nodejs.nix b/pkgs/development/web/nodejs/nodejs.nix
index b2ee7528814f..ea764ef22e6e 100644
--- a/pkgs/development/web/nodejs/nodejs.nix
+++ b/pkgs/development/web/nodejs/nodejs.nix
@@ -42,7 +42,7 @@ in
     name = "${baseName}-${version}";
 
     src = fetchurl {
-      url = "http://nodejs.org/dist/v${version}/node-v${version}.tar.xz";
+      url = "https://nodejs.org/dist/v${version}/node-v${version}.tar.xz";
       inherit sha256;
     };
 
diff --git a/pkgs/development/web/nodejs/v6.nix b/pkgs/development/web/nodejs/v6.nix
index 2e94923441fc..7250613e8628 100644
--- a/pkgs/development/web/nodejs/v6.nix
+++ b/pkgs/development/web/nodejs/v6.nix
@@ -5,6 +5,6 @@ let
 in
   buildNodejs {
     inherit enableNpm;
-    version = "6.14.3";
-    sha256 = "1jbrfk875aimm65wni059rrydmhp4z0hrxskq3ci6jvykxr8gwg3";
+    version = "6.14.4";
+    sha256 = "03zc6jhid6jyi871zlcrkjqffmrpxh01z2xfsl3xp2vzg2czqjws";
   }
diff --git a/pkgs/development/web/postman/default.nix b/pkgs/development/web/postman/default.nix
index 0c8daaee6ef1..bf18ce5d75cf 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.2.5";
+  version = "6.3.0";
 
   src = fetchurl {
     url = "https://dl.pstmn.io/download/version/${version}/linux64";
-    sha256 = "9fd52b4c4ac744d3c70f28e39dbfeda3d03a8640c562e82e3744c2f9d0f8ade1";
+    sha256 = "09m511y977478567lc28mhy68b99ssajzhirc1c4anxnvvs7s6fa";
     name = "${name}.tar.gz";
   };
 
diff --git a/pkgs/games/arx-libertatis/default.nix b/pkgs/games/arx-libertatis/default.nix
index e000f743173b..1ac5ce5007d9 100644
--- a/pkgs/games/arx-libertatis/default.nix
+++ b/pkgs/games/arx-libertatis/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   name = "arx-libertatis-${version}";
-  version = "2017-10-30";
+  version = "2018-08-26";
 
   src = fetchFromGitHub {
     owner  = "arx";
     repo   = "ArxLibertatis";
-    rev    = "e5ea4e8f0f7e86102cfc9113c53daeb0bdee6dd3";
-    sha256 = "11z0ndhk802jr3w3z5gfqw064g98v99xin883q1qd36jw96s27p5";
+    rev    = "7b551739cc22fa25dae83bcc1a2b784ddecc729c";
+    sha256 = "1ybv3p74rywn0ajdbw7pyk7pd7py1db9h6x2pav2d28ndkkj4z8n";
   };
 
   buildInputs = [
diff --git a/pkgs/games/btanks/default.nix b/pkgs/games/btanks/default.nix
index 8379e1aa7bb2..d606662323f3 100644
--- a/pkgs/games/btanks/default.nix
+++ b/pkgs/games/btanks/default.nix
@@ -32,5 +32,6 @@ stdenv.mkDerivation rec {
     homepage = https://sourceforge.net/projects/btanks/;
     description = "Fast 2d tank arcade game";
     license = stdenv.lib.licenses.gpl2Plus;
+    broken = true; # 2018-09-13, no successful build since 2018-03-16
   };
 }
diff --git a/pkgs/games/chessx/default.nix b/pkgs/games/chessx/default.nix
index c8d23fcc9de6..e4ec4dffa1db 100644
--- a/pkgs/games/chessx/default.nix
+++ b/pkgs/games/chessx/default.nix
@@ -1,30 +1,41 @@
-{ stdenv, pkgconfig, zlib, qtbase, qtsvg, qttools, qtmultimedia, qmake, fetchurl }:
+{ stdenv, pkgconfig, zlib, qtbase, qtsvg, qttools, qtmultimedia, qmake, fetchurl, makeWrapper
+, lib
+}:
+
 stdenv.mkDerivation rec {
   name = "chessx-${version}";
   version = "1.4.6";
+
   src = fetchurl {
     url = "mirror://sourceforge/chessx/chessx-${version}.tgz";
     sha256 = "1vb838byzmnyglm9mq3khh3kddb9g4g111cybxjzalxxlc81k5dd";
   };
+
   buildInputs = [
-   qtbase
-   qtsvg
-   qttools
-   qtmultimedia
-   zlib
+    qtbase
+    qtsvg
+    qttools
+    qtmultimedia
+    zlib
   ];
-  nativeBuildInputs = [ pkgconfig qmake ];
+
+  nativeBuildInputs = [ pkgconfig qmake makeWrapper ];
 
   # RCC: Error in 'resources.qrc': Cannot find file 'i18n/chessx_da.qm'
   enableParallelBuilding = false;
 
   installPhase = ''
-      runHook preInstall
-      mkdir -p "$out/bin"
-      mkdir -p "$out/share/applications"
-      cp -pr release/chessx "$out/bin"
-      cp -pr unix/chessx.desktop "$out/share/applications"
-      runHook postInstall
+    runHook preInstall
+
+    mkdir -p "$out/bin"
+    mkdir -p "$out/share/applications"
+    cp -pr release/chessx "$out/bin"
+    cp -pr unix/chessx.desktop "$out/share/applications"
+
+    wrapProgram $out/bin/chessx \
+      --prefix QT_PLUGIN_PATH : ${qtbase}/lib/qt-5.${lib.versions.minor qtbase.version}/plugins
+
+    runHook postInstall
   '';
 
   meta = with stdenv.lib; {
@@ -32,5 +43,6 @@ stdenv.mkDerivation rec {
     description = "ChessX allows you to browse and analyse chess games";
     license = licenses.gpl2;
     maintainers = [maintainers.luispedro];
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/games/dwarf-fortress/default.nix b/pkgs/games/dwarf-fortress/default.nix
index aa4ff210812b..88a6d72bc485 100644
--- a/pkgs/games/dwarf-fortress/default.nix
+++ b/pkgs/games/dwarf-fortress/default.nix
@@ -5,67 +5,112 @@
 # This directory menaces with spikes of Nix code. It is terrifying.
 #
 # If this is your first time here, you should probably install the dwarf-fortress-full package,
-# for instance with `environment.systempackages = [ pkgs.dwarf-fortress.dwarf-fortress-full ];`.
+# for instance with:
+#
+# environment.systemPackages = [ pkgs.dwarf-fortress-packages.dwarf-fortress-full ];
 #
 # You can adjust its settings by using override, or compile your own package by
-# using the other packages here. Take a look at lazy-pack.nix to get an idea of
-# how.
+# using the other packages here.
+#
+# For example, you can enable the FPS indicator, disable the intro, pick a
+# theme other than phoebus (the default for dwarf-fortress-full), _and_ use
+# an older version with something like:
+#
+# environment.systemPackages = [
+#   (pkgs.dwarf-fortress-packages.dwarf-fortress-full.override {
+#      dfVersion = "0.44.11";
+#      theme = "cla";
+#      enableIntro = false;
+#      enableFPS = true;
+#   })
+# ]
+#
+# Take a look at lazy-pack.nix to see all the other options.
 #
 # You will find the configuration files in ~/.local/share/df_linux/data/init. If
 # you un-symlink them and edit, then the scripts will avoid overwriting your
 # changes on later launches, but consider extending the wrapper with your
 # desired options instead.
-#
-# Although both dfhack and dwarf therapist are included in the lazy pack, you
-# can only use one at a time. DFHack does have therapist-like features, so this
-# may or may not be a problem.
+
+with lib;
 
 let
   callPackage = pkgs.newScope self;
 
-  df-games = lib.listToAttrs (map (dfVersion: {
-    name = "dwarf-fortress_${lib.replaceStrings ["."] ["_"] dfVersion}";
-    value = callPackage ./wrapper {
-      inherit (self) themes;
-      dwarf-fortress = callPackage ./game.nix { inherit dfVersion; };
-    };
-  }) (lib.attrNames self.df-hashes));
+  # The latest Dwarf Fortress version. Maintainers: when a new version comes
+  # out, ensure that (unfuck|dfhack|twbt) are all up to date before changing
+  # this.
+  latestVersion = "0.44.12";
 
-  self = rec {
-    df-hashes = builtins.fromJSON (builtins.readFile ./game.json);
-    dwarf-fortress = df-games.dwarf-fortress_0_44_12;
+  # Converts a version to a package name.
+  versionToName = version: "dwarf-fortress_${lib.replaceStrings ["."] ["_"] version}";
 
-    dwarf-fortress-full = callPackage ./lazy-pack.nix { };
+  # A map of names to each Dwarf Fortress package we know about.
+  df-games = lib.listToAttrs (map (dfVersion: {
+    name = versionToName dfVersion;
+    value =
+      let
+        # I can't believe this syntax works. Spikes of Nix code indeed...
+        dwarf-fortress = callPackage ./game.nix {
+          inherit dfVersion;
+          inherit dwarf-fortress-unfuck;
+        };
 
-    dfhack = callPackage ./dfhack {
-      inherit (pkgs.perlPackages) XMLLibXML XMLLibXSLT;
-      stdenv = gccStdenv;
-    };
+        # unfuck is linux-only right now, we will only use it there.
+        dwarf-fortress-unfuck = if stdenv.isLinux then callPackage ./unfuck.nix { inherit dfVersion; }
+                                else null;
 
-    soundSense = callPackage ./soundsense.nix { };
+        twbt = callPackage ./twbt { inherit dfVersion; };
 
-    # unfuck is linux-only right now, we will only use it there.
-    dwarf-fortress-unfuck = if stdenv.isLinux then callPackage ./unfuck.nix { }
-                            else null;
+        dfhack = callPackage ./dfhack {
+          inherit (pkgs.perlPackages) XMLLibXML XMLLibXSLT;
+          inherit dfVersion twbt;
+          stdenv = gccStdenv;
+        };
 
-    dwarf-therapist = callPackage ./dwarf-therapist/wrapper.nix {
-      inherit (dwarf-fortress) dwarf-fortress;
-      dwarf-therapist = pkgs.qt5.callPackage ./dwarf-therapist {
-        texlive = pkgs.texlive.combine {
-          inherit (pkgs.texlive) scheme-basic float caption wrapfig adjmulticol sidecap preprint enumitem;
+        dwarf-therapist = callPackage ./dwarf-therapist/wrapper.nix {
+          inherit dwarf-fortress;
+          dwarf-therapist = pkgs.qt5.callPackage ./dwarf-therapist {
+            texlive = pkgs.texlive.combine {
+              inherit (pkgs.texlive) scheme-basic float caption wrapfig adjmulticol sidecap preprint enumitem;
+            };
+          };
         };
+      in
+      callPackage ./wrapper {
+        inherit (self) themes;
+
+        dwarf-fortress = dwarf-fortress;
+        dwarf-fortress-unfuck = dwarf-fortress-unfuck;
+        twbt = twbt;
+        dfhack = dfhack;
+        dwarf-therapist = dwarf-therapist;
       };
+  }) (lib.attrNames self.df-hashes));
+
+  self = rec {
+    df-hashes = builtins.fromJSON (builtins.readFile ./game.json);
+
+    # Aliases for the latest Dwarf Fortress and the selected Therapist install
+    dwarf-fortress = getAttr (versionToName latestVersion) df-games;
+    dwarf-therapist = dwarf-fortress.dwarf-therapist;
+    dwarf-fortress-original = dwarf-fortress.dwarf-fortress;
+
+    dwarf-fortress-full = callPackage ./lazy-pack.nix {
+      inherit df-games versionToName latestVersion;
     };
+    
+    soundSense = callPackage ./soundsense.nix { };
 
     legends-browser = callPackage ./legends-browser {};
 
-    twbt = callPackage ./twbt {};
-    themes = recurseIntoAttrs (callPackage ./themes { });
+    themes = recurseIntoAttrs (callPackage ./themes {
+      stdenv = stdenvNoCC;
+    });
 
-    # aliases
+    # Theme aliases
     phoebus-theme = themes.phoebus;
     cla-theme = themes.cla;
-    dwarf-fortress-original = dwarf-fortress.dwarf-fortress;
   };
 
 in self // df-games
diff --git a/pkgs/games/dwarf-fortress/dfhack/default.nix b/pkgs/games/dwarf-fortress/dfhack/default.nix
index 4a8c84cf92dc..d65bdab84911 100644
--- a/pkgs/games/dwarf-fortress/dfhack/default.nix
+++ b/pkgs/games/dwarf-fortress/dfhack/default.nix
@@ -3,14 +3,62 @@
 , enableStoneSense ? false,  allegro5, libGLU_combined
 , enableTWBT ? true, twbt
 , SDL
+, dfVersion
 }:
 
+with lib;
+
 let
-  dfVersion = "0.44.12";
-  version = "${dfVersion}-r1";
+  dfhack-releases = {
+    "0.43.05" = {
+      dfHackRelease = "0.43.05-r3.1";
+      sha256 = "1ds366i0qcfbn62w9qv98lsqcrm38npzgvcr35hf6ihqa6nc6xrl";
+      xmlRev = "860a9041a75305609643d465123a4b598140dd7f";
+      prerelease = false;
+    };
+    "0.44.05" = {
+      dfHackRelease = "0.44.05-r2";
+      sha256 = "1cwifdhi48a976xc472nf6q2k0ibwqffil5a4llcymcxdbgxdcc9";
+      xmlRev = "2794f8a6d7405d4858bac486a0bb17b94740c142";
+      prerelease = false;
+    };
+    "0.44.09" = {
+      dfHackRelease = "0.44.09-r1";
+      sha256 = "1nkfaa43pisbyik5inj5q2hja2vza5lwidg5z02jyh136jm64hwk";
+      xmlRev = "3c0bf63674d5430deadaf7befaec42f0ec1e8bc5";
+      prerelease = false;
+    };
+    "0.44.10" = {
+      dfHackRelease = "0.44.10-r2";
+      sha256 = "19bxsghxzw3bilhr8sm4axz7p7z8lrvbdsd1vdjf5zbg04rs866i";
+      xmlRev = "321bd48b10c4c3f694cc801a7dee6be392c09b7b";
+      prerelease = false;
+    };
+    "0.44.11" = {
+      dfHackRelease = "0.44.11-beta2.1";
+      sha256 = "1jgwcqg9m1ybv3szgnklp6zfpiw5mswla464dlj2gfi5v82zqbv2";
+      xmlRev = "f27ebae6aa8fb12c46217adec5a812cd49a905c8";
+      prerelease = true;
+    };
+    "0.44.12" = {
+      dfHackRelease = "0.44.12-r1";
+      sha256 = "0j03lq6j6w378z6cvm7jspxc7hhrqm8jaszlq0mzfvap0k13fgyy";
+      xmlRev = "23500e4e9bd1885365d0a2ef1746c321c1dd5094";
+      prerelease = false;
+    };
+  };
+
+  release = if hasAttr dfVersion dfhack-releases
+            then getAttr dfVersion dfhack-releases
+            else throw "[DFHack] Unsupported Dwarf Fortress version: ${dfVersion}";
+
+  version = release.dfHackRelease;
+
+  warning = if release.prerelease then builtins.trace "[DFHack] Version ${version} is a prerelease. Careful!"
+                                  else null;
 
   # revision of library/xml submodule
-  xmlRev = "23500e4e9bd1885365d0a2ef1746c321c1dd5094";
+  xmlRev = release.xmlRev;
 
   arch =
     if stdenv.hostPlatform.system == "x86_64-linux" then "64"
@@ -21,6 +69,10 @@ let
     #! ${stdenv.shell}
     if [ "$*" = "describe --tags --long" ]; then
       echo "${version}-unknown"
+    elif [ "$*" = "describe --tags --abbrev=8 --long" ]; then
+      echo "${version}-unknown"
+    elif [ "$*" = "describe --tags --abbrev=8 --exact-match" ]; then
+      echo "${version}"
     elif [ "$*" = "rev-parse HEAD" ]; then
       if [ "$(dirname "$(pwd)")" = "xml" ]; then
         echo "${xmlRev}"
@@ -41,8 +93,8 @@ let
     src = fetchFromGitHub {
       owner = "DFHack";
       repo = "dfhack";
-      sha256 = "0j03lq6j6w378z6cvm7jspxc7hhrqm8jaszlq0mzfvap0k13fgyy";
-      rev = version;
+      rev = release.dfHackRelease;
+      sha256 = release.sha256;
       fetchSubmodules = true;
     };
 
diff --git a/pkgs/games/dwarf-fortress/dwarf-therapist/dwarf-therapist.in b/pkgs/games/dwarf-fortress/dwarf-therapist/dwarf-therapist.in
new file mode 100644
index 000000000000..77936c430e2b
--- /dev/null
+++ b/pkgs/games/dwarf-fortress/dwarf-therapist/dwarf-therapist.in
@@ -0,0 +1,26 @@
+#!@stdenv_shell@ -e
+
+[ -z "$DT_DIR" ] && DT_DIR="${XDG_DATA_HOME:-$HOME/.local/share}/dwarftherapist"
+
+install_dir="@install@"
+therapist_dir="@therapist@"
+
+cat <<EOF >&2
+Using $DT_DIR as Dwarf Therapist overlay directory.
+EOF
+
+update_path() {
+  local path="$1"
+
+  mkdir -p "$DT_DIR/$(dirname "$path")"
+  if [ ! -e "$DT_DIR/$path" ] || [ -L "$DT_DIR/$path" ]; then
+    rm -f "$DT_DIR/$path"
+    ln -s "$install_dir/share/dwarftherapist/$path" "$DT_DIR/$path"
+  fi
+}
+
+cd "$install_dir/share/dwarftherapist"
+update_path memory_layouts
+
+QT_QPA_PLATFORM_PLUGIN_PATH="@qt_plugin_path@" \
+  exec "$therapist_dir/bin/dwarftherapist" "$@"
diff --git a/pkgs/games/dwarf-fortress/dwarf-therapist/wrapper.nix b/pkgs/games/dwarf-fortress/dwarf-therapist/wrapper.nix
index 322a21ec3ad9..071ab2af0c5c 100644
--- a/pkgs/games/dwarf-fortress/dwarf-therapist/wrapper.nix
+++ b/pkgs/games/dwarf-fortress/dwarf-therapist/wrapper.nix
@@ -1,12 +1,16 @@
-{ stdenv, symlinkJoin, dwarf-therapist, dwarf-fortress, makeWrapper }:
+{ pkgs, stdenv, symlinkJoin, lib, dwarf-therapist, dwarf-fortress, makeWrapper }:
 
 let
   platformSlug = if stdenv.targetPlatform.is32bit then
     "linux32" else "linux64";
   inifile = "linux/v0.${dwarf-fortress.baseVersion}.${dwarf-fortress.patchVersion}_${platformSlug}.ini";
 
-in symlinkJoin {
+in
+  
+stdenv.mkDerivation rec {
   name = "dwarf-therapist-${dwarf-therapist.version}";
+  
+  wrapper = ./dwarf-therapist.in;
 
   paths = [ dwarf-therapist ];
 
@@ -14,20 +18,33 @@ in symlinkJoin {
 
   passthru = { inherit dwarf-fortress dwarf-therapist; };
 
-  postBuild = ''
-    # DwarfTherapist assumes it's run in $out/share/dwarftherapist and
-    # therefore uses many relative paths.
-    wrapProgram $out/bin/dwarftherapist \
-      --run "cd $out/share/dwarftherapist"
+  buildCommand = ''
+    mkdir -p $out/bin
     ln -s $out/bin/dwarftherapist $out/bin/DwarfTherapist
+    substitute $wrapper $out/bin/dwarftherapist \
+      --subst-var-by stdenv_shell ${stdenv.shell} \
+      --subst-var-by install $out \
+      --subst-var-by therapist ${dwarf-therapist} \
+      --subst-var-by qt_plugin_path "${pkgs.qt5.qtbase}/lib/qt-${pkgs.qt5.qtbase.qtCompatVersion}/plugins/platforms"
 
+    chmod 755 $out/bin/dwarftherapist
+
+    # Fix up memory layouts
     rm -rf $out/share/dwarftherapist/memory_layouts/linux
     mkdir -p $out/share/dwarftherapist/memory_layouts/linux
-    origmd5=$(cat "${dwarf-fortress}/hash.md5.orig" | cut -c1-8)
-    patchedmd5=$(cat "${dwarf-fortress}/hash.md5" | cut -c1-8)
-    substitute \
-      ${dwarf-therapist}/share/dwarftherapist/memory_layouts/${inifile} \
-      $out/share/dwarftherapist/memory_layouts/${inifile} \
-      --replace "$origmd5" "$patchedmd5"
+    orig_md5=$(cat "${dwarf-fortress}/hash.md5.orig" | cut -c1-8)
+    patched_md5=$(cat "${dwarf-fortress}/hash.md5" | cut -c1-8)
+    input_file="${dwarf-therapist}/share/dwarftherapist/memory_layouts/${inifile}"
+    output_file="$out/share/dwarftherapist/memory_layouts/${inifile}"
+
+    echo "[Dwarf Therapist Wrapper] Fixing Dwarf Fortress MD5 prefix:"
+    echo "  Input:   $input_file"
+    echo "  Search:  $orig_md5"
+    echo "  Output:  $output_file"
+    echo "  Replace: $patched_md5"
+
+    substitute "$input_file" "$output_file" --replace "$orig_md5" "$patched_md5"
   '';
+
+  preferLocalBuild = true;
 }
diff --git a/pkgs/games/dwarf-fortress/game.nix b/pkgs/games/dwarf-fortress/game.nix
index 2547bb83f3f5..b5c80a0a56dc 100644
--- a/pkgs/games/dwarf-fortress/game.nix
+++ b/pkgs/games/dwarf-fortress/game.nix
@@ -42,9 +42,6 @@ let
 
 in
 
-assert dwarf-fortress-unfuck != null ->
-       dwarf-fortress-unfuck.dfVersion == dfVersion;
-
 stdenv.mkDerivation {
   name = "dwarf-fortress-${dfVersion}";
 
diff --git a/pkgs/games/dwarf-fortress/lazy-pack.nix b/pkgs/games/dwarf-fortress/lazy-pack.nix
index 3e0d3dcc6d73..3a81dcc9c931 100644
--- a/pkgs/games/dwarf-fortress/lazy-pack.nix
+++ b/pkgs/games/dwarf-fortress/lazy-pack.nix
@@ -1,13 +1,14 @@
-{ stdenvNoCC, lib, buildEnv
-, dwarf-fortress, themes
+{ stdenvNoCC, lib, buildEnv, callPackage
+, df-games, themes, latestVersion, versionToName
+, dfVersion ? latestVersion
   # This package should, at any given time, provide an opinionated "optimal"
   # DF experience. It's the equivalent of the Lazy Newbie Pack, that is, and
-  # should contain every utility available.
+  # should contain every utility available unless you disable them.
 , enableDFHack ? stdenvNoCC.isLinux
 , enableTWBT ? enableDFHack
 , enableSoundSense ? true
-, enableStoneSense ? false  # StoneSense is currently broken.
-, enableDwarfTherapist ? true, dwarf-therapist
+, enableStoneSense ? true
+, enableDwarfTherapist ? true
 , enableLegendsBrowser ? true, legends-browser
 , theme ? themes.phoebus
 # General config options:
@@ -16,6 +17,15 @@
 , enableFPS ? false
 }:
 
+with lib;
+
+let
+  dfGame = versionToName dfVersion;
+  dwarf-fortress = if hasAttr dfGame df-games
+                   then getAttr dfGame df-games
+                   else throw "Unknown Dwarf Fortress version: ${dfVersion}";
+  dwarf-therapist = dwarf-fortress.dwarf-therapist;
+in
 buildEnv {
   name = "dwarf-fortress-full";
   paths = [
@@ -28,7 +38,7 @@ buildEnv {
 
   meta = with stdenvNoCC.lib; {
     description = "An opinionated wrapper for Dwarf Fortress";
-    maintainers = with maintainers; [ Baughn ];
+    maintainers = with maintainers; [ Baughn numinit ];
     license = licenses.mit;
     platforms = platforms.all;
     homepage = https://github.com/NixOS/nixpkgs/;
diff --git a/pkgs/games/dwarf-fortress/themes/default.nix b/pkgs/games/dwarf-fortress/themes/default.nix
index 0b8eb23a7b9d..feb4782d7c32 100644
--- a/pkgs/games/dwarf-fortress/themes/default.nix
+++ b/pkgs/games/dwarf-fortress/themes/default.nix
@@ -1,4 +1,4 @@
-{lib, fetchFromGitHub}:
+{lib, fetchFromGitHub, ...}:
 
 with builtins;
 
diff --git a/pkgs/games/dwarf-fortress/twbt/default.nix b/pkgs/games/dwarf-fortress/twbt/default.nix
index d90812f5d05e..7c80c1012462 100644
--- a/pkgs/games/dwarf-fortress/twbt/default.nix
+++ b/pkgs/games/dwarf-fortress/twbt/default.nix
@@ -1,14 +1,59 @@
-{ stdenvNoCC, fetchurl, unzip }:
+{ stdenvNoCC, lib, fetchurl, unzip
+, dfVersion
+}:
 
+with lib;
+
+let
+  twbt-releases = {
+    "0.43.05" = {
+      twbtRelease = "6.22";
+      sha256 = "0di5d38f6jj9smsz0wjcs1zav4zba6hrk8cbn59kwpb1wamsh5c7";
+      prerelease = false;
+    };
+    "0.44.05" = {
+      twbtRelease = "6.35";
+      sha256 = "0qjkgl7dsqzsd7pdq8a5bihhi1wplfkv1id7sj6dp3swjpsfxp8g";
+      prerelease = false;
+    };
+    "0.44.09" = {
+      twbtRelease = "6.41";
+      sha256 = "0nsq15z05pbhqjvw2xqs1a9b1n2ma0aalhc3vh3mi4cd4k7lxh44";
+      prerelease = false;
+    };
+    "0.44.10" = {
+      twbtRelease = "6.49";
+      sha256 = "1qjkc7k33qhxj2g18njzasccjqsis5y8zrw5vl90h4rs3i8ld9xz";
+      prerelease = false;
+    };
+    "0.44.11" = {
+      twbtRelease = "6.51";
+      sha256 = "1yclqmarjd97ch054h425a12r8a5ailmflsd7b39cg4qhdr1nii5";
+      prerelease = true;
+    };
+    "0.44.12" = {
+      twbtRelease = "6.54";
+      sha256 = "10gfd6vv0vk4v1r5hjbz7vf1zqys06dsad695gysc7fbcik2dakh";
+      prerelease = false;
+    };
+  };
+
+  release = if hasAttr dfVersion twbt-releases
+            then getAttr dfVersion twbt-releases
+            else throw "[TWBT] Unsupported Dwarf Fortress version: ${dfVersion}";
+
+  warning = if release.prerelease then builtins.trace "[TWBT] Version ${version} is a prerelease. Careful!"
+                                  else null;
+
+in
 
 stdenvNoCC.mkDerivation rec {
   name = "twbt-${version}";
-  version = "6.54";
-  dfVersion = "0.44.12";
+  version = release.twbtRelease;
 
   src = fetchurl {
     url = "https://github.com/mifki/df-twbt/releases/download/v${version}/twbt-${version}-linux.zip";
-    sha256 = "10gfd6vv0vk4v1r5hjbz7vf1zqys06dsad695gysc7fbcik2dakh";
+    sha256 = release.sha256;
   };
 
   sourceRoot = ".";
@@ -24,10 +69,9 @@ stdenvNoCC.mkDerivation rec {
     cp -a *.png $art/data/art/
   '';
 
-  
   meta = with stdenvNoCC.lib; {
     description = "A plugin for Dwarf Fortress / DFHack that improves various aspects the game interface.";
-    maintainers = with maintainers; [ Baughn ];
+    maintainers = with maintainers; [ Baughn numinit ];
     license = licenses.mit;
     platforms = platforms.linux;
     homepage = https://github.com/mifki/df-twbt;
diff --git a/pkgs/games/dwarf-fortress/unfuck.nix b/pkgs/games/dwarf-fortress/unfuck.nix
index 0c5a81a52f0f..c4d01b3ff392 100644
--- a/pkgs/games/dwarf-fortress/unfuck.nix
+++ b/pkgs/games/dwarf-fortress/unfuck.nix
@@ -1,18 +1,52 @@
-{ stdenv, fetchFromGitHub, cmake
+{ stdenv, lib, fetchFromGitHub, cmake
 , libGL, libSM, SDL, SDL_image, SDL_ttf, glew, openalSoft
 , ncurses, glib, gtk2, libsndfile, zlib
+, dfVersion
 }:
 
-let dfVersion = "0.44.12"; in
+with lib;
+
+let
+  unfuck-releases = {
+    "0.43.05" = {
+      unfuckRelease = "0.43.05";
+      sha256 = "173dyrbxlzqvjf1j3n7vpns4gfjkpyvk9z16430xnmd5m6nda8p2";
+    };
+    "0.44.05" = {
+      unfuckRelease = "0.44.05";
+      sha256 = "00yj4l4gazxg4i6fj9rwri6vm17i6bviy2mpkx0z5c0mvsr7s14b";
+    };
+    "0.44.09" = {
+      unfuckRelease = "0.44.09";
+      sha256 = "138p0v8z2x47f0fk9k6g75ikw5wb3vxldwv5ggbkf4hhvlw6lvzm";
+    };
+    "0.44.10" = {
+      unfuckRelease = "0.44.10";
+      sha256 = "0vb19qx2ibc79j4bgbk9lskb883qfb0815zw1dfz9k7rqwal8mzj";
+    };
+    "0.44.11" = {
+      unfuckRelease = "0.44.11.1";
+      sha256 = "1kszkb1d1vll8p04ja41nangsaxb5lv4p3xh2jhmsmipfixw7nvz";
+    };
+    "0.44.12" = {
+      unfuckRelease = "0.44.12";
+      sha256 = "1kszkb1d1vll8p04ja41nangsaxb5lv4p3xh2jhmsmipfixw7nvz";
+    };
+  };
+
+  release = if hasAttr dfVersion unfuck-releases
+            then getAttr dfVersion unfuck-releases
+            else throw "[unfuck] Unknown Dwarf Fortress version: ${dfVersion}";
+in
 
 stdenv.mkDerivation {
-  name = "dwarf_fortress_unfuck-${dfVersion}";
+  name = "dwarf_fortress_unfuck-${release.unfuckRelease}";
 
   src = fetchFromGitHub {
     owner = "svenstaro";
     repo = "dwarf_fortress_unfuck";
-    rev = dfVersion;
-    sha256 = "1kszkb1d1vll8p04ja41nangsaxb5lv4p3xh2jhmsmipfixw7nvz";
+    rev = release.unfuckRelease;
+    sha256 = release.sha256;
   };
 
   cmakeFlags = [
@@ -20,23 +54,12 @@ stdenv.mkDerivation {
     "-DGTK2_GDKCONFIG_INCLUDE_DIR=${gtk2.out}/lib/gtk-2.0/include"
   ];
 
-  makeFlags = [
-    ''CFLAGS="-fkeep-inline-functions"''
-    ''CXXFLAGS="-fkeep-inline-functions"''
-  ];
-
   nativeBuildInputs = [ cmake ];
   buildInputs = [
     libSM SDL SDL_image SDL_ttf glew openalSoft
     ncurses gtk2 libsndfile zlib libGL
   ];
 
-  postPatch = ''
-    substituteInPlace CMakeLists.txt --replace \
-      'set(CMAKE_BUILD_TYPE Release)' \
-      'set(CMAKE_BUILD_TYPE Debug)'
-  '';
-
   # Don't strip unused symbols; dfhack hooks into some of them.
   dontStrip = true;
 
@@ -56,6 +79,6 @@ stdenv.mkDerivation {
     homepage = https://github.com/svenstaro/dwarf_fortress_unfuck;
     license = licenses.free;
     platforms = platforms.linux;
-    maintainers = with maintainers; [ abbradar ];
+    maintainers = with maintainers; [ abbradar numinit ];
   };
 }
diff --git a/pkgs/games/dwarf-fortress/wrapper/default.nix b/pkgs/games/dwarf-fortress/wrapper/default.nix
index 6efe004fa9e8..8d9f06ffe143 100644
--- a/pkgs/games/dwarf-fortress/wrapper/default.nix
+++ b/pkgs/games/dwarf-fortress/wrapper/default.nix
@@ -1,4 +1,6 @@
-{ stdenv, lib, buildEnv, dwarf-fortress, substituteAll
+{ stdenv, lib, buildEnv, substituteAll
+, dwarf-fortress, dwarf-fortress-unfuck
+, dwarf-therapist
 , enableDFHack ? false, dfhack
 , enableSoundSense ? false, soundSense, jdk
 , enableStoneSense ? false
@@ -36,18 +38,29 @@ let
 
     paths = themePkg ++ pkgs;
     pathsToLink = [ "/" "/hack" "/hack/scripts" ];
-    ignoreCollisions = true;
 
     postBuild = ''
       # De-symlink init.txt
       cp $out/data/init/init.txt init.txt
-      rm $out/data/init/init.txt
+      rm -f $out/data/init/init.txt
       mv init.txt $out/data/init/init.txt
     '' + lib.optionalString enableDFHack ''
+      # De-symlink symbols.xml
       rm $out/hack/symbols.xml
-      substitute ${dfhack_}/hack/symbols.xml $out/hack/symbols.xml \
-        --replace $(cat ${dwarf-fortress}/hash.md5.orig) \
-                  $(cat ${dwarf-fortress}/hash.md5)
+
+      # Patch the MD5
+      orig_md5=$(cat "${dwarf-fortress}/hash.md5.orig")
+      patched_md5=$(cat "${dwarf-fortress}/hash.md5")
+      input_file="${dfhack_}/hack/symbols.xml"
+      output_file="$out/hack/symbols.xml"
+
+      echo "[DFHack Wrapper] Fixing Dwarf Fortress MD5:"
+      echo "  Input:   $input_file"
+      echo "  Search:  $orig_md5"
+      echo "  Output:  $output_file"
+      echo "  Replace: $patched_md5"
+
+      substitute "$input_file" "$output_file" --replace "$orig_md5" "$patched_md5"
     '' + lib.optionalString enableTWBT ''
       substituteInPlace $out/data/init/init.txt \
         --replace '[PRINT_MODE:2D]' '[PRINT_MODE:TWBT]'
@@ -57,14 +70,14 @@ let
         --replace '[TRUETYPE:YES]' '[TRUETYPE:${unBool enableTruetype}]' \
         --replace '[FPS:NO]' '[FPS:${unBool enableFPS}]'
     '';
+
+    ignoreCollisions = true;
   };
 in
 
 stdenv.mkDerivation rec {
   name = "dwarf-fortress-${dwarf-fortress.dfVersion}";
 
-  compatible = lib.all (x: assert (x.dfVersion == dwarf-fortress.dfVersion); true) pkgs;
-
   dfInit = substituteAll {
     name = "dwarf-fortress-init";
     src = ./dwarf-fortress-init.in;
@@ -77,7 +90,7 @@ stdenv.mkDerivation rec {
   runDFHack = ./dfhack.in;
   runSoundSense = ./soundSense.in;
 
-  passthru = { inherit dwarf-fortress; };
+  passthru = { inherit dwarf-fortress dwarf-therapist; };
 
   buildCommand = ''
     mkdir -p $out/bin
diff --git a/pkgs/games/gnugo/default.nix b/pkgs/games/gnugo/default.nix
index 6b053d9d53cd..133a00b67bb2 100644
--- a/pkgs/games/gnugo/default.nix
+++ b/pkgs/games/gnugo/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "GNU Go - A computer go player";
-    homepage = http://http://www.gnu.org/software/gnugo/;
+    homepage = http://www.gnu.org/software/gnugo/;
     license = stdenv.lib.licenses.gpl3;
     platforms = stdenv.lib.platforms.unix;
   };
diff --git a/pkgs/games/openrct2/default.nix b/pkgs/games/openrct2/default.nix
index e5783ec5396f..e41caa3db978 100644
--- a/pkgs/games/openrct2/default.nix
+++ b/pkgs/games/openrct2/default.nix
@@ -5,20 +5,20 @@
 
 let
   name = "openrct2-${version}";
-  version = "0.2.0";
+  version = "0.2.1";
 
   openrct2-src = fetchFromGitHub {
     owner = "OpenRCT2";
     repo = "OpenRCT2";
     rev = "v${version}";
-    sha256 = "1nmz8war8b49iicpc70gk7zlqizrvvwpidqm70lfpa0p68m7m3px";
+    sha256 = "0dl1f0gvq0ifaii66c7bwp8k822krcdn9l44prnyds6smrdmd3dq";
   };
 
   objects-src = fetchFromGitHub {
     owner = "OpenRCT2";
     repo = "objects";
-    rev = "v1.0.2";
-    sha256 = "1gl37fmhhrfgd6gilw0n7hfdq80a9b31bi5r0xhxg7d579jccb04";
+    rev = "v1.0.6";
+    sha256 = "1yhyafsk2lyasgj1r7h2n4k7vp5q792aj86ggpbmd6bcp4kk6hbm";
   };
 
   title-sequences-src = fetchFromGitHub {
diff --git a/pkgs/games/quakespasm/vulkan.nix b/pkgs/games/quakespasm/vulkan.nix
index 2cf09e2ec938..6f69c6469503 100644
--- a/pkgs/games/quakespasm/vulkan.nix
+++ b/pkgs/games/quakespasm/vulkan.nix
@@ -1,4 +1,5 @@
-{ stdenv, SDL2, fetchFromGitHub, makeWrapper, gzip, libvorbis, libmad, vulkan-loader }:
+{ stdenv, SDL2, fetchFromGitHub, makeWrapper, gzip, libvorbis, libmad, vulkan-headers, vulkan-loader }:
+
 stdenv.mkDerivation rec {
   name = "vkquake-${version}";
   majorVersion = "1.00";
@@ -13,8 +14,12 @@ stdenv.mkDerivation rec {
 
   sourceRoot = "source/Quake";
 
+  nativeBuildInputs = [
+    makeWrapper vulkan-headers
+  ];
+
   buildInputs = [
-    makeWrapper gzip SDL2 libvorbis libmad vulkan-loader.dev
+    gzip SDL2 libvorbis libmad vulkan-loader
   ];
 
   buildFlags = [ "DO_USERDIRS=1" ];
diff --git a/pkgs/games/rogue/default.nix b/pkgs/games/rogue/default.nix
index bb93fafa3b50..c8af2331b080 100644
--- a/pkgs/games/rogue/default.nix
+++ b/pkgs/games/rogue/default.nix
@@ -17,10 +17,11 @@ stdenv.mkDerivation {
   # Fix build for recent ncurses versions
   NIX_CFLAGS_COMPILE = [ "-DNCURSES_INTERNALS=1" ];
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = http://rogue.rogueforge.net/rogue-5-4/;
     description = "The final version of the original Rogue game developed for the UNIX operating system";
-    platforms = stdenv.lib.platforms.all;
-    maintainers = [ stdenv.lib.maintainers.eelco ];
+    platforms = platforms.all;
+    license = licenses.bsd3;
+    maintainers = [ maintainers.eelco ];
   };
 }
diff --git a/pkgs/games/solarus/default.nix b/pkgs/games/solarus/default.nix
index 6f7876e48723..23abadf66ae5 100644
--- a/pkgs/games/solarus/default.nix
+++ b/pkgs/games/solarus/default.nix
@@ -1,21 +1,23 @@
-{ stdenv, fetchFromGitHub, cmake, luajit,
+{ stdenv, fetchFromGitLab, cmake, luajit,
   SDL2, SDL2_image, SDL2_ttf, physfs,
-  openal, libmodplug, libvorbis}:
+  openal, libmodplug, libvorbis,
+  qtbase, qttools }:
 
 stdenv.mkDerivation rec {
   name = "solarus-${version}";
-  version = "1.4.5";
+  version = "1.5.3";
 
-  src = fetchFromGitHub {
-    owner = "christopho";
+  src = fetchFromGitLab {
+    owner = "solarus-games";
     repo = "solarus";
-    rev = "d9fdb9fdb4e1b9fc384730a9279d134ae9f2c70e";
-    sha256 = "0xjx789d6crm322wmkqyq9r288vddsha59yavhy78c4r01gs1p5v";
+    rev = "v1.5.3";
+    sha256 = "035hkdw3a1ryasj5wfa1xla1xmpnc3hjp4s20sl9ywip41675vaz";
   };
 
   buildInputs = [ cmake luajit SDL2
     SDL2_image SDL2_ttf physfs
-    openal libmodplug libvorbis ];
+    openal libmodplug libvorbis
+    qtbase qttools ];
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/games/steam/default.nix b/pkgs/games/steam/default.nix
index e8a911bebd5e..5aab54b83221 100644
--- a/pkgs/games/steam/default.nix
+++ b/pkgs/games/steam/default.nix
@@ -19,6 +19,7 @@ let
         then pkgs.pkgsi686Linux.steamPackages.steam-runtime-wrapped
         else null;
     };
+    steamcmd = callPackage ./steamcmd.nix { };
   };
 
 in self
diff --git a/pkgs/games/steam/steamcmd.nix b/pkgs/games/steam/steamcmd.nix
new file mode 100644
index 000000000000..6a2c7fe01b4f
--- /dev/null
+++ b/pkgs/games/steam/steamcmd.nix
@@ -0,0 +1,46 @@
+{ stdenv, fetchurl, steam-run, bash
+, steamRoot ? "~/.local/share/Steam"
+}:
+
+stdenv.mkDerivation rec {
+  name = "steamcmd-${version}";
+  version = "20180104"; # According to steamcmd_linux.tar.gz mtime
+
+  src = fetchurl {
+    url = https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz;
+    sha256 = "0z0y0zqvhydmfc9y9vg5am0vz7m3gbj4l2dwlrfz936hpx301gyf";
+  };
+
+  # The source tarball does not have a single top-level directory.
+  preUnpack = ''
+    mkdir $name
+    cd $name
+    sourceRoot=.
+  '';
+
+  buildInputs = [ bash steam-run ];
+
+  dontBuild = true;
+
+  installPhase = ''
+    mkdir -p $out/share/steamcmd/linux32
+    install -Dm755 steamcmd.sh $out/share/steamcmd/steamcmd.sh
+    install -Dm755 linux32/* $out/share/steamcmd/linux32
+
+    mkdir -p $out/bin
+    substitute ${./steamcmd.sh} $out/bin/steamcmd \
+      --subst-var shell \
+      --subst-var out \
+      --subst-var-by steamRoot "${steamRoot}" \
+      --subst-var-by steamRun ${steam-run}
+    chmod 0755 $out/bin/steamcmd
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Steam command-line tools";
+    homepage = "https://developer.valvesoftware.com/wiki/SteamCMD";
+    platforms = platforms.linux;
+    license = licenses.unfreeRedistributable;
+    maintainers = with maintainers; [ tadfisher ];
+  };
+}
diff --git a/pkgs/games/steam/steamcmd.sh b/pkgs/games/steam/steamcmd.sh
new file mode 100644
index 000000000000..e092a4fedbe9
--- /dev/null
+++ b/pkgs/games/steam/steamcmd.sh
@@ -0,0 +1,24 @@
+#!@bash@/bin/bash -e
+
+# Always run steamcmd in the user's Steam root.
+STEAMROOT=@steamRoot@
+
+# Create a facsimile Steam root if it doesn't exist.
+if [ ! -e "$STEAMROOT" ]; then
+  mkdir -p "$STEAMROOT"/{appcache,config,logs,Steamapps/common}
+  mkdir -p ~/.steam
+  ln -sf "$STEAMROOT" ~/.steam/root
+  ln -sf "$STEAMROOT" ~/.steam/steam
+fi
+
+# Copy the system steamcmd install to the Steam root. If we don't do
+# this, steamcmd assumes the path to `steamcmd` is the Steam root.
+# Note that symlinks don't work here.
+if [ ! -e "$STEAMROOT/steamcmd.sh" ]; then
+  mkdir -p "$STEAMROOT/linux32"
+  # steamcmd.sh will replace these on first use
+  cp @out@/share/steamcmd/steamcmd.sh "$STEAMROOT/."
+  cp @out@/share/steamcmd/linux32/* "$STEAMROOT/linux32/."
+fi
+
+@steamRun@/bin/steam-run "$STEAMROOT/steamcmd.sh" "$@"
diff --git a/pkgs/games/urbanterror/default.nix b/pkgs/games/urbanterror/default.nix
index afff5a5c9eb3..8ceff15b93d0 100644
--- a/pkgs/games/urbanterror/default.nix
+++ b/pkgs/games/urbanterror/default.nix
@@ -65,7 +65,7 @@ stdenv.mkDerivation rec {
       tactical shooter; somewhat realism based, but the motto is "fun over
       realism". This results in a very unique, enjoyable and addictive game.
     '';
-    homepage = http://www.urbanterror.net;
+    homepage = http://www.urbanterror.info;
     license = licenses.unfreeRedistributable;
     maintainers = with maintainers; [ astsmtl fpletz ];
     platforms = platforms.linux;
diff --git a/pkgs/misc/calaos/installer/default.nix b/pkgs/misc/calaos/installer/default.nix
index 36c8825d27a8..618bc6d85059 100644
--- a/pkgs/misc/calaos/installer/default.nix
+++ b/pkgs/misc/calaos/installer/default.nix
@@ -16,7 +16,10 @@ stdenv.mkDerivation rec {
 
   qmakeFlags = [ "REVISION=${version}" ];
 
-  installPhase = ''
+  installPhase = if stdenv.isDarwin then ''
+    mkdir -p $out/Applications
+    cp -a calaos_installer.app $out/Applications
+  '' else ''
     mkdir -p $out/bin
     cp -a calaos_installer $out/bin
   '';
diff --git a/pkgs/misc/cups/drivers/brlaser/default.nix b/pkgs/misc/cups/drivers/brlaser/default.nix
index 1786a4996a30..46c38892bf8f 100644
--- a/pkgs/misc/cups/drivers/brlaser/default.nix
+++ b/pkgs/misc/cups/drivers/brlaser/default.nix
@@ -1,7 +1,6 @@
 { stdenv, fetchFromGitHub, cmake, zlib, cups }:
 
 stdenv.mkDerivation rec {
-
   name = "brlaser-${version}";
   version = "4";
 
@@ -12,11 +11,10 @@ stdenv.mkDerivation rec {
     sha256 = "1yy4mpf68c82h245srh2sd1yip29w6kx14gxk4hxkv496gf55lw5";
   };
 
-  buildInputs = [ cmake zlib cups ];
+  nativeBuildInputs = [ cmake ];
+  buildInputs = [ zlib cups ];
 
-  preConfigure = ''
-    cmakeFlags="$cmakeFlags -DCUPS_SERVER_BIN=$out/lib/cups/ -DCUPS_DATA_DIR=$out/share/cups/"
-  '';
+  cmakeFlags = [ "-DCUPS_SERVER_BIN=$out/lib/cups" "-DCUPS_DATA_DIR=$out/share/cups" ];
 
   meta = with stdenv.lib; {
     description = "A CUPS driver for Brother laser printers";
@@ -37,7 +35,7 @@ stdenv.mkDerivation rec {
       '';
     homepage = https://github.com/pdewacht/brlaser;
     license = licenses.gpl2;
-    platforms = platforms.unix;
+    platforms = platforms.linux;
     maintainers = with maintainers; [ StijnDW ];
   };
 }
diff --git a/pkgs/misc/drivers/sc-controller/default.nix b/pkgs/misc/drivers/sc-controller/default.nix
index f1c4ff091573..9de0ba277789 100644
--- a/pkgs/misc/drivers/sc-controller/default.nix
+++ b/pkgs/misc/drivers/sc-controller/default.nix
@@ -2,7 +2,7 @@
 , gtk3, gobjectIntrospection, libappindicator-gtk3, librsvg
 , evdev, pygobject3, pylibacl, pytest, bluez
 , linuxHeaders
-, libX11, libXext, libXfixes, libusb1, libudev
+, libX11, libXext, libXfixes, libusb1, udev
 }:
 
 buildPythonApplication rec {
@@ -34,7 +34,7 @@ buildPythonApplication rec {
     substituteInPlace scc/device_monitor.py --replace "find_library('bluetooth')" "'libbluetooth.so.3'"
   '';
 
-  LD_LIBRARY_PATH = lib.makeLibraryPath [ libX11 libXext libXfixes libusb1 libudev bluez ];
+  LD_LIBRARY_PATH = lib.makeLibraryPath [ libX11 libXext libXfixes libusb1 udev bluez ];
 
   preFixup = ''
     gappsWrapperArgs+=(--prefix LD_LIBRARY_PATH : "$LD_LIBRARY_PATH")
diff --git a/pkgs/misc/emulators/yabause/0001-Fixes-for-Qt-5.11-upgrade.patch b/pkgs/misc/emulators/yabause/0001-Fixes-for-Qt-5.11-upgrade.patch
new file mode 100644
index 000000000000..43539ef4ca58
--- /dev/null
+++ b/pkgs/misc/emulators/yabause/0001-Fixes-for-Qt-5.11-upgrade.patch
@@ -0,0 +1,67 @@
+From 3140afd6fb7dad7a25296526a71b005fb9eae048 Mon Sep 17 00:00:00 2001
+From: Samuel Dionne-Riel <samuel@dionne-riel.com>
+Date: Sat, 8 Sep 2018 00:44:08 -0400
+Subject: [PATCH] Fixes for Qt 5.11 upgrade
+
+---
+ src/qt/ui/UICheatRaw.cpp | 2 --
+ src/qt/ui/UICheatRaw.h   | 2 +-
+ src/qt/ui/UICheats.cpp   | 2 ++
+ src/qt/ui/UIHexInput.h   | 2 ++
+ 4 files changed, 5 insertions(+), 3 deletions(-)
+
+diff --git a/src/qt/ui/UICheatRaw.cpp b/src/qt/ui/UICheatRaw.cpp
+index 4ad82d77..3f78486b 100755
+--- a/src/qt/ui/UICheatRaw.cpp
++++ b/src/qt/ui/UICheatRaw.cpp
+@@ -20,8 +20,6 @@
+ #include "UIHexInput.h"

+ #include "../QtYabause.h"

+ 

+-#include <QButtonGroup>

+-

+ UICheatRaw::UICheatRaw( QWidget* p )

+ 	: QDialog( p )

+ {

+diff --git a/src/qt/ui/UICheatRaw.h b/src/qt/ui/UICheatRaw.h
+index d97b429d..20318c67 100755
+--- a/src/qt/ui/UICheatRaw.h
++++ b/src/qt/ui/UICheatRaw.h
+@@ -21,7 +21,7 @@
+ 

+ #include "ui_UICheatRaw.h"

+ 

+-class QButtonGroup;

++#include <QButtonGroup>

+ 

+ class UICheatRaw : public QDialog, public Ui::UICheatRaw

+ {

+diff --git a/src/qt/ui/UICheats.cpp b/src/qt/ui/UICheats.cpp
+index c6027972..44d341c3 100755
+--- a/src/qt/ui/UICheats.cpp
++++ b/src/qt/ui/UICheats.cpp
+@@ -21,6 +21,8 @@
+ #include "UICheatRaw.h"
+ #include "../CommonDialogs.h"
+ 
++#include <QButtonGroup>
++
+ UICheats::UICheats( QWidget* p )
+ 	: QDialog( p )
+ {
+diff --git a/src/qt/ui/UIHexInput.h b/src/qt/ui/UIHexInput.h
+index f333b016..4bd8aed4 100644
+--- a/src/qt/ui/UIHexInput.h
++++ b/src/qt/ui/UIHexInput.h
+@@ -22,6 +22,8 @@
+ #include "ui_UIHexInput.h"

+ #include "../QtYabause.h"

+ 

++#include <QValidator>

++

+ class HexValidator : public QValidator

+ {

+    Q_OBJECT

+-- 
+2.16.4
+
diff --git a/pkgs/misc/emulators/yabause/default.nix b/pkgs/misc/emulators/yabause/default.nix
index e7237fd4454c..a2d462fd990e 100644
--- a/pkgs/misc/emulators/yabause/default.nix
+++ b/pkgs/misc/emulators/yabause/default.nix
@@ -1,21 +1,24 @@
-{ stdenv, fetchurl, cmake, pkgconfig, qtbase, libGLU_combined
+{ stdenv, fetchurl, cmake, pkgconfig, qtbase, qt5, libGLU_combined
 , freeglut ? null, openal ? null, SDL2 ? null }:
 
 stdenv.mkDerivation rec {
   name = "yabause-${version}";
-  # 0.9.15 only works with OpenGL 3.2 or later:
-  # https://github.com/Yabause/yabause/issues/349
-  version = "0.9.14";
+  version = "0.9.15";
 
   src = fetchurl {
     url = "https://download.tuxfamily.org/yabause/releases/${version}/${name}.tar.gz";
-    sha256 = "0nkpvnr599g0i2mf19sjvw5m0rrvixdgz2snav4qwvzgfc435rkm";
+    sha256 = "1cn2rjjb7d9pkr4g5bqz55vd4pzyb7hg94cfmixjkzzkw0zw8d23";
   };
 
   nativeBuildInputs = [ cmake pkgconfig ];
-  buildInputs = [ qtbase libGLU_combined freeglut openal SDL2 ];
+  buildInputs = [ qtbase qt5.qtmultimedia libGLU_combined freeglut openal SDL2 ];
 
-  patches = [ ./emu-compatibility.com.patch ./linkage-rwx-linux-elf.patch ];
+  patches = [
+    ./linkage-rwx-linux-elf.patch
+    # Fixes derived from
+    # https://github.com/Yabause/yabause/commit/06a816c032c6f7fd79ced6e594dd4b33571a0e73
+    ./0001-Fixes-for-Qt-5.11-upgrade.patch
+  ];
 
   cmakeFlags = [
     "-DYAB_NETWORK=ON"
diff --git a/pkgs/misc/emulators/yabause/emu-compatibility.com.patch b/pkgs/misc/emulators/yabause/emu-compatibility.com.patch
deleted file mode 100644
index 5f13d2ee1837..000000000000
--- a/pkgs/misc/emulators/yabause/emu-compatibility.com.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/src/qt/ui/UIYabause.ui	2017-09-28 13:23:04.636014753 +0000
-+++ b/src/qt/ui/UIYabause.ui	2017-09-28 13:23:21.945763537 +0000
-@@ -230,7 +230,6 @@
-     <property name="title">
-      <string>&amp;Help</string>
-     </property>
--    <addaction name="aHelpEmuCompatibility"/>
-     <addaction name="aHelpAbout"/>
-    </widget>
-    <widget class="QMenu" name="mTools">
diff --git a/pkgs/misc/ghostscript/default.nix b/pkgs/misc/ghostscript/default.nix
index 5839b076c0de..54ad32622756 100644
--- a/pkgs/misc/ghostscript/default.nix
+++ b/pkgs/misc/ghostscript/default.nix
@@ -1,5 +1,5 @@
 { stdenv, lib, fetchurl, pkgconfig, zlib, expat, openssl, autoconf
-, libjpeg, libpng, libtiff, freetype, fontconfig, lcms2, libpaper, jbig2dec
+, libjpeg, libpng, libtiff, freetype, fontconfig, libpaper, jbig2dec
 , libiconv, ijs
 , x11Support ? false, xlibsWrapper ? null
 , cupsSupport ? false, cups ? null
@@ -9,8 +9,9 @@ assert x11Support -> xlibsWrapper != null;
 assert cupsSupport -> cups != null;
 let
   version = "9.${ver_min}";
-  ver_min = "22";
-  sha256 = "1fyi4yvdj39bjgs10klr31cda1fbx1ar7a7b7yz7v68gykk65y61";
+  ver_min = "24";
+  # ghostscript*.tar.xz in https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs9xx/SHA512SUMS
+  sha512 = "dcbeeb5d3dd5ccaf949dc4be68363c50b1d35e647be4790a50b1bbf5f259f1d9181f705be27bfca708c4d270f945ff4b24e3db10b57800c1ee0ea7a40931c547";
 
   fonts = stdenv.mkDerivation {
     name = "ghostscript-fonts";
@@ -39,9 +40,14 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs9${ver_min}/${name}.tar.xz";
-    inherit sha256;
+    inherit sha512;
   };
 
+  patches = [
+    ./urw-font-files.patch
+    ./doc-no-ref.diff
+  ];
+
   outputs = [ "out" "man" "doc" ];
 
   enableParallelBuilding = true;
@@ -49,16 +55,13 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ pkgconfig autoconf ];
   buildInputs =
     [ zlib expat openssl
-      libjpeg libpng libtiff freetype fontconfig lcms2 libpaper jbig2dec
+      libjpeg libpng libtiff freetype fontconfig libpaper jbig2dec
       libiconv ijs
     ]
     ++ lib.optional x11Support xlibsWrapper
     ++ lib.optional cupsSupport cups
     ;
-
-  patches = [
-    ./urw-font-files.patch
-  ];
+  # No lcms2; upstream "is in process of forking it" and thus won't use one from a library.
 
   preConfigure = ''
     # requires in-tree (heavily patched) openjpeg
@@ -89,8 +92,8 @@ stdenv.mkDerivation rec {
 
     cp -r Resource "$out/share/ghostscript/${version}"
 
-    mkdir -p "$doc/share/ghostscript/${version}"
-    mv "$out/share/ghostscript/${version}"/{doc,examples} "$doc/share/ghostscript/${version}/"
+    mkdir -p "$doc/share/doc/ghostscript"
+    mv "$doc/share/doc/${version}" "$doc/share/doc/ghostscript/"
 
     ln -s "${fonts}" "$out/share/ghostscript/fonts"
   '' + stdenv.lib.optionalString stdenv.isDarwin ''
diff --git a/pkgs/misc/ghostscript/doc-no-ref.diff b/pkgs/misc/ghostscript/doc-no-ref.diff
new file mode 100644
index 000000000000..7380ba2f9953
--- /dev/null
+++ b/pkgs/misc/ghostscript/doc-no-ref.diff
@@ -0,0 +1,7 @@
+Kill the reference from libgc.so to the documentation directory.
+It's bad for closure, and probably not really good for anything.
+--- a/base/gs.mak
++++ b/base/gs.mak
+@@ -538,1 +538,1 @@
+-	$(EXP)$(ECHOGS_XE) -a $(gconfigd_h) -x 23 define -s -u GS_DOCDIR -x 2022 $(GS_DOCDIR) -x 22
++	$(EXP)$(ECHOGS_XE) -a $(gconfigd_h) -x 23 define -s -u GS_DOCDIR -x 2022 /no-path-to-docs -x 22
diff --git a/pkgs/misc/scrcpy/default.nix b/pkgs/misc/scrcpy/default.nix
index 49c1178c83a2..b446363d7f3b 100644
--- a/pkgs/misc/scrcpy/default.nix
+++ b/pkgs/misc/scrcpy/default.nix
@@ -9,10 +9,10 @@
 }:
 
 let
-  version = "1.2";
+  version = "1.3";
   prebuilt_server = fetchurl {
     url = "https://github.com/Genymobile/scrcpy/releases/download/v${version}/scrcpy-server-v${version}.jar";
-    sha256 = "0q0zyqw7y33r9ybjp8ay6yac7ifca1lq14pjvw6x78zxs976affb";
+    sha256 = "1ha04wfmghblwr9ajfl96cswacfgrk0b7klq2ixfvw1kgwhmm6hg";
   };
 in
 stdenv.mkDerivation rec {
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
     owner = "Genymobile";
     repo = "scrcpy";
     rev = "v${version}";
-    sha256 = "01zw6h6mz2cwqfh9lwypm8pbfx9m9df91l1fq1i0f1d8v49x8wqc";
+    sha256 = "02szi8w3w0lacyz42hlayxififi863qpm63yg9qir3jcl2vs7vdk";
   };
 
   nativeBuildInputs = [ makeWrapper meson ninja pkgconfig ];
diff --git a/pkgs/misc/screensavers/alock/default.nix b/pkgs/misc/screensavers/alock/default.nix
index 596668b0ce96..59d5a146e165 100644
--- a/pkgs/misc/screensavers/alock/default.nix
+++ b/pkgs/misc/screensavers/alock/default.nix
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
       xscreensaver and never will. It's just for locking the current
       X session.
     '';
-    platforms = platforms.unix; # Cygwin had problems at one point
+    platforms = platforms.linux;
     maintainers = with maintainers; [ ftrvxmtrx chris-martin ];
     license = licenses.mit;
   };
diff --git a/pkgs/misc/talkfilters/default.nix b/pkgs/misc/talkfilters/default.nix
index 4b3158b7a3d5..8154e417e065 100644
--- a/pkgs/misc/talkfilters/default.nix
+++ b/pkgs/misc/talkfilters/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Converts English text into text that mimics a stereotyped or humorous dialect";
-    homepage = "http://http://www.hyperrealm.com/${pname}";
+    homepage = http://www.hyperrealm.com/talkfilters/talkfilters.html;
     license = stdenv.lib.licenses.gpl2;
     maintainers = with stdenv.lib.maintainers; [ ikervagyok ];
     platforms = with stdenv.lib.platforms; unix;
diff --git a/pkgs/misc/themes/adapta/default.nix b/pkgs/misc/themes/adapta/default.nix
index 0410af974f61..09fc7a4b4475 100644
--- a/pkgs/misc/themes/adapta/default.nix
+++ b/pkgs/misc/themes/adapta/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "adapta-gtk-theme-${version}";
-  version = "3.94.0.92";
+  version = "3.94.0.132";
 
   src = fetchFromGitHub {
     owner = "adapta-project";
     repo = "adapta-gtk-theme";
     rev = version;
-    sha256 = "18gdsk07954wxsgr8i9kkpc8p6wvdr039lszz8hcplf2134bmb96";
+    sha256 = "11j4mpbw8x2vg0w740v8q3rnwannw2zhp60aj8kirqlgz76lbadl";
   };
 
   preferLocalBuild = true;
diff --git a/pkgs/misc/themes/greybird/default.nix b/pkgs/misc/themes/greybird/default.nix
index 1221c6606872..bb782059ff6b 100644
--- a/pkgs/misc/themes/greybird/default.nix
+++ b/pkgs/misc/themes/greybird/default.nix
@@ -1,26 +1,39 @@
-{ stdenv, fetchFromGitHub, autoreconfHook, sass, glib, libxml2, gdk_pixbuf, librsvg, gtk-engine-murrine }:
+{ stdenv, fetchFromGitHub, autoreconfHook, which, sassc, glib, libxml2, gdk_pixbuf, librsvg, gtk-engine-murrine }:
 
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "greybird";
-  version = "3.22.7";
+  version = "3.22.9";
 
   src = fetchFromGitHub {
     owner = "shimmerproject";
     repo = "${pname}";
     rev = "v${version}";
-    sha256 = "118k0bb780h54i2vn5my5r6vbkk134899xwp4aigw5a289xzryvb";
+    sha256 = "0mixs47v0jvqpmfsv0k0d0l24y4w35krah8mgnwamr0b8spmazz3";
   };
 
-  nativeBuildInputs = [ autoreconfHook sass glib libxml2 gdk_pixbuf librsvg ];
+  nativeBuildInputs = [
+    autoreconfHook
+    which
+    sassc
+    glib
+    libxml2
+  ];
 
-  propagatedUserEnvPkgs = [ gtk-engine-murrine ];
+  buildInputs = [
+    gdk_pixbuf
+    librsvg
+  ];
 
-  meta = {
-    description = "Grey and blue theme (Gtk, Xfce, Emerald, Metacity, Mutter, Unity)";
+  propagatedUserEnvPkgs = [
+    gtk-engine-murrine
+  ];
+
+  meta = with stdenv.lib; {
+    description = "Grey and blue theme from the Shimmer Project for GTK+-based environments";
     homepage = https://github.com/shimmerproject/Greybird;
-    license = with stdenv.lib.licenses; [ gpl2Plus cc-by-nc-sa-30 ];
-    platforms = stdenv.lib.platforms.linux;
-    maintainers = [ stdenv.lib.maintainers.romildo ];
+    license = with licenses; [ gpl2Plus cc-by-nc-sa-30 ];
+    platforms = platforms.linux;
+    maintainers = [ maintainers.romildo ];
   };
 }
diff --git a/pkgs/misc/themes/matcha/default.nix b/pkgs/misc/themes/matcha/default.nix
new file mode 100644
index 000000000000..264d171292d2
--- /dev/null
+++ b/pkgs/misc/themes/matcha/default.nix
@@ -0,0 +1,32 @@
+{ stdenv, fetchFromGitHub, gdk_pixbuf, librsvg, gtk-engine-murrine }:
+
+stdenv.mkDerivation rec {
+  name = "matcha-${version}";
+  version = "2018-09-14";
+
+  src = fetchFromGitHub {
+    owner = "vinceliuice";
+    repo = "matcha";
+    rev = "fe35259742b5ae007ab17d46d21acad5754477b9";
+    sha256 = "1qwb8l1xfx9ca2y9gcsckxikijz1ij28dirvpqvhbbyn1m8i9hwd";
+  };
+
+  buildInputs = [ gdk_pixbuf librsvg ];
+
+  propagatedUserEnvPkgs = [ gtk-engine-murrine ];
+
+  installPhase = ''
+    patchShebangs .
+    substituteInPlace Install --replace '$HOME/.themes' "$out/share/themes"
+    ./Install
+    install -D -t $out/share/gtksourceview-3.0/styles src/extra/gedit/matcha.xml
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A stylish Design theme for GTK based desktop environments";
+    homepage = https://vinceliuice.github.io/theme-matcha;
+    license = licenses.gpl3;
+    platforms = platforms.unix;
+    maintainers = [ maintainers.romildo ];
+  };
+}
diff --git a/pkgs/misc/themes/numix/default.nix b/pkgs/misc/themes/numix/default.nix
index f7b5f3d91af4..4fb412481095 100644
--- a/pkgs/misc/themes/numix/default.nix
+++ b/pkgs/misc/themes/numix/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Modern flat theme with a combination of light and dark elements (GNOME, Unity, Xfce and Openbox)";
-    homepage = https://numixproject.org;
+    homepage = https://numixproject.github.io;
     license = stdenv.lib.licenses.gpl3Plus;
     platforms = stdenv.lib.platforms.all;
     maintainers = [ stdenv.lib.maintainers.romildo ];
diff --git a/pkgs/misc/themes/sierra/default.nix b/pkgs/misc/themes/sierra/default.nix
new file mode 100644
index 000000000000..057b96febf3a
--- /dev/null
+++ b/pkgs/misc/themes/sierra/default.nix
@@ -0,0 +1,33 @@
+{ stdenv, fetchFromGitHub, libxml2, gdk_pixbuf, librsvg, gtk-engine-murrine }:
+
+stdenv.mkDerivation rec {
+  name = "sierra-gtk-theme-${version}";
+  version = "2018-09-14";
+
+  src = fetchFromGitHub {
+    owner = "vinceliuice";
+    repo = "sierra-gtk-theme";
+    rev = "4c07f9e4978ab2d87ce0f8d4a5d60da21784172c";
+    sha256 = "0mp5v462wbjq157hfnqzd8sw374mc611kpk92is2c3qhvj5qb6qd";
+  };
+
+  nativeBuildInputs = [ libxml2 ];
+
+  buildInputs = [ gdk_pixbuf librsvg ];
+
+  propagatedUserEnvPkgs = [ gtk-engine-murrine ];
+
+  installPhase = ''
+    patchShebangs .
+    mkdir -p $out/share/themes
+    name= ./install.sh --dest $out/share/themes
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A Mac OSX like theme for GTK based desktop environments";
+    homepage = https://github.com/vinceliuice/Sierra-gtk-theme;
+    license = licenses.gpl3;
+    platforms = platforms.unix;
+    maintainers = [ maintainers.romildo ];
+  };
+}
diff --git a/pkgs/misc/uboot/default.nix b/pkgs/misc/uboot/default.nix
index 2bf5274eeb46..be770b634a30 100644
--- a/pkgs/misc/uboot/default.nix
+++ b/pkgs/misc/uboot/default.nix
@@ -14,11 +14,11 @@ let
            stdenv.mkDerivation (rec {
 
     name = "uboot-${defconfig}-${version}";
-    version = "2018.07";
+    version = "2018.09";
 
     src = fetchurl {
       url = "ftp://ftp.denx.de/pub/u-boot/u-boot-${version}.tar.bz2";
-      sha256 = "1m7nw64mxflpc6sqvnz2kb5fxfkb4mrpy8b1wi15dcwipj4dy44z";
+      sha256 = "0s122kyz1svvs2yjzj4j9qravl3ra4vn0fjqgski7rlczqyg56w3";
     };
 
     patches = [
diff --git a/pkgs/misc/vim-plugins/default.nix b/pkgs/misc/vim-plugins/default.nix
index d251b2da45c6..e68ccacfb426 100644
--- a/pkgs/misc/vim-plugins/default.nix
+++ b/pkgs/misc/vim-plugins/default.nix
@@ -1,5 +1,6 @@
 # TODO check that no license information gets lost
-{ config, lib, stdenv, python, cmake, vim, vimUtils, ruby
+{ callPackage, config, lib, stdenv
+, python, cmake, vim, vimUtils, ruby
 , which, fetchgit, llvmPackages, rustPlatform
 , xkb_switch, fzf, skim
 , python3, boost, icu, ncurses
@@ -16,43 +17,24 @@ let
 
   inherit (vimUtils.override {inherit vim;}) buildVimPluginFrom2Nix;
 
+  generated = callPackage ./generated.nix {
+    inherit buildVimPluginFrom2Nix;
+  };
 
 # TL;DR
 # * Add your plugin to ./vim-plugin-names
-#   * sort -df ./vim-plugin-names > sorted && mv sorted vim-plugin-names
-# * Regenerate via `nix-shell -I nixpkgs=/path/to/your/local/fork -p vimPlugins.pluginnames2nix --command "vim-plugin-names-to-nix +silent +'x! result'"`
-# Note: pluginnames2nix will fetch any plugins in the file; to speed up the process,
-#       update ./vim-plugin-names to contain only plugins which need generation
-# Copy the generated expression(s) into this file from the ./result file.
-# If plugin is complicated then make changes to ./vim2nix/additional-nix-code
-
-# This attrs contains two sections:
-# The first contains plugins added manually, the second contains plugins
-# generated by call nix#ExportPluginsForNix.
-# Documentation & usage see vim-utils.nix.
-# attribute names should be the same as used by vim-pi to make dependency
-# resolution work
-self = rec {
-  # This is not a plugin, it provides bin/vim-open-buffer-with-plugins-derivations
-  # which recreates this the following derivations based on ./vim-plugin-names
-  pluginnames2nix = vimUtils.pluginnames2Nix {
-    name = "vim-plugin-names-to-nix";
-    namefiles = [./vim-plugin-names];
-  };
-
-  # Section I
-  vim-addon-vim2nix = vim2nix;
-
-  vim2nix = buildVimPluginFrom2Nix { # use it to update plugins
+# * sort -udf ./vim-plugin-names > sorted && mv sorted vim-plugin-names
+# * run ./update.py
+#
+# If additional modifications to the build process are required,
+# use add an override to this file.
+self = generated // (with generated; {
+  vim2nix = buildVimPluginFrom2Nix {
     name = "vim2nix";
     src = ./vim2nix;
     dependencies = ["vim-addon-manager"];
   };
 
-
-  # Section II
-  # Update with vimUtils.vimPlugins.pluginnames2Nix command
-
   fzfWrapper = buildVimPluginFrom2Nix {
     name = fzf.name;
     src = fzf.src;
@@ -68,14 +50,14 @@ self = rec {
   LanguageClient-neovim = let
     LanguageClient-neovim-src = fetchgit {
       url = "https://github.com/autozimu/LanguageClient-neovim";
-      rev = "5015aa164dc9ad96a0f5fbadaf92a888d16bc0d9";
-      sha256 = "1b3916al2y4hxmmlhqxw4cdliyd42xahc7wmgm8yq1gbvzbhdafg";
+      rev = "59f0299e8f7d7edd0653b5fc005eec74c4bf4aba";
+      sha256 = "0x6729w7v3bxlpvm8jz1ybn23qa0zqfgxl88q2j0bbs6rvp0w1jq";
     };
     LanguageClient-neovim-bin = rustPlatform.buildRustPackage {
       name = "LanguageClient-neovim-bin";
       src = LanguageClient-neovim-src;
 
-      cargoSha256 = "1vafyi650qdaq1f7fc8d4nzrv1i6iz28fs5z66hsnz4xkwb3qq9w";
+      cargoSha256 = "1afmz14j7ma2nrsx0njcqbh2wa430dr10hds78c031286ppgwjls";
       buildInputs = stdenv.lib.optionals stdenv.isDarwin [ CoreServices ];
 
       # FIXME: Use impure version of CoreFoundation because of missing symbols.
@@ -85,7 +67,7 @@ self = rec {
       '';
     };
   in buildVimPluginFrom2Nix {
-    name = "LanguageClient-neovim-2018-06-12";
+    name = "LanguageClient-neovim-2018-09-07";
     src = LanguageClient-neovim-src;
 
     dependencies = [];
@@ -108,328 +90,7 @@ self = rec {
     dependencies = [];
   };
 
-  # missing dependency, using additional-nix-code results in an invalid expression
-  vimshell-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vimshell-vim-2018-06-02";
-    src = fetchgit {
-      url = "https://github.com/shougo/vimshell.vim";
-      rev = "03bf7673a5098918a533000d67dca97546695237";
-      sha256 = "1ckxjap9kz8skbjchg561sqyd5y5qwacg8mabmniy78qa7i3qdzi";
-    };
-    dependencies = [ "vimproc-vim" ];
-  };
-
-  # --- generated packages bellow this line ---
-
-  vim-auto-save = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-auto-save-2017-11-08";
-    src = fetchgit {
-      url = "https://github.com/907th/vim-auto-save";
-      rev = "66643afb55a1fcd3a9b4336f868f58da45bff397";
-      sha256 = "1qnsj520j2hm6znpqpdqmz11vw45avgj8g9djx3alqbnab8ryw0p";
-    };
-    dependencies = [];
-
-  };
-
-  vim-autoformat = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-autoformat-2018-05-28";
-    src = fetchgit {
-      url = "https://github.com/Chiel92/vim-autoformat";
-      rev = "3c50ddb50635f7899b4339a64bc02333cdd24a4b";
-      sha256 = "1zw7b3zxgsmj149z238qx2palqysdywqgsxgj2z37kc8is8dpdpy";
-    };
-    dependencies = [];
-
-  };
-
-  ctrlp-py-matcher = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "ctrlp-py-matcher-2017-11-01";
-    src = fetchgit {
-      url = "https://github.com/FelikZ/ctrlp-py-matcher";
-      rev = "cf63fd546f1e80dd4db3db96afbeaad301d21f13";
-      sha256 = "0hs829x3vxv12y78hz5g4a5qpw05xf42dk0hxxk3ind77mnl1ir1";
-    };
-    dependencies = [];
-
-  };
-
-  ctrlp-cmatcher = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "ctrlp-cmatcher-2015-10-15";
-    src = fetchgit {
-      url = "https://github.com/JazzCore/ctrlp-cmatcher";
-      rev = "6c36334f106b6fd981d23e724e9a618734cab43a";
-      sha256 = "1573kd6xf3n8sxlz2j4zadai4rnc7k3s9c54648yfzickwn57d8q";
-    };
-    dependencies = [];
-    buildInputs = [ python ];
-    buildPhase = ''
-      patchShebangs .
-      ./install.sh
-    '';
-  };
-
-  julia-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "julia-vim-2018-07-01";
-    src = fetchgit {
-      url = "https://github.com/JuliaEditorSupport/julia-vim";
-      rev = "c49d4d39fa7f54387ec20b8bbf006700b1e01fe2";
-      sha256 = "14wib4768vi7681iclihlj94dlqq1apkynma8n7p9nh3jfzd4d06";
-    };
-    dependencies = [];
-
-  };
-
-  zeavim-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "zeavim-vim-2018-03-22";
-    src = fetchgit {
-      url = "https://github.com/KabbAmine/zeavim.vim";
-      rev = "6db8d84528d66ce6638db03c2864abfa8afa02aa";
-      sha256 = "1xw8d3ap6n31rh0a4413784sx4ki7wcz8qlwm2vf9in475vvznxj";
-    };
-    dependencies = [];
-
-  };
-
-  vim-nix = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-nix-2018-08-19";
-    src = fetchgit {
-      url = "https://github.com/LnL7/vim-nix";
-      rev = "ab3c4d52d08e9e8d2a0919e38f98ba25a2b8ad18";
-      sha256 = "1waan5vgba8qx3107hdrnmbnq5kr1n49q43p7m2g7wmj81v050yb";
-    };
-    dependencies = [];
-
-  };
-
-  vim-addon-actions = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-addon-actions-2018-01-18";
-    src = fetchgit {
-      url = "https://github.com/MarcWeber/vim-addon-actions";
-      rev = "540cae09832ba6abf9fc63c55781bf86584c33ac";
-      sha256 = "011w5k09i01r9x64j20qj0f7d057m9wki2m8l2wds47l57hr3vz6";
-    };
-    dependencies = ["vim-addon-mw-utils" "tlib"];
-
-  };
-
-  vim-addon-async = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-addon-async-2017-03-20";
-    src = fetchgit {
-      url = "https://github.com/MarcWeber/vim-addon-async";
-      rev = "eca316a4480f68c2cb62128f3187dc7b2002afde";
-      sha256 = "1lk8ma51dd0syi73vq5r4qk9cpy6cq3llizvh94hmxblfjpvrs7q";
-    };
-    dependencies = ["vim-addon-signs"];
-
-  };
-
-  vim-addon-background-cmd = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-addon-background-cmd-2015-12-11";
-    src = fetchgit {
-      url = "https://github.com/MarcWeber/vim-addon-background-cmd";
-      rev = "abf2abf339652d2bc79da81f9d131edfe2755f5a";
-      sha256 = "0csy68x686l3x5ancidxb5b6prg9k7ikybqzq3klx0gs5rmksfy4";
-    };
-    dependencies = ["vim-addon-mw-utils"];
-
-  };
-
-  vim-addon-commenting = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-addon-commenting-2013-06-10";
-    src = fetchgit {
-      url = "https://github.com/MarcWeber/vim-addon-commenting";
-      rev = "b7cf748ac1c9bf555cbd347589e3b7196030d20b";
-      sha256 = "0alak8h33vada2ckb0v06y82qlib5mhyc2yswlv1rqh8ypzhq3mc";
-    };
-    dependencies = [];
-
-  };
-
-  vim-addon-completion = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-addon-completion-2015-02-10";
-    src = fetchgit {
-      url = "https://github.com/MarcWeber/vim-addon-completion";
-      rev = "021c449a5ce1ce4ac0af5955e05b0279c1cc0e75";
-      sha256 = "1ld059y2qwlc5bdfjm2p314s1qh31lxs54g944pw49r46s5nlslr";
-    };
-    dependencies = ["tlib"];
-
-  };
-
-  vim-addon-errorformats = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-addon-errorformats-2014-11-05";
-    src = fetchgit {
-      url = "https://github.com/MarcWeber/vim-addon-errorformats";
-      rev = "dcbb203ad5f56e47e75fdee35bc92e2ba69e1d28";
-      sha256 = "159zqm69fxbxcv3b2y99g57bf20qrzsijcvb5rzy2njxah3049m1";
-    };
-    dependencies = [];
-
-  };
-
-  vim-addon-goto-thing-at-cursor = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-addon-goto-thing-at-cursor-2012-01-11";
-    src = fetchgit {
-      url = "https://github.com/MarcWeber/vim-addon-goto-thing-at-cursor";
-      rev = "f052e094bdb351829bf72ae3435af9042e09a6e4";
-      sha256 = "1ksm2b0j80zn8sz2y227bpcx4jsv76lwgr2gpgy2drlyqhn2vlv0";
-    };
-    dependencies = ["tlib"];
-
-  };
-
-  vim-addon-local-vimrc = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-addon-local-vimrc-2015-03-19";
-    src = fetchgit {
-      url = "https://github.com/MarcWeber/vim-addon-local-vimrc";
-      rev = "6a27f95b35befa70cd0d049329cd0920566c764b";
-      sha256 = "0n8lwl1gyak149p7jpgm0qbmfj8hcg8hirx3dxdhizw0yc47ws7h";
-    };
-    dependencies = [];
-
-  };
-
-  vim-addon-manager = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-addon-manager-2017-05-07";
-    src = fetchgit {
-      url = "https://github.com/MarcWeber/vim-addon-manager";
-      rev = "2434225ae48e608c2b6ac86c8da1c62209da746f";
-      sha256 = "1fczkd05gir994614qmgscx131isr71bn0rwa6n3vgdbnhasz6bb";
-    };
-    dependencies = [];
-    buildInputs = stdenv.lib.optional stdenv.isDarwin Cocoa;
-  };
-
-  vim-addon-mru = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-addon-mru-2013-08-08";
-    src = fetchgit {
-      url = "https://github.com/MarcWeber/vim-addon-mru";
-      rev = "e41e39bd9d1bf78ccfd8d5e1bc05ae5e1026c2bb";
-      sha256 = "0q6rxr9nrp63kidr3m3c2z5sda4g813pzshg0scxkjr8dxwhzdqm";
-    };
-    dependencies = ["vim-addon-other" "vim-addon-mw-utils"];
-
-  };
-
-  vim-addon-mw-utils = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-addon-mw-utils-2018-03-09";
-    src = fetchgit {
-      url = "https://github.com/MarcWeber/vim-addon-mw-utils";
-      rev = "295862ba6be47ec3b11b6c85c10d982ffd9bc0b2";
-      sha256 = "0ylvhmx0cnj2x38plwqlq4pqyqyxxhf4s08hknnl7qhrr5kd533f";
-    };
-    dependencies = [];
-
-  };
-
-  vim-addon-nix = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-addon-nix-2017-09-11";
-    src = fetchgit {
-      url = "https://github.com/MarcWeber/vim-addon-nix";
-      rev = "3001a9db5f816dd7af11384f15415bddd146ef86";
-      sha256 = "195z2yz09wirpqjpsha8x7qcr9is1q8qph4j0svws6qbqrkh8ryy";
-    };
-    dependencies = ["vim-addon-completion" "vim-addon-goto-thing-at-cursor" "vim-addon-errorformats" "vim-addon-actions" "vim-addon-mw-utils" "tlib"];
-
-  };
-
-  vim-addon-other = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-addon-other-2014-07-15";
-    src = fetchgit {
-      url = "https://github.com/MarcWeber/vim-addon-other";
-      rev = "f78720c9cb5bf871cabb13c7cbf94378dbf0163b";
-      sha256 = "0cjz7mlyfkkncas4ss7rwxb0q38ls1qw1p15hac1imscscsvyjc6";
-    };
-    dependencies = ["vim-addon-actions" "vim-addon-mw-utils"];
-
-  };
-
-  vim-addon-php-manual = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-addon-php-manual-2015-01-01";
-    src = fetchgit {
-      url = "https://github.com/MarcWeber/vim-addon-php-manual";
-      rev = "5f9810dd1f6e9f36a45f637ae6260ccff09256ff";
-      sha256 = "1kc67f12wccqdza069b75lpcbqp4kv4r23i4mfz0ihwif5mfnhir";
-    };
-    dependencies = [];
-
-  };
-
-  vim-addon-signs = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-addon-signs-2013-04-19";
-    src = fetchgit {
-      url = "https://github.com/MarcWeber/vim-addon-signs";
-      rev = "17a49f293d18174ff09d1bfff5ba86e8eee8e8ae";
-      sha256 = "0i4gfp30hmw1vqjl6zxjrgkca3ikdkcnjmma2mncjmcr6f59kjzy";
-    };
-    dependencies = [];
-
-  };
-
-  vim-addon-sql = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-addon-sql-2017-02-11";
-    src = fetchgit {
-      url = "https://github.com/MarcWeber/vim-addon-sql";
-      rev = "048a139af36829fce670c8ff80d3aad927557ee6";
-      sha256 = "0ihm157sby6csdwsnw2gwh3jmm3prm1mxwgkx2hsfwlmpb1vwwm3";
-    };
-    dependencies = ["vim-addon-completion" "vim-addon-background-cmd" "tlib"];
-
-  };
-
-  vim-addon-syntax-checker = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-addon-syntax-checker-2017-06-26";
-    src = fetchgit {
-      url = "https://github.com/MarcWeber/vim-addon-syntax-checker";
-      rev = "739e5719b77c6aea3299c27fc1f4238ac54a8344";
-      sha256 = "1rcn1ps06156nyglvxg6m7pn3vhvmnv5ad6kidp59hggyr5332i9";
-    };
-    dependencies = ["vim-addon-mw-utils" "tlib"];
-
-  };
-
-  vim-addon-toggle-buffer = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-addon-toggle-buffer-2012-01-13";
-    src = fetchgit {
-      url = "https://github.com/MarcWeber/vim-addon-toggle-buffer";
-      rev = "a1b38b9c5709cba666ed2d84ef06548f675c6b0b";
-      sha256 = "1xq38kfdm36c34ln66znw841q797w5gm8bpq1x64bsf2h6n3ml03";
-    };
-    dependencies = ["vim-addon-mw-utils" "tlib"];
-
-  };
-
-  vim-addon-xdebug = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-addon-xdebug-2014-08-29";
-    src = fetchgit {
-      url = "https://github.com/MarcWeber/vim-addon-xdebug";
-      rev = "45f26407305b4ce6f8f5f37d2b5e6e4354104172";
-      sha256 = "1i64ppdfp2qqq7vw1jf160mj4ikc04v39iazdab83xmiqjsh8ixw";
-    };
-    dependencies = ["WebAPI" "vim-addon-mw-utils" "vim-addon-signs" "vim-addon-async"];
-
-  };
-
-  tsuquyomi = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "tsuquyomi-2018-07-04";
-    src = fetchgit {
-      url = "https://github.com/Quramy/tsuquyomi";
-      rev = "9247e0f1ad0e1ae7d350ad5b27ef92269955cc65";
-      sha256 = "09mihjiqg407n14gb4kr60fnyp3rpi18fr9nhnpg1ym2ly0nsa1l";
-    };
-    dependencies = [];
-
-  };
-
-  clang_complete = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "clang_complete-2018-01-18";
-    src = fetchgit {
-      url = "https://github.com/Rip-Rip/clang_complete";
-      rev = "0918788ea0b9dc4c753ffd162c95f890ae57a275";
-      sha256 = "19hf7xrx1lsvn5rhwmc0qc1qzpb365j1d0jzvihd99p0zkgzgj1p";
-    };
-    dependencies = [];
+  clang_complete = clang_complete.overrideAttrs(old: {
     # In addition to the arguments you pass to your compiler, you also need to
     # specify the path of the C++ std header (if you are using C++).
     # These usually implicitly set by cc-wrapper around clang (pkgs/build-support/cc-wrapper).
@@ -441,1591 +102,24 @@ self = rec {
       substituteInPlace "$out"/share/vim-plugins/clang_complete/plugin/clang_complete.vim \
         --replace "let g:clang_library_path = '' + "''" + ''" "let g:clang_library_path='${llvmPackages.clang.cc}/lib/libclang.so'"
     '';
-  };
-
-  riv-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "riv-vim-2018-06-21";
-    src = fetchgit {
-      url = "https://github.com/Rykka/riv.vim";
-      rev = "fb6d6f8c9d85128fd69c74f11bb7413addc002e8";
-      sha256 = "1mjp90lz6jf3w9j4h1sidz7kfxhi9hk27pdnvb0hrvxw0q3bj9ch";
-    };
-    dependencies = [];
-
-  };
-
-  ultisnips = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "ultisnips-2018-04-30";
-    src = fetchgit {
-      url = "https://github.com/SirVer/ultisnips";
-      rev = "6fdc3647f72e0a1f321ea6bd092ecd01f7c187ba";
-      sha256 = "1zp3xcmxk6cn38zmxxy5s2wnw9djskwkmspq2s9vqliyhprf9sy3";
-    };
-    dependencies = [];
-
-  };
-
-  vim-hoogle = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-hoogle-2018-03-04";
-    src = fetchgit {
-      url = "https://github.com/Twinside/vim-hoogle";
-      rev = "871d104c92e33cb238506f2805f1652561978cc8";
-      sha256 = "17qvi57g72ijgk7nczczli3kcphvdf625fzqbqcmqpsawgvfd07n";
-    };
-    dependencies = [];
-
-  };
-
-  vim-gitgutter = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-gitgutter-2018-07-06";
-    src = fetchgit {
-      url = "https://github.com/airblade/vim-gitgutter";
-      rev = "6076c9678643a8b2fc9973f16ec9efcd5dbe1aca";
-      sha256 = "1dyrll5rm61qdmzkym67hfyw80qnw10s1qrz9ryw3zvh1s2ad43l";
-    };
-    dependencies = [];
-
-  };
-
-  Spacegray-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "Spacegray-vim-2018-06-20";
-    src = fetchgit {
-      url = "https://github.com/ajh17/Spacegray.vim";
-      rev = "f9e5205319cbb5c598bbf02b16c3d05277817f81";
-      sha256 = "1s32zf75ybqs9jjjvqk5z4x9a6lr43gjbwlgw8k01qf4lsxkzkn9";
-    };
-    dependencies = [];
-
-  };
-
-  nerdtree-git-plugin = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "nerdtree-git-plugin-2017-03-12";
-    src = fetchgit {
-      url = "https://github.com/albfan/nerdtree-git-plugin";
-      rev = "d79a5d5a1b3bc5fab3ba94db44a8b2e5a211d61d";
-      sha256 = "0i77wijbr021zfv096ja15f5l52phvsd5gziqn1m3k60qkmb9gkj";
-    };
-    dependencies = [];
-
-  };
-
-  vim-colors-solarized = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-colors-solarized-2011-05-09";
-    src = fetchgit {
-      url = "https://github.com/altercation/vim-colors-solarized";
-      rev = "528a59f26d12278698bb946f8fb82a63711eec21";
-      sha256 = "05d3lmd1shyagvr3jygqghxd3k8a4vp32723fvxdm57fdrlyzcm1";
-    };
-    dependencies = [];
-
-  };
-
-  vim-closetag = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-closetag-2018-05-15";
-    src = fetchgit {
-      url = "https://github.com/alvan/vim-closetag";
-      rev = "17367f433e095a66a8a885ab628033ce2a635aa1";
-      sha256 = "11qkk1vsihw2sv1vdn94xjwm2p5hvisjv5h1arpdyxpnz45rs6vh";
-    };
-    dependencies = [];
+  });
 
-  };
-
-  ctrlp-z = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "ctrlp-z-2015-10-17";
-    src = fetchgit {
-      url = "https://github.com/amiorin/ctrlp-z";
-      rev = "d1a69ec623ce24b9a30fc8fe3cd468c322b03026";
-      sha256 = "16nsj1g8lqmyizlb5ijwhf4dsmh0xv1kwqq6jxvhaf55vfga82yl";
-    };
-    dependencies = [];
-
-  };
-
-  vim-logreview = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-logreview-2017-07-08";
-    src = fetchgit {
-      url = "https://github.com/andreshazard/vim-logreview";
-      rev = "b7b66ab338e904127d796af49235b8c29742f18f";
-      sha256 = "09lyymq0f3ybqdzhbpia7b0wcjbcyg5nkqd72qk8jkvc42da2af3";
-    };
-    dependencies = [];
-
-  };
-
-  peskcolor-vim-git = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "peskcolor-vim-git-2016-06-11";
-    src = fetchgit {
-      url = "https://github.com/andsild/peskcolor.vim.git";
-      rev = "cba4fc739bbebacd503158f6509d9c226651f363";
-      sha256 = "15hw3casr5y3ckgcn6aq8vhk6g2hym41w51nvgf34hbj9fx1nvkq";
-    };
-    dependencies = [];
-
-  };
-
-  flake8-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "flake8-vim-2017-02-17";
-    src = fetchgit {
-      url = "https://github.com/andviro/flake8-vim";
-      rev = "01c4af4c68f33b2b3785314bfbf5b3d8d1451795";
-      sha256 = "14rv0p1vx4njlplkc72gz7r8sy9vc6n8x9l00zc777x5zzrhgz3g";
-    };
-    dependencies = [];
-
-  };
-
-  vim-css-color = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-css-color-2018-03-06";
-    src = fetchgit {
-      url = "https://github.com/ap/vim-css-color";
-      rev = "afaacf50e65b7d30b170e70ee13c1518dce1e032";
-      sha256 = "1ck8qv3wfmc7rdddzd7zh2dsnb0rx69grmc0laz7n1358xg0i4vx";
-    };
-    dependencies = [];
-
-  };
-
-  vim-bazel = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-bazel-2018-01-10";
-    src = fetchgit {
-      url = "https://github.com/bazelbuild/vim-bazel";
-      rev = "ecafb17d5d1d3756e5ac0bd9f4812a450b8c91a3";
-      sha256 = "0ixhx9ssfygjy2v2ss02w28rcjxnvhj0caffj32cv3snwnpcz6fy";
-    };
-    dependencies = ["maktaba"];
-
-  };
-
-  clighter8 = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "clighter8-2018-07-25";
-    src = fetchgit {
-      url = "https://github.com/bbchung/clighter8";
-      rev = "839993b60dc4a19a58e4c7e7db1df04d911bb181";
-      sha256 = "01r92idbym2p1hiqszrprrl1hrqzz2yhzv8n08m8gycd7m227cwg";
-    };
-    dependencies = [];
+  clighter8 = clighter8.overrideAttrs(old: {
     preFixup = ''
       sed "/^let g:clighter8_libclang_path/s|')$|${llvmPackages.clang.cc}/lib/libclang.so')|" \
         -i "$out"/share/vim-plugins/clighter8/plugin/clighter8.vim
     '';
-  };
-
-  neomake = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "neomake-2018-07-23";
-    src = fetchgit {
-      url = "https://github.com/benekastah/neomake";
-      rev = "b24cac5f6aa1d8f8e8bcfae52ed255f277f4f163";
-      sha256 = "00hmbip0r3l0h6fk0bxs9rqbfj0vn246804s2s7shdjsvn6a3pa0";
-    };
-    dependencies = [];
-
-  };
-
-  vim-hdevtools = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-hdevtools-2017-03-11";
-    src = fetchgit {
-      url = "https://github.com/bitc/vim-hdevtools";
-      rev = "4ffdace7002915cb10d663a2c56386286c5b8e37";
-      sha256 = "0s7qd72962sc56j8xzpzikjs9k5s89d5p0j541abl8zm0mavmyka";
-    };
-    dependencies = [];
-
-  };
-
-  vim-trailing-whitespace = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-trailing-whitespace-2017-09-22";
-    src = fetchgit {
-      url = "https://github.com/bronson/vim-trailing-whitespace";
-      rev = "4c596548216b7c19971f8fc94e38ef1a2b55fee6";
-      sha256 = "0f1cpnp1nxb4i5hgymjn2yn3k1jwkqmlgw1g02sq270lavp2dzs9";
-    };
-    dependencies = [];
-
-  };
-
-  vim-toml = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-toml-2018-06-15";
-    src = fetchgit {
-      url = "https://github.com/cespare/vim-toml";
-      rev = "85ba8277a6e331a56fce920d62bfdacce5bc5a80";
-      sha256 = "0nnm4ja5j9gcsl9cv7ra30slrlpjpy4dsl0ykg0yhdq1vbby3m6n";
-    };
-    dependencies = [];
-
-  };
-
-  denite-extra = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "denite-extra-2018-07-19";
-    src = fetchgit {
-      url = "https://github.com/chemzqm/denite-extra";
-      rev = "10836562703ebfe6552204e63b9b4293236d6d0f";
-      sha256 = "1jq6wv6vhjpkd9xy8i6rjd0l69djvxg8395ylclr2dv21carx5z6";
-    };
-    dependencies = [];
-
-  };
-
-  denite-git = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "denite-git-2018-07-19";
-    src = fetchgit {
-      url = "https://github.com/chemzqm/denite-git";
-      rev = "edd2c202e05c3f84e31b94a841fef236b923d559";
-      sha256 = "0x8nf4x49859lgyi83vhqvpdhb1mxv55a9l8vbdflfagagj0gnzd";
-    };
-    dependencies = [];
-
-  };
-
-  concealedyank-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "concealedyank-vim-2013-03-24";
-    src = fetchgit {
-      url = "https://github.com/chikatoike/concealedyank.vim";
-      rev = "e7e65a395e0e6a266f3a808bc07441aa7d03ebbd";
-      sha256 = "0z7i8dmwfjh6mcrmgrxv3j86ic867617fas9mv4gqsrhhvrrkzsb";
-    };
-    dependencies = [];
-
-  };
-
-  sourcemap-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "sourcemap-vim-2012-09-19";
-    src = fetchgit {
-      url = "https://github.com/chikatoike/sourcemap.vim";
-      rev = "0dd82d40faea2fdb0771067f46c01deb41610ba1";
-      sha256 = "1gcgnynallz420911fdfm0ccbv3zs78p69nnh2ls1r4vlfp7g350";
-    };
-    dependencies = [];
-
-  };
-
-  CheckAttach = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "CheckAttach-2018-07-18";
-    src = fetchgit {
-      url = "https://github.com/chrisbra/CheckAttach";
-      rev = "0f1f2e78071d7f805a0a679955cb4486f692b753";
-      sha256 = "11skk275ijq8hwpp0zxsdgr08brq08v1syvyawck8vzrnqrq71sc";
-    };
-    dependencies = [];
-
-  };
-
-  csv-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "csv-vim-2018-06-24";
-    src = fetchgit {
-      url = "https://github.com/chrisbra/csv.vim";
-      rev = "918be3bd15920fd9bc79fca5e6870b8055742a1a";
-      sha256 = "01fhw55s5q23ny3n7ldg53n3raysr2wnnkpfybbba2wv55w5vpdy";
-    };
-    dependencies = [];
-
-  };
-
-  sparkup = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "sparkup-2012-06-10";
-    src = fetchgit {
-      url = "https://github.com/chrisgeo/sparkup";
-      rev = "6fbfceef890e705c47b42b27be743ffed6f9296e";
-      sha256 = "17jgpvl879ik53rr3razfnbpfx63mzpp1rlvxxjsvvrk4g45dssm";
-    };
-    dependencies = [];
-
-  };
-
-  base16-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "base16-vim-2018-05-24";
-    src = fetchgit {
-      url = "https://github.com/chriskempson/base16-vim";
-      rev = "fcce6bce6a2f4b14eea7ea388031c0aa65e4b67d";
-      sha256 = "0wi8k80v2brmxqbkk0lrvl4v2sslkjfwpvflm55b3n0ii8qy39nk";
-    };
-    dependencies = [];
-
-  };
-
-  vim-sort-motion = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-sort-motion-2018-07-15";
-    src = fetchgit {
-      url = "https://github.com/christoomey/vim-sort-motion";
-      rev = "49dfcabeee2bf3a85a6cc0774b35f687b6c9d0e5";
-      sha256 = "02v12iqy3gjhvh5aza6b6b3pfv2qkyyw83bxqjgbjj002f71ydkb";
-    };
-    dependencies = [];
-
-  };
-
-  vim-tmux-navigator = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-tmux-navigator-2018-07-13";
-    src = fetchgit {
-      url = "https://github.com/christoomey/vim-tmux-navigator";
-      rev = "18b775fbccde5ff02e516c014290650bb40e257d";
-      sha256 = "09v8amrdk8h4hsr9va8v9wdgzvj89z04y4j71l94rd7r6smxinbj";
-    };
-    dependencies = [];
-
-  };
-
-  spacevim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "spacevim-2018-03-29";
-    src = fetchgit {
-      url = "https://github.com/ctjhoa/spacevim";
-      rev = "30142a518ba77feb22791b5cb2387d88b70c58f2";
-      sha256 = "0m389cnpg17ca8s7vb9yrs40sxb56zg32lcpilnd63zfi7awgscg";
-    };
-    dependencies = [];
-
-  };
-
-  ctrlp-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "ctrlp-vim-2018-06-28";
-    src = fetchgit {
-      url = "https://github.com/ctrlpvim/ctrlp.vim";
-      rev = "43cc73b8e7d4ab45f17118573eb81fd45704b989";
-      sha256 = "16jn9n6vavwiwh6l2av2i3livan72saaz0d0v8vmznrrs2ngi1gk";
-    };
-    dependencies = [];
-
-  };
-
-  vim2hs = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim2hs-2014-04-16";
-    src = fetchgit {
-      url = "https://github.com/dag/vim2hs";
-      rev = "f2afd55704bfe0a2d66e6b270d247e9b8a7b1664";
-      sha256 = "18lqrl3hqb6cmizc04bbnsh8j0g761w2q8wascbzzfw80dmxy36b";
-    };
-    dependencies = [];
-
-  };
-
-  quickfixstatus = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "quickfixstatus-2011-09-02";
-    src = fetchgit {
-      url = "https://github.com/dannyob/quickfixstatus";
-      rev = "fd3875b914fc51bbefefa8c4995588c088163053";
-      sha256 = "16vxhvyxq51y7wnx0c1fmdi2yb6kfr1pxijq65gxj8qwvbak2s3v";
-    };
-    dependencies = [];
-
-  };
-
-  agda-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "agda-vim-2018-05-23";
-    src = fetchgit {
-      url = "https://github.com/derekelkins/agda-vim";
-      rev = "24169e70c1dbd784349b1551b6a3753680d9bb87";
-      sha256 = "1bn2g89dvwccfl4ki07jb8iydb3d0s4rm7z5gv5q1bv3lccndax6";
-    };
-    dependencies = [];
-
-  };
-
-  vim-scala = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-scala-2017-11-10";
-    src = fetchgit {
-      url = "https://github.com/derekwyatt/vim-scala";
-      rev = "0b909e24f31d94552eafae610da0f31040c08f2b";
-      sha256 = "1lqqapimgjr7k4imr26ap0lgx6k4qjl5gmgb1knvh5kz100bsjl5";
-    };
-    dependencies = [];
-
-  };
-
-  vim-table-mode = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-table-mode-2018-05-16";
-    src = fetchgit {
-      url = "https://github.com/dhruvasagar/vim-table-mode";
-      rev = "5483e163bd0a67e729e0e8436315f33f9e126baf";
-      sha256 = "0mmpa7zhrj8mqf4931ldf6n9jlpfxc4kg8xdhqlp7srlnq4h8siw";
-    };
-    dependencies = [];
-
-  };
-
-  vim-jade = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-jade-2017-04-07";
-    src = fetchgit {
-      url = "https://github.com/digitaltoad/vim-jade";
-      rev = "ddc5592f8c36bf4bd915c16b38b8c76292c2b975";
-      sha256 = "069pha18g1nlzg44k742vjxm4zwjd1qjzhfllkr35qaiflvjm84y";
-    };
-    dependencies = [];
-
-  };
-
-  pony-vim-syntax = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "pony-vim-syntax-2017-09-26";
-    src = fetchgit {
-      url = "https://github.com/dleonard0/pony-vim-syntax";
-      rev = "caa34b3d7a15d9bfbfbb2f5944c85eb1eddcfafc";
-      sha256 = "0r2lv99hkm95dv8wy9rkrkcwz5wkmwggfwi5vakgw497l3a9jskr";
-    };
-    dependencies = [];
-
-  };
-
-  vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-2018-07-23";
-    src = fetchgit {
-      url = "https://github.com/dracula/vim";
-      rev = "d329d61c1752807059aef388c4e9629296760a35";
-      sha256 = "06f5jg194w1fzh4bfj7cbibn94a1zx987f8iiaylkqzj3h0fn3fm";
-    };
-    dependencies = [];
-
-  };
-
-  xptemplate = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "xptemplate-2017-12-06";
-    src = fetchgit {
-      url = "https://github.com/drmingdrmer/xptemplate";
-      rev = "74aac3aebaf9c67c12c21d6b25295b9bec9c93b3";
-      sha256 = "01yvas50hg7iwwrdh61407mc477byviccksgi0fkaz89p78bbd1p";
-    };
-    dependencies = [];
-
-  };
-
-  ghcmod-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "ghcmod-vim-2016-06-19";
-    src = fetchgit {
-      url = "https://github.com/eagletmt/ghcmod-vim";
-      rev = "1d192d13d68ab59f9f46497a0909bf24a7b7dfff";
-      sha256 = "0bzahgzagnf0a9zv86jhdf8nc3p0yfz9izv5n3lc8gc12cp47d0a";
-    };
-    dependencies = [];
-
-  };
-
-  neco-ghc = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "neco-ghc-2018-05-13";
-    src = fetchgit {
-      url = "https://github.com/eagletmt/neco-ghc";
-      rev = "682869aca5dd0bde71a09ba952acb59c543adf7d";
-      sha256 = "1v7ibi4fp99s4lswz3v0gf4i0h5i5gpj05xpsf4cixwj2zgh206h";
-    };
-    dependencies = [];
-
-  };
-
-  editorconfig-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "editorconfig-vim-2018-07-25";
-    src = fetchgit {
-      url = "https://github.com/editorconfig/editorconfig-vim";
-      rev = "2c3e5323609d97ad7bda6fc22ae1f7746caab3d4";
-      sha256 = "0a1nszrhxh9ixp5n47w89ijkvjk3rf29ypiz5blf4pnja39r336x";
-    };
-    dependencies = [];
-
-  };
-
-  vim-cute-python-git = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-cute-python-git-2016-04-04";
-    src = fetchgit {
-      url = "https://github.com/ehamberg/vim-cute-python.git";
-      rev = "d7a6163f794500447242df2bedbe20bd751b92da";
-      sha256 = "1jrfd6z84cdzn3yxdfp0xfxygscq7s8kbzxk37hf9cf5pl9ln0qf";
-    };
-    dependencies = [];
-
-  };
-
-  acp = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "acp-2013-02-05";
-    src = fetchgit {
-      url = "https://github.com/eikenb/acp";
-      rev = "5c627cec37d0d3b1670cb250d84e176e8b0c644e";
-      sha256 = "0h7s4nvxin7m2caka7g1hhlxj1bbiwsvw8s2lqwlh7nq43v23ghg";
-    };
-    dependencies = [];
-
-  };
-
-  vim-elixir = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-elixir-2018-05-25";
-    src = fetchgit {
-      url = "https://github.com/elixir-lang/vim-elixir";
-      rev = "b916c00a7cdb6099dbebb6096eab55794751e2b3";
-      sha256 = "1scg80j7kjjqfcswddwsig166zmipa9q6rm0kh8779i7qflgg4g0";
-    };
-    dependencies = [];
-
-  };
-
-  elm-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "elm-vim-2018-06-18";
-    src = fetchgit {
-      url = "https://github.com/elmcast/elm-vim";
-      rev = "e51e2e43ad617c26205a84453481d3ac152c8fec";
-      sha256 = "09bgfjnpa1s25x5wnxry9lmsly92s0mazn1sl0vg2wfgphf67m6b";
-    };
-    dependencies = [];
-
-  };
-
-  vim-json = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-json-2018-01-10";
-    src = fetchgit {
-      url = "https://github.com/elzr/vim-json";
-      rev = "3727f089410e23ae113be6222e8a08dd2613ecf2";
-      sha256 = "1c19pqrys45pzflj5jyrm4q6hcvs977lv6qsfvbnk7nm4skxrqp1";
-    };
-    dependencies = [];
-
-  };
-
-  vim-localvimrc = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-localvimrc-2018-07-23";
-    src = fetchgit {
-      url = "https://github.com/embear/vim-localvimrc";
-      rev = "a3cb22a68625e022df1da402361801cc817bcec5";
-      sha256 = "0n3fl4wh5bhppxwkpd69jmnck2js08dgzfxcpfqrvx22zr22m8kc";
-    };
-    dependencies = [];
-
-  };
-
-  vim-haskellConcealPlus = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-haskellConcealPlus-2016-05-13";
-    src = fetchgit {
-      url = "https://github.com/enomsg/vim-haskellConcealPlus";
-      rev = "81dfb51ff8e471fb1f30659a10daaf1bdd65fb03";
-      sha256 = "0vm76gxw62lkyxccrlnn8sblfl3d51svwfra9wfixq4h51jdggyr";
-    };
-    dependencies = [];
-
-  };
-
-  ensime-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "ensime-vim-2018-04-21";
-    src = fetchgit {
-      url = "https://github.com/ensime/ensime-vim";
-      rev = "634cce6eae10a31cd6eec259890bdcda326ee3c2";
-      sha256 = "03sr53680kcwxaa5xbqzdfbsgday3bkzja33wym49w9gjmlaa320";
-    };
-    dependencies = ["vimproc" "vimshell" "self" "forms"];
-    passthru.python3Dependencies = ps: with ps; [ sexpdata websocket_client ];
-  };
-
-  supertab = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "supertab-2017-11-14";
-    src = fetchgit {
-      url = "https://github.com/ervandew/supertab";
-      rev = "40fe711e088e2ab346738233dd5adbb1be355172";
-      sha256 = "0l5labq68kyprv63k1q35hz5ly0dd06mf2z202mccnix4mlxf0db";
-    };
-    dependencies = [];
-
-  };
-
-  YUNOcommit-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "YUNOcommit-vim-2014-11-26";
-    src = fetchgit {
-      url = "https://github.com/esneider/YUNOcommit.vim";
-      rev = "981082055a73ef076d7e27477874d2303153a448";
-      sha256 = "0mjc7fn405vcx1n7vadl98p5wgm6jxrlbdbkqgjq8f1m1ir81zab";
-    };
-    dependencies = [];
-
-  };
-
-  vim-lastplace = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-lastplace-2017-06-13";
-    src = fetchgit {
-      url = "https://github.com/farmergreg/vim-lastplace";
-      rev = "102b68348eff0d639ce88c5094dab0fdbe4f7c55";
-      sha256 = "1d0mjjyissjvl80wgmn7z1gsjs3fhk0vnmx84l9q7g04ql4l9pja";
-    };
-    dependencies = [];
-
-  };
-
-  vim-go = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-go-2018-07-22";
-    src = fetchgit {
-      url = "https://github.com/fatih/vim-go";
-      rev = "5e26ce6bfa9400f645aaa5898f802f46275b9585";
-      sha256 = "1m380n3sdsqydn5dbjj1cafslbr1426ihz1a7rxr980z5jd43hj1";
-    };
-    dependencies = [];
-
-  };
-
-  vim-isort = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-isort-2017-03-12";
-    src = fetchgit {
-      url = "https://github.com/fisadev/vim-isort";
-      rev = "65bd9fecd5412c8c127de86f8dcf6cfe4dd70fda";
-      sha256 = "0d9r2p557czrqhn3z35jsrzp3iw6n0vjhxcgkk6l0y79ni3dar1m";
-    };
-    dependencies = [];
-    postPatch = ''
-      substituteInPlace ftplugin/python_vimisort.vim \
-          --replace 'import vim' 'import vim; import sys; sys.path.append("${pythonPackages.isort}/${python.sitePackages}")'
-    '';
-  };
-
-  vim-colorschemes = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-colorschemes-2017-08-22";
-    src = fetchgit {
-      url = "https://github.com/flazz/vim-colorschemes";
-      rev = "eab315701f4627967fd62582eefc4e37a3745786";
-      sha256 = "12jfqfs6lqd6jijxrdx3k76bzxrh9517zwczb73qjaqbg286fh5k";
-    };
-    dependencies = [];
-
-  };
-
-  floobits-neovim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "floobits-neovim-2017-08-02";
-    src = fetchgit {
-      url = "https://github.com/floobits/floobits-neovim";
-      rev = "9ccd5a8d5d28261b9686717d61a32b756f38f189";
-      sha256 = "02njg49qz9bfzggpn7z5c7w1wa1k5hxly66904wizl601fa6c664";
-    };
-    dependencies = [];
-
-  };
-
-  psc-ide-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "psc-ide-vim-2018-03-11";
-    src = fetchgit {
-      url = "https://github.com/frigoeu/psc-ide-vim";
-      rev = "6d4a3cc27e9782b703f6dd61ef5fdf27054bac0f";
-      sha256 = "19w0cvrka3klxbh9z1yq873v92rhmxdj68bdnqxzwybf24hgsk9g";
-    };
-    dependencies = [];
-
-  };
-
-  vim-snipmate = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-snipmate-2017-04-20";
-    src = fetchgit {
-      url = "https://github.com/garbas/vim-snipmate";
-      rev = "a9802f2351910f64b70fb10b63651e6ff6b8125e";
-      sha256 = "1l7sc6lf66pkiy18aq9s3wk1dmvvvsy1063cc0bxich9xa8m34bj";
-    };
-    dependencies = ["vim-addon-mw-utils" "tlib"];
-
-  };
-
-  vundle = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vundle-2018-02-02";
-    src = fetchgit {
-      url = "https://github.com/gmarik/vundle";
-      rev = "9a38216a1c0c597f978d73547d37681fc689c90d";
-      sha256 = "1695glma8zf2lnp0w713sdvwqagf1s127p4i60114nk6gx5g5x2c";
-    };
-    dependencies = [];
-
-  };
-
-  csapprox = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "csapprox-2013-07-26";
-    src = fetchgit {
-      url = "https://github.com/godlygeek/csapprox";
-      rev = "7981dac51d8b6776985aa08cb7b5ee98ea7f2ddd";
-      sha256 = "08g4x6nnd6hkgm2daa5ihhz75pcdx3jzzv8rfjls80qajlhx5rf6";
-    };
-    dependencies = [];
-
-  };
-
-  tabular = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "tabular-2016-05-04";
-    src = fetchgit {
-      url = "https://github.com/godlygeek/tabular";
-      rev = "00e1e7fcdbc6d753e0bc8043e0d2546fa81bf367";
-      sha256 = "185jpisk9hamcwb6aiavdzjdbbigzdra8f4mgs98r9cm9j448xkz";
-    };
-    dependencies = [];
-
-  };
-
-  vim-codefmt = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-codefmt-2018-06-06";
-    src = fetchgit {
-      url = "https://github.com/google/vim-codefmt";
-      rev = "78f646545c4e1254fc413242e5c204a2dc79665d";
-      sha256 = "0ysnjsc7nybm374k039655y1wijkh8p2m0hsfxf9cxf79yjinyql";
-    };
-    dependencies = ["maktaba"];
-
-  };
-
-  vim-jsonnet = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-jsonnet-2018-04-10";
-    src = fetchgit {
-      url = "https://github.com/google/vim-jsonnet";
-      rev = "1425166887329363381194adc457b02b663b1354";
-      sha256 = "0kkpvp1r06l3glhgw4wv3ihqisjhs5m0x7mxgy388hy4r73fx08j";
-    };
-    dependencies = [];
-
-  };
-
-  vim-maktaba = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-maktaba-2018-05-06";
-    src = fetchgit {
-      url = "https://github.com/google/vim-maktaba";
-      rev = "ffdb1a5a9921f7fd722c84d0f60e166f9916b67d";
-      sha256 = "1cmhgd9xvx09l6ypks09gxqs1vad1bddinf4cx2jmd516bv8qss3";
-    };
-    dependencies = [];
-
-  };
-
-  gitv = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "gitv-2018-06-10";
-    src = fetchgit {
-      url = "https://github.com/gregsexton/gitv";
-      rev = "41e4ffdbdb02374412d03c5680906ebee84dd5a2";
-      sha256 = "1wfp3kkcvrccq0dqplg3ymyz9vdwn1c5wabh6mwfzbs2zx01vwcn";
-    };
-    dependencies = ["fugitive"];
-
-  };
-
-  xterm-color-table-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "xterm-color-table-vim-2013-12-31";
-    src = fetchgit {
-      url = "https://github.com/guns/xterm-color-table.vim";
-      rev = "9754e857e5f4fe1f8727106dcc682d21c29a51e4";
-      sha256 = "08a1d9428xwrjp40qgi34cb5fwgc239qf3agxl32k7bqbn08pq19";
-    };
-    dependencies = [];
-
-  };
-
-  vim-jsdoc = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-jsdoc-2018-05-05";
-    src = fetchgit {
-      url = "https://github.com/heavenshell/vim-jsdoc";
-      rev = "5ef086789f5ac431d1d5aab53e771f00f1c25503";
-      sha256 = "0f0dbcvbmha2nfadvf27crxkkxc1ps1inss5n66vy1p5bffv0bpm";
-    };
-    dependencies = [];
-
-  };
-
-  vim-leader-guide = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-leader-guide-2017-03-18";
-    src = fetchgit {
-      url = "https://github.com/hecal3/vim-leader-guide";
-      rev = "6ac8c663e65c9c0ded70417b84f66ee59457893e";
-      sha256 = "1hqha3ig40ls15bnb10xpbl91swn0gxqnhmz5frkvvdzj4wq55fw";
-    };
-    dependencies = [];
-
-  };
-
-  vim-snippets = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-snippets-2018-07-19";
-    src = fetchgit {
-      url = "https://github.com/honza/vim-snippets";
-      rev = "1143432afdb3a97b606b081700eead5b4f499d4d";
-      sha256 = "1z0pgpsv8y1zhxlm6w76wgd4wx378wbq44mvgxxfxi0mfvb6vywf";
-    };
-    dependencies = [];
-
-  };
-
-  idris-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "idris-vim-2017-12-04";
-    src = fetchgit {
-      url = "https://github.com/idris-hackers/idris-vim";
-      rev = "091ed6b267749927777423160eeab520109dd9c1";
-      sha256 = "1zibar2vxcmai0k37ricwnimfdv1adxfbbvz871rc4l6h3q85if1";
-    };
-    dependencies = [];
-
-  };
-
-  vim-SyntaxRange = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-SyntaxRange-2018-03-09";
-    src = fetchgit {
-      url = "https://github.com/inkarkat/vim-SyntaxRange";
-      rev = "dc33d8f84ebbf4c9fa03ce00b8adeb83e05249d3";
-      sha256 = "0nf0hkgl5fm0laxb5253br894259kz33zyiwxzrry6w3108alasr";
-    };
-    dependencies = [];
-
-  };
-
-  vim-extradite = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-extradite-2015-09-22";
-    src = fetchgit {
-      url = "https://github.com/int3/vim-extradite";
-      rev = "52326f6d333cdbb9e9c6d6772af87f4f39c00526";
-      sha256 = "0c89i0spvdm9vi65q15qcmsfmwa9rds2wmaq1kf6s7q7ywvs6w8i";
-    };
-    dependencies = [];
-
-  };
-
-  calendar-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "calendar-vim-2018-07-04";
-    src = fetchgit {
-      url = "https://github.com/itchyny/calendar.vim";
-      rev = "f27fcf52c8a516f55ede5cff468f0a3e4014ae1b";
-      sha256 = "07gg83bgj9c43jn66zlvyc1avqjyidb9cjwdv1ln3965zkl47b5r";
-    };
-    dependencies = [];
-
-  };
-
-  lightline-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "lightline-vim-2018-07-05";
-    src = fetchgit {
-      url = "https://github.com/itchyny/lightline.vim";
-      rev = "0532dff598abca9975d3f80128eaadadbf1d91d4";
-      sha256 = "1wvhl2wc2p4vqi7zzj7wdyq0cnbfq8s7g5ifcchj8f5s8c4h4lfc";
-    };
-    dependencies = [];
-
-  };
-
-  thumbnail-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "thumbnail-vim-2017-04-24";
-    src = fetchgit {
-      url = "https://github.com/itchyny/thumbnail.vim";
-      rev = "71cb5d48e59fc77149c1d1036ecd9e39f0b46a00";
-      sha256 = "0b25n28ri6n5rrvgfynv8rm5pzzxpnrnj1l3647pf2fjxd2z2rv5";
-    };
-    dependencies = [];
-
-  };
-
-  vim-cursorword = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-cursorword-2017-10-19";
-    src = fetchgit {
-      url = "https://github.com/itchyny/vim-cursorword";
-      rev = "4878d6185b99131c5f610cc6ad0e223439ac4601";
-      sha256 = "170nf0w7i5k3cr72dkvraq2p0lzsvb3cmdvslyz7cmxnz611n6bf";
-    };
-    dependencies = [];
-
-  };
-
-  vim-gitbranch = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-gitbranch-2017-05-28";
-    src = fetchgit {
-      url = "https://github.com/itchyny/vim-gitbranch";
-      rev = "8118dc1cdd387bd609852be4bf350360ce881193";
-      sha256 = "01gvd96mnzfc5s0951zzq122birg5svnximkldgb9kv5bmsnmh3j";
-    };
-    dependencies = [];
-
-  };
-
-  vim-ipython = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-ipython-2015-06-23";
-    src = fetchgit {
-      url = "https://github.com/ivanov/vim-ipython";
-      rev = "42499f094b805b90b683afa5009cee99abd0bb75";
-      sha256 = "10wpfvfs8yv1bvzra4d5zy5glp62gbalpayxx7mkalhr2ccppy3x";
-    };
-    dependencies = [];
-
-  };
-
-  tender-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "tender-vim-2017-03-14";
-    src = fetchgit {
-      url = "https://github.com/jacoborus/tender.vim";
-      rev = "6b0497a59233b3e67fb528a498069eb1d24743f9";
-      sha256 = "1iqijk7xq0g6p3j8jgzgrhqizw87fnfryx73iaqqx5iyq1k8i9mn";
-    };
-    dependencies = [];
-
-  };
-
-  vim-test-git = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-test-git-2018-07-10";
-    src = fetchgit {
-      url = "https://github.com/janko-m/vim-test.git";
-      rev = "e24477e81e91fe90c5d914849848027cb09a7c86";
-      sha256 = "1kkfzs0bmbg4kjips1jylrsd5rqd39ab2x2z1a64pjkx1fvl703b";
-    };
-    dependencies = [];
-
-  };
-
-  vim-hier = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-hier-2011-08-27";
-    src = fetchgit {
-      url = "https://github.com/jceb/vim-hier";
-      rev = "0b8c365263551a67404ebd7e528c55e17c1d3de7";
-      sha256 = "118pd9sx1bl9vfr89xrf536hfx4l162a43a1qpwpkqxzb9a3ca7n";
-    };
-    dependencies = [];
-    buildInputs = [ vim ];
-  };
-
-  vim-orgmode = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-orgmode-2018-07-25";
-    src = fetchgit {
-      url = "https://github.com/jceb/vim-orgmode";
-      rev = "35e94218c12a0c063b4b3a9b48e7867578e1e13c";
-      sha256 = "0j6zfqqysnky4z54413l87q7wxbskg0zb221zbz48ry4l1anilhx";
-    };
-    dependencies = [];
-
-  };
-
-  vim-buffergator = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-buffergator-2018-05-02";
-    src = fetchgit {
-      url = "https://github.com/jeetsukumaran/vim-buffergator";
-      rev = "947b60dca4d4fc6a041a6ec84b17ca6736d1b916";
-      sha256 = "1b6sw5858h3v7p46v1fiy06jnfwiwqsfqwhr46ia12d0rfdm538c";
-    };
-    dependencies = [];
-
-  };
-
-  tslime-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "tslime-vim-2018-07-23";
-    src = fetchgit {
-      url = "https://github.com/jgdavey/tslime.vim";
-      rev = "28e9eba642a791c6a6b044433dce8e5451b26fb0";
-      sha256 = "1y5xikryv6851d0rjk9c64agawshp5208mwym6ma9ngs7s3s1l4x";
-    };
-    dependencies = [];
-
-  };
-
-  vim-docbk = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-docbk-2015-04-01";
-    src = fetchgit {
-      url = "https://github.com/jhradilek/vim-docbk";
-      rev = "6ac0346ce96dbefe982b9e765a81c072997f2e9e";
-      sha256 = "1jnx39m152hf9j620ygagaydg6h8m8gxkr1fmxj6kgqf71jr0n9d";
-    };
-    dependencies = [];
-
-  };
-
-  auto-pairs = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "auto-pairs-2017-07-03";
-    src = fetchgit {
-      url = "https://github.com/jiangmiao/auto-pairs";
-      rev = "f0019fc6423e7ce7bbd01d196a7e027077687fda";
-      sha256 = "1kzrdq3adwxwm3fw65g05ww9405lwqi368win5kayamyj9i0z7r6";
-    };
-    dependencies = [];
-
-  };
-
-  vim-nerdtree-tabs = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-nerdtree-tabs-2018-05-05";
-    src = fetchgit {
-      url = "https://github.com/jistr/vim-nerdtree-tabs";
-      rev = "5fc6c6857028a07e8fe50f0adef28fb20218776b";
-      sha256 = "051m4jb8jcc9rbafp995hmf4q6zn07bwh7anra6k1cr14i9lasaa";
-    };
-    dependencies = [];
-
-  };
-
-  zenburn = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "zenburn-2018-04-29";
-    src = fetchgit {
-      url = "https://github.com/jnurmine/zenburn";
-      rev = "2cacfcb222d9db34a8d1a13bb8bb814f039b98cd";
-      sha256 = "0m5d5sjckirfpdhg9sf1nl5xywvzdx6y04r13m47jlavf79hhimi";
-    };
-    dependencies = [];
-
-  };
-
-  vim-colorstepper = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-colorstepper-2016-01-28";
-    src = fetchgit {
-      url = "https://github.com/jonbri/vim-colorstepper";
-      rev = "f23ba0d995d41508a2dc9471cf31d3d01a4b5f05";
-      sha256 = "05ykxn0gmh8liz0zv5hb8df1ajggxp88izq3825m0yb3ma3k1jqs";
-    };
-    dependencies = [];
-
-  };
-
-  vim-xdebug = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-xdebug-2012-08-15";
-    src = fetchgit {
-      url = "https://github.com/joonty/vim-xdebug";
-      rev = "a4980fa65f7f159780593ee37c178281691ba2c4";
-      sha256 = "1qh18r0sm4gh95sjbi2hnflvxdl4gk00jyy3n7z4i1gnx9ihxjqw";
-    };
-    dependencies = [];
-    postInstall = false;
-  };
-
-  fzf-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "fzf-vim-2018-07-22";
-    src = fetchgit {
-      url = "https://github.com/junegunn/fzf.vim";
-      rev = "6ce58caad320be3cf9ff5d275191f88524edf326";
-      sha256 = "02s6ky1mnb18iy91p6syy3qnp55zwg2d52ybm6cic2gwvj1az1sf";
-    };
-    dependencies = [];
-
-  };
-
-  goyo-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "goyo-vim-2017-06-01";
-    src = fetchgit {
-      url = "https://github.com/junegunn/goyo.vim";
-      rev = "5b8bd0378758c1d9550d8429bef24b3d6d78b592";
-      sha256 = "0jh2gyf6v1vl12hygzwylzsj1ivx7r6xrd75k2wfsy91b2pm9srj";
-    };
-    dependencies = [];
-
-  };
-
-  limelight-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "limelight-vim-2016-06-24";
-    src = fetchgit {
-      url = "https://github.com/junegunn/limelight.vim";
-      rev = "106fb5749d227a0de72e36068ed72798c6fd48e6";
-      sha256 = "0fp4yp50n5v5zx3a7afh9wip4nwcfhmdgdzwpnl79jvild1z9fgh";
-    };
-    dependencies = [];
-
-  };
-
-  vim-easy-align = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-easy-align-2017-06-03";
-    src = fetchgit {
-      url = "https://github.com/junegunn/vim-easy-align";
-      rev = "1cd724dc239c3a0f7a12e0fac85945cc3dbe07b0";
-      sha256 = "0bqk1sdqamfgagh31a60c7gvvsvjpg1xys7ivqh62iqlny5i9774";
-    };
-    dependencies = [];
-
-  };
-
-  vim-dashboard = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-dashboard-2017-08-08";
-    src = fetchgit {
-      url = "https://github.com/junegunn/vim-github-dashboard";
-      rev = "054d7c69d9882a6ffccedd6e43623e184958d3b6";
-      sha256 = "1ns6dd8719hqrkqnxd52ssi7gxjxni7w4l1ih7ag72d62qzw0p8y";
-    };
-    dependencies = [];
-
-  };
-
-  vim-peekaboo = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-peekaboo-2017-03-20";
-    src = fetchgit {
-      url = "https://github.com/junegunn/vim-peekaboo";
-      rev = "a7c940b15b008afdcea096d3fc4d25e3e431eb49";
-      sha256 = "1rc4hr6vwj2mmrgz8lifxf9rvcw1rb5dahq649yn8ccw03x8zn6m";
-    };
-    dependencies = [];
-
-  };
-
-  vim-eighties = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-eighties-2016-12-15";
-    src = fetchgit {
-      url = "https://github.com/justincampbell/vim-eighties";
-      rev = "1a6ea42ead1e31524ec94cfefb6afc1d8dacd170";
-      sha256 = "1yh1kny28c7f5qm52y7xd5aj4mycksfb0x1zvcb37c73ycdxc1v2";
-    };
-    dependencies = [];
-
-  };
-
-  vim-niceblock = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-niceblock-2018-01-30";
-    src = fetchgit {
-      url = "https://github.com/kana/vim-niceblock";
-      rev = "178629a8b81da2fa614bd6c19e7797e325ee9153";
-      sha256 = "1bz8qjnwk3gz9h0194g3qqga91i4k78r9s1xymn2fv35llrfsdx0";
-    };
-    dependencies = [];
-
-  };
-
-  vim-operator-replace = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-operator-replace-2015-02-25";
-    src = fetchgit {
-      url = "https://github.com/kana/vim-operator-replace";
-      rev = "1345a556a321a092716e149d4765a5e17c0e9f0f";
-      sha256 = "07cibp61zwbzpjfxqdc77fzrgnz8jhimmdhhyjr0lvgrjgvsnv6q";
-    };
-    dependencies = [];
-
-  };
-
-  vim-operator-user = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-operator-user-2015-02-17";
-    src = fetchgit {
-      url = "https://github.com/kana/vim-operator-user";
-      rev = "c3dfd41c1ed516b4b901c97562e644de62c367aa";
-      sha256 = "16y2fyrmwg4vkcl85i8xg8s6m39ca2jvgi9qm36b3vzbnkcifafb";
-    };
-    dependencies = [];
-
-  };
-
-  vim-tabpagecd = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-tabpagecd-2013-11-29";
-    src = fetchgit {
-      url = "https://github.com/kana/vim-tabpagecd";
-      rev = "8b71a03a037608fa5918f5096812577cec6355e4";
-      sha256 = "1mr6s2hvsf2a2nkjjvq78c9isfxk2k1ih890w740srbq6ssj0npm";
-    };
-    dependencies = [];
-
-  };
-
-  vim-coffee-script = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-coffee-script-2018-02-27";
-    src = fetchgit {
-      url = "https://github.com/kchmck/vim-coffee-script";
-      rev = "9e3b4de2a476caeb6ff21b5da20966d7c67a98bb";
-      sha256 = "1yzhyi12r508r2yjkzbcnddv3q4whjf3kchp23xs0snhwd9b981x";
-    };
-    dependencies = [];
-
-  };
-
-  swift-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "swift-vim-2018-07-21";
-    src = fetchgit {
-      url = "https://github.com/keith/swift.vim";
-      rev = "40d53b215fd455e4b7fd413eaf14d1a028a504ab";
-      sha256 = "1lbxi0n5x5xnskfylbcpazch00lxbfhnc2h70x196yc4fhwz9153";
-    };
-    dependencies = [];
-
-  };
-
-  rainbow_parentheses-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "rainbow_parentheses-vim-2013-03-04";
-    src = fetchgit {
-      url = "https://github.com/kien/rainbow_parentheses.vim";
-      rev = "eb8baa5428bde10ecc1cb14eed1d6e16f5f24695";
-      sha256 = "1qw84imlhq4654mxazj7j3sp5g1j3yjxi496i08iix06dm15m5s7";
-    };
-    dependencies = [];
-
-  };
-
-  fastfold = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "fastfold-2018-06-02";
-    src = fetchgit {
-      url = "https://github.com/konfekt/fastfold";
-      rev = "4150ebdc6e226e8797d42dcabb7463952de9dc30";
-      sha256 = "0mdb77np2vf564q18fvj1klr99pwrx2sw0jhxify9g7i0177qs4r";
-    };
-    dependencies = [];
-
-  };
-
-  vim-signature = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-signature-2018-07-06";
-    src = fetchgit {
-      url = "https://github.com/kshenoy/vim-signature";
-      rev = "6bc3dd1294a22e897f0dcf8dd72b85f350e306bc";
-      sha256 = "08m5dg77yavria7n7iajkj4kqaw848763680003j2gbrjlhpprpm";
-    };
-    dependencies = [];
-
-  };
-
-  vim-gista = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-gista-2017-02-20";
-    src = fetchgit {
-      url = "https://github.com/lambdalisue/vim-gista";
-      rev = "b6cd41d0eb480cd79e84f3da3703613d0cf94a6c";
-      sha256 = "0bkzbppd3jdci4yvifb4sh05q20qn8cr3j9kqhxyc703s0l0lk2s";
-    };
-    dependencies = [];
-
-  };
-
-  latex-box = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "latex-box-2015-06-01";
-    src = fetchgit {
-      url = "https://github.com/latex-box-team/latex-box";
-      rev = "3c2901e12cb78bfb2be58ba4c62a488612550fe1";
-      sha256 = "1z4mdy47cpwcdhvy8mr72vhlybxn1y59yd3ixf6ids1bzpkrd7zl";
-    };
-    dependencies = [];
-
-  };
-
-  typescript-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "typescript-vim-2018-03-08";
-    src = fetchgit {
-      url = "https://github.com/leafgarland/typescript-vim";
-      rev = "e25636b44211a4be7b089bfed7cf09aa7dd086f5";
-      sha256 = "1i422j4za5xwcv3zz7cjw523nnh5q652c04phqp681lgdmgqszh4";
-    };
-    dependencies = [];
-
-  };
-
-  vim-ledger = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-ledger-2017-12-12";
-    src = fetchgit {
-      url = "https://github.com/ledger/vim-ledger";
-      rev = "6eb3bb21aa979cc295d0480b2179938c12b33d0d";
-      sha256 = "0rbwyaanvl2bqk8xm4kq8fkv8y92lpf9xx5n8gw54iij7xxhnj01";
-    };
-    dependencies = [];
-
-  };
-
-  vim-jinja = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-jinja-2016-11-16";
-    src = fetchgit {
-      url = "https://github.com/lepture/vim-jinja";
-      rev = "8d330a7aaf0763d080dc82204b4aaba6ac0605c6";
-      sha256 = "1n62ga02rcj7jjgzvwr46pckj59dc1zqahjgampjcwdd8vf4mg3q";
-    };
-    dependencies = [];
-
-  };
-
-  vimtex = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vimtex-2018-07-25";
-    src = fetchgit {
-      url = "https://github.com/lervag/vimtex";
-      rev = "5c5cd72b680bca8c3b5b45ee790f3f6f5890e77c";
-      sha256 = "1pahrkf536ay56jdiqdda1bq0q5d788bvf099r0wvxwgqk77hr6n";
-    };
-    dependencies = [];
-
-  };
-
-  cosco-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "cosco-vim-2018-02-15";
-    src = fetchgit {
-      url = "https://github.com/lfilho/cosco.vim";
-      rev = "434dc68b93b8f42babe1887a269145ce39c97edf";
-      sha256 = "1ng91nkkd9rgyihp4dvzrj7drm31d9r2vx4id1n8v6gc1rx3qasv";
-    };
-    dependencies = [];
-
-  };
-
-  vim-easymotion = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-easymotion-2018-06-05";
-    src = fetchgit {
-      url = "https://github.com/lokaltog/vim-easymotion";
-      rev = "1a0244c90c3ff46219cf9597bb13662be4232407";
-      sha256 = "1gsfn4fgivfg821wmnrdzpmqdimjkvkqi3gwr0nwf07ygjbr2csy";
-    };
-    dependencies = [];
-
-  };
-
-  vim-lawrencium = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-lawrencium-2017-01-10";
-    src = fetchgit {
-      url = "https://github.com/ludovicchabant/vim-lawrencium";
-      rev = "88077183e1f5a9a1f741aeab7a1374cfed9e917f";
-      sha256 = "0z31v93wjycq4lqvbl1jzxi7i5i1vl919m4dyyzphybcqrjjpnab";
-    };
-    dependencies = [];
-
-  };
-
-  rainbow = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "rainbow-2018-06-19";
-    src = fetchgit {
-      url = "https://github.com/luochen1990/rainbow";
-      rev = "549724c2123c5a06834676963be0d76d5c37abc1";
-      sha256 = "0hh0w337qw5yk9flk4iz4vfpa4q13blvyv10hgbfrqy72s30gpdf";
-    };
-    dependencies = [];
-
-  };
-
-  vim-xkbswitch = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-xkbswitch-2017-03-27";
-    src = fetchgit {
-      url = "https://github.com/lyokha/vim-xkbswitch";
-      rev = "a85ebddb9038e6b05138c48868a319a9e13d1868";
-      sha256 = "0v0wckkvsj3pd3a5lj35dqwlvgr1kfz0x6rpnx28mzrcg05p19fr";
-    };
-    dependencies = [];
-    patchPhase = ''
-      substituteInPlace plugin/xkbswitch.vim \
-              --replace /usr/local/lib/libxkbswitch.so ${xkb_switch}/lib/libxkbswitch.so
-    '';
-    buildInputs = [ xkb_switch ];
-  };
-
-  vim-highlightedyank = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-highlightedyank-2018-06-01";
-    src = fetchgit {
-      url = "https://github.com/machakann/vim-highlightedyank";
-      rev = "eafae05916e670da8bc99e44b1534cd8c7f87c7a";
-      sha256 = "1z6xjb9244fgnhmw21m7y3bd9vs9gvxbb9ig73iwy0ny886hjlnk";
-    };
-    dependencies = [];
-
-  };
-
-  tagbar = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "tagbar-2017-12-17";
-    src = fetchgit {
-      url = "https://github.com/majutsushi/tagbar";
-      rev = "387bbadda98e1376ff3871aa461b1f0abd4ece70";
-      sha256 = "0srmslg0v1a7zhzz0wgzgv7jyr0j3q9m766qzb7zimkkb32fcbx9";
-    };
-    dependencies = [];
-
-  };
-
-  vim-jsbeautify = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-jsbeautify-2018-01-31";
-    src = fetchgit {
-      url = "https://github.com/maksimr/vim-jsbeautify";
-      rev = "7a55bffa7d87e4f1ed11650e56a1361779b39624";
-      sha256 = "01jvc3nkvmhw9n7m9x96ax1ndzw78ryjmgrvkqb7gja1xb8i8jqq";
-    };
-    dependencies = [];
-
-  };
-
-  Jenkinsfile-vim-syntax = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "Jenkinsfile-vim-syntax-2018-04-03";
-    src = fetchgit {
-      url = "https://github.com/martinda/Jenkinsfile-vim-syntax";
-      rev = "45418b171e06f63e0814cac6a656832384708aba";
-      sha256 = "0vfx22fzp0894lclmbsp6l8apvw0znd3cbah8r7r5la9qzyiwi4p";
-    };
-    dependencies = [];
-
-  };
+  });
 
-  gist-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "gist-vim-2016-10-10";
-    src = fetchgit {
-      url = "https://github.com/mattn/gist-vim";
-      rev = "f0d63579eab7548cf12f979dc52ef5a370ecbe63";
-      sha256 = "06nix49j4inxy3rkcv32f4ka89g4crqwfqnrm3b76iwwky8m2p17";
-    };
-    dependencies = [];
-
-  };
-
-  webapi-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "webapi-vim-2018-03-14";
-    src = fetchgit {
-      url = "https://github.com/mattn/webapi-vim";
-      rev = "252250381a9509257bfb06b9f95441e41e3e23b5";
-      sha256 = "0g37d1i6rxsj6f31g9jy2bhr8ng3jwmnvqqcmw19vbql4v56zq6a";
-    };
-    dependencies = [];
-
-  };
-
-  undotree = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "undotree-2018-07-02";
-    src = fetchgit {
-      url = "https://github.com/mbbill/undotree";
-      rev = "a80159c9f5c238575b63984b8bc610bc5de6b233";
-      sha256 = "10l091qbigcj053l65bs3cdnysasl7f2qdbsk8bk6k0xj7rrpgzl";
-    };
-    dependencies = [];
-
-  };
-
-  forms = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "forms-2012-11-28";
-    src = fetchgit {
-      url = "https://github.com/megaannum/forms";
-      rev = "b601e03fe0a3b8a43766231f4a6217e4492b4f75";
-      sha256 = "19kp1i5c6jmnpbsap9giayqbzlv7vh02mp4mjvicqj9n0nfyay74";
-    };
-    dependencies = ["self"];
-
-  };
-
-  self = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "self-2014-05-28";
-    src = fetchgit {
-      url = "https://github.com/megaannum/self";
-      rev = "2ed666b547eddee6ae1fcc63babca4ba0b66a59f";
-      sha256 = "1gcwn6i5i3msg7hrlzsnv1bs6pm4jz9cff8ppaz2xdj8xv9qy6fn";
-    };
-    dependencies = [];
-
-  };
-
-  robotframework-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "robotframework-vim-2017-04-14";
-    src = fetchgit {
-      url = "https://github.com/mfukar/robotframework-vim";
-      rev = "75d5b371a4da2a090a2872d55bd0dead013f334e";
-      sha256 = "091ac5rq6f1a7j2q3dy9rc00vckv21m4wd29ijj63jannr02v5ad";
-    };
-    dependencies = [];
-
-  };
-
-  vim-grepper-git = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-grepper-git-2018-04-24";
-    src = fetchgit {
-      url = "https://github.com/mhinz/vim-grepper.git";
-      rev = "04d659c9e0a57e0c3e989069601d2a98df0386c4";
-      sha256 = "16k5ahcn9i4wvlhw16j0gfgxw0clry72l78lk28qmx9p2gh1ka3g";
-    };
-    dependencies = [];
-
-  };
-
-  vim-signify = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-signify-2018-07-25";
-    src = fetchgit {
-      url = "https://github.com/mhinz/vim-signify";
-      rev = "a9fc705b9bdffaac46f13e47d6565c904102dedc";
-      sha256 = "0hk24anfhh1v62zn03cbqrf8c260q6g5cka8dpq8c5943v6kln59";
-    };
-    dependencies = [];
-
-  };
-
-  vim-startify = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-startify-2018-07-21";
-    src = fetchgit {
-      url = "https://github.com/mhinz/vim-startify";
-      rev = "8cde338d1f35057fd64146090c960a55b953dcd9";
-      sha256 = "01aali5s946589cxy8k5qb0qzhxwlgwv4grri3x60h2520fc1z29";
-    };
-    dependencies = [];
-
-  };
-
-  vim-indent-object = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-indent-object-2018-04-08";
-    src = fetchgit {
-      url = "https://github.com/michaeljsmith/vim-indent-object";
-      rev = "5c5b24c959478929b54a9e831a8e2e651a465965";
-      sha256 = "1kmwnz0jxjkvfzy06r7r73pcxfcyjp8p8m2d6qrhjfvzidgfhw19";
-    };
-    dependencies = [];
-
-  };
-
-  ack-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "ack-vim-2018-02-28";
-    src = fetchgit {
-      url = "https://github.com/mileszs/ack.vim";
-      rev = "36e40f9ec91bdbf6f1adf408522a73a6925c3042";
-      sha256 = "0yppr89hd1jyp0pj56hxdjbn32sr7pj3mihd18wxispvl5dqd6fm";
-    };
-    dependencies = [];
-
-  };
-
-  vim-yapf = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-yapf-2018-06-05";
-    src = fetchgit {
-      url = "https://github.com/mindriot101/vim-yapf";
-      rev = "cae79733a1a39732c5305d4a89cd093d17cb917d";
-      sha256 = "16bmzvzks6kbqm6dk908k23b9wj7qf3x8bz3kikrzj27s0p7s9cc";
-    };
-    dependencies = [];
+  command-t = command-t.overrideAttrs(old: {
+    buildInputs = [ ruby rake ];
     buildPhase = ''
-      substituteInPlace ftplugin/python_yapf.vim \
-        --replace '"yapf"' '"${python3Packages.yapf}/bin/yapf"'
+      rake make
+      rm ruby/command-t/ext/command-t/*.o
     '';
-  };
-
-  lushtags = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "lushtags-2017-04-19";
-    src = fetchgit {
-      url = "https://github.com/mkasa/lushtags";
-      rev = "fd7fa5a0162d9aa159559880d5ba4731e180eeaf";
-      sha256 = "1si5n07k4r8kji4whglav9q59ksv6bi5v58xbpc2l5bavlk8kn6n";
-    };
-    dependencies = [];
-
-  };
-
-  gruvbox = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "gruvbox-2018-02-25";
-    src = fetchgit {
-      url = "https://github.com/morhetz/gruvbox";
-      rev = "cb4e7a5643f7d2dd40e694bcbd28c4b89b185e86";
-      sha256 = "12qkq1x96bm1cmqfg6sb8jxpl2b6gwvhc5qn3gva6vl4nx3ianqi";
-    };
-    dependencies = [];
-
-  };
-
-  hlint-refactor-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "hlint-refactor-vim-2015-12-05";
-    src = fetchgit {
-      url = "https://github.com/mpickering/hlint-refactor-vim";
-      rev = "fffb044ecef854a82c5c2efda252e09044ba03e0";
-      sha256 = "0z8d31arfy9aidg1dwj5msnnx799d9r7njkgh51z695w6ayxn6p8";
-    };
-    dependencies = [];
-
-  };
-
-  vim-indent-guides = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-indent-guides-2018-05-14";
-    src = fetchgit {
-      url = "https://github.com/nathanaelkane/vim-indent-guides";
-      rev = "54d889a63716ee2f1818aa2ec5082db47147147b";
-      sha256 = "0ahlbjv2ibhhnf9zqn85b2sh3wf9l0kmg2qmavz3z5fmf8sqljj2";
-    };
-    dependencies = [];
-
-  };
-
-  vim-stylish-haskell = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-stylish-haskell-2015-05-10";
-    src = fetchgit {
-      url = "https://github.com/nbouscal/vim-stylish-haskell";
-      rev = "c664376ba814de3f87cb7641f90b2c6a9dd53671";
-      sha256 = "1xm5ark2mwphznv3xsyzgcldnr52i5jzk1pfqdh0080j07aama8j";
-    };
-    dependencies = [];
-
-  };
-
-  vim-easygit = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-easygit-2018-07-08";
-    src = fetchgit {
-      url = "https://github.com/neoclide/vim-easygit";
-      rev = "9770370a35838f70eda91d0c3006d0563ccc8d2a";
-      sha256 = "1a42s0nymakz20rjrpwmiqpnlndrkdakzbm53aclzcs61i9zq2k8";
-    };
-    dependencies = [];
-
-  };
-
-  haskell-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "haskell-vim-2018-05-22";
-    src = fetchgit {
-      url = "https://github.com/neovimhaskell/haskell-vim";
-      rev = "b1ac46807835423c4a4dd063df6d5b613d89c731";
-      sha256 = "1vqj3r2v8skffywwgv4093ww7fm540437j5qz7n8q8787bs5w0br";
-    };
-    dependencies = [];
+  });
 
-  };
-
-  cpsm = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "cpsm-2018-02-01";
-    src = fetchgit {
-      url = "https://github.com/nixprime/cpsm";
-      rev = "8a4a0a05162762b857b656d51b59a5bf01850877";
-      sha256 = "0v44gf9ygrqc6rpfpiq329jija4icy0iy240yk30c0r04mjahc0b";
-    };
-    dependencies = [];
+  cpsm = cpsm.overrideAttrs(old: {
     buildInputs = [
       python3
       stdenv
@@ -2039,170 +133,127 @@ self = rec {
       export PY3=ON
       ./install.sh
     '';
-  };
-
-  vim-iced-coffee-script = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-iced-coffee-script-2013-12-27";
-    src = fetchgit {
-      url = "https://github.com/noc7c9/vim-iced-coffee-script";
-      rev = "e42e0775fa4b1f8840c55cd36ac3d1cedbc1dea2";
-      sha256 = "14yfirny359rlrr082il2ys3hxiyrbbk794rdxrs2lasjy8rb1f7";
-    };
-    dependencies = [];
-
-  };
-
-  shabadou-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "shabadou-vim-2016-07-19";
-    src = fetchgit {
-      url = "https://github.com/osyo-manga/shabadou.vim";
-      rev = "7d4bfed1ea8985ae125df3d1403cc19e252443e1";
-      sha256 = "1kvik1yf7yjg9jdmdw38yhkksxg0n3nry02banwik7wgjnpvg870";
-    };
-    dependencies = [];
-
-  };
+	});
 
-  vim-textobj-multiblock = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-textobj-multiblock-2014-06-02";
-    src = fetchgit {
-      url = "https://github.com/osyo-manga/vim-textobj-multiblock";
-      rev = "670a5ba57d73fcd793f480e262617c6eb0103355";
-      sha256 = "1s71hdr73cl8yg9mrdflvzrdccpiv7qrlainai7gqw30r1hfhfzf";
-    };
-    dependencies = [];
-
-  };
-
-  vim-watchdogs = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-watchdogs-2017-12-03";
-    src = fetchgit {
-      url = "https://github.com/osyo-manga/vim-watchdogs";
-      rev = "a6415c2d928af8c1aacdbce9b1ed8d315891eb03";
-      sha256 = "0n6aqsgn0q1qgpj4yznqwbsbbk2a077gnjlq86ii3jhkzh5fzcff";
-    };
-    dependencies = [];
-
-  };
-
-  vim-javascript = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-javascript-2018-07-14";
-    src = fetchgit {
-      url = "https://github.com/pangloss/vim-javascript";
-      rev = "39e332a3c36c0115e1eab85c34cf121b7585869d";
-      sha256 = "04ycwh298i213zw0zvj99igfmxf36swycryapsgp9jrh9jjd9hmw";
-    };
-    dependencies = [];
-
-  };
-
-  vim-qml = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-qml-2018-07-22";
-    src = fetchgit {
-      url = "https://github.com/peterhoeg/vim-qml";
-      rev = "8af43da6950ce5483704bb97f5b24471d8ffda1a";
-      sha256 = "1y1xvbfr1ffxyyk3zzf50xn87a85i1zszj4fqlq5ka8zhgdrnhvc";
-    };
-    dependencies = [];
+  ctrlp-cmatcher = ctrlp-cmatcher.overrideAttrs(old: {
+    buildInputs = [ python ];
+    buildPhase = ''
+      patchShebangs .
+      ./install.sh
+    '';
+  });
 
-  };
+  deoplete-go = deoplete-go.overrideAttrs(old: {
+    buildInputs = [ python3 ];
+    buildPhase = ''
+      pushd ./rplugin/python3/deoplete/ujson
+      python3 setup.py build --build-base=$PWD/build --build-lib=$PWD/build
+      popd
+      find ./rplugin/ -name "ujson*.so" -exec mv -v {} ./rplugin/python3/ \;
+   '';
+  });
 
-  vim-markdown = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-markdown-2018-06-05";
-    src = fetchgit {
-      url = "https://github.com/plasticboy/vim-markdown";
-      rev = "6d2cb3c06cd546fd4bee4136679db3a3d5de97fa";
-      sha256 = "17izjzgpwpl6i1vvz2hcd7ympgxyjmsb0k62rhvl15jmx06c3ysz";
-    };
-    dependencies = [];
+  ensime-vim = ensime-vim.overrideAttrs(old: {
+    passthru.python3Dependencies = ps: with ps; [ sexpdata websocket_client ];
+    dependencies = ["vimproc" "vimshell" "self" "forms"];
+  });
+
+  forms = forms.overrideAttrs(old: {
+		dependencies = ["self"];
+	});
+
+  gitv = gitv.overrideAttrs(old: {
+		dependencies = ["gitv"];
+  });
+
+  ncm2 = ncm2.overrideAttrs(old: {
+    dependencies = ["nvim-yarp"];
+  });
+
+  ncm2-ultisnips = ncm2-ultisnips.overrideAttrs(old: {
+    dependencies = ["ultisnips"];
+  });
+
+  taglist-vim = taglist-vim.overrideAttrs(old: {
+    setSourceRoot = ''
+      export sourceRoot=taglist
+      mkdir taglist
+      mv doc taglist
+      mv plugin taglist
+    '';
+  });
 
-  };
+  vimshell-vim = vimshell-vim.overrideAttrs(old: {
+    dependencies = [ "vimproc-vim" ];
+  });
 
-  python-mode = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "python-mode-2018-07-23";
-    src = fetchgit {
-      url = "https://github.com/python-mode/python-mode";
-      rev = "d241974f40e8d206f9970e51fb0069951862ba35";
-      sha256 = "1cjhlbk71785zy0g0lf2bmsdsnvqwx03v8lxq7i7j2qazalszxci";
-    };
-    dependencies = [];
+  vim-addon-manager = vim-addon-manager.overrideAttrs(old: {
+    buildInputs = stdenv.lib.optional stdenv.isDarwin Cocoa;
+  });
 
-  };
+  vim-addon-actions = vim-addon-actions.overrideAttrs(old: {
+    dependencies = [ "vim-addon-mw-utils" "tlib" ];
+  });
 
-  vim-racer = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-racer-2018-05-13";
-    src = fetchgit {
-      url = "https://github.com/racer-rust/vim-racer";
-      rev = "cd663ddacc89fb3cbbb9649f7cd36528960b1fe9";
-      sha256 = "1k75ypgiy13l28mndi6p95lc818k04imlm7xk0y9sck8bsny1vhi";
-    };
-    dependencies = [];
+  vim-addon-async = vim-addon-async.overrideAttrs(old: {
+    dependencies = [ "vim-addon-signs" ];
+  });
 
-  };
+  vim-addon-background-cmd = vim-addon-background-cmd.overrideAttrs(old: {
+    dependencies = [ "vim-addon-mw-utils" ];
+  });
 
-  awesome-vim-colorschemes = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "awesome-vim-colorschemes-2018-01-20";
-    src = fetchgit {
-      url = "https://github.com/rafi/awesome-vim-colorschemes";
-      rev = "8d2b6657bdbe4f7253e320c741bc4c1fc2f2f41d";
-      sha256 = "1wfm6rsmyqldxwcz0ic4rq7kf00fgsx00rg42cl9yya35nqiri2z";
-    };
-    dependencies = [];
+  vim-addon-completion = vim-addon-completion.overrideAttrs(old: {
+    dependencies = [ "tlib" ];
+  });
 
-  };
+  vim-addon-goto-thing-at-cursor = vim-addon-goto-thing-at-cursor.overrideAttrs(old: {
+    dependencies = [ "tlib" ];
+  });
 
-  purescript-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "purescript-vim-2018-07-05";
-    src = fetchgit {
-      url = "https://github.com/raichoo/purescript-vim";
-      rev = "ab8547cef5827f046d43ba57203acb6692b7ef06";
-      sha256 = "1pp7h77qqhgshf2x3hh73gnb4ya8jamqm75spbnn95piznd03k33";
-    };
-    dependencies = [];
+  vim-addon-mru = vim-addon-mru.overrideAttrs(old: {
+    dependencies = ["vim-addon-other" "vim-addon-mw-utils"];
+  });
+
+  vim-addon-nix = vim-addon-nix.overrideAttrs(old: {
+    dependencies = [
+      "vim-addon-completion"
+      "vim-addon-goto-thing-at-cursor"
+      "vim-addon-errorformats"
+      "vim-addon-actions"
+      "vim-addon-mw-utils" "tlib"
+    ];
+  });
 
-  };
+  vim-addon-sql = vim-addon-sql.overrideAttrs(old: {
+    dependencies = ["vim-addon-completion" "vim-addon-background-cmd" "tlib"];
+  });
 
-  vim-pencil = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-pencil-2017-06-14";
-    src = fetchgit {
-      url = "https://github.com/reedes/vim-pencil";
-      rev = "2dcd974b7255e4af83cf79a208f04a3489065e22";
-      sha256 = "0swc6sszj1f4h5hgi7z7j1xw54d69mg7f18rk2kf5y453qwg4jc0";
-    };
-    dependencies = [];
+  vim-addon-syntax-checker = vim-addon-syntax-checker.overrideAttrs(old: {
+    dependencies = ["vim-addon-mw-utils" "tlib"];
+  });
 
-  };
+  vim-addon-toggle-buffer = vim-addon-toggle-buffer.overrideAttrs(old: {
+    dependencies = [ "vim-addon-mw-utils" "tlib" ];
+  });
 
-  vim-wordy = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-wordy-2018-03-10";
-    src = fetchgit {
-      url = "https://github.com/reedes/vim-wordy";
-      rev = "14b9dbf76a82e29273a74768573900361200467f";
-      sha256 = "0qx3ngw4k7bgzmxpv1x4lkq3njm3zcb1j5ph6fx26wgagxhiaqhk";
-    };
-    dependencies = [];
+  vim-addon-xdebug = vim-addon-xdebug.overrideAttrs(old: {
+    dependencies = [ "WebAPI" "vim-addon-mw-utils" "vim-addon-signs" "vim-addon-async" ];
+  });
 
-  };
+  vim-bazel = vim-bazel.overrideAttrs(old: {
+    dependencies = ["maktaba"];
+  });
 
-  committia-vim-git = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "committia-vim-git-2018-07-14";
-    src = fetchgit {
-      url = "https://github.com/rhysd/committia.vim.git";
-      rev = "6aa77b9161e75828d0be2ba40ed420cbf7a55279";
-      sha256 = "0sr7wzccj805fnc48qgcshp8rypz3vb8507pkc1r3pn7wbxqkni1";
-    };
-    dependencies = [];
+  vim-codefmt = vim-codefmt.overrideAttrs(old: {
+		dependencies = ["maktaba"];
+	});
 
-  };
+  vim-easytags = vim-easytags.overrideAttrs(old: {
+		dependencies = ["vim-misc"];
+	});
 
-  vim-grammarous = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-grammarous-2018-06-22";
-    src = fetchgit {
-      url = "https://github.com/rhysd/vim-grammarous";
-      rev = "0d8a0272389a32bd49e74bb00527c02f9aca19a8";
-      sha256 = "0ji18hjhp1gx147z682b4xy1w02kqcr8rb5frccyqn4kdpqhqvbk";
-    };
-    dependencies = [];
+  vim-grammarous = vim-grammarous.overrideAttrs(old: {
     # use `:GrammarousCheck` to initialize checking
     # In neovim, you also want to use set
     #   let g:grammarous#show_first_error = 1
@@ -2213,302 +264,48 @@ self = rec {
         inherit languagetool;
       })
     ];
-  };
-
-  vim-operator-surround = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-operator-surround-2017-12-23";
-    src = fetchgit {
-      url = "https://github.com/rhysd/vim-operator-surround";
-      rev = "001c0da077b5b38a723151b19760d220e02363db";
-      sha256 = "0c6w6id57faw6sjf5wvw9qp2a4i7xj65q0c4hjs0spgzycv2wpkh";
-    };
-    dependencies = [];
-
-  };
-
-  vim-puppet = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-puppet-2018-04-12";
-    src = fetchgit {
-      url = "https://github.com/rodjek/vim-puppet";
-      rev = "dc1f681045c4d8bd126063ce000f7cc7b2f95097";
-      sha256 = "18z2d2wpn5c3g857wprmdwp5pdb719dciyy0682hqpw8lfjn6zhv";
-    };
-    dependencies = [];
-
-  };
-
-  nvim-cm-racer = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "nvim-cm-racer-2017-07-27";
-    src = fetchgit {
-      url = "https://github.com/roxma/nvim-cm-racer";
-      rev = "2a8a4a49fa58c5dac9e0bed9511f6928930cacd2";
-      sha256 = "1yljxwypgn91084yyicbc2qprn31ld7s4drvnddzczyhzq5m2gpx";
-    };
-    dependencies = [];
-
-  };
-
-  nvim-completion-manager = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "nvim-completion-manager-2018-04-18";
-    src = fetchgit {
-      url = "https://github.com/roxma/nvim-completion-manager";
-      rev = "3ef5ade36e7321aace4e9e22da216202bdcd65f1";
-      sha256 = "0vfcnvdcxhs3in4pwcqjb5h3ns7ik53n4xb1h9r94w1gfw00lh1l";
-    };
-    dependencies = [];
-
-  };
-
-  rust-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "rust-vim-2018-07-17";
-    src = fetchgit {
-      url = "https://github.com/rust-lang/rust.vim";
-      rev = "2fa74427456a68e9e90f542567f851df50d48a8c";
-      sha256 = "0vqvw5czwy3v99dv5gbgy8ljg31qhsnhqjfl0a4dfij6p66xyi46";
-    };
-    dependencies = [];
-
-  };
-
-  vim-devicons = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-devicons-2018-06-21";
-    src = fetchgit {
-      url = "https://github.com/ryanoasis/vim-devicons";
-      rev = "ea5bbf0e2a960965accfa50a516773406a5b6b26";
-      sha256 = "1v365j4an1k82gk06ikgqy2dw0ir80kj0svs1fymgklc117xgqsg";
-    };
-    dependencies = [];
-
-  };
-
-  neoformat = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "neoformat-2018-07-16";
-    src = fetchgit {
-      url = "https://github.com/sbdchd/neoformat";
-      rev = "f20e73193f2260d4437d160759d6b623a74a5a35";
-      sha256 = "0460v5h82zsgslqxkiwf2qbkah15hf3p33ddvcipfqg0rnrbwynp";
-    };
-    dependencies = [];
-
-  };
-
-  nerdcommenter = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "nerdcommenter-2018-06-21";
-    src = fetchgit {
-      url = "https://github.com/scrooloose/nerdcommenter";
-      rev = "9a32fd2534427f7a1dcfe22e9c0ea6b67b6dbe78";
-      sha256 = "0s862kzhvv9qpr7gxd3h52hczjvm55zyff5qn0z5095072pr3wjx";
-    };
-    dependencies = [];
-
-  };
-
-  nerdtree = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "nerdtree-2018-06-15";
-    src = fetchgit {
-      url = "https://github.com/scrooloose/nerdtree";
-      rev = "d6032c876c6d6932ab7f07e262a16c9a85a31d5b";
-      sha256 = "0s7z60rcdkziqqjc45adfqykpznv7aagfyfi5ybsxi5w4b8f2b9s";
-    };
-    dependencies = [];
-
-  };
-
-  syntastic = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "syntastic-2018-07-16";
-    src = fetchgit {
-      url = "https://github.com/scrooloose/syntastic";
-      rev = "0dde090ed41b383b1fa56f8db49d89e0735b1ca9";
-      sha256 = "027g3wmfdrhb65krlfs89xk3imbm2mgzb2ddv7xwrhch736nvb2q";
-    };
-    dependencies = [];
-
-  };
-
-  deoplete-rust = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "deoplete-rust-2017-07-18";
-    src = fetchgit {
-      url = "https://github.com/sebastianmarkow/deoplete-rust";
-      rev = "0a86e502113910c33448b337c4d50cabea120d25";
-      sha256 = "0wsck83jns40ny3740vwjhc8g5bh6zl71hkirbjxy6n4xgixa54h";
-    };
-    dependencies = [];
-
-  };
-
-  vim-polyglot = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-polyglot-2018-07-08";
-    src = fetchgit {
-      url = "https://github.com/sheerun/vim-polyglot";
-      rev = "055f7710b65dfa2df52fc0b5be2486ae36ac5751";
-      sha256 = "1q1aw0sapr2zgrxbh97g6hj22f2xym3apzfxw5xxmqzmjc0kiq4p";
-    };
-    dependencies = [];
-
-  };
-
-  context_filetype-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "context_filetype-vim-2018-04-01";
-    src = fetchgit {
-      url = "https://github.com/shougo/context_filetype.vim";
-      rev = "9ed76080795ef76f52b8c9ae4432df7cd81abc5a";
-      sha256 = "137ki4104j4ch54k9n1l1xd75vbxqssi1fdckzv8kd07m5i159i2";
-    };
-    dependencies = [];
-
-  };
-
-  denite-nvim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "denite-nvim-2018-07-22";
-    src = fetchgit {
-      url = "https://github.com/shougo/denite.nvim";
-      rev = "93d8eb0bf21eb6db3f6a0bf6a84a98bd578176c8";
-      sha256 = "0bhvg9rynqr2nkj7h2h8ws6mm1s7wmgif8avwbirq4pxby5j5f8r";
-    };
-    dependencies = [];
-
-  };
-
-  deoplete-nvim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "deoplete-nvim-2018-07-22";
-    src = fetchgit {
-      url = "https://github.com/shougo/deoplete.nvim";
-      rev = "59fbd61d492b0a1728f34b8958d8e4dbce165c73";
-      sha256 = "06x46dhyy9bix0svl2c0jxxk7rs8ahzl18yq6hmfb1j45jlv5qiz";
-    };
-    dependencies = [];
-
-  };
-
-  echodoc-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "echodoc-vim-2018-03-26";
-    src = fetchgit {
-      url = "https://github.com/shougo/echodoc.vim";
-      rev = "f1f711bc814165cf5b09b56fd5d733917ed1c015";
-      sha256 = "0l0sm862fbr8p8m4wykx1riidxgp233cq6r2zdm2l7gvmqyj3zcr";
-    };
-    dependencies = [];
+  });
 
-  };
-
-  neco-syntax = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "neco-syntax-2017-10-01";
-    src = fetchgit {
-      url = "https://github.com/shougo/neco-syntax";
-      rev = "98cba4a98a4f44dcff80216d0b4aa6f41c2ce3e3";
-      sha256 = "1cjcbgx3h00g91ifgw30q5n97x4nprsr4kwirydws79fcs4vkgip";
-    };
-    dependencies = [];
-
-  };
-
-  neco-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "neco-vim-2017-10-01";
-    src = fetchgit {
-      url = "https://github.com/shougo/neco-vim";
-      rev = "f5397c5e800d65a58c56d8f1b1b92686b05f4ca9";
-      sha256 = "0yb7ja6qgrazszk4i01cwjj00j9vd43zs2r11b08iy8n10jnzr73";
-    };
-    dependencies = [];
-
-  };
-
-  neocomplete-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "neocomplete-vim-2018-03-28";
-    src = fetchgit {
-      url = "https://github.com/shougo/neocomplete.vim";
-      rev = "4be617947f3fcf2d725fab20b0e12f8b46c9e2f3";
-      sha256 = "00ns46gy726w74nmnzhqnyh10jnpr04453v3rclswxgcvgma82b8";
-    };
-    dependencies = [];
-
-  };
-
-  neoinclude-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "neoinclude-vim-2018-05-22";
-    src = fetchgit {
-      url = "https://github.com/shougo/neoinclude.vim";
-      rev = "2fa77b9211d3f10c29559b715b6863da67ae7d3a";
-      sha256 = "0pdahb2z9q4dk67xkwvaqrlpai86slhncfb4gn88x40dlnd7rkbg";
-    };
-    dependencies = [];
-
-  };
-
-  neomru-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "neomru-vim-2017-10-01";
-    src = fetchgit {
-      url = "https://github.com/shougo/neomru.vim";
-      rev = "97540f54fa20b94daf306f0c1f3cce983bbf7a1d";
-      sha256 = "15d5hmh5v3hnjnfb5736n45rh5nyq41vqjp1cz4ls2rxmmfi3xa7";
-    };
-    dependencies = [];
-
-  };
-
-  neosnippet-snippets = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "neosnippet-snippets-2018-06-17";
-    src = fetchgit {
-      url = "https://github.com/shougo/neosnippet-snippets";
-      rev = "e5946e9ec4c68965dbabfaaf2584b1c057738afd";
-      sha256 = "114w2vm28075bz85867lz0rzam1m0wk7dkbkm1lm0jbknbpk606n";
-    };
-    dependencies = [];
-
-  };
-
-  neosnippet-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "neosnippet-vim-2018-07-19";
-    src = fetchgit {
-      url = "https://github.com/shougo/neosnippet.vim";
-      rev = "2959ae99f6e8f422e7d9062fd0a3cd692d2221fb";
-      sha256 = "0zdyfc9lrp8g76b6qigci6dlxz0zqpqf5y9887x2zdy631dksfi4";
-    };
-    dependencies = [];
+  vim-hier = vim-hier.overrideAttrs(old: {
+    buildInputs = [ vim ];
+  });
 
-  };
+  vim-isort = vim-isort.overrideAttrs(old: {
+    postPatch = ''
+      substituteInPlace ftplugin/python_vimisort.vim \
+        --replace 'import vim' 'import vim; import sys; sys.path.append("${pythonPackages.isort}/${python.sitePackages}")'
+    '';
+  });
 
-  neoyank-vim-git = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "neoyank-vim-git-2018-03-26";
-    src = fetchgit {
-      url = "https://github.com/shougo/neoyank.vim.git";
-      rev = "ea3cd47ccb40cb2e26cb607d28475aa0fdb26fef";
-      sha256 = "1zbf8062rpk56nd1zxqhwa8bdpxl9zp887l9nm4s9hc4ndsk4928";
-    };
-    dependencies = [];
+	vim-snipmate = vim-snipmate.overrideAttrs(old: {
+		dependencies = ["vim-addon-mw-utils" "tlib"];
+	});
 
-  };
 
-  tabpagebuffer-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "tabpagebuffer-vim-2014-09-30";
-    src = fetchgit {
-      url = "https://github.com/shougo/tabpagebuffer.vim";
-      rev = "4d95c3e6fa5ad887498f4cbe486c11e39d4a1fbc";
-      sha256 = "1z6zlpzkhwy1p2pmx9qrwb91dp9v4yi8jrdvm1if2k79ij4sl08f";
-    };
-    dependencies = [];
+  vim-wakatime = vim-wakatime.overrideAttrs(old: {
+    buildInputs = [ python ];
+  });
 
-  };
+  vim-xdebug = vim-xdebug.overrideAttrs(old: {
+    postInstall = false;
+  });
 
-  unite-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "unite-vim-2018-06-17";
-    src = fetchgit {
-      url = "https://github.com/shougo/unite.vim";
-      rev = "c175ba7df239a5971e4c189ecbc9486b160fbde2";
-      sha256 = "16j5vhmqs04y5rps5g86bgpf91w067gyw9rz47hf0y0a52niy436";
-    };
-    dependencies = [];
+  vim-xkbswitch = vim-xkbswitch.overrideAttrs(old: {
+    patchPhase = ''
+      substituteInPlace plugin/xkbswitch.vim \
+        --replace /usr/local/lib/libxkbswitch.so ${xkb_switch}/lib/libxkbswitch.so
+    '';
+    buildInputs = [ xkb_switch ];
+  });
 
-  };
+  vim-yapf = vim-yapf.overrideAttrs(old: {
+    buildPhase = ''
+      substituteInPlace ftplugin/python_yapf.vim \
+        --replace '"yapf"' '"${python3Packages.yapf}/bin/yapf"'
+    '';
+  });
 
-  vimproc-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vimproc-vim-2018-01-07";
-    src = fetchgit {
-      url = "https://github.com/shougo/vimproc.vim";
-      rev = "2300224d366642f4f8d6f88861535d4ccbe20143";
-      sha256 = "0b8ljqnix8bs667bpymg3s0g5f49fnphgddl6196dj6jvdfn1xia";
-    };
-    dependencies = [];
+  vimproc-vim = vimproc-vim.overrideAttrs(old: {
     buildInputs = [ which ];
 
     buildPhase = ''
@@ -2518,905 +315,32 @@ self = rec {
         --replace vimproc_linux32.so vimproc_unix.so
       make -f make_unix.mak
     '';
-  };
-
-  fugitive-gitlab-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "fugitive-gitlab-vim-2018-07-04";
-    src = fetchgit {
-      url = "https://github.com/shumphrey/fugitive-gitlab.vim";
-      rev = "b8e7b6986c5d13f3e2de2163816af06f74a6f838";
-      sha256 = "1lvll9hjqsm79f0ls84d8b8s12043b9p5qa4i6iwf3v1qbq7kb8d";
-    };
-    dependencies = [];
-
-  };
-
-  gundo-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "gundo-vim-2017-05-09";
-    src = fetchgit {
-      url = "https://github.com/sjl/gundo.vim";
-      rev = "46c443ee9d5854320eb965a1fdee781ba83a070e";
-      sha256 = "0adk7agzmbfv342zw6lc8jad6yjs1wap4c0ca98s0qm2bs0r1hl2";
-    };
-    dependencies = [];
-
-  };
-
-  splice-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "splice-vim-2017-09-03";
-    src = fetchgit {
-      url = "https://github.com/sjl/splice.vim";
-      rev = "b31cb25eea8a92a037e9da9a98b2e6147294c37d";
-      sha256 = "0mqnrmkyms2z5lqy90cy076x3fr9xmd63962wd8n6n6mbin97ihx";
-    };
-    dependencies = [];
-
-  };
-
-  last256 = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "last256-2017-06-11";
-    src = fetchgit {
-      url = "https://github.com/sk1418/last256";
-      rev = "d29320c1fe715b47edaa1be068201ea5a54ab0c0";
-      sha256 = "16njh0p1j166dnf92110vlrj7gmrbsfkbkd8k6s9gfqjzbgd25jv";
-    };
-    dependencies = [];
-
-  };
-
-  alchemist-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "alchemist-vim-2018-06-25";
-    src = fetchgit {
-      url = "https://github.com/slashmili/alchemist.vim";
-      rev = "5575fc8e18695b050b1c4d51623ae37f12ff7648";
-      sha256 = "0s1x0avshxfrqj9vd8bahkw10sn9hmajwch285zib9aynqp5x2ma";
-    };
-    dependencies = [];
-
-  };
-
-  vim-smalls = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-smalls-2015-05-02";
-    src = fetchgit {
-      url = "https://github.com/t9md/vim-smalls";
-      rev = "9619eae81626bd63f88165e0520c467698264e34";
-      sha256 = "0s5z3zv220cg95yky2av6w0jmpc56ysyhsx0596ksvgz5jwhpbad";
-    };
-    dependencies = [];
-
-  };
-
-  vim-hardtime = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-hardtime-2017-03-31";
-    src = fetchgit {
-      url = "https://github.com/takac/vim-hardtime";
-      rev = "d9128568afa62947b7ac8f12c22d88e3de526a6b";
-      sha256 = "097wzfh4n4fnsq2gx4hbmyr731ciky8qcai5aiyh2baybvwshmr5";
-    };
-    dependencies = [];
-
-  };
-
-  vim-expand-region = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-expand-region-2013-08-19";
-    src = fetchgit {
-      url = "https://github.com/terryma/vim-expand-region";
-      rev = "966513543de0ddc2d673b5528a056269e7917276";
-      sha256 = "0l30wjlk4vxr16f1njnvf8aw9yg9p9jisvcxbcg3znsq5q8ix6zv";
-    };
-    dependencies = [];
-
-  };
-
-  vim-multiple-cursors = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-multiple-cursors-2018-07-16";
-    src = fetchgit {
-      url = "https://github.com/terryma/vim-multiple-cursors";
-      rev = "b9e17a51bb2d857f6a5099363232c4fc7715115d";
-      sha256 = "0dd9m0a33r4diwykk5nxya199zimn0n4gmp2mi8fnwk6m1f8fwnw";
-    };
-    dependencies = [];
-
-  };
-
-  vimpreviewpandoc = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vimpreviewpandoc-2018-05-12";
-    src = fetchgit {
-      url = "https://github.com/tex/vimpreviewpandoc";
-      rev = "266d14d362f6c069863b2d63edb683e802e7e3ee";
-      sha256 = "1qhc5vyk7vxrgq11dh1iwkz2a3zd7wfjvyirhhlpx1zx12d6l0ly";
-    };
-    dependencies = [];
-
-  };
-
-  vim-ft-diff_fold = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-ft-diff_fold-2013-02-10";
-    src = fetchgit {
-      url = "https://github.com/thinca/vim-ft-diff_fold";
-      rev = "89771dffd3682ef82a4b3b3e9c971b9909f08e87";
-      sha256 = "0bk95cxkfzamlgv1x2jb1bnfas2pmvvqgpn5fvxddf0andm8sfma";
-    };
-    dependencies = [];
-
-  };
-
-  vim-prettyprint = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-prettyprint-2016-07-16";
-    src = fetchgit {
-      url = "https://github.com/thinca/vim-prettyprint";
-      rev = "d6060d2b1ff1cff71714e126addd3b10883ade12";
-      sha256 = "0mb1ylsq4023ik9wd9iwzlynra2c320xp9h2i79bspapglgd5gk9";
-    };
-    dependencies = [];
-
-  };
-
-  vim-quickrun = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-quickrun-2018-06-19";
-    src = fetchgit {
-      url = "https://github.com/thinca/vim-quickrun";
-      rev = "825f9f195521646f7001f10cad8627c48017311f";
-      sha256 = "0ckcwij5y71dxrga34jxgvf41hs44p4mrd31hbmkz1qrq1i7glpa";
-    };
-    dependencies = [];
-
-  };
-
-  vim-scouter = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-scouter-2014-08-10";
-    src = fetchgit {
-      url = "https://github.com/thinca/vim-scouter";
-      rev = "5221901d4ad6b2ef8b370b336db2aa7f69f2b6dc";
-      sha256 = "0fx64hj1kzrsxz96195d5lm3x88zyycbcr78819mcbgfzyxis6b8";
-    };
-    dependencies = [];
-
-  };
-
-  vim-themis = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-themis-2017-12-28";
-    src = fetchgit {
-      url = "https://github.com/thinca/vim-themis";
-      rev = "691cd3912ba318dbd8d9fa0035fee629b424766d";
-      sha256 = "1mrdaah3iyg35v6cgvr3jav3386czialfcinwa3y9jy14basbqhd";
-    };
-    dependencies = [];
-
-  };
-
-  molokai = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "molokai-2015-11-11";
-    src = fetchgit {
-      url = "https://github.com/tomasr/molokai";
-      rev = "c67bdfcdb31415aa0ade7f8c003261700a885476";
-      sha256 = "1piszjr5kyw43ac1f0jh9z88g824xknshrkchbys9qxlz7pd831s";
-    };
-    dependencies = [];
-
-  };
-
-  vim-solidity = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-solidity-2018-04-17";
-    src = fetchgit {
-      url = "https://github.com/tomlion/vim-solidity";
-      rev = "569bbbedc3898236d5912fed0caf114936112ae4";
-      sha256 = "1qpfbbrm4gjgvbkimhpxyl4fsdqkyw4raf17nw0ibqillz2d3pxx";
-    };
-    dependencies = [];
-
-  };
-
-  tlib_vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "tlib_vim-2018-04-08";
-    src = fetchgit {
-      url = "https://github.com/tomtom/tlib_vim";
-      rev = "ced8f3ebe85b50da2ec0e6d593e6b2e8e6bd243b";
-      sha256 = "08vvd1wpa9k5bid2hh279jjkir2c59ga3527qzinxngmlx8wsbhx";
-    };
-    dependencies = [];
-
-  };
-
-  vim-abolish = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-abolish-2017-03-10";
-    src = fetchgit {
-      url = "https://github.com/tpope/vim-abolish";
-      rev = "b6a8b49e2173ba5a1b34d00e68e0ed8addac3ebd";
-      sha256 = "0i9q3l7r5p8mk4in3c1j4x0jbln7ir9lg1cqjxci0chjjzfzc53m";
-    };
-    dependencies = [];
-
-  };
-
-  vim-commentary = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-commentary-2018-07-11";
-    src = fetchgit {
-      url = "https://github.com/tpope/vim-commentary";
-      rev = "8295187ea1210138c0b171d8e3ec3569936f4c1a";
-      sha256 = "1zgbpgl0n11b4jlgx7h7rr1jbgdib7yf8vmh62cxrdj5hrngb6h6";
-    };
-    dependencies = [];
-
-  };
-
-  vim-dispatch = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-dispatch-2018-07-25";
-    src = fetchgit {
-      url = "https://github.com/tpope/vim-dispatch";
-      rev = "dbb9320d000caa56dfada5f99fe0b5209ef0590b";
-      sha256 = "1yqc8fwyf66jckvjf8z8h62399kzgfdzcbnnd9ax8q3wjyk3lfsh";
-    };
-    dependencies = [];
-
-  };
-
-  vim-eunuch = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-eunuch-2018-07-13";
-    src = fetchgit {
-      url = "https://github.com/tpope/vim-eunuch";
-      rev = "e5f4f955d53e07192fb330ff272604c1b8290532";
-      sha256 = "0cv3j3bkapb45ywlfiz8csxmz7gnsdngwgmkrgfg6sljnsgav2za";
-    };
-    dependencies = [];
-
-  };
-
-  vim-fireplace = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-fireplace-2018-06-01";
-    src = fetchgit {
-      url = "https://github.com/tpope/vim-fireplace";
-      rev = "1ef0f0726cadd96547a5f79103b66339f170da02";
-      sha256 = "0ihhd34bl98xssa602386ji013pjj6xnkgww3y2wg73sx2nk6qc4";
-    };
-    dependencies = [];
-
-  };
-
-  vim-flagship = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-flagship-2018-07-24";
-    src = fetchgit {
-      url = "https://github.com/tpope/vim-flagship";
-      rev = "5e70829913900eb3a37dd6c055ac660c33fa6bff";
-      sha256 = "1v2kaisydi1vjfy66bwq2whllbickr3ppp9wqxjqv2qhfsnqny8f";
-    };
-    dependencies = [];
-
-  };
-
-  vim-fugitive = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-fugitive-2018-07-25";
-    src = fetchgit {
-      url = "https://github.com/tpope/vim-fugitive";
-      rev = "6bab1a0c398a9a6aaef607a5361709393eba79ac";
-      sha256 = "1rsiha7a0k7ib455dvxrl46zl7x386i70rhwnbmy8lk6wa32mz7v";
-    };
-    dependencies = [];
-
-  };
+  });
 
-  vim-pathogen = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-pathogen-2018-04-05";
-    src = fetchgit {
-      url = "https://github.com/tpope/vim-pathogen";
-      rev = "06da921608b971fb47603671bcafdb2843992eb3";
-      sha256 = "1mxkp2yqqmfl0lq6kmkl716y9x8cdm7aibb376azydxlsbqv4qmi";
-    };
-    dependencies = [];
-
-  };
-
-  vim-projectionist = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-projectionist-2018-07-24";
-    src = fetchgit {
-      url = "https://github.com/tpope/vim-projectionist";
-      rev = "873e492b4bb92834beb186028fbf6d4e5edfca5a";
-      sha256 = "0np7vm97y5ga8gz6qma15awcmgxi41hljp50bgy49sz62z8h0psz";
-    };
-    dependencies = [];
-
-  };
-
-  vim-repeat = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-repeat-2018-07-02";
-    src = fetchgit {
-      url = "https://github.com/tpope/vim-repeat";
-      rev = "43d2678fa59d068c815d8298331c195e850ff5a7";
-      sha256 = "0nb20503ka95qbx0mwhhni15drc86gfcd6kg92nf65llrvyfivk0";
-    };
-    dependencies = [];
-
-  };
-
-  vim-rhubarb = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-rhubarb-2018-07-21";
-    src = fetchgit {
-      url = "https://github.com/tpope/vim-rhubarb";
-      rev = "848841083d5d4550b5ebbd3bd67dfb3e5146b64a";
-      sha256 = "19b36lbsry994y78lnnnjl83q2laz7j6xvk6h6xbl8kj10v6m4l9";
-    };
-    dependencies = [];
-
-  };
-
-  vim-scriptease = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-scriptease-2018-07-18";
-    src = fetchgit {
-      url = "https://github.com/tpope/vim-scriptease";
-      rev = "baea08bb5fff63cd2adf6e46429cad1f75bc7300";
-      sha256 = "01xfnda5paywfsb6ziq00zcgia7ls0v2924i1mcnvnqg4md890x4";
-    };
-    dependencies = [];
-
-  };
-
-  vim-sensible = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-sensible-2018-07-16";
-    src = fetchgit {
-      url = "https://github.com/tpope/vim-sensible";
-      rev = "c82c6d4978be28adcf85dc1e61fa428e801bd525";
-      sha256 = "0w87wic0qx20h36k075lvmj53glxkcyv8hkrx5aw4xqxvbq5fk6q";
-    };
-    dependencies = [];
-
-  };
-
-  vim-sleuth = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-sleuth-2018-05-24";
-    src = fetchgit {
-      url = "https://github.com/tpope/vim-sleuth";
-      rev = "478e495d40434fb42c655ea2881c8c6b114ecd49";
-      sha256 = "1dicdxxfd5sywk02hbpknbr100n96qggy3zy5v520dxdknq0sccz";
-    };
-    dependencies = [];
-
-  };
-
-  vim-speeddating = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-speeddating-2017-05-24";
-    src = fetchgit {
-      url = "https://github.com/tpope/vim-speeddating";
-      rev = "a418667791f03694065948342f2d6c5cca8d0f32";
-      sha256 = "1wm33izawazh0dy70zjk6rkg30yrlldba5r1gypnr4barps702gw";
-    };
-    dependencies = [];
-
-  };
-
-  vim-surround = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-surround-2018-07-23";
-    src = fetchgit {
-      url = "https://github.com/tpope/vim-surround";
-      rev = "597068870b8f093a8b2d11536c62ff31222ee8d0";
-      sha256 = "080kcgb5ayxs49q1p1cms6k1byf2fzzy8bglnspr511m9fql5a9x";
-    };
-    dependencies = [];
-
-  };
+  YankRing-vim = YankRing-vim.overrideAttrs(old: {
+    sourceRoot = ".";
+  });
 
-  vim-tbone = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-tbone-2018-06-27";
-    src = fetchgit {
-      url = "https://github.com/tpope/vim-tbone";
-      rev = "8bc7348f658c32bea57365aa6acf3a7dde12e737";
-      sha256 = "17s2b66xxkvv17pzf3xrw6ba7y9awpd2k2d21v0pag924c5hi6d4";
-    };
-    dependencies = [];
-
-  };
-
-  vim-vinegar = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-vinegar-2018-06-20";
-    src = fetchgit {
-      url = "https://github.com/tpope/vim-vinegar";
-      rev = "7b9dff85aec34a0be1a6980b2e686a5d27d70f63";
-      sha256 = "033w3wsg5ijwmkq5l1d5r7l0mqfy784sbh8mbjcsx13ndl8fc2g8";
-    };
-    dependencies = [];
-
-  };
-
-  hasksyn = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "hasksyn-2014-09-03";
-    src = fetchgit {
-      url = "https://github.com/travitch/hasksyn";
-      rev = "c434040bf13a17ca20a551223021b3ace7e453b9";
-      sha256 = "09998lnfcshqis5m062wlag6y476imq9jday9gp4ayjjl1cp3cwx";
-    };
-    dependencies = [];
-
-  };
-
-  vim-haskellconceal = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-haskellconceal-2017-06-15";
-    src = fetchgit {
-      url = "https://github.com/twinside/vim-haskellconceal";
-      rev = "802f82a5afee56e9e1251e6f756104a3bd114234";
-      sha256 = "1kh6853hi4rgl4z1xs8kz9l1q9w7lh0r42y2m0rabfpr6yh3091r";
-    };
-    dependencies = [];
-
-  };
-
-  caw-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "caw-vim-2018-06-16";
-    src = fetchgit {
-      url = "https://github.com/tyru/caw.vim";
-      rev = "e82ae00f3fc03289d4054b44f100025a1bc81939";
-      sha256 = "16sbrc34nxbrgpj8gyi1drwh52qg3z2nq4frd5f2nfgxsgjrjjjc";
-    };
-    dependencies = [];
-
-  };
-
-  open-browser-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "open-browser-vim-2018-04-26";
-    src = fetchgit {
-      url = "https://github.com/tyru/open-browser.vim";
-      rev = "de4eeb085051e9b56dd5574eba7c7e72feb21246";
-      sha256 = "1fgp4wwizpknfwscxraqqaxrhvwp9l1mnjwj3llk2x0n9qcqf1db";
-    };
-    dependencies = [];
-
-  };
-
-  neco-look = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "neco-look-2018-01-21";
-    src = fetchgit {
-      url = "https://github.com/ujihisa/neco-look";
-      rev = "4ead88e70f359fb9cef6537ed9c336b7673c1b4c";
-      sha256 = "1lszbif7ymdjch1ypnr1nihs6gfbhb86sj6nz3dwrbgsl454nnrj";
-    };
-    dependencies = [];
-
-  };
-
-  youcompleteme = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "youcompleteme-2018-07-25";
-    src = fetchgit {
-      url = "https://github.com/valloric/youcompleteme";
-      rev = "15362d9cb8ec054c929e9a202252825eabe47e58";
-      sha256 = "0nk3wqlz15pvm6hbla8shd3sskbdmwd1x9cq85la223h6s138hwy";
-    };
-    dependencies = [];
+  youcompleteme = youcompleteme.overrideAttrs(old: {
     buildPhase = ''
       substituteInPlace plugin/youcompleteme.vim \
         --replace "'ycm_path_to_python_interpreter', '''" \
-                  "'ycm_path_to_python_interpreter', '${python}/bin/python'"
+        "'ycm_path_to_python_interpreter', '${python}/bin/python'"
 
       rm -r third_party/ycmd
       ln -s ${ycmd}/lib/ycmd third_party
     '';
 
     meta = {
-      description = "Fastest non utf-8 aware word and C completion engine for Vim";
+      description = "A code-completion engine for Vim";
       homepage = https://github.com/Valloric/YouCompleteMe;
       license = stdenv.lib.licenses.gpl3;
       maintainers = with stdenv.lib.maintainers; [marcweber jagajaga];
       platforms = stdenv.lib.platforms.unix;
     };
-  };
-
-  vim-airline = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-airline-2018-07-24";
-    src = fetchgit {
-      url = "https://github.com/vim-airline/vim-airline";
-      rev = "59f3669a42728406da6d1b948608cae120d1453f";
-      sha256 = "12rgvaqfqh0mfv85qdqpr5zn3q3v6npbk11al62fzpa9s55q0025";
-    };
-    dependencies = [];
-
-  };
-
-  vim-airline-themes = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-airline-themes-2018-06-14";
-    src = fetchgit {
-      url = "https://github.com/vim-airline/vim-airline-themes";
-      rev = "b35f952a6ae6768ae2c6a9f4febc7945cc311f74";
-      sha256 = "1j9y9irrzsq1bwp3b22ls016byi0yc9ymigzhw0n180rk6nb36c7";
-    };
-    dependencies = [];
-
-  };
-
-  vim-pandoc = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-pandoc-2018-07-23";
-    src = fetchgit {
-      url = "https://github.com/vim-pandoc/vim-pandoc";
-      rev = "0060e5c6ac9e4a2391e8a36359dcbbb5827978cb";
-      sha256 = "0y0ppy1imy4kjkyflxwh5hfp6vcs93xia6myyd5sc6l3gbcg1lrk";
-    };
-    dependencies = [];
-
-  };
-
-  vim-pandoc-after = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-pandoc-after-2017-11-22";
-    src = fetchgit {
-      url = "https://github.com/vim-pandoc/vim-pandoc-after";
-      rev = "844f27debf4d72811049167f97191a3b551ddfd5";
-      sha256 = "0i99g9lnk1xzarw3vzbc47i4bg4iybaywkjvd2krln4q426a6saf";
-    };
-    dependencies = [];
-
-  };
-
-  vim-pandoc-syntax = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-pandoc-syntax-2017-04-13";
-    src = fetchgit {
-      url = "https://github.com/vim-pandoc/vim-pandoc-syntax";
-      rev = "56e8e41ef863a0a7d33d85c3c0c895aa6e9e62d3";
-      sha256 = "19ll4zrw5yd0frgsbi7pg9b68lmy4bfiwbnwgzii7inifrqsykfw";
-    };
-    dependencies = [];
-
-  };
-
-  vim-ruby = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-ruby-2018-07-08";
-    src = fetchgit {
-      url = "https://github.com/vim-ruby/vim-ruby";
-      rev = "3e0f241b544c63d44ac925ec557ce6735b24d9cf";
-      sha256 = "16ywzvb78pxinls0za1bzcds9aznsgvds8q2l4wimp4q9wrs1scs";
-    };
-    dependencies = [];
-
-  };
-
-  Colour-Sampler-Pack = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "Colour-Sampler-Pack-2012-11-29";
-    src = fetchgit {
-      url = "https://github.com/vim-scripts/Colour-Sampler-Pack";
-      rev = "05cded87b2ef29aaa9e930230bb88e23abff4441";
-      sha256 = "03v2r18sfgs0xbgy9p56pxfdg0lsk6m7wyr5hw63wm1nzpwiipg3";
-    };
-    dependencies = [];
-
-  };
-
-  Improved-AnsiEsc = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "Improved-AnsiEsc-2015-08-25";
-    src = fetchgit {
-      url = "https://github.com/vim-scripts/Improved-AnsiEsc";
-      rev = "e1c59a8e9203fab6b9150721f30548916da73351";
-      sha256 = "1smjs4kz2kmzprzp9az4957675nakb43146hshbby39j5xz4jsbz";
-    };
-    dependencies = [];
-
-  };
-
-  Rename = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "Rename-2011-08-30";
-    src = fetchgit {
-      url = "https://github.com/vim-scripts/Rename";
-      rev = "b240f28d2ede65fa77cd99fe045efe79202f7a34";
-      sha256 = "1d1myg4zyc281zcc1ba9idbgcgxndb4a0jwqr4yqxhhzdgszw46r";
-    };
-    dependencies = [];
-
-  };
-
-  ReplaceWithRegister = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "ReplaceWithRegister-2014-10-30";
-    src = fetchgit {
-      url = "https://github.com/vim-scripts/ReplaceWithRegister";
-      rev = "832efc23111d19591d495dc72286de2fb0b09345";
-      sha256 = "0mb0sx85j1k59b1zz95r4vkq4kxlb4krhncq70mq7fxrs5bnhq8g";
-    };
-    dependencies = [];
-
-  };
-
-  YankRing-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "YankRing-vim-2015-07-28";
-    src = fetchgit {
-      url = "https://github.com/vim-scripts/YankRing.vim";
-      rev = "28854abef8fa4ebd3cb219aefcf22566997d8f65";
-      sha256 = "0zdp8pdsqgrh6lfw8ipjhrig6psvmdxkim9ik801y3r373sk2hxw";
-    };
-    dependencies = [];
-
-  };
-
-  a-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "a-vim-2010-11-06";
-    src = fetchgit {
-      url = "https://github.com/vim-scripts/a.vim";
-      rev = "2cbe946206ec622d9d8cf2c99317f204c4d41885";
-      sha256 = "0h62v9z5bh9xmaq22pqdb3z79i84a5rknqm68mjpy7nq7s3q42fa";
-    };
-    dependencies = [];
-
-  };
-
-  align = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "align-2012-08-07";
-    src = fetchgit {
-      url = "https://github.com/vim-scripts/align";
-      rev = "787662fe90cd057942bc5b682fd70c87e1a9dd77";
-      sha256 = "0acacr572kfh7jvavbw61q5pkwrpi1albgancma063rpax1pddgp";
-    };
-    dependencies = [];
-
-  };
-
-  argtextobj-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "argtextobj-vim-2010-10-17";
-    src = fetchgit {
-      url = "https://github.com/vim-scripts/argtextobj.vim";
-      rev = "f3fbe427f7b4ec436416a5816d714dc917dc530b";
-      sha256 = "1l4jh5hdmky1qj5z26jpnk49a6djjcvzyyr6pknrrgb8rzkiln48";
-    };
-    dependencies = [];
-
-  };
-
-  bats-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "bats-vim-2013-07-03";
-    src = fetchgit {
-      url = "https://github.com/vim-scripts/bats.vim";
-      rev = "3c283f594ff8bc7fb0c25cd07ebef0f17385f94a";
-      sha256 = "06f3hdf7y5gpwmc6inrhk938qmn7cr6mbk00amrnl1qjvk09givx";
-    };
-    dependencies = [];
-
-  };
-
-  changeColorScheme-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "changeColorScheme-vim-2010-10-17";
-    src = fetchgit {
-      url = "https://github.com/vim-scripts/changeColorScheme.vim";
-      rev = "b041d49f828629d72f2232531a230d1ec5de2405";
-      sha256 = "0pybhsg9k9252d4ifdc4gsar8lkmfzbvs6xkzqq1m6f35l9wqk09";
-    };
-    dependencies = [];
-
-  };
-
-  matchit-zip = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "matchit-zip-2010-10-17";
-    src = fetchgit {
-      url = "https://github.com/vim-scripts/matchit.zip";
-      rev = "ced6c409c9beeb0b4142d21906606bd194411d1d";
-      sha256 = "1s9c4lnsmbfm97bp22jrmcp5lga5ihx23lzqqncvv7rcizkvr3dm";
-    };
-    dependencies = [];
-
-  };
-
-  mayansmoke-git = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "mayansmoke-git-2010-10-17";
-    src = fetchgit {
-      url = "https://github.com/vim-scripts/mayansmoke.git";
-      rev = "168883af7aec05f139af251f47eadd5dfb802c9d";
-      sha256 = "1xxcky7i6sx7f1q8xka4gd2xg78w6sqjvqrdwgrdzv93fhf82rpd";
-    };
-    dependencies = [];
-
-  };
-
-  random-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "random-vim-2010-10-17";
-    src = fetchgit {
-      url = "https://github.com/vim-scripts/random.vim";
-      rev = "b2d85eb24a38074eab37a5acf2a295e1f2ad8989";
-      sha256 = "1lzy2cq4jcrsqyxlnbnd0y6j4mabm09bi7q22lf6vinqlb84w7sp";
-    };
-    dependencies = [];
-
-  };
-
-  tabmerge = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "tabmerge-2010-10-17";
-    src = fetchgit {
-      url = "https://github.com/vim-scripts/tabmerge";
-      rev = "074e5f06f26e7108a0570071a0f938a821768c06";
-      sha256 = "0prkyza1n49cdaslcr57w8zv15vw78mlqbzib2xipmawzjq02idq";
-    };
-    dependencies = [];
-
-  };
-
-  taglist-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "taglist-vim-2010-10-17";
-    src = fetchgit {
-      url = "https://github.com/vim-scripts/taglist.vim";
-      rev = "53041fbc45398a9af631a20657e109707a455339";
-      sha256 = "07aa2gfc73lznyi7w7cybzanspza3p67cv5hxr21g43zhs5k9izd";
-    };
-    dependencies = [];
-
-  };
-
-  wombat256-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "wombat256-vim-2010-10-17";
-    src = fetchgit {
-      url = "https://github.com/vim-scripts/wombat256.vim";
-      rev = "8734ba45dcf5e38c4d2686b35c94f9fcb30427e2";
-      sha256 = "01fdvfwdfqn5xi88lfanb4lb6jmn1ma6wq6d9jj2x7qamdbpvsrg";
-    };
-    dependencies = [];
-
-  };
-
-  vimoutliner = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vimoutliner-2018-07-04";
-    src = fetchgit {
-      url = "https://github.com/vimoutliner/vimoutliner";
-      rev = "aad0a213069b8a1b5de91cca07d153fc8352c957";
-      sha256 = "0pgkgs6xky0skhpp3s9vrw3h48j80im0j39q4vc2b3pd1ydy6rx2";
-    };
-    dependencies = [];
-
-  };
-
-  vimwiki = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vimwiki-2018-07-21";
-    src = fetchgit {
-      url = "https://github.com/vimwiki/vimwiki";
-      rev = "9f797f6ad9fd2a5e943bc99b5f9cd44b2cbd0fb4";
-      sha256 = "0snqxbfpc9jy9zy3n0g2xc01kgxznnnd0g00v2nb17vs3m1b7arc";
-    };
-    dependencies = [];
-
-  };
-
-  dhall-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "dhall-vim-2018-07-23";
-    src = fetchgit {
-      url = "https://github.com/vmchale/dhall-vim";
-      rev = "5bdddb86e660f172841109a28e2a98efb76448ce";
-      sha256 = "0rkzgn5ny84624q7phc8wdm4nvkq2ypkq5lkbmahhm26cxvlkqlq";
-    };
-    dependencies = [];
-
-  };
-
-  ale = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "ale-2018-07-25";
-    src = fetchgit {
-      url = "https://github.com/w0rp/ale";
-      rev = "79ffdde267323a206a96227904549c370f27decf";
-      sha256 = "02np0jnz50qs3fl6n0wh1xfzgq8lbfgagf2mw8cbj8a4gmzx67fg";
-    };
-    dependencies = [];
-
-  };
-
-  vim-wakatime = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-wakatime-2018-07-14";
-    src = fetchgit {
-      url = "https://github.com/wakatime/vim-wakatime";
-      rev = "25aa400fd1f1e3d689c721605a65e015024dc4cf";
-      sha256 = "11lk5k8wl3kxp6p2i0nnp56f4wcaniy40kzs3anjdwlzya631rg2";
-    };
-    dependencies = [];
-    buildInputs = [ python ];
-  };
-
-  targets-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "targets-vim-2018-05-27";
-    src = fetchgit {
-      url = "https://github.com/wellle/targets.vim";
-      rev = "c3042dc18acc0dfcee479310d3efc6aefe92db75";
-      sha256 = "0shnlgwrxzrd0m3k6hnmr66i2l4zknp0pn7f71d2frx937gih34q";
-    };
-    dependencies = [];
-
-  };
-
-  vim-dirdiff = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-dirdiff-2018-01-30";
-    src = fetchgit {
-      url = "https://github.com/will133/vim-dirdiff";
-      rev = "b5a3d59bfbeb5cef7dbadbe69c455b470988b58c";
-      sha256 = "16hc88k00xa757k0h53r1sbqwxdxdy0118yl2vsigd6rqk474nw1";
-    };
-    dependencies = [];
-
-  };
-
-  command-t = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "command-t-2017-11-16";
-    src = fetchgit {
-      url = "https://github.com/wincent/command-t";
-      rev = "7147ba92c9c1eef8269fd47d47ba636ce7f365a6";
-      sha256 = "171z1jjjv1l15rh3i2hc400vjf4zns8sjvda0vcjkx2717ax658r";
-    };
-    dependencies = [];
-    buildInputs = [ ruby rake ];
-    buildPhase = ''
-      rake make
-      rm ruby/command-t/ext/command-t/*.o
-    '';
-  };
-
-  vim-easytags = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-easytags-2015-07-01";
-    src = fetchgit {
-      url = "https://github.com/xolox/vim-easytags";
-      rev = "72a8753b5d0a951e547c51b13633f680a95b5483";
-      sha256 = "0i8ha1fa5d860b1mi0xp8kwsgb0b9vbzcg1bldzv6s5xd9yyi12i";
-    };
-    dependencies = ["vim-misc"];
-
-  };
-
-  vim-misc = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-misc-2015-05-21";
-    src = fetchgit {
-      url = "https://github.com/xolox/vim-misc";
-      rev = "3e6b8fb6f03f13434543ce1f5d24f6a5d3f34f0b";
-      sha256 = "0rd9788dyfc58py50xbiaz5j7nphyvf3rpp3yal7yq2dhf0awwfi";
-    };
-    dependencies = [];
-
-  };
-
-  vim-latex-live-preview = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-latex-live-preview-2017-11-09";
-    src = fetchgit {
-      url = "https://github.com/xuhdev/vim-latex-live-preview";
-      rev = "9855f084d0751dbd40a8cb56518f239e5eb1a624";
-      sha256 = "0linzdq2zrz5yfpqa51n2i9vrwr0x2r93ckx6n1ngyiw535ddafy";
-    };
-    dependencies = [];
-
-  };
-
-  nim-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "nim-vim-2018-05-20";
-    src = fetchgit {
-      url = "https://github.com/zah/nim.vim";
-      rev = "704dd5d63cac54c22fe25c6efbcf18796df412e7";
-      sha256 = "0azk3m33c47ja24iirlrjqphmd8rzlivinqkx69izmd7l150ds2m";
-    };
-    dependencies = [];
-
-  };
-
-  deoplete-go = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "deoplete-go-2018-07-03";
-    src = fetchgit {
-      url = "https://github.com/zchee/deoplete-go";
-      rev = "2d402d856d98d4a351fdcf40d837da0cf52ccdfd";
-      sha256 = "0hj5bhfhd9am11ixaxad370p982bjig53mbm74fi6slhjpikdrdq";
-    };
-    dependencies = [];
-    buildInputs = [ python3 ];
-    buildPhase = ''
-      pushd ./rplugin/python3/deoplete/ujson
-      python3 setup.py build --build-base=$PWD/build --build-lib=$PWD/build
-      popd
-      find ./rplugin/ -name "ujson*.so" -exec mv -v {} ./rplugin/python3/ \;
-    '';
-  };
-
-  deoplete-jedi = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "deoplete-jedi-2018-07-10";
-    src = fetchgit {
-      url = "https://github.com/zchee/deoplete-jedi";
-      rev = "5540e76ee3194f2eaa2df51945297cb847a1dfa8";
-      sha256 = "0mqq42v4l2y0hkcs83j0cp7hxamv6gn5g8z4bccrbssgrsv61cg6";
-    };
-    dependencies = [];
-
-  };
-
-  zig-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "zig-vim-2018-07-18";
-    src = fetchgit {
-      url = "https://github.com/zig-lang/zig.vim";
-      rev = "2dc38afd6af04ea563a0d0d6f61891b5c820e8fe";
-      sha256 = "1nyrg87biwq6b3jk40fyjd5mlnl4pbvwsqi9095y8gjanf9a9dck";
-    };
-    dependencies = [];
-
-  };
-
-} // lib.optionalAttrs (config.allowAliases or true) (with self; {
-
-  # aliasess
+  });
+}) // lib.optionalAttrs (config.allowAliases or true) (with self; {
+  # aliases
   airline             = vim-airline;
   alternative         = a-vim; # backwards compat, added 2014-10-21
   bats                = bats-vim;
@@ -3431,7 +355,7 @@ self = rec {
   Colour_Sampler_Pack = Colour-Sampler-Pack;
   command_T           = command-t; # backwards compat, added 2014-10-18
   commentary          = vim-commentary;
-  committia           = committia-vim-git;
+  committia           = committia-vim;
   concealedyank       = concealedyank-vim;
   context-filetype    = context_filetype-vim;
   Cosco               = cosco-vim;
@@ -3439,7 +363,7 @@ self = rec {
   CSApprox            = csapprox;
   csv                 = csv-vim;
   ctrlp               = ctrlp-vim;
-  cute-python         = vim-cute-python-git;
+  cute-python         = vim-cute-python;
   denite              = denite-nvim;
   easy-align          = vim-easy-align;
   easygit             = vim-easygit;
@@ -3465,19 +389,16 @@ self = rec {
   ipython             = vim-ipython;
   latex-live-preview  = vim-latex-live-preview;
   maktaba             = vim-maktaba;
-  mayansmoke          = mayansmoke-git;
   multiple-cursors    = vim-multiple-cursors;
   necoGhc             = neco-ghc; # backwards compat, added 2014-10-18
   neocomplete         = neocomplete-vim;
   neoinclude          = neoinclude-vim;
   neomru              = neomru-vim;
   neosnippet          = neosnippet-vim;
-  neoyank             = neoyank-vim-git;
   The_NERD_Commenter  = nerdcommenter;
   The_NERD_tree       = nerdtree;
   open-browser        = open-browser-vim;
   pathogen            = vim-pathogen;
-  peskcolor           = peskcolor-vim-git;
   polyglot            = vim-polyglot;
   prettyprint         = vim-prettyprint;
   quickrun            = vim-quickrun;
@@ -3511,8 +432,7 @@ self = rec {
   tslime              = tslime-vim;
   unite               = unite-vim;
   UltiSnips           = ultisnips;
-  vim-grepper         = vim-grepper-git;
-  vim-test            = vim-test-git;
+  vim-addon-vim2nix   = vim2nix;
   vimproc             = vimproc-vim;
   vimshell            = vimshell-vim;
   vinegar             = vim-vinegar;
@@ -3524,5 +444,6 @@ self = rec {
   YouCompleteMe       = youcompleteme;
   xterm-color-table   = xterm-color-table-vim;
   zeavim              = zeavim-vim;
+
 });
 in self
diff --git a/pkgs/misc/vim-plugins/generated.nix b/pkgs/misc/vim-plugins/generated.nix
new file mode 100644
index 000000000000..e1a8d0ae1f93
--- /dev/null
+++ b/pkgs/misc/vim-plugins/generated.nix
@@ -0,0 +1,3272 @@
+# This file has been generated by ./pkgs/misc/vim-plugins/update.py. Do not edit!
+{ buildVimPluginFrom2Nix, fetchFromGitHub }:
+
+{
+  a-vim = buildVimPluginFrom2Nix {
+    name = "a-vim-2010-11-06";
+    src = fetchFromGitHub {
+      owner = "vim-scripts";
+      repo = "a.vim";
+      rev = "2cbe946206ec622d9d8cf2c99317f204c4d41885";
+      sha256 = "0h62v9z5bh9xmaq22pqdb3z79i84a5rknqm68mjpy7nq7s3q42fa";
+    };
+  };
+
+  ack-vim = buildVimPluginFrom2Nix {
+    name = "ack-vim-2018-02-27";
+    src = fetchFromGitHub {
+      owner = "mileszs";
+      repo = "ack.vim";
+      rev = "36e40f9ec91bdbf6f1adf408522a73a6925c3042";
+      sha256 = "0yppr89hd1jyp0pj56hxdjbn32sr7pj3mihd18wxispvl5dqd6fm";
+    };
+  };
+
+  acp = buildVimPluginFrom2Nix {
+    name = "acp-2013-02-05";
+    src = fetchFromGitHub {
+      owner = "eikenb";
+      repo = "acp";
+      rev = "5c627cec37d0d3b1670cb250d84e176e8b0c644e";
+      sha256 = "0h7s4nvxin7m2caka7g1hhlxj1bbiwsvw8s2lqwlh7nq43v23ghg";
+    };
+  };
+
+  agda-vim = buildVimPluginFrom2Nix {
+    name = "agda-vim-2018-05-23";
+    src = fetchFromGitHub {
+      owner = "derekelkins";
+      repo = "agda-vim";
+      rev = "24169e70c1dbd784349b1551b6a3753680d9bb87";
+      sha256 = "1bn2g89dvwccfl4ki07jb8iydb3d0s4rm7z5gv5q1bv3lccndax6";
+    };
+  };
+
+  alchemist-vim = buildVimPluginFrom2Nix {
+    name = "alchemist-vim-2018-09-02";
+    src = fetchFromGitHub {
+      owner = "slashmili";
+      repo = "alchemist.vim";
+      rev = "35e7e3062d1661b1c081765ed05bd8f0f5265183";
+      sha256 = "08i2nzsaq73iz8wkryq5nly3hl0xb3zy16zk7k28bslvyj3ricnc";
+    };
+  };
+
+  ale = buildVimPluginFrom2Nix {
+    name = "ale-2018-09-14";
+    src = fetchFromGitHub {
+      owner = "w0rp";
+      repo = "ale";
+      rev = "f1f2a222281c9e489c3ca6a4f72329c08d4646a6";
+      sha256 = "0dv0icsg9cmaib9waipj3kz29hczs17kzxbrv46a4y7cb4vcb0jd";
+    };
+  };
+
+  align = buildVimPluginFrom2Nix {
+    name = "align-2012-08-08";
+    src = fetchFromGitHub {
+      owner = "vim-scripts";
+      repo = "align";
+      rev = "787662fe90cd057942bc5b682fd70c87e1a9dd77";
+      sha256 = "0acacr572kfh7jvavbw61q5pkwrpi1albgancma063rpax1pddgp";
+    };
+  };
+
+  argtextobj-vim = buildVimPluginFrom2Nix {
+    name = "argtextobj-vim-2010-10-18";
+    src = fetchFromGitHub {
+      owner = "vim-scripts";
+      repo = "argtextobj.vim";
+      rev = "f3fbe427f7b4ec436416a5816d714dc917dc530b";
+      sha256 = "1l4jh5hdmky1qj5z26jpnk49a6djjcvzyyr6pknrrgb8rzkiln48";
+    };
+  };
+
+  auto-pairs = buildVimPluginFrom2Nix {
+    name = "auto-pairs-2017-07-03";
+    src = fetchFromGitHub {
+      owner = "jiangmiao";
+      repo = "auto-pairs";
+      rev = "f0019fc6423e7ce7bbd01d196a7e027077687fda";
+      sha256 = "1kzrdq3adwxwm3fw65g05ww9405lwqi368win5kayamyj9i0z7r6";
+    };
+  };
+
+  awesome-vim-colorschemes = buildVimPluginFrom2Nix {
+    name = "awesome-vim-colorschemes-2018-01-20";
+    src = fetchFromGitHub {
+      owner = "rafi";
+      repo = "awesome-vim-colorschemes";
+      rev = "8d2b6657bdbe4f7253e320c741bc4c1fc2f2f41d";
+      sha256 = "1wfm6rsmyqldxwcz0ic4rq7kf00fgsx00rg42cl9yya35nqiri2z";
+    };
+  };
+
+  base16-vim = buildVimPluginFrom2Nix {
+    name = "base16-vim-2018-05-24";
+    src = fetchFromGitHub {
+      owner = "chriskempson";
+      repo = "base16-vim";
+      rev = "fcce6bce6a2f4b14eea7ea388031c0aa65e4b67d";
+      sha256 = "0wi8k80v2brmxqbkk0lrvl4v2sslkjfwpvflm55b3n0ii8qy39nk";
+    };
+  };
+
+  bats-vim = buildVimPluginFrom2Nix {
+    name = "bats-vim-2013-07-03";
+    src = fetchFromGitHub {
+      owner = "vim-scripts";
+      repo = "bats.vim";
+      rev = "3c283f594ff8bc7fb0c25cd07ebef0f17385f94a";
+      sha256 = "06f3hdf7y5gpwmc6inrhk938qmn7cr6mbk00amrnl1qjvk09givx";
+    };
+  };
+
+  calendar-vim = buildVimPluginFrom2Nix {
+    name = "calendar-vim-2018-08-05";
+    src = fetchFromGitHub {
+      owner = "itchyny";
+      repo = "calendar.vim";
+      rev = "1f20b779171d4d3a20abd47508692fbae32e3188";
+      sha256 = "01aiaslaww117kdwf7qxjc647g6bxcqr694mi3l0llblq549ih5l";
+    };
+  };
+
+  caw-vim = buildVimPluginFrom2Nix {
+    name = "caw-vim-2018-09-13";
+    src = fetchFromGitHub {
+      owner = "tyru";
+      repo = "caw.vim";
+      rev = "2427ba1379b1bb3c7b737921219a346f10a21ad8";
+      sha256 = "1cwx0lpf0xvrqmbjg83y79j9f4gjdkl7iickg9ypzhdxhld0i972";
+    };
+  };
+
+  changeColorScheme-vim = buildVimPluginFrom2Nix {
+    name = "changeColorScheme-vim-2010-10-18";
+    src = fetchFromGitHub {
+      owner = "vim-scripts";
+      repo = "changeColorScheme.vim";
+      rev = "b041d49f828629d72f2232531a230d1ec5de2405";
+      sha256 = "0pybhsg9k9252d4ifdc4gsar8lkmfzbvs6xkzqq1m6f35l9wqk09";
+    };
+  };
+
+  CheckAttach = buildVimPluginFrom2Nix {
+    name = "CheckAttach-2018-09-02";
+    src = fetchFromGitHub {
+      owner = "chrisbra";
+      repo = "CheckAttach";
+      rev = "e9167ad91e85d401441b8ac64b8dcbe3d0cf4df7";
+      sha256 = "1xif7lplm35scb36pzh2mq24j2khyzriiaqa2lzhwfilb7nq9c91";
+    };
+  };
+
+  clang_complete = buildVimPluginFrom2Nix {
+    name = "clang_complete-2018-01-18";
+    src = fetchFromGitHub {
+      owner = "Rip-Rip";
+      repo = "clang_complete";
+      rev = "0918788ea0b9dc4c753ffd162c95f890ae57a275";
+      sha256 = "19hf7xrx1lsvn5rhwmc0qc1qzpb365j1d0jzvihd99p0zkgzgj1p";
+    };
+  };
+
+  clighter8 = buildVimPluginFrom2Nix {
+    name = "clighter8-2018-07-25";
+    src = fetchFromGitHub {
+      owner = "bbchung";
+      repo = "clighter8";
+      rev = "839993b60dc4a19a58e4c7e7db1df04d911bb181";
+      sha256 = "01r92idbym2p1hiqszrprrl1hrqzz2yhzv8n08m8gycd7m227cwg";
+    };
+  };
+
+  Colour-Sampler-Pack = buildVimPluginFrom2Nix {
+    name = "Colour-Sampler-Pack-2012-11-30";
+    src = fetchFromGitHub {
+      owner = "vim-scripts";
+      repo = "Colour-Sampler-Pack";
+      rev = "05cded87b2ef29aaa9e930230bb88e23abff4441";
+      sha256 = "03v2r18sfgs0xbgy9p56pxfdg0lsk6m7wyr5hw63wm1nzpwiipg3";
+    };
+  };
+
+  command-t = buildVimPluginFrom2Nix {
+    name = "command-t-2017-11-17";
+    src = fetchFromGitHub {
+      owner = "wincent";
+      repo = "command-t";
+      rev = "7147ba92c9c1eef8269fd47d47ba636ce7f365a6";
+      sha256 = "171z1jjjv1l15rh3i2hc400vjf4zns8sjvda0vcjkx2717ax658r";
+      fetchSubmodules = true;
+    };
+  };
+
+  committia-vim = buildVimPluginFrom2Nix {
+    name = "committia-vim-2018-09-16";
+    src = fetchFromGitHub {
+      owner = "rhysd";
+      repo = "committia.vim";
+      rev = "7d762c61b3907249cc1f13ec19c72ccd02ed1ade";
+      sha256 = "0sq40m748xmjqqwhvkgly9205h1q5c7d70wzahjbnnzqi5mlk4pb";
+    };
+  };
+
+  concealedyank-vim = buildVimPluginFrom2Nix {
+    name = "concealedyank-vim-2013-03-24";
+    src = fetchFromGitHub {
+      owner = "chikatoike";
+      repo = "concealedyank.vim";
+      rev = "e7e65a395e0e6a266f3a808bc07441aa7d03ebbd";
+      sha256 = "0z7i8dmwfjh6mcrmgrxv3j86ic867617fas9mv4gqsrhhvrrkzsb";
+    };
+  };
+
+  context_filetype-vim = buildVimPluginFrom2Nix {
+    name = "context_filetype-vim-2018-08-30";
+    src = fetchFromGitHub {
+      owner = "shougo";
+      repo = "context_filetype.vim";
+      rev = "5392e3f0f3ff82b7149818a5700680f4bbcfea45";
+      sha256 = "0xnqn96qnlvpvqc4sx8vmnryfqgcxrgczlmadgkms18gd3ib6i0z";
+    };
+  };
+
+  cosco-vim = buildVimPluginFrom2Nix {
+    name = "cosco-vim-2018-08-07";
+    src = fetchFromGitHub {
+      owner = "lfilho";
+      repo = "cosco.vim";
+      rev = "5752622192d9b27b3a5a274a5455613b56df6386";
+      sha256 = "01byd7j4gl7zb1bh61p839ka04x2sm0rgwvbb126az7dr6gpclyf";
+    };
+  };
+
+  cpsm = buildVimPluginFrom2Nix {
+    name = "cpsm-2018-09-08";
+    src = fetchFromGitHub {
+      owner = "nixprime";
+      repo = "cpsm";
+      rev = "900023c56dfdd200841d5c2f2f7000f332d2614f";
+      sha256 = "1p1ry11f39fcz32i3b3p0p8n99qrnvrx4d7p0123123dj7wbxk3p";
+    };
+  };
+
+  csapprox = buildVimPluginFrom2Nix {
+    name = "csapprox-2013-07-27";
+    src = fetchFromGitHub {
+      owner = "godlygeek";
+      repo = "csapprox";
+      rev = "7981dac51d8b6776985aa08cb7b5ee98ea7f2ddd";
+      sha256 = "08g4x6nnd6hkgm2daa5ihhz75pcdx3jzzv8rfjls80qajlhx5rf6";
+    };
+  };
+
+  csv-vim = buildVimPluginFrom2Nix {
+    name = "csv-vim-2018-08-21";
+    src = fetchFromGitHub {
+      owner = "chrisbra";
+      repo = "csv.vim";
+      rev = "23bc07d2f6b755f2194210dcebf912093849404d";
+      sha256 = "0c2m2nvm5j6hsyhhjqlh9g1df7zhxwxsb9n2mamicncaqay7kx9x";
+    };
+  };
+
+  ctrlp-cmatcher = buildVimPluginFrom2Nix {
+    name = "ctrlp-cmatcher-2015-10-15";
+    src = fetchFromGitHub {
+      owner = "JazzCore";
+      repo = "ctrlp-cmatcher";
+      rev = "6c36334f106b6fd981d23e724e9a618734cab43a";
+      sha256 = "1573kd6xf3n8sxlz2j4zadai4rnc7k3s9c54648yfzickwn57d8q";
+    };
+  };
+
+  ctrlp-py-matcher = buildVimPluginFrom2Nix {
+    name = "ctrlp-py-matcher-2017-11-01";
+    src = fetchFromGitHub {
+      owner = "FelikZ";
+      repo = "ctrlp-py-matcher";
+      rev = "cf63fd546f1e80dd4db3db96afbeaad301d21f13";
+      sha256 = "0hs829x3vxv12y78hz5g4a5qpw05xf42dk0hxxk3ind77mnl1ir1";
+    };
+  };
+
+  ctrlp-z = buildVimPluginFrom2Nix {
+    name = "ctrlp-z-2015-10-17";
+    src = fetchFromGitHub {
+      owner = "amiorin";
+      repo = "ctrlp-z";
+      rev = "d1a69ec623ce24b9a30fc8fe3cd468c322b03026";
+      sha256 = "16nsj1g8lqmyizlb5ijwhf4dsmh0xv1kwqq6jxvhaf55vfga82yl";
+    };
+  };
+
+  ctrlp-vim = buildVimPluginFrom2Nix {
+    name = "ctrlp-vim-2018-09-13";
+    src = fetchFromGitHub {
+      owner = "ctrlpvim";
+      repo = "ctrlp.vim";
+      rev = "ebc568c3992d9002d1d35b85737dfa0d9ce70d9f";
+      sha256 = "0hh4wcyx0smv70axn18gdscmcmhwbbccam9klx0c613qccl5w70i";
+    };
+  };
+
+  denite-extra = buildVimPluginFrom2Nix {
+    name = "denite-extra-2018-08-13";
+    src = fetchFromGitHub {
+      owner = "chemzqm";
+      repo = "denite-extra";
+      rev = "8e46f87ceb619d0db93bac58120fe01584e565fd";
+      sha256 = "0pm63yi1qv1r4s098skr8pqx956d87f34cvj4vly67gj59lfyzzz";
+    };
+  };
+
+  denite-git = buildVimPluginFrom2Nix {
+    name = "denite-git-2018-07-19";
+    src = fetchFromGitHub {
+      owner = "chemzqm";
+      repo = "denite-git";
+      rev = "edd2c202e05c3f84e31b94a841fef236b923d559";
+      sha256 = "0x8nf4x49859lgyi83vhqvpdhb1mxv55a9l8vbdflfagagj0gnzd";
+    };
+  };
+
+  denite-nvim = buildVimPluginFrom2Nix {
+    name = "denite-nvim-2018-09-15";
+    src = fetchFromGitHub {
+      owner = "shougo";
+      repo = "denite.nvim";
+      rev = "8685cfbb7f0a4bea173a6b08a72a33ef70780334";
+      sha256 = "0zc15802hda59x42k0962fmawjq021y7ys10h4ypnwy50cn1vjzj";
+    };
+  };
+
+  deol-nvim = buildVimPluginFrom2Nix {
+    name = "deol-nvim-2018-06-07";
+    src = fetchFromGitHub {
+      owner = "Shougo";
+      repo = "deol.nvim";
+      rev = "195e63e10f320c0dc5c7e6372fe4f6ba96e93dd8";
+      sha256 = "0zb0pa1z847hpbb726i2vmryqap0yvdwnib4r8v1a7h06vvj17qy";
+    };
+  };
+
+  deoplete-clang = buildVimPluginFrom2Nix {
+    name = "deoplete-clang-2018-07-01";
+    src = fetchFromGitHub {
+      owner = "zchee";
+      repo = "deoplete-clang";
+      rev = "3c4f14127b363ba9eac43d3506a563e2c8da0f97";
+      sha256 = "1qi8flm0pbxw19fwj8nh4wpcmmzpwlqy5pmn4cmhn6j7b5vsm32i";
+      fetchSubmodules = true;
+    };
+  };
+
+  deoplete-go = buildVimPluginFrom2Nix {
+    name = "deoplete-go-2018-08-21";
+    src = fetchFromGitHub {
+      owner = "zchee";
+      repo = "deoplete-go";
+      rev = "c1bdcfa71dcdaec8a1be8f396fc681e104e93a05";
+      sha256 = "0v9i6gz150m7dl7hwk1jzk8f0l23rbagfwwmvhn45akgjyxk4dmq";
+      fetchSubmodules = true;
+    };
+  };
+
+  deoplete-jedi = buildVimPluginFrom2Nix {
+    name = "deoplete-jedi-2018-09-15";
+    src = fetchFromGitHub {
+      owner = "zchee";
+      repo = "deoplete-jedi";
+      rev = "e397e76e88e8f3c4342ac5284b7dd12561426041";
+      sha256 = "1zslxqs0zcs9vj47g3jr6h6f1lqyswpjc15a1z06zak166ppsxkw";
+      fetchSubmodules = true;
+    };
+  };
+
+  deoplete-julia = buildVimPluginFrom2Nix {
+    name = "deoplete-julia-2018-06-11";
+    src = fetchFromGitHub {
+      owner = "JuliaEditorSupport";
+      repo = "deoplete-julia";
+      rev = "d60b976910685c99ca773c974e91c44eeda03a19";
+      sha256 = "0x5cc9g1g1w9myr6p1ahb9gpn2abpbggjdk2bc903f62pkrapvjf";
+    };
+  };
+
+  deoplete-rust = buildVimPluginFrom2Nix {
+    name = "deoplete-rust-2017-07-18";
+    src = fetchFromGitHub {
+      owner = "sebastianmarkow";
+      repo = "deoplete-rust";
+      rev = "0a86e502113910c33448b337c4d50cabea120d25";
+      sha256 = "0wsck83jns40ny3740vwjhc8g5bh6zl71hkirbjxy6n4xgixa54h";
+    };
+  };
+
+  deoplete-ternjs = buildVimPluginFrom2Nix {
+    name = "deoplete-ternjs-2018-06-05";
+    src = fetchFromGitHub {
+      owner = "carlitux";
+      repo = "deoplete-ternjs";
+      rev = "4b6276019a1491cc5003a0b007ca1aaeab671f57";
+      sha256 = "0v5033r75qxnhgmm0czxgwps0khbx1sn2dc7nsrscp441h5sgz6i";
+    };
+  };
+
+  deoplete-nvim = buildVimPluginFrom2Nix {
+    name = "deoplete-nvim-2018-09-12";
+    src = fetchFromGitHub {
+      owner = "shougo";
+      repo = "deoplete.nvim";
+      rev = "93f6e3bce8229557b952dcad792786b1cc228991";
+      sha256 = "033iskhyz91158ifmpzpv1gi4rfx368c6knakj65spcrlfci58y9";
+    };
+  };
+
+  dhall-vim = buildVimPluginFrom2Nix {
+    name = "dhall-vim-2018-07-30";
+    src = fetchFromGitHub {
+      owner = "vmchale";
+      repo = "dhall-vim";
+      rev = "2693bfaf9167ac69ee96c1165b4354f03f4d8b24";
+      sha256 = "0qm6z8z70cxqqlmxgq497w96nv5sn2gbxnc74balbhpk17bms4m0";
+    };
+  };
+
+  echodoc-vim = buildVimPluginFrom2Nix {
+    name = "echodoc-vim-2018-09-09";
+    src = fetchFromGitHub {
+      owner = "shougo";
+      repo = "echodoc.vim";
+      rev = "781b1622029cd89350e6383da8ead834fb0cedd2";
+      sha256 = "018xrql2prik0v9g0099k883r5gdgnip36vidnzmkr0b0h5bgw6a";
+    };
+  };
+
+  editorconfig-vim = buildVimPluginFrom2Nix {
+    name = "editorconfig-vim-2018-07-25";
+    src = fetchFromGitHub {
+      owner = "editorconfig";
+      repo = "editorconfig-vim";
+      rev = "2c3e5323609d97ad7bda6fc22ae1f7746caab3d4";
+      sha256 = "0a1nszrhxh9ixp5n47w89ijkvjk3rf29ypiz5blf4pnja39r336x";
+      fetchSubmodules = true;
+    };
+  };
+
+  elm-vim = buildVimPluginFrom2Nix {
+    name = "elm-vim-2018-06-18";
+    src = fetchFromGitHub {
+      owner = "elmcast";
+      repo = "elm-vim";
+      rev = "e51e2e43ad617c26205a84453481d3ac152c8fec";
+      sha256 = "09bgfjnpa1s25x5wnxry9lmsly92s0mazn1sl0vg2wfgphf67m6b";
+    };
+  };
+
+  ensime-vim = buildVimPluginFrom2Nix {
+    name = "ensime-vim-2018-04-20";
+    src = fetchFromGitHub {
+      owner = "ensime";
+      repo = "ensime-vim";
+      rev = "634cce6eae10a31cd6eec259890bdcda326ee3c2";
+      sha256 = "03sr53680kcwxaa5xbqzdfbsgday3bkzja33wym49w9gjmlaa320";
+    };
+  };
+
+  fastfold = buildVimPluginFrom2Nix {
+    name = "fastfold-2018-06-03";
+    src = fetchFromGitHub {
+      owner = "konfekt";
+      repo = "fastfold";
+      rev = "4150ebdc6e226e8797d42dcabb7463952de9dc30";
+      sha256 = "0mdb77np2vf564q18fvj1klr99pwrx2sw0jhxify9g7i0177qs4r";
+    };
+  };
+
+  flake8-vim = buildVimPluginFrom2Nix {
+    name = "flake8-vim-2017-02-17";
+    src = fetchFromGitHub {
+      owner = "andviro";
+      repo = "flake8-vim";
+      rev = "01c4af4c68f33b2b3785314bfbf5b3d8d1451795";
+      sha256 = "14rv0p1vx4njlplkc72gz7r8sy9vc6n8x9l00zc777x5zzrhgz3g";
+      fetchSubmodules = true;
+    };
+  };
+
+  floobits-neovim = buildVimPluginFrom2Nix {
+    name = "floobits-neovim-2018-08-01";
+    src = fetchFromGitHub {
+      owner = "floobits";
+      repo = "floobits-neovim";
+      rev = "29ab2ed4bd5c879df0bd6df313a776155eb98ad8";
+      sha256 = "0bnncn3waw9birpd51j27hrzlriz8dk4naxdajmbwznwcnbkkgwx";
+    };
+  };
+
+  forms = buildVimPluginFrom2Nix {
+    name = "forms-2012-11-28";
+    src = fetchFromGitHub {
+      owner = "megaannum";
+      repo = "forms";
+      rev = "b601e03fe0a3b8a43766231f4a6217e4492b4f75";
+      sha256 = "19kp1i5c6jmnpbsap9giayqbzlv7vh02mp4mjvicqj9n0nfyay74";
+    };
+  };
+
+  fugitive-gitlab-vim = buildVimPluginFrom2Nix {
+    name = "fugitive-gitlab-vim-2018-07-04";
+    src = fetchFromGitHub {
+      owner = "shumphrey";
+      repo = "fugitive-gitlab.vim";
+      rev = "b8e7b6986c5d13f3e2de2163816af06f74a6f838";
+      sha256 = "1lvll9hjqsm79f0ls84d8b8s12043b9p5qa4i6iwf3v1qbq7kb8d";
+    };
+  };
+
+  fzf-vim = buildVimPluginFrom2Nix {
+    name = "fzf-vim-2018-09-12";
+    src = fetchFromGitHub {
+      owner = "junegunn";
+      repo = "fzf.vim";
+      rev = "c3954d294a0f6c4fb5a46a1839cd42ec26767dea";
+      sha256 = "0pipa7vgx4vkaysyf195yphggxj5kki66yksfvdvw6yxiicap1ml";
+    };
+  };
+
+  ghcmod-vim = buildVimPluginFrom2Nix {
+    name = "ghcmod-vim-2016-06-19";
+    src = fetchFromGitHub {
+      owner = "eagletmt";
+      repo = "ghcmod-vim";
+      rev = "1d192d13d68ab59f9f46497a0909bf24a7b7dfff";
+      sha256 = "0bzahgzagnf0a9zv86jhdf8nc3p0yfz9izv5n3lc8gc12cp47d0a";
+    };
+  };
+
+  gist-vim = buildVimPluginFrom2Nix {
+    name = "gist-vim-2016-10-10";
+    src = fetchFromGitHub {
+      owner = "mattn";
+      repo = "gist-vim";
+      rev = "f0d63579eab7548cf12f979dc52ef5a370ecbe63";
+      sha256 = "06nix49j4inxy3rkcv32f4ka89g4crqwfqnrm3b76iwwky8m2p17";
+    };
+  };
+
+  gitv = buildVimPluginFrom2Nix {
+    name = "gitv-2018-06-10";
+    src = fetchFromGitHub {
+      owner = "gregsexton";
+      repo = "gitv";
+      rev = "41e4ffdbdb02374412d03c5680906ebee84dd5a2";
+      sha256 = "1wfp3kkcvrccq0dqplg3ymyz9vdwn1c5wabh6mwfzbs2zx01vwcn";
+    };
+  };
+
+  goyo-vim = buildVimPluginFrom2Nix {
+    name = "goyo-vim-2017-05-31";
+    src = fetchFromGitHub {
+      owner = "junegunn";
+      repo = "goyo.vim";
+      rev = "5b8bd0378758c1d9550d8429bef24b3d6d78b592";
+      sha256 = "10racxq8zfj2fpl09vbvv5hbnr4xmm4ba75kgyp9byjapzkbq1pi";
+    };
+  };
+
+  gruvbox = buildVimPluginFrom2Nix {
+    name = "gruvbox-2018-02-25";
+    src = fetchFromGitHub {
+      owner = "morhetz";
+      repo = "gruvbox";
+      rev = "cb4e7a5643f7d2dd40e694bcbd28c4b89b185e86";
+      sha256 = "12qkq1x96bm1cmqfg6sb8jxpl2b6gwvhc5qn3gva6vl4nx3ianqi";
+    };
+  };
+
+  gundo-vim = buildVimPluginFrom2Nix {
+    name = "gundo-vim-2017-05-09";
+    src = fetchFromGitHub {
+      owner = "sjl";
+      repo = "gundo.vim";
+      rev = "46c443ee9d5854320eb965a1fdee781ba83a070e";
+      sha256 = "0adk7agzmbfv342zw6lc8jad6yjs1wap4c0ca98s0qm2bs0r1hl2";
+    };
+  };
+
+  haskell-vim = buildVimPluginFrom2Nix {
+    name = "haskell-vim-2018-05-22";
+    src = fetchFromGitHub {
+      owner = "neovimhaskell";
+      repo = "haskell-vim";
+      rev = "b1ac46807835423c4a4dd063df6d5b613d89c731";
+      sha256 = "1vqj3r2v8skffywwgv4093ww7fm540437j5qz7n8q8787bs5w0br";
+    };
+  };
+
+  hasksyn = buildVimPluginFrom2Nix {
+    name = "hasksyn-2014-09-04";
+    src = fetchFromGitHub {
+      owner = "travitch";
+      repo = "hasksyn";
+      rev = "c434040bf13a17ca20a551223021b3ace7e453b9";
+      sha256 = "09998lnfcshqis5m062wlag6y476imq9jday9gp4ayjjl1cp3cwx";
+    };
+  };
+
+  hlint-refactor-vim = buildVimPluginFrom2Nix {
+    name = "hlint-refactor-vim-2015-12-05";
+    src = fetchFromGitHub {
+      owner = "mpickering";
+      repo = "hlint-refactor-vim";
+      rev = "fffb044ecef854a82c5c2efda252e09044ba03e0";
+      sha256 = "0z8d31arfy9aidg1dwj5msnnx799d9r7njkgh51z695w6ayxn6p8";
+    };
+  };
+
+  idris-vim = buildVimPluginFrom2Nix {
+    name = "idris-vim-2017-12-04";
+    src = fetchFromGitHub {
+      owner = "idris-hackers";
+      repo = "idris-vim";
+      rev = "091ed6b267749927777423160eeab520109dd9c1";
+      sha256 = "1zibar2vxcmai0k37ricwnimfdv1adxfbbvz871rc4l6h3q85if1";
+    };
+  };
+
+  Improved-AnsiEsc = buildVimPluginFrom2Nix {
+    name = "Improved-AnsiEsc-2015-08-26";
+    src = fetchFromGitHub {
+      owner = "vim-scripts";
+      repo = "Improved-AnsiEsc";
+      rev = "e1c59a8e9203fab6b9150721f30548916da73351";
+      sha256 = "1smjs4kz2kmzprzp9az4957675nakb43146hshbby39j5xz4jsbz";
+    };
+  };
+
+  incsearch-easymotion-vim = buildVimPluginFrom2Nix {
+    name = "incsearch-easymotion-vim-2016-01-18";
+    src = fetchFromGitHub {
+      owner = "haya14busa";
+      repo = "incsearch-easymotion.vim";
+      rev = "fcdd3aee6f4c0eef1a515727199ece8d6c6041b5";
+      sha256 = "1bscr3xs1zggm9qzk1mb88fkc8qj6yrnkxmqwwyr75sf1xzy74mk";
+    };
+  };
+
+  incsearch-vim = buildVimPluginFrom2Nix {
+    name = "incsearch-vim-2017-11-24";
+    src = fetchFromGitHub {
+      owner = "haya14busa";
+      repo = "incsearch.vim";
+      rev = "25e2547fb0566460f5999024f7a0de7b3775201f";
+      sha256 = "05v0d9b5sm4d1bvhb01jk6s7brlli2xc16hvzr6gik1nm1ks6ai1";
+    };
+  };
+
+  intero-neovim = buildVimPluginFrom2Nix {
+    name = "intero-neovim-2018-08-07";
+    src = fetchFromGitHub {
+      owner = "parsonsmatt";
+      repo = "intero-neovim";
+      rev = "9bb546e37adc1ffda28ff33922c506c15ed67b10";
+      sha256 = "173kc8xrbmkhrc9ssaz6h5w1zisxsgz4bibihgj9bx60ibn4kaa7";
+    };
+  };
+
+  Jenkinsfile-vim-syntax = buildVimPluginFrom2Nix {
+    name = "Jenkinsfile-vim-syntax-2018-04-04";
+    src = fetchFromGitHub {
+      owner = "martinda";
+      repo = "Jenkinsfile-vim-syntax";
+      rev = "45418b171e06f63e0814cac6a656832384708aba";
+      sha256 = "0vfx22fzp0894lclmbsp6l8apvw0znd3cbah8r7r5la9qzyiwi4p";
+    };
+  };
+
+  julia-vim = buildVimPluginFrom2Nix {
+    name = "julia-vim-2018-09-09";
+    src = fetchFromGitHub {
+      owner = "JuliaEditorSupport";
+      repo = "julia-vim";
+      rev = "3018668f89ca4bf125d1d57effdea88b07a3b466";
+      sha256 = "13fn3566ql4fcqzh6lfb6qj2xyqyvz70psc67k184k88arqm3y55";
+    };
+  };
+
+  last256 = buildVimPluginFrom2Nix {
+    name = "last256-2017-06-10";
+    src = fetchFromGitHub {
+      owner = "sk1418";
+      repo = "last256";
+      rev = "d29320c1fe715b47edaa1be068201ea5a54ab0c0";
+      sha256 = "16njh0p1j166dnf92110vlrj7gmrbsfkbkd8k6s9gfqjzbgd25jv";
+    };
+  };
+
+  latex-box = buildVimPluginFrom2Nix {
+    name = "latex-box-2015-06-01";
+    src = fetchFromGitHub {
+      owner = "latex-box-team";
+      repo = "latex-box";
+      rev = "3c2901e12cb78bfb2be58ba4c62a488612550fe1";
+      sha256 = "1z4mdy47cpwcdhvy8mr72vhlybxn1y59yd3ixf6ids1bzpkrd7zl";
+    };
+  };
+
+  lightline-vim = buildVimPluginFrom2Nix {
+    name = "lightline-vim-2018-09-16";
+    src = fetchFromGitHub {
+      owner = "itchyny";
+      repo = "lightline.vim";
+      rev = "0b026a2b894844b58f8a632290ea1cdab201ed50";
+      sha256 = "0hpw22sv41drn376y4vv5krbjdahga6vxiqrrgky5x1d8bj1fz4m";
+    };
+  };
+
+  limelight-vim = buildVimPluginFrom2Nix {
+    name = "limelight-vim-2016-06-23";
+    src = fetchFromGitHub {
+      owner = "junegunn";
+      repo = "limelight.vim";
+      rev = "106fb5749d227a0de72e36068ed72798c6fd48e6";
+      sha256 = "0fp4yp50n5v5zx3a7afh9wip4nwcfhmdgdzwpnl79jvild1z9fgh";
+    };
+  };
+
+  lushtags = buildVimPluginFrom2Nix {
+    name = "lushtags-2017-04-19";
+    src = fetchFromGitHub {
+      owner = "mkasa";
+      repo = "lushtags";
+      rev = "fd7fa5a0162d9aa159559880d5ba4731e180eeaf";
+      sha256 = "03saw1w5pybj6yywzi8hinciv18znimm7k0h34k4pqp5gi1jfaql";
+    };
+  };
+
+  matchit-zip = buildVimPluginFrom2Nix {
+    name = "matchit-zip-2010-10-18";
+    src = fetchFromGitHub {
+      owner = "vim-scripts";
+      repo = "matchit.zip";
+      rev = "ced6c409c9beeb0b4142d21906606bd194411d1d";
+      sha256 = "1s9c4lnsmbfm97bp22jrmcp5lga5ihx23lzqqncvv7rcizkvr3dm";
+    };
+  };
+
+  mayansmoke = buildVimPluginFrom2Nix {
+    name = "mayansmoke-2010-10-18";
+    src = fetchFromGitHub {
+      owner = "vim-scripts";
+      repo = "mayansmoke";
+      rev = "168883af7aec05f139af251f47eadd5dfb802c9d";
+      sha256 = "1xxcky7i6sx7f1q8xka4gd2xg78w6sqjvqrdwgrdzv93fhf82rpd";
+    };
+  };
+
+  molokai = buildVimPluginFrom2Nix {
+    name = "molokai-2015-11-11";
+    src = fetchFromGitHub {
+      owner = "tomasr";
+      repo = "molokai";
+      rev = "c67bdfcdb31415aa0ade7f8c003261700a885476";
+      sha256 = "1piszjr5kyw43ac1f0jh9z88g824xknshrkchbys9qxlz7pd831s";
+    };
+  };
+
+  ncm2 = buildVimPluginFrom2Nix {
+    name = "ncm2-2018-09-03";
+    src = fetchFromGitHub {
+      owner = "ncm2";
+      repo = "ncm2";
+      rev = "08f026d84b50e8db3d3a4124da63c8c3e0e5e558";
+      sha256 = "07d411p3shm27qmir8hsw88mx3wdmz3am4qi0fqzkhkpkgli70jw";
+    };
+  };
+
+  ncm2-bufword = buildVimPluginFrom2Nix {
+    name = "ncm2-bufword-2018-07-28";
+    src = fetchFromGitHub {
+      owner = "ncm2";
+      repo = "ncm2-bufword";
+      rev = "86a92eb3fb217f9ea1e93f890b7e5e0eb1671ca9";
+      sha256 = "02f43rr9apgcjpz4ipnin4v3cvdlx931a0787x87iyr8a0aljg3y";
+    };
+  };
+
+  ncm2-path = buildVimPluginFrom2Nix {
+    name = "ncm2-path-2018-09-12";
+    src = fetchFromGitHub {
+      owner = "ncm2";
+      repo = "ncm2-path";
+      rev = "d17deaceb3bc4da415cff25262762c99cdd34116";
+      sha256 = "16pbln1k6jw5yc79g7g736kf4m7hn6kdlsphml7dla7xnnzd2az3";
+    };
+  };
+
+  ncm2-tmux = buildVimPluginFrom2Nix {
+    name = "ncm2-tmux-2018-07-30";
+    src = fetchFromGitHub {
+      owner = "ncm2";
+      repo = "ncm2-tmux";
+      rev = "4f60ee1be57531295075d808e0006c83894096d1";
+      sha256 = "1ihbm65b9bc0y068w6r0k8f9lsc3603npb55chcchpj7z75539yh";
+    };
+  };
+
+  ncm2-ultisnips = buildVimPluginFrom2Nix {
+    name = "ncm2-ultisnips-2018-08-01";
+    src = fetchFromGitHub {
+      owner = "ncm2";
+      repo = "ncm2-ultisnips";
+      rev = "15432d7933cfb855599442a67d6f39ddb706c737";
+      sha256 = "0ixajh08fd5dgdz4h1sdxgiaind1nksk1d4lwyb6n4ijf672pms2";
+    };
+  };
+
+  neco-ghc = buildVimPluginFrom2Nix {
+    name = "neco-ghc-2018-05-13";
+    src = fetchFromGitHub {
+      owner = "eagletmt";
+      repo = "neco-ghc";
+      rev = "682869aca5dd0bde71a09ba952acb59c543adf7d";
+      sha256 = "1v7ibi4fp99s4lswz3v0gf4i0h5i5gpj05xpsf4cixwj2zgh206h";
+    };
+  };
+
+  neco-look = buildVimPluginFrom2Nix {
+    name = "neco-look-2018-01-21";
+    src = fetchFromGitHub {
+      owner = "ujihisa";
+      repo = "neco-look";
+      rev = "4ead88e70f359fb9cef6537ed9c336b7673c1b4c";
+      sha256 = "1lszbif7ymdjch1ypnr1nihs6gfbhb86sj6nz3dwrbgsl454nnrj";
+    };
+  };
+
+  neco-syntax = buildVimPluginFrom2Nix {
+    name = "neco-syntax-2017-10-01";
+    src = fetchFromGitHub {
+      owner = "shougo";
+      repo = "neco-syntax";
+      rev = "98cba4a98a4f44dcff80216d0b4aa6f41c2ce3e3";
+      sha256 = "1cjcbgx3h00g91ifgw30q5n97x4nprsr4kwirydws79fcs4vkgip";
+    };
+  };
+
+  neco-vim = buildVimPluginFrom2Nix {
+    name = "neco-vim-2017-10-01";
+    src = fetchFromGitHub {
+      owner = "shougo";
+      repo = "neco-vim";
+      rev = "f5397c5e800d65a58c56d8f1b1b92686b05f4ca9";
+      sha256 = "0yb7ja6qgrazszk4i01cwjj00j9vd43zs2r11b08iy8n10jnzr73";
+    };
+  };
+
+  neocomplete-vim = buildVimPluginFrom2Nix {
+    name = "neocomplete-vim-2018-03-28";
+    src = fetchFromGitHub {
+      owner = "shougo";
+      repo = "neocomplete.vim";
+      rev = "4be617947f3fcf2d725fab20b0e12f8b46c9e2f3";
+      sha256 = "00ns46gy726w74nmnzhqnyh10jnpr04453v3rclswxgcvgma82b8";
+    };
+  };
+
+  neoformat = buildVimPluginFrom2Nix {
+    name = "neoformat-2018-09-05";
+    src = fetchFromGitHub {
+      owner = "sbdchd";
+      repo = "neoformat";
+      rev = "c8bc4ec044a0d8c96291426b5ce10f741d63e6b6";
+      sha256 = "140f1q1wbn7d7mxb2q08421a8qgxii3ffd8lmhsjj7mjsdvxmcks";
+    };
+  };
+
+  neoinclude-vim = buildVimPluginFrom2Nix {
+    name = "neoinclude-vim-2018-05-21";
+    src = fetchFromGitHub {
+      owner = "shougo";
+      repo = "neoinclude.vim";
+      rev = "2fa77b9211d3f10c29559b715b6863da67ae7d3a";
+      sha256 = "0pdahb2z9q4dk67xkwvaqrlpai86slhncfb4gn88x40dlnd7rkbg";
+    };
+  };
+
+  neomake = buildVimPluginFrom2Nix {
+    name = "neomake-2018-09-16";
+    src = fetchFromGitHub {
+      owner = "benekastah";
+      repo = "neomake";
+      rev = "1b5c098e152124267034ce175676594995e4af72";
+      sha256 = "19860x030hscv75sqsjjdkpkndcssn20f9iqy955ssh6v3qmjg2m";
+    };
+  };
+
+  neomru-vim = buildVimPluginFrom2Nix {
+    name = "neomru-vim-2017-10-01";
+    src = fetchFromGitHub {
+      owner = "shougo";
+      repo = "neomru.vim";
+      rev = "97540f54fa20b94daf306f0c1f3cce983bbf7a1d";
+      sha256 = "15d5hmh5v3hnjnfb5736n45rh5nyq41vqjp1cz4ls2rxmmfi3xa7";
+    };
+  };
+
+  neosnippet-snippets = buildVimPluginFrom2Nix {
+    name = "neosnippet-snippets-2018-09-12";
+    src = fetchFromGitHub {
+      owner = "shougo";
+      repo = "neosnippet-snippets";
+      rev = "e61e966339bbab2abba6ba92bccd8825463b2d0d";
+      sha256 = "0yis1r2ypxym421gwlsm8zszsg490xw5q0h111k077x19qa5j4fs";
+    };
+  };
+
+  neosnippet-vim = buildVimPluginFrom2Nix {
+    name = "neosnippet-vim-2018-07-30";
+    src = fetchFromGitHub {
+      owner = "shougo";
+      repo = "neosnippet.vim";
+      rev = "70700ddef65f8f0639b336d04a0d2dbdc4eb0830";
+      sha256 = "0szhmdqqgpfy6shwiw7wnsd06cz8c7v5zmpaa3hzs32gyrx49rza";
+    };
+  };
+
+  neoyank-vim = buildVimPluginFrom2Nix {
+    name = "neoyank-vim-2018-03-26";
+    src = fetchFromGitHub {
+      owner = "shougo";
+      repo = "neoyank.vim";
+      rev = "ea3cd47ccb40cb2e26cb607d28475aa0fdb26fef";
+      sha256 = "1zbf8062rpk56nd1zxqhwa8bdpxl9zp887l9nm4s9hc4ndsk4928";
+    };
+  };
+
+  nerdcommenter = buildVimPluginFrom2Nix {
+    name = "nerdcommenter-2018-07-31";
+    src = fetchFromGitHub {
+      owner = "scrooloose";
+      repo = "nerdcommenter";
+      rev = "fdf950f20b3907c6a6fa0bc5c7ac0aeb567841dd";
+      sha256 = "17b742fzybdcsf623n6xz21kb11xk2wz6w24iwdh8pkmqqh5mgzp";
+    };
+  };
+
+  nerdtree = buildVimPluginFrom2Nix {
+    name = "nerdtree-2018-09-15";
+    src = fetchFromGitHub {
+      owner = "scrooloose";
+      repo = "nerdtree";
+      rev = "cd1f2c803ec485074af070a2fe942a029775e5bd";
+      sha256 = "07rna5sqjq934xx8nqsv0b0z6rmzprdxfa76kq5gm3bhc807c7pv";
+    };
+  };
+
+  nerdtree-git-plugin = buildVimPluginFrom2Nix {
+    name = "nerdtree-git-plugin-2017-03-12";
+    src = fetchFromGitHub {
+      owner = "albfan";
+      repo = "nerdtree-git-plugin";
+      rev = "d79a5d5a1b3bc5fab3ba94db44a8b2e5a211d61d";
+      sha256 = "0i77wijbr021zfv096ja15f5l52phvsd5gziqn1m3k60qkmb9gkj";
+    };
+  };
+
+  nim-vim = buildVimPluginFrom2Nix {
+    name = "nim-vim-2018-08-16";
+    src = fetchFromGitHub {
+      owner = "zah";
+      repo = "nim.vim";
+      rev = "7d1211cc1588d8970e44435c612405f41ab5a36b";
+      sha256 = "1s28sk7d73vckh37xhld99i8kkx2dxcvsiv8ixlkhgg1pdcchd6d";
+    };
+  };
+
+  nvim-cm-racer = buildVimPluginFrom2Nix {
+    name = "nvim-cm-racer-2017-07-27";
+    src = fetchFromGitHub {
+      owner = "roxma";
+      repo = "nvim-cm-racer";
+      rev = "2a8a4a49fa58c5dac9e0bed9511f6928930cacd2";
+      sha256 = "1yljxwypgn91084yyicbc2qprn31ld7s4drvnddzczyhzq5m2gpx";
+    };
+  };
+
+  nvim-completion-manager = buildVimPluginFrom2Nix {
+    name = "nvim-completion-manager-2018-07-27";
+    src = fetchFromGitHub {
+      owner = "roxma";
+      repo = "nvim-completion-manager";
+      rev = "45a026afb8b309b3b80f2c1b5910f72a54a9b563";
+      sha256 = "0znwgry4ill0nxm096hc8s9vf20rf9xcq3dz8y8h7xlqzzsycl7a";
+    };
+  };
+
+  nvim-yarp = buildVimPluginFrom2Nix {
+    name = "nvim-yarp-2018-09-14";
+    src = fetchFromGitHub {
+      owner = "roxma";
+      repo = "nvim-yarp";
+      rev = "5443ac06b3989baa9262adec810503e0234c316e";
+      sha256 = "0b6gmsbgzgwidl0rpkwzr2l1qxd9aw5pvj8izflf6gz36r2irszq";
+    };
+  };
+
+  nvimdev-nvim = buildVimPluginFrom2Nix {
+    name = "nvimdev-nvim-2018-09-08";
+    src = fetchFromGitHub {
+      owner = "neovim";
+      repo = "nvimdev.nvim";
+      rev = "cf5acd7712524886881efdba8f2e4cee0f133ed9";
+      sha256 = "02jqgbkzn47xljv6kk1lk6gzq3c900lfs2s4dpg1vapd5n0yi4am";
+    };
+  };
+
+  open-browser-vim = buildVimPluginFrom2Nix {
+    name = "open-browser-vim-2018-04-26";
+    src = fetchFromGitHub {
+      owner = "tyru";
+      repo = "open-browser.vim";
+      rev = "de4eeb085051e9b56dd5574eba7c7e72feb21246";
+      sha256 = "1fgp4wwizpknfwscxraqqaxrhvwp9l1mnjwj3llk2x0n9qcqf1db";
+    };
+  };
+
+  peskcolor-vim = buildVimPluginFrom2Nix {
+    name = "peskcolor-vim-2016-06-11";
+    src = fetchFromGitHub {
+      owner = "andsild";
+      repo = "peskcolor.vim";
+      rev = "cba4fc739bbebacd503158f6509d9c226651f363";
+      sha256 = "15hw3casr5y3ckgcn6aq8vhk6g2hym41w51nvgf34hbj9fx1nvkq";
+    };
+  };
+
+  pony-vim-syntax = buildVimPluginFrom2Nix {
+    name = "pony-vim-syntax-2017-09-26";
+    src = fetchFromGitHub {
+      owner = "dleonard0";
+      repo = "pony-vim-syntax";
+      rev = "caa34b3d7a15d9bfbfbb2f5944c85eb1eddcfafc";
+      sha256 = "0r2lv99hkm95dv8wy9rkrkcwz5wkmwggfwi5vakgw497l3a9jskr";
+    };
+  };
+
+  psc-ide-vim = buildVimPluginFrom2Nix {
+    name = "psc-ide-vim-2018-03-11";
+    src = fetchFromGitHub {
+      owner = "frigoeu";
+      repo = "psc-ide-vim";
+      rev = "6d4a3cc27e9782b703f6dd61ef5fdf27054bac0f";
+      sha256 = "19w0cvrka3klxbh9z1yq873v92rhmxdj68bdnqxzwybf24hgsk9g";
+    };
+  };
+
+  purescript-vim = buildVimPluginFrom2Nix {
+    name = "purescript-vim-2018-07-05";
+    src = fetchFromGitHub {
+      owner = "raichoo";
+      repo = "purescript-vim";
+      rev = "ab8547cef5827f046d43ba57203acb6692b7ef06";
+      sha256 = "1pp7h77qqhgshf2x3hh73gnb4ya8jamqm75spbnn95piznd03k33";
+    };
+  };
+
+  python-mode = buildVimPluginFrom2Nix {
+    name = "python-mode-2018-04-29";
+    src = fetchFromGitHub {
+      owner = "python-mode";
+      repo = "python-mode";
+      rev = "f94b0d7b21714f950f5878b430fbfde21c3b7ad9";
+      sha256 = "0zxsa1agigzb9adrwq54pdyl984drdqzz3kkixaijkq77kkdvj0n";
+    };
+  };
+
+  quickfixstatus = buildVimPluginFrom2Nix {
+    name = "quickfixstatus-2011-09-03";
+    src = fetchFromGitHub {
+      owner = "dannyob";
+      repo = "quickfixstatus";
+      rev = "fd3875b914fc51bbefefa8c4995588c088163053";
+      sha256 = "16vxhvyxq51y7wnx0c1fmdi2yb6kfr1pxijq65gxj8qwvbak2s3v";
+    };
+  };
+
+  rainbow = buildVimPluginFrom2Nix {
+    name = "rainbow-2018-07-31";
+    src = fetchFromGitHub {
+      owner = "luochen1990";
+      repo = "rainbow";
+      rev = "d7bb89e6a6fae25765ee16020ea7a85d43bd6e41";
+      sha256 = "0zh2x1bm0sq00gq6350kckjl1fhwqdxl3b8d3k9lb1736xggd1p8";
+    };
+  };
+
+  rainbow_parentheses-vim = buildVimPluginFrom2Nix {
+    name = "rainbow_parentheses-vim-2013-03-05";
+    src = fetchFromGitHub {
+      owner = "kien";
+      repo = "rainbow_parentheses.vim";
+      rev = "eb8baa5428bde10ecc1cb14eed1d6e16f5f24695";
+      sha256 = "1qw84imlhq4654mxazj7j3sp5g1j3yjxi496i08iix06dm15m5s7";
+    };
+  };
+
+  random-vim = buildVimPluginFrom2Nix {
+    name = "random-vim-2010-10-18";
+    src = fetchFromGitHub {
+      owner = "vim-scripts";
+      repo = "random.vim";
+      rev = "b2d85eb24a38074eab37a5acf2a295e1f2ad8989";
+      sha256 = "1lzy2cq4jcrsqyxlnbnd0y6j4mabm09bi7q22lf6vinqlb84w7sp";
+    };
+  };
+
+  ranger-vim = buildVimPluginFrom2Nix {
+    name = "ranger-vim-2018-09-13";
+    src = fetchFromGitHub {
+      owner = "rafaqz";
+      repo = "ranger.vim";
+      rev = "63e22fd424107579aaf782f3b2c83d76a691fdeb";
+      sha256 = "1337il7j45ydb432qnmaqcz8bigwny752nrl6c2vsc0qv3xd11ls";
+    };
+  };
+
+  Rename = buildVimPluginFrom2Nix {
+    name = "Rename-2011-08-31";
+    src = fetchFromGitHub {
+      owner = "vim-scripts";
+      repo = "Rename";
+      rev = "b240f28d2ede65fa77cd99fe045efe79202f7a34";
+      sha256 = "1d1myg4zyc281zcc1ba9idbgcgxndb4a0jwqr4yqxhhzdgszw46r";
+    };
+  };
+
+  ReplaceWithRegister = buildVimPluginFrom2Nix {
+    name = "ReplaceWithRegister-2014-10-31";
+    src = fetchFromGitHub {
+      owner = "vim-scripts";
+      repo = "ReplaceWithRegister";
+      rev = "832efc23111d19591d495dc72286de2fb0b09345";
+      sha256 = "0mb0sx85j1k59b1zz95r4vkq4kxlb4krhncq70mq7fxrs5bnhq8g";
+    };
+  };
+
+  riv-vim = buildVimPluginFrom2Nix {
+    name = "riv-vim-2018-06-20";
+    src = fetchFromGitHub {
+      owner = "Rykka";
+      repo = "riv.vim";
+      rev = "fb6d6f8c9d85128fd69c74f11bb7413addc002e8";
+      sha256 = "1mjp90lz6jf3w9j4h1sidz7kfxhi9hk27pdnvb0hrvxw0q3bj9ch";
+    };
+  };
+
+  robotframework-vim = buildVimPluginFrom2Nix {
+    name = "robotframework-vim-2017-04-14";
+    src = fetchFromGitHub {
+      owner = "mfukar";
+      repo = "robotframework-vim";
+      rev = "75d5b371a4da2a090a2872d55bd0dead013f334e";
+      sha256 = "091ac5rq6f1a7j2q3dy9rc00vckv21m4wd29ijj63jannr02v5ad";
+    };
+  };
+
+  rtorrent-syntax-file = buildVimPluginFrom2Nix {
+    name = "rtorrent-syntax-file-2016-03-19";
+    src = fetchFromGitHub {
+      owner = "ccarpita";
+      repo = "rtorrent-syntax-file";
+      rev = "885ca182c02bbbed4b62a3fcfe6fe62fa5b419ca";
+      sha256 = "1vhvmwnwi6862cckl8dqr8pgy0inrr0c31lic89826yv7mfl9mbz";
+    };
+  };
+
+  rust-vim = buildVimPluginFrom2Nix {
+    name = "rust-vim-2018-09-15";
+    src = fetchFromGitHub {
+      owner = "rust-lang";
+      repo = "rust.vim";
+      rev = "83620e6c674e1ceb801f1b322fb30d028ee59685";
+      sha256 = "0bvyay7r76r3zg00ziinlycw29316r8n81dxsd5qcgxmxfd3ssd1";
+    };
+  };
+
+  self = buildVimPluginFrom2Nix {
+    name = "self-2014-05-28";
+    src = fetchFromGitHub {
+      owner = "megaannum";
+      repo = "self";
+      rev = "2ed666b547eddee6ae1fcc63babca4ba0b66a59f";
+      sha256 = "1gcwn6i5i3msg7hrlzsnv1bs6pm4jz9cff8ppaz2xdj8xv9qy6fn";
+    };
+  };
+
+  shabadou-vim = buildVimPluginFrom2Nix {
+    name = "shabadou-vim-2016-07-19";
+    src = fetchFromGitHub {
+      owner = "osyo-manga";
+      repo = "shabadou.vim";
+      rev = "7d4bfed1ea8985ae125df3d1403cc19e252443e1";
+      sha256 = "1kvik1yf7yjg9jdmdw38yhkksxg0n3nry02banwik7wgjnpvg870";
+    };
+  };
+
+  sourcemap-vim = buildVimPluginFrom2Nix {
+    name = "sourcemap-vim-2012-09-19";
+    src = fetchFromGitHub {
+      owner = "chikatoike";
+      repo = "sourcemap.vim";
+      rev = "0dd82d40faea2fdb0771067f46c01deb41610ba1";
+      sha256 = "1gcgnynallz420911fdfm0ccbv3zs78p69nnh2ls1r4vlfp7g350";
+    };
+  };
+
+  Spacegray-vim = buildVimPluginFrom2Nix {
+    name = "Spacegray-vim-2018-06-21";
+    src = fetchFromGitHub {
+      owner = "ajh17";
+      repo = "Spacegray.vim";
+      rev = "f9e5205319cbb5c598bbf02b16c3d05277817f81";
+      sha256 = "1s32zf75ybqs9jjjvqk5z4x9a6lr43gjbwlgw8k01qf4lsxkzkn9";
+    };
+  };
+
+  spacevim = buildVimPluginFrom2Nix {
+    name = "spacevim-2018-03-29";
+    src = fetchFromGitHub {
+      owner = "ctjhoa";
+      repo = "spacevim";
+      rev = "30142a518ba77feb22791b5cb2387d88b70c58f2";
+      sha256 = "0m389cnpg17ca8s7vb9yrs40sxb56zg32lcpilnd63zfi7awgscg";
+    };
+  };
+
+  sparkup = buildVimPluginFrom2Nix {
+    name = "sparkup-2012-06-11";
+    src = fetchFromGitHub {
+      owner = "chrisgeo";
+      repo = "sparkup";
+      rev = "6fbfceef890e705c47b42b27be743ffed6f9296e";
+      sha256 = "17jgpvl879ik53rr3razfnbpfx63mzpp1rlvxxjsvvrk4g45dssm";
+    };
+  };
+
+  splice-vim = buildVimPluginFrom2Nix {
+    name = "splice-vim-2017-09-03";
+    src = fetchFromGitHub {
+      owner = "sjl";
+      repo = "splice.vim";
+      rev = "b31cb25eea8a92a037e9da9a98b2e6147294c37d";
+      sha256 = "0mqnrmkyms2z5lqy90cy076x3fr9xmd63962wd8n6n6mbin97ihx";
+    };
+  };
+
+  supertab = buildVimPluginFrom2Nix {
+    name = "supertab-2017-11-14";
+    src = fetchFromGitHub {
+      owner = "ervandew";
+      repo = "supertab";
+      rev = "40fe711e088e2ab346738233dd5adbb1be355172";
+      sha256 = "0l5labq68kyprv63k1q35hz5ly0dd06mf2z202mccnix4mlxf0db";
+    };
+  };
+
+  swift-vim = buildVimPluginFrom2Nix {
+    name = "swift-vim-2018-09-12";
+    src = fetchFromGitHub {
+      owner = "keith";
+      repo = "swift.vim";
+      rev = "5e330f026d4184c917cc156410634551dbd9a944";
+      sha256 = "1gx2vg5w6r7k9070j03wz3bzjdkw3g01nkahd5jawk9z10ifswax";
+    };
+  };
+
+  syntastic = buildVimPluginFrom2Nix {
+    name = "syntastic-2018-08-27";
+    src = fetchFromGitHub {
+      owner = "scrooloose";
+      repo = "syntastic";
+      rev = "0295d8241db23e24b120e0360a899cb375793a1e";
+      sha256 = "1fpfsc8snmkkbsjb4j1l872sgr840q73rdykr29w1q68q4m06vbc";
+    };
+  };
+
+  tabmerge = buildVimPluginFrom2Nix {
+    name = "tabmerge-2010-10-18";
+    src = fetchFromGitHub {
+      owner = "vim-scripts";
+      repo = "tabmerge";
+      rev = "074e5f06f26e7108a0570071a0f938a821768c06";
+      sha256 = "0prkyza1n49cdaslcr57w8zv15vw78mlqbzib2xipmawzjq02idq";
+    };
+  };
+
+  tabpagebuffer-vim = buildVimPluginFrom2Nix {
+    name = "tabpagebuffer-vim-2014-09-30";
+    src = fetchFromGitHub {
+      owner = "shougo";
+      repo = "tabpagebuffer.vim";
+      rev = "4d95c3e6fa5ad887498f4cbe486c11e39d4a1fbc";
+      sha256 = "1z6zlpzkhwy1p2pmx9qrwb91dp9v4yi8jrdvm1if2k79ij4sl08f";
+    };
+  };
+
+  tabular = buildVimPluginFrom2Nix {
+    name = "tabular-2016-05-04";
+    src = fetchFromGitHub {
+      owner = "godlygeek";
+      repo = "tabular";
+      rev = "00e1e7fcdbc6d753e0bc8043e0d2546fa81bf367";
+      sha256 = "185jpisk9hamcwb6aiavdzjdbbigzdra8f4mgs98r9cm9j448xkz";
+    };
+  };
+
+  tagbar = buildVimPluginFrom2Nix {
+    name = "tagbar-2017-12-17";
+    src = fetchFromGitHub {
+      owner = "majutsushi";
+      repo = "tagbar";
+      rev = "387bbadda98e1376ff3871aa461b1f0abd4ece70";
+      sha256 = "130rxvlkqzlqh09w6fpmq7x3b7s4s56qxly9m4jh6s2jrab1cxak";
+    };
+  };
+
+  taglist-vim = buildVimPluginFrom2Nix {
+    name = "taglist-vim-2010-10-18";
+    src = fetchFromGitHub {
+      owner = "vim-scripts";
+      repo = "taglist.vim";
+      rev = "53041fbc45398a9af631a20657e109707a455339";
+      sha256 = "07aa2gfc73lznyi7w7cybzanspza3p67cv5hxr21g43zhs5k9izd";
+    };
+  };
+
+  targets-vim = buildVimPluginFrom2Nix {
+    name = "targets-vim-2018-05-27";
+    src = fetchFromGitHub {
+      owner = "wellle";
+      repo = "targets.vim";
+      rev = "c3042dc18acc0dfcee479310d3efc6aefe92db75";
+      sha256 = "0shnlgwrxzrd0m3k6hnmr66i2l4zknp0pn7f71d2frx937gih34q";
+    };
+  };
+
+  tender-vim = buildVimPluginFrom2Nix {
+    name = "tender-vim-2017-03-14";
+    src = fetchFromGitHub {
+      owner = "jacoborus";
+      repo = "tender.vim";
+      rev = "6b0497a59233b3e67fb528a498069eb1d24743f9";
+      sha256 = "1iqijk7xq0g6p3j8jgzgrhqizw87fnfryx73iaqqx5iyq1k8i9mn";
+    };
+  };
+
+  tern_for_vim = buildVimPluginFrom2Nix {
+    name = "tern_for_vim-2017-11-27";
+    src = fetchFromGitHub {
+      owner = "ternjs";
+      repo = "tern_for_vim";
+      rev = "3cffc28f280fc599d3f997b1c8c00ddc78d8fc21";
+      sha256 = "0idzkc65lw9zg4xq60w2nnvdgbdhngqccqwh1bzkvkzlmr7s43cl";
+    };
+  };
+
+  thumbnail-vim = buildVimPluginFrom2Nix {
+    name = "thumbnail-vim-2017-04-24";
+    src = fetchFromGitHub {
+      owner = "itchyny";
+      repo = "thumbnail.vim";
+      rev = "71cb5d48e59fc77149c1d1036ecd9e39f0b46a00";
+      sha256 = "0b25n28ri6n5rrvgfynv8rm5pzzxpnrnj1l3647pf2fjxd2z2rv5";
+    };
+  };
+
+  tlib_vim = buildVimPluginFrom2Nix {
+    name = "tlib_vim-2018-04-08";
+    src = fetchFromGitHub {
+      owner = "tomtom";
+      repo = "tlib_vim";
+      rev = "ced8f3ebe85b50da2ec0e6d593e6b2e8e6bd243b";
+      sha256 = "08vvd1wpa9k5bid2hh279jjkir2c59ga3527qzinxngmlx8wsbhx";
+    };
+  };
+
+  tslime-vim = buildVimPluginFrom2Nix {
+    name = "tslime-vim-2018-07-23";
+    src = fetchFromGitHub {
+      owner = "jgdavey";
+      repo = "tslime.vim";
+      rev = "28e9eba642a791c6a6b044433dce8e5451b26fb0";
+      sha256 = "1y5xikryv6851d0rjk9c64agawshp5208mwym6ma9ngs7s3s1l4x";
+    };
+  };
+
+  tsuquyomi = buildVimPluginFrom2Nix {
+    name = "tsuquyomi-2018-08-03";
+    src = fetchFromGitHub {
+      owner = "Quramy";
+      repo = "tsuquyomi";
+      rev = "05e6515f6d21545959ac4eb570c917e1d225b1f1";
+      sha256 = "0hbd2d8zb86c8ncrrm4zyj92j523xay2lwk2k9arwacn8fj42hir";
+    };
+  };
+
+  typescript-vim = buildVimPluginFrom2Nix {
+    name = "typescript-vim-2018-08-15";
+    src = fetchFromGitHub {
+      owner = "leafgarland";
+      repo = "typescript-vim";
+      rev = "db131b8cd42973ed26928e9e445c1a745a98cff8";
+      sha256 = "1l7wbwv3xirl9nvjb2f693knxsif5qanjknd9lija8m7gnwagzm4";
+    };
+  };
+
+  ultisnips = buildVimPluginFrom2Nix {
+    name = "ultisnips-2018-04-30";
+    src = fetchFromGitHub {
+      owner = "SirVer";
+      repo = "ultisnips";
+      rev = "6fdc3647f72e0a1f321ea6bd092ecd01f7c187ba";
+      sha256 = "1zp3xcmxk6cn38zmxxy5s2wnw9djskwkmspq2s9vqliyhprf9sy3";
+    };
+  };
+
+  undotree = buildVimPluginFrom2Nix {
+    name = "undotree-2018-09-07";
+    src = fetchFromGitHub {
+      owner = "mbbill";
+      repo = "undotree";
+      rev = "364c73dae83bbaa552fa901dbcb082be22f846f4";
+      sha256 = "1swjgdgbr63a5xp9nlmcpa5f31r1jc9n4wqz4sgmhrcdc4xxq8ah";
+    };
+  };
+
+  unite-vim = buildVimPluginFrom2Nix {
+    name = "unite-vim-2018-08-06";
+    src = fetchFromGitHub {
+      owner = "shougo";
+      repo = "unite.vim";
+      rev = "7ed231f2dbceb82b3ed81dc5ef999c94c2528586";
+      sha256 = "0p2xfsyflds74lrpk14nb388nh2rc3hmqg3i9kgzxqns4i6w5s8v";
+    };
+  };
+
+  verilog_systemverilog-vim = buildVimPluginFrom2Nix {
+    name = "verilog_systemverilog-vim-2018-09-06";
+    src = fetchFromGitHub {
+      owner = "vhda";
+      repo = "verilog_systemverilog.vim";
+      rev = "2cb0da6a325f19bf662c60c5363bb59e98442c33";
+      sha256 = "1gyyaqj7assryaprxm9a3zcnappr3lvqmgphapa53qq6s6vmljw5";
+    };
+  };
+
+  vim = buildVimPluginFrom2Nix {
+    name = "vim-2018-09-13";
+    src = fetchFromGitHub {
+      owner = "dracula";
+      repo = "vim";
+      rev = "72a0d0d584e2b64dd7cd44047688d470e6e39f8f";
+      sha256 = "0n2cyxkwfpy95033zisb5q1jrf17vzi11mprhkm01vfxjp5xh4hy";
+    };
+  };
+
+  vim-abolish = buildVimPluginFrom2Nix {
+    name = "vim-abolish-2018-08-02";
+    src = fetchFromGitHub {
+      owner = "tpope";
+      repo = "vim-abolish";
+      rev = "40e8b973971beb5da279a499231464ae1d959c8b";
+      sha256 = "0ibhd9d57cwb2kls99wmbyl49w7v2niwqrf3pp7191pj46157720";
+    };
+  };
+
+  vim-addon-actions = buildVimPluginFrom2Nix {
+    name = "vim-addon-actions-2018-01-18";
+    src = fetchFromGitHub {
+      owner = "MarcWeber";
+      repo = "vim-addon-actions";
+      rev = "540cae09832ba6abf9fc63c55781bf86584c33ac";
+      sha256 = "011w5k09i01r9x64j20qj0f7d057m9wki2m8l2wds47l57hr3vz6";
+    };
+  };
+
+  vim-addon-async = buildVimPluginFrom2Nix {
+    name = "vim-addon-async-2017-03-20";
+    src = fetchFromGitHub {
+      owner = "MarcWeber";
+      repo = "vim-addon-async";
+      rev = "eca316a4480f68c2cb62128f3187dc7b2002afde";
+      sha256 = "1lk8ma51dd0syi73vq5r4qk9cpy6cq3llizvh94hmxblfjpvrs7q";
+    };
+  };
+
+  vim-addon-background-cmd = buildVimPluginFrom2Nix {
+    name = "vim-addon-background-cmd-2015-12-11";
+    src = fetchFromGitHub {
+      owner = "MarcWeber";
+      repo = "vim-addon-background-cmd";
+      rev = "abf2abf339652d2bc79da81f9d131edfe2755f5a";
+      sha256 = "0csy68x686l3x5ancidxb5b6prg9k7ikybqzq3klx0gs5rmksfy4";
+    };
+  };
+
+  vim-addon-commenting = buildVimPluginFrom2Nix {
+    name = "vim-addon-commenting-2013-06-10";
+    src = fetchFromGitHub {
+      owner = "MarcWeber";
+      repo = "vim-addon-commenting";
+      rev = "b7cf748ac1c9bf555cbd347589e3b7196030d20b";
+      sha256 = "0alak8h33vada2ckb0v06y82qlib5mhyc2yswlv1rqh8ypzhq3mc";
+    };
+  };
+
+  vim-addon-completion = buildVimPluginFrom2Nix {
+    name = "vim-addon-completion-2015-02-10";
+    src = fetchFromGitHub {
+      owner = "MarcWeber";
+      repo = "vim-addon-completion";
+      rev = "021c449a5ce1ce4ac0af5955e05b0279c1cc0e75";
+      sha256 = "1ld059y2qwlc5bdfjm2p314s1qh31lxs54g944pw49r46s5nlslr";
+    };
+  };
+
+  vim-addon-errorformats = buildVimPluginFrom2Nix {
+    name = "vim-addon-errorformats-2014-11-05";
+    src = fetchFromGitHub {
+      owner = "MarcWeber";
+      repo = "vim-addon-errorformats";
+      rev = "dcbb203ad5f56e47e75fdee35bc92e2ba69e1d28";
+      sha256 = "159zqm69fxbxcv3b2y99g57bf20qrzsijcvb5rzy2njxah3049m1";
+    };
+  };
+
+  vim-addon-goto-thing-at-cursor = buildVimPluginFrom2Nix {
+    name = "vim-addon-goto-thing-at-cursor-2012-01-10";
+    src = fetchFromGitHub {
+      owner = "MarcWeber";
+      repo = "vim-addon-goto-thing-at-cursor";
+      rev = "f052e094bdb351829bf72ae3435af9042e09a6e4";
+      sha256 = "1ksm2b0j80zn8sz2y227bpcx4jsv76lwgr2gpgy2drlyqhn2vlv0";
+    };
+  };
+
+  vim-addon-local-vimrc = buildVimPluginFrom2Nix {
+    name = "vim-addon-local-vimrc-2015-03-19";
+    src = fetchFromGitHub {
+      owner = "MarcWeber";
+      repo = "vim-addon-local-vimrc";
+      rev = "6a27f95b35befa70cd0d049329cd0920566c764b";
+      sha256 = "0n8lwl1gyak149p7jpgm0qbmfj8hcg8hirx3dxdhizw0yc47ws7h";
+    };
+  };
+
+  vim-addon-manager = buildVimPluginFrom2Nix {
+    name = "vim-addon-manager-2018-07-27";
+    src = fetchFromGitHub {
+      owner = "MarcWeber";
+      repo = "vim-addon-manager";
+      rev = "d9e865f3c2de5d9b7eabbc976f606cf1b89e29ea";
+      sha256 = "0mgm2dqw8js9gajkrvm5n3k9m1grjxcrfc9xdzb3jxw1c0njdhcy";
+    };
+  };
+
+  vim-addon-mru = buildVimPluginFrom2Nix {
+    name = "vim-addon-mru-2013-08-08";
+    src = fetchFromGitHub {
+      owner = "MarcWeber";
+      repo = "vim-addon-mru";
+      rev = "e41e39bd9d1bf78ccfd8d5e1bc05ae5e1026c2bb";
+      sha256 = "0q6rxr9nrp63kidr3m3c2z5sda4g813pzshg0scxkjr8dxwhzdqm";
+    };
+  };
+
+  vim-addon-mw-utils = buildVimPluginFrom2Nix {
+    name = "vim-addon-mw-utils-2018-03-09";
+    src = fetchFromGitHub {
+      owner = "MarcWeber";
+      repo = "vim-addon-mw-utils";
+      rev = "295862ba6be47ec3b11b6c85c10d982ffd9bc0b2";
+      sha256 = "0ylvhmx0cnj2x38plwqlq4pqyqyxxhf4s08hknnl7qhrr5kd533f";
+    };
+  };
+
+  vim-addon-nix = buildVimPluginFrom2Nix {
+    name = "vim-addon-nix-2017-09-11";
+    src = fetchFromGitHub {
+      owner = "MarcWeber";
+      repo = "vim-addon-nix";
+      rev = "3001a9db5f816dd7af11384f15415bddd146ef86";
+      sha256 = "195z2yz09wirpqjpsha8x7qcr9is1q8qph4j0svws6qbqrkh8ryy";
+    };
+  };
+
+  vim-addon-other = buildVimPluginFrom2Nix {
+    name = "vim-addon-other-2014-07-15";
+    src = fetchFromGitHub {
+      owner = "MarcWeber";
+      repo = "vim-addon-other";
+      rev = "f78720c9cb5bf871cabb13c7cbf94378dbf0163b";
+      sha256 = "0cjz7mlyfkkncas4ss7rwxb0q38ls1qw1p15hac1imscscsvyjc6";
+    };
+  };
+
+  vim-addon-php-manual = buildVimPluginFrom2Nix {
+    name = "vim-addon-php-manual-2015-01-01";
+    src = fetchFromGitHub {
+      owner = "MarcWeber";
+      repo = "vim-addon-php-manual";
+      rev = "5f9810dd1f6e9f36a45f637ae6260ccff09256ff";
+      sha256 = "1kc67f12wccqdza069b75lpcbqp4kv4r23i4mfz0ihwif5mfnhir";
+    };
+  };
+
+  vim-addon-signs = buildVimPluginFrom2Nix {
+    name = "vim-addon-signs-2013-04-19";
+    src = fetchFromGitHub {
+      owner = "MarcWeber";
+      repo = "vim-addon-signs";
+      rev = "17a49f293d18174ff09d1bfff5ba86e8eee8e8ae";
+      sha256 = "0i4gfp30hmw1vqjl6zxjrgkca3ikdkcnjmma2mncjmcr6f59kjzy";
+    };
+  };
+
+  vim-addon-sql = buildVimPluginFrom2Nix {
+    name = "vim-addon-sql-2017-02-11";
+    src = fetchFromGitHub {
+      owner = "MarcWeber";
+      repo = "vim-addon-sql";
+      rev = "048a139af36829fce670c8ff80d3aad927557ee6";
+      sha256 = "0ihm157sby6csdwsnw2gwh3jmm3prm1mxwgkx2hsfwlmpb1vwwm3";
+    };
+  };
+
+  vim-addon-syntax-checker = buildVimPluginFrom2Nix {
+    name = "vim-addon-syntax-checker-2017-06-26";
+    src = fetchFromGitHub {
+      owner = "MarcWeber";
+      repo = "vim-addon-syntax-checker";
+      rev = "739e5719b77c6aea3299c27fc1f4238ac54a8344";
+      sha256 = "1rcn1ps06156nyglvxg6m7pn3vhvmnv5ad6kidp59hggyr5332i9";
+    };
+  };
+
+  vim-addon-toggle-buffer = buildVimPluginFrom2Nix {
+    name = "vim-addon-toggle-buffer-2012-01-13";
+    src = fetchFromGitHub {
+      owner = "MarcWeber";
+      repo = "vim-addon-toggle-buffer";
+      rev = "a1b38b9c5709cba666ed2d84ef06548f675c6b0b";
+      sha256 = "1xq38kfdm36c34ln66znw841q797w5gm8bpq1x64bsf2h6n3ml03";
+    };
+  };
+
+  vim-addon-xdebug = buildVimPluginFrom2Nix {
+    name = "vim-addon-xdebug-2014-08-29";
+    src = fetchFromGitHub {
+      owner = "MarcWeber";
+      repo = "vim-addon-xdebug";
+      rev = "45f26407305b4ce6f8f5f37d2b5e6e4354104172";
+      sha256 = "1i64ppdfp2qqq7vw1jf160mj4ikc04v39iazdab83xmiqjsh8ixw";
+    };
+  };
+
+  vim-airline = buildVimPluginFrom2Nix {
+    name = "vim-airline-2018-09-16";
+    src = fetchFromGitHub {
+      owner = "vim-airline";
+      repo = "vim-airline";
+      rev = "bcd37fc1152912fd456606152cebc8d5fc8db865";
+      sha256 = "0cmfj4pvwqyq2nzsy4zhkwhyrifg2sx0z5plw0dvyi2jnfns7afi";
+    };
+  };
+
+  vim-airline-themes = buildVimPluginFrom2Nix {
+    name = "vim-airline-themes-2018-09-05";
+    src = fetchFromGitHub {
+      owner = "vim-airline";
+      repo = "vim-airline-themes";
+      rev = "725789c110fbab52f8c18021f9d043839d7e31ed";
+      sha256 = "15k5s8yysnvm0swfi27g2yhrnkb8kzvswb58k1jbzb65nwdw139z";
+    };
+  };
+
+  vim-android = buildVimPluginFrom2Nix {
+    name = "vim-android-2018-07-31";
+    src = fetchFromGitHub {
+      owner = "hsanson";
+      repo = "vim-android";
+      rev = "c5647d65b4413c1a91712a80044e034aa705b858";
+      sha256 = "0b70m6yv1w103zdya966r0632q7djmfcp78mw19y9sca0p2d0gm9";
+    };
+  };
+
+  vim-anzu = buildVimPluginFrom2Nix {
+    name = "vim-anzu-2018-02-28";
+    src = fetchFromGitHub {
+      owner = "osyo-manga";
+      repo = "vim-anzu";
+      rev = "45b60d37cb9de90f6c89f7ddeacb7ae430ebcae2";
+      sha256 = "1p5lh4xsv9xsl8kx0h1bg6iy0if4a69hvairq69p50ffka83pv00";
+    };
+  };
+
+  vim-auto-save = buildVimPluginFrom2Nix {
+    name = "vim-auto-save-2017-11-08";
+    src = fetchFromGitHub {
+      owner = "907th";
+      repo = "vim-auto-save";
+      rev = "66643afb55a1fcd3a9b4336f868f58da45bff397";
+      sha256 = "1qnsj520j2hm6znpqpdqmz11vw45avgj8g9djx3alqbnab8ryw0p";
+    };
+  };
+
+  vim-autoformat = buildVimPluginFrom2Nix {
+    name = "vim-autoformat-2018-09-08";
+    src = fetchFromGitHub {
+      owner = "Chiel92";
+      repo = "vim-autoformat";
+      rev = "98233b8f353fa5d237e89859a8f1b91c14c21397";
+      sha256 = "18xb803vx11wx9yhxvp6aq8kh0vbidxmwhwrjfcslrw0k1zis3yl";
+    };
+  };
+
+  vim-bazel = buildVimPluginFrom2Nix {
+    name = "vim-bazel-2018-01-11";
+    src = fetchFromGitHub {
+      owner = "bazelbuild";
+      repo = "vim-bazel";
+      rev = "ecafb17d5d1d3756e5ac0bd9f4812a450b8c91a3";
+      sha256 = "0ixhx9ssfygjy2v2ss02w28rcjxnvhj0caffj32cv3snwnpcz6fy";
+    };
+  };
+
+  vim-buffergator = buildVimPluginFrom2Nix {
+    name = "vim-buffergator-2018-05-02";
+    src = fetchFromGitHub {
+      owner = "jeetsukumaran";
+      repo = "vim-buffergator";
+      rev = "947b60dca4d4fc6a041a6ec84b17ca6736d1b916";
+      sha256 = "0g7ymflzfdsj5793s32gc83bidqys5dxmw455viwpqgmgjxnar5c";
+    };
+  };
+
+  vim-bufferline = buildVimPluginFrom2Nix {
+    name = "vim-bufferline-2016-02-09";
+    src = fetchFromGitHub {
+      owner = "bling";
+      repo = "vim-bufferline";
+      rev = "651fd010aa9613a4b8636a4af8a2db0d22800262";
+      sha256 = "0zls47a3v8dv3h63drbak1mxf3j2x3scvclk7bjwzlk2yp447das";
+    };
+  };
+
+  vim-closetag = buildVimPluginFrom2Nix {
+    name = "vim-closetag-2018-09-03";
+    src = fetchFromGitHub {
+      owner = "alvan";
+      repo = "vim-closetag";
+      rev = "8c71d524d98be4f3c6c1e4ff6ddf6b9f422220bb";
+      sha256 = "1w42qzcw33akycgqj8v60l2yfilhhy9j0zw6rifa66d58xaiv6jy";
+    };
+  };
+
+  vim-codefmt = buildVimPluginFrom2Nix {
+    name = "vim-codefmt-2018-08-17";
+    src = fetchFromGitHub {
+      owner = "google";
+      repo = "vim-codefmt";
+      rev = "18fe8fbd7a6c0875f922aa682f5dec81b9f4e554";
+      sha256 = "0fzhwxcg4yx6zm1ndzp4vmrsi4za9kxymqbrrsj9zk46lm4bv74h";
+    };
+  };
+
+  vim-coffee-script = buildVimPluginFrom2Nix {
+    name = "vim-coffee-script-2018-02-27";
+    src = fetchFromGitHub {
+      owner = "kchmck";
+      repo = "vim-coffee-script";
+      rev = "9e3b4de2a476caeb6ff21b5da20966d7c67a98bb";
+      sha256 = "1yzhyi12r508r2yjkzbcnddv3q4whjf3kchp23xs0snhwd9b981x";
+    };
+  };
+
+  vim-colors-solarized = buildVimPluginFrom2Nix {
+    name = "vim-colors-solarized-2011-05-09";
+    src = fetchFromGitHub {
+      owner = "altercation";
+      repo = "vim-colors-solarized";
+      rev = "528a59f26d12278698bb946f8fb82a63711eec21";
+      sha256 = "05d3lmd1shyagvr3jygqghxd3k8a4vp32723fvxdm57fdrlyzcm1";
+    };
+  };
+
+  vim-colorschemes = buildVimPluginFrom2Nix {
+    name = "vim-colorschemes-2017-08-22";
+    src = fetchFromGitHub {
+      owner = "flazz";
+      repo = "vim-colorschemes";
+      rev = "eab315701f4627967fd62582eefc4e37a3745786";
+      sha256 = "12jfqfs6lqd6jijxrdx3k76bzxrh9517zwczb73qjaqbg286fh5k";
+    };
+  };
+
+  vim-colorstepper = buildVimPluginFrom2Nix {
+    name = "vim-colorstepper-2016-01-28";
+    src = fetchFromGitHub {
+      owner = "jonbri";
+      repo = "vim-colorstepper";
+      rev = "f23ba0d995d41508a2dc9471cf31d3d01a4b5f05";
+      sha256 = "05ykxn0gmh8liz0zv5hb8df1ajggxp88izq3825m0yb3ma3k1jqs";
+    };
+  };
+
+  vim-commentary = buildVimPluginFrom2Nix {
+    name = "vim-commentary-2018-07-27";
+    src = fetchFromGitHub {
+      owner = "tpope";
+      repo = "vim-commentary";
+      rev = "141d9d32a9fb58fe474fcc89cd7221eb2dd57b3a";
+      sha256 = "0nncs32ayfhr557aiynq7b0sc7rxqwv7xanram53x1wvmfy14zf0";
+    };
+  };
+
+  vim-css-color = buildVimPluginFrom2Nix {
+    name = "vim-css-color-2018-09-12";
+    src = fetchFromGitHub {
+      owner = "ap";
+      repo = "vim-css-color";
+      rev = "7ecfc4810f34dbcd5d22a14013f977a9aa699312";
+      sha256 = "1hds83biz0wv12rcqcdab1zm6lck1z4bdk67jq30x8siwcjvkwfy";
+    };
+  };
+
+  vim-cursorword = buildVimPluginFrom2Nix {
+    name = "vim-cursorword-2017-10-19";
+    src = fetchFromGitHub {
+      owner = "itchyny";
+      repo = "vim-cursorword";
+      rev = "4878d6185b99131c5f610cc6ad0e223439ac4601";
+      sha256 = "170nf0w7i5k3cr72dkvraq2p0lzsvb3cmdvslyz7cmxnz611n6bf";
+    };
+  };
+
+  vim-cute-python = buildVimPluginFrom2Nix {
+    name = "vim-cute-python-2016-04-04";
+    src = fetchFromGitHub {
+      owner = "ehamberg";
+      repo = "vim-cute-python";
+      rev = "d7a6163f794500447242df2bedbe20bd751b92da";
+      sha256 = "1jrfd6z84cdzn3yxdfp0xfxygscq7s8kbzxk37hf9cf5pl9ln0qf";
+    };
+  };
+
+  vim-devicons = buildVimPluginFrom2Nix {
+    name = "vim-devicons-2018-06-21";
+    src = fetchFromGitHub {
+      owner = "ryanoasis";
+      repo = "vim-devicons";
+      rev = "ea5bbf0e2a960965accfa50a516773406a5b6b26";
+      sha256 = "1v365j4an1k82gk06ikgqy2dw0ir80kj0svs1fymgklc117xgqsg";
+    };
+  };
+
+  vim-dirdiff = buildVimPluginFrom2Nix {
+    name = "vim-dirdiff-2018-01-31";
+    src = fetchFromGitHub {
+      owner = "will133";
+      repo = "vim-dirdiff";
+      rev = "b5a3d59bfbeb5cef7dbadbe69c455b470988b58c";
+      sha256 = "16hc88k00xa757k0h53r1sbqwxdxdy0118yl2vsigd6rqk474nw1";
+    };
+  };
+
+  vim-dirvish = buildVimPluginFrom2Nix {
+    name = "vim-dirvish-2018-06-20";
+    src = fetchFromGitHub {
+      owner = "justinmk";
+      repo = "vim-dirvish";
+      rev = "c273c462d774ed2db5f6d382265cf5897e554de0";
+      sha256 = "1fv1kk7y280kx8c0iy9rg43i8gr0h8308al8sm85qvmfx5fcbi9d";
+    };
+  };
+
+  vim-dispatch = buildVimPluginFrom2Nix {
+    name = "vim-dispatch-2018-09-13";
+    src = fetchFromGitHub {
+      owner = "tpope";
+      repo = "vim-dispatch";
+      rev = "fe48d002ce5d473b2057641666d643c66ede6230";
+      sha256 = "1yxssbss89c1sp6vq0mb7cz65cw0lbqfs2ng7hfr92fag68agi2p";
+    };
+  };
+
+  vim-docbk = buildVimPluginFrom2Nix {
+    name = "vim-docbk-2015-04-01";
+    src = fetchFromGitHub {
+      owner = "jhradilek";
+      repo = "vim-docbk";
+      rev = "6ac0346ce96dbefe982b9e765a81c072997f2e9e";
+      sha256 = "1jnx39m152hf9j620ygagaydg6h8m8gxkr1fmxj6kgqf71jr0n9d";
+    };
+  };
+
+  vim-easy-align = buildVimPluginFrom2Nix {
+    name = "vim-easy-align-2017-06-03";
+    src = fetchFromGitHub {
+      owner = "junegunn";
+      repo = "vim-easy-align";
+      rev = "1cd724dc239c3a0f7a12e0fac85945cc3dbe07b0";
+      sha256 = "16yis2wlgi8v0h04hiqmnkm9qrby4kbc2fvkw4szfsbg5m3qx0fc";
+    };
+  };
+
+  vim-easygit = buildVimPluginFrom2Nix {
+    name = "vim-easygit-2018-07-08";
+    src = fetchFromGitHub {
+      owner = "neoclide";
+      repo = "vim-easygit";
+      rev = "9770370a35838f70eda91d0c3006d0563ccc8d2a";
+      sha256 = "1a42s0nymakz20rjrpwmiqpnlndrkdakzbm53aclzcs61i9zq2k8";
+    };
+  };
+
+  vim-easymotion = buildVimPluginFrom2Nix {
+    name = "vim-easymotion-2018-06-04";
+    src = fetchFromGitHub {
+      owner = "easymotion";
+      repo = "vim-easymotion";
+      rev = "1a0244c90c3ff46219cf9597bb13662be4232407";
+      sha256 = "1gsfn4fgivfg821wmnrdzpmqdimjkvkqi3gwr0nwf07ygjbr2csy";
+    };
+  };
+
+  vim-easytags = buildVimPluginFrom2Nix {
+    name = "vim-easytags-2015-07-01";
+    src = fetchFromGitHub {
+      owner = "xolox";
+      repo = "vim-easytags";
+      rev = "72a8753b5d0a951e547c51b13633f680a95b5483";
+      sha256 = "0i8ha1fa5d860b1mi0xp8kwsgb0b9vbzcg1bldzv6s5xd9yyi12i";
+    };
+  };
+
+  vim-eighties = buildVimPluginFrom2Nix {
+    name = "vim-eighties-2016-12-15";
+    src = fetchFromGitHub {
+      owner = "justincampbell";
+      repo = "vim-eighties";
+      rev = "1a6ea42ead1e31524ec94cfefb6afc1d8dacd170";
+      sha256 = "1yh1kny28c7f5qm52y7xd5aj4mycksfb0x1zvcb37c73ycdxc1v2";
+    };
+  };
+
+  vim-elixir = buildVimPluginFrom2Nix {
+    name = "vim-elixir-2018-08-17";
+    src = fetchFromGitHub {
+      owner = "elixir-lang";
+      repo = "vim-elixir";
+      rev = "0a847f0faed5ba2d94bb3d51f355c50f37ba025b";
+      sha256 = "1jl85wpgywhcvhgw02y8zpvqf0glr4i8522kxpvhsiacb1v1xh04";
+    };
+  };
+
+  vim-eunuch = buildVimPluginFrom2Nix {
+    name = "vim-eunuch-2018-09-09";
+    src = fetchFromGitHub {
+      owner = "tpope";
+      repo = "vim-eunuch";
+      rev = "10da325fb032a1acfa9222d273459f53bad30ba4";
+      sha256 = "125n4amz3vmc83yv76vidsnma5w2braa69dcpj858ahnzhh329qj";
+    };
+  };
+
+  vim-expand-region = buildVimPluginFrom2Nix {
+    name = "vim-expand-region-2013-08-19";
+    src = fetchFromGitHub {
+      owner = "terryma";
+      repo = "vim-expand-region";
+      rev = "966513543de0ddc2d673b5528a056269e7917276";
+      sha256 = "0l30wjlk4vxr16f1njnvf8aw9yg9p9jisvcxbcg3znsq5q8ix6zv";
+    };
+  };
+
+  vim-extradite = buildVimPluginFrom2Nix {
+    name = "vim-extradite-2015-09-22";
+    src = fetchFromGitHub {
+      owner = "int3";
+      repo = "vim-extradite";
+      rev = "52326f6d333cdbb9e9c6d6772af87f4f39c00526";
+      sha256 = "0c89i0spvdm9vi65q15qcmsfmwa9rds2wmaq1kf6s7q7ywvs6w8i";
+    };
+  };
+
+  vim-fireplace = buildVimPluginFrom2Nix {
+    name = "vim-fireplace-2018-06-01";
+    src = fetchFromGitHub {
+      owner = "tpope";
+      repo = "vim-fireplace";
+      rev = "1ef0f0726cadd96547a5f79103b66339f170da02";
+      sha256 = "0ihhd34bl98xssa602386ji013pjj6xnkgww3y2wg73sx2nk6qc4";
+    };
+  };
+
+  vim-flagship = buildVimPluginFrom2Nix {
+    name = "vim-flagship-2018-08-15";
+    src = fetchFromGitHub {
+      owner = "tpope";
+      repo = "vim-flagship";
+      rev = "66abd2fc519f4339ec751874279c14da7833dd99";
+      sha256 = "0ijfa076a5jr6gi11j2zcgh5c7kj0vlwipzk1myjc1a77pss7nlg";
+    };
+  };
+
+  vim-ft-diff_fold = buildVimPluginFrom2Nix {
+    name = "vim-ft-diff_fold-2013-02-10";
+    src = fetchFromGitHub {
+      owner = "thinca";
+      repo = "vim-ft-diff_fold";
+      rev = "89771dffd3682ef82a4b3b3e9c971b9909f08e87";
+      sha256 = "0bk95cxkfzamlgv1x2jb1bnfas2pmvvqgpn5fvxddf0andm8sfma";
+    };
+  };
+
+  vim-fugitive = buildVimPluginFrom2Nix {
+    name = "vim-fugitive-2018-09-15";
+    src = fetchFromGitHub {
+      owner = "tpope";
+      repo = "vim-fugitive";
+      rev = "fb5531997342be62efbbb98bda4b90ee88b2ac00";
+      sha256 = "092fpxmvl7mq1bh8g87ld1mn19qh9dc9r16ngilhg8zx3fvpvi67";
+    };
+  };
+
+  vim-ghost = buildVimPluginFrom2Nix {
+    name = "vim-ghost-2018-09-12";
+    src = fetchFromGitHub {
+      owner = "raghur";
+      repo = "vim-ghost";
+      rev = "4e06bc238d23e6eb245a766105c62344a132b3f4";
+      sha256 = "1n5m7xbv4i0bwdqm39n9j6brbjayk4cpq38sqqbvgh3lia7nkbpv";
+    };
+  };
+
+  vim-gista = buildVimPluginFrom2Nix {
+    name = "vim-gista-2017-02-20";
+    src = fetchFromGitHub {
+      owner = "lambdalisue";
+      repo = "vim-gista";
+      rev = "b6cd41d0eb480cd79e84f3da3703613d0cf94a6c";
+      sha256 = "0bkzbppd3jdci4yvifb4sh05q20qn8cr3j9kqhxyc703s0l0lk2s";
+    };
+  };
+
+  vim-gitbranch = buildVimPluginFrom2Nix {
+    name = "vim-gitbranch-2017-05-27";
+    src = fetchFromGitHub {
+      owner = "itchyny";
+      repo = "vim-gitbranch";
+      rev = "8118dc1cdd387bd609852be4bf350360ce881193";
+      sha256 = "01gvd96mnzfc5s0951zzq122birg5svnximkldgb9kv5bmsnmh3j";
+    };
+  };
+
+  vim-gitgutter = buildVimPluginFrom2Nix {
+    name = "vim-gitgutter-2018-08-15";
+    src = fetchFromGitHub {
+      owner = "airblade";
+      repo = "vim-gitgutter";
+      rev = "50a7062909d91a290fae04219887b1b45f3138db";
+      sha256 = "1bgpy85dxvn40ybzxih25gysy941jvylxm0fmkd5qpwkf7xm26wq";
+    };
+  };
+
+  vim-github-dashboard = buildVimPluginFrom2Nix {
+    name = "vim-github-dashboard-2018-09-03";
+    src = fetchFromGitHub {
+      owner = "junegunn";
+      repo = "vim-github-dashboard";
+      rev = "8012a2016a9e39a50081c9d5db2deb09ae4a6010";
+      sha256 = "0jkr6mz5zcpbyswmiyprcbm8l93lkg5sr46r8kyds1n2vz19cf7x";
+    };
+  };
+
+  vim-go = buildVimPluginFrom2Nix {
+    name = "vim-go-2018-09-13";
+    src = fetchFromGitHub {
+      owner = "fatih";
+      repo = "vim-go";
+      rev = "8df48b2c2c8aa02dd5ab00b6e9f35b0b9808d798";
+      sha256 = "1ymkmnwvbm5b09d930p7k3cmk7dg1rn68qny9n7jhs7hwxdc309a";
+    };
+  };
+
+  vim-grammarous = buildVimPluginFrom2Nix {
+    name = "vim-grammarous-2018-09-13";
+    src = fetchFromGitHub {
+      owner = "rhysd";
+      repo = "vim-grammarous";
+      rev = "65e01dd1f19a4cbaade139754d6e8c8cdf45c33a";
+      sha256 = "14sjvspnfj5jxghh1vndaxfglr0ypnn59nzrhxnymf6q3g930vcl";
+    };
+  };
+
+  vim-grepper = buildVimPluginFrom2Nix {
+    name = "vim-grepper-2018-09-10";
+    src = fetchFromGitHub {
+      owner = "mhinz";
+      repo = "vim-grepper";
+      rev = "f61a745c1e19c80427a251f556f28fc31e962f6d";
+      sha256 = "0l465qpphyi2c53hfwhc6fvj1s7vs2yc2l2spw387av6yqw83m9g";
+    };
+  };
+
+  vim-gutentags = buildVimPluginFrom2Nix {
+    name = "vim-gutentags-2018-06-13";
+    src = fetchFromGitHub {
+      owner = "ludovicchabant";
+      repo = "vim-gutentags";
+      rev = "b1eb744786ec3e55c1c8ed8ab3221157b426f62e";
+      sha256 = "0bx690n6zn28bzw99sis1q177x3s4yzdh6avsv49qpwwdg73s3c4";
+    };
+  };
+
+  vim-hardtime = buildVimPluginFrom2Nix {
+    name = "vim-hardtime-2017-03-31";
+    src = fetchFromGitHub {
+      owner = "takac";
+      repo = "vim-hardtime";
+      rev = "d9128568afa62947b7ac8f12c22d88e3de526a6b";
+      sha256 = "097wzfh4n4fnsq2gx4hbmyr731ciky8qcai5aiyh2baybvwshmr5";
+    };
+  };
+
+  vim-haskellconceal = buildVimPluginFrom2Nix {
+    name = "vim-haskellconceal-2017-06-15";
+    src = fetchFromGitHub {
+      owner = "twinside";
+      repo = "vim-haskellconceal";
+      rev = "802f82a5afee56e9e1251e6f756104a3bd114234";
+      sha256 = "1kh6853hi4rgl4z1xs8kz9l1q9w7lh0r42y2m0rabfpr6yh3091r";
+    };
+  };
+
+  vim-haskellConcealPlus = buildVimPluginFrom2Nix {
+    name = "vim-haskellConcealPlus-2018-08-07";
+    src = fetchFromGitHub {
+      owner = "enomsg";
+      repo = "vim-haskellConcealPlus";
+      rev = "12608ecab20c3eda9a89a55931397b5e020f38a4";
+      sha256 = "0i75casdf20l22s1p669nfk67f10d6ry0i76bbwbn0anq66hn7n0";
+    };
+  };
+
+  vim-hdevtools = buildVimPluginFrom2Nix {
+    name = "vim-hdevtools-2017-03-11";
+    src = fetchFromGitHub {
+      owner = "bitc";
+      repo = "vim-hdevtools";
+      rev = "4ffdace7002915cb10d663a2c56386286c5b8e37";
+      sha256 = "0s7qd72962sc56j8xzpzikjs9k5s89d5p0j541abl8zm0mavmyka";
+    };
+  };
+
+  vim-hier = buildVimPluginFrom2Nix {
+    name = "vim-hier-2011-08-27";
+    src = fetchFromGitHub {
+      owner = "jceb";
+      repo = "vim-hier";
+      rev = "0b8c365263551a67404ebd7e528c55e17c1d3de7";
+      sha256 = "118pd9sx1bl9vfr89xrf536hfx4l162a43a1qpwpkqxzb9a3ca7n";
+    };
+  };
+
+  vim-highlightedyank = buildVimPluginFrom2Nix {
+    name = "vim-highlightedyank-2018-06-01";
+    src = fetchFromGitHub {
+      owner = "machakann";
+      repo = "vim-highlightedyank";
+      rev = "eafae05916e670da8bc99e44b1534cd8c7f87c7a";
+      sha256 = "1z6xjb9244fgnhmw21m7y3bd9vs9gvxbb9ig73iwy0ny886hjlnk";
+    };
+  };
+
+  vim-hindent = buildVimPluginFrom2Nix {
+    name = "vim-hindent-2018-07-31";
+    src = fetchFromGitHub {
+      owner = "alx741";
+      repo = "vim-hindent";
+      rev = "f8e84c199fd00a3ccaf5bbbc97786bde9a4faa13";
+      sha256 = "1y4nnz38zal1ffs5n751dn9p9apk8q7pq3cw79r5z6fsdp942ai6";
+    };
+  };
+
+  vim-hoogle = buildVimPluginFrom2Nix {
+    name = "vim-hoogle-2018-03-04";
+    src = fetchFromGitHub {
+      owner = "Twinside";
+      repo = "vim-hoogle";
+      rev = "871d104c92e33cb238506f2805f1652561978cc8";
+      sha256 = "17qvi57g72ijgk7nczczli3kcphvdf625fzqbqcmqpsawgvfd07n";
+    };
+  };
+
+  vim-iced-coffee-script = buildVimPluginFrom2Nix {
+    name = "vim-iced-coffee-script-2013-12-26";
+    src = fetchFromGitHub {
+      owner = "noc7c9";
+      repo = "vim-iced-coffee-script";
+      rev = "e42e0775fa4b1f8840c55cd36ac3d1cedbc1dea2";
+      sha256 = "14yfirny359rlrr082il2ys3hxiyrbbk794rdxrs2lasjy8rb1f7";
+    };
+  };
+
+  vim-indent-guides = buildVimPluginFrom2Nix {
+    name = "vim-indent-guides-2018-05-14";
+    src = fetchFromGitHub {
+      owner = "nathanaelkane";
+      repo = "vim-indent-guides";
+      rev = "54d889a63716ee2f1818aa2ec5082db47147147b";
+      sha256 = "0ahlbjv2ibhhnf9zqn85b2sh3wf9l0kmg2qmavz3z5fmf8sqljj2";
+    };
+  };
+
+  vim-indent-object = buildVimPluginFrom2Nix {
+    name = "vim-indent-object-2018-04-08";
+    src = fetchFromGitHub {
+      owner = "michaeljsmith";
+      repo = "vim-indent-object";
+      rev = "5c5b24c959478929b54a9e831a8e2e651a465965";
+      sha256 = "1kmwnz0jxjkvfzy06r7r73pcxfcyjp8p8m2d6qrhjfvzidgfhw19";
+    };
+  };
+
+  vim-ipython = buildVimPluginFrom2Nix {
+    name = "vim-ipython-2015-06-23";
+    src = fetchFromGitHub {
+      owner = "ivanov";
+      repo = "vim-ipython";
+      rev = "42499f094b805b90b683afa5009cee99abd0bb75";
+      sha256 = "10wpfvfs8yv1bvzra4d5zy5glp62gbalpayxx7mkalhr2ccppy3x";
+    };
+  };
+
+  vim-isort = buildVimPluginFrom2Nix {
+    name = "vim-isort-2018-08-22";
+    src = fetchFromGitHub {
+      owner = "fisadev";
+      repo = "vim-isort";
+      rev = "2fbab3401b7f81ac7f629e34e4f40a7e52934a99";
+      sha256 = "09vq27jqmzp01qg5zssxcr93nmhly7cnc728qa4ivvmqkgg4myz1";
+    };
+  };
+
+  vim-jade = buildVimPluginFrom2Nix {
+    name = "vim-jade-2018-09-10";
+    src = fetchFromGitHub {
+      owner = "digitaltoad";
+      repo = "vim-jade";
+      rev = "3f341b48e46a84891e19d449a5e336bcfc5a57a0";
+      sha256 = "15gpb1a9d80gz8nzgl0w6wpnlxnrxd4qra2xj56jmmywsabkvqxk";
+    };
+  };
+
+  vim-javacomplete2 = buildVimPluginFrom2Nix {
+    name = "vim-javacomplete2-2018-08-20";
+    src = fetchFromGitHub {
+      owner = "artur-shaik";
+      repo = "vim-javacomplete2";
+      rev = "2567a4f3ba2b1b902fd85ca24726aba3bf61aaa5";
+      sha256 = "17mlip2mxv9sj2pxmj3clb7ax6m545pa5ynbr80vxww99537gxpr";
+    };
+  };
+
+  vim-javascript = buildVimPluginFrom2Nix {
+    name = "vim-javascript-2018-08-29";
+    src = fetchFromGitHub {
+      owner = "pangloss";
+      repo = "vim-javascript";
+      rev = "dd84369d731bcb8feee0901cbb9b63a2b219bf28";
+      sha256 = "1ca0dd4niy0lkdslgzfjp8pbr7szx6mgzax451r1c479dkmhh4cl";
+    };
+  };
+
+  vim-jinja = buildVimPluginFrom2Nix {
+    name = "vim-jinja-2016-11-16";
+    src = fetchFromGitHub {
+      owner = "lepture";
+      repo = "vim-jinja";
+      rev = "8d330a7aaf0763d080dc82204b4aaba6ac0605c6";
+      sha256 = "1n62ga02rcj7jjgzvwr46pckj59dc1zqahjgampjcwdd8vf4mg3q";
+    };
+  };
+
+  vim-jsbeautify = buildVimPluginFrom2Nix {
+    name = "vim-jsbeautify-2018-01-31";
+    src = fetchFromGitHub {
+      owner = "maksimr";
+      repo = "vim-jsbeautify";
+      rev = "7a55bffa7d87e4f1ed11650e56a1361779b39624";
+      sha256 = "01jvc3nkvmhw9n7m9x96ax1ndzw78ryjmgrvkqb7gja1xb8i8jqq";
+      fetchSubmodules = true;
+    };
+  };
+
+  vim-jsdoc = buildVimPluginFrom2Nix {
+    name = "vim-jsdoc-2018-05-05";
+    src = fetchFromGitHub {
+      owner = "heavenshell";
+      repo = "vim-jsdoc";
+      rev = "5ef086789f5ac431d1d5aab53e771f00f1c25503";
+      sha256 = "0f0dbcvbmha2nfadvf27crxkkxc1ps1inss5n66vy1p5bffv0bpm";
+    };
+  };
+
+  vim-json = buildVimPluginFrom2Nix {
+    name = "vim-json-2018-01-10";
+    src = fetchFromGitHub {
+      owner = "elzr";
+      repo = "vim-json";
+      rev = "3727f089410e23ae113be6222e8a08dd2613ecf2";
+      sha256 = "1c19pqrys45pzflj5jyrm4q6hcvs977lv6qsfvbnk7nm4skxrqp1";
+    };
+  };
+
+  vim-jsonnet = buildVimPluginFrom2Nix {
+    name = "vim-jsonnet-2018-04-11";
+    src = fetchFromGitHub {
+      owner = "google";
+      repo = "vim-jsonnet";
+      rev = "1425166887329363381194adc457b02b663b1354";
+      sha256 = "0kkpvp1r06l3glhgw4wv3ihqisjhs5m0x7mxgy388hy4r73fx08j";
+    };
+  };
+
+  vim-lastplace = buildVimPluginFrom2Nix {
+    name = "vim-lastplace-2017-06-13";
+    src = fetchFromGitHub {
+      owner = "farmergreg";
+      repo = "vim-lastplace";
+      rev = "102b68348eff0d639ce88c5094dab0fdbe4f7c55";
+      sha256 = "1d0mjjyissjvl80wgmn7z1gsjs3fhk0vnmx84l9q7g04ql4l9pja";
+    };
+  };
+
+  vim-latex-live-preview = buildVimPluginFrom2Nix {
+    name = "vim-latex-live-preview-2018-09-15";
+    src = fetchFromGitHub {
+      owner = "xuhdev";
+      repo = "vim-latex-live-preview";
+      rev = "c573115642e1a991e0dd763f25dc02b3d99acea5";
+      sha256 = "1s1p8mi9n6qxfd9847fbzc12sy9ala5jnkjicrcdcbn7irlvvwcg";
+    };
+  };
+
+  vim-lawrencium = buildVimPluginFrom2Nix {
+    name = "vim-lawrencium-2017-01-11";
+    src = fetchFromGitHub {
+      owner = "ludovicchabant";
+      repo = "vim-lawrencium";
+      rev = "88077183e1f5a9a1f741aeab7a1374cfed9e917f";
+      sha256 = "0z31v93wjycq4lqvbl1jzxi7i5i1vl919m4dyyzphybcqrjjpnab";
+    };
+  };
+
+  vim-leader-guide = buildVimPluginFrom2Nix {
+    name = "vim-leader-guide-2017-03-18";
+    src = fetchFromGitHub {
+      owner = "hecal3";
+      repo = "vim-leader-guide";
+      rev = "6ac8c663e65c9c0ded70417b84f66ee59457893e";
+      sha256 = "1hqha3ig40ls15bnb10xpbl91swn0gxqnhmz5frkvvdzj4wq55fw";
+    };
+  };
+
+  vim-ledger = buildVimPluginFrom2Nix {
+    name = "vim-ledger-2017-12-12";
+    src = fetchFromGitHub {
+      owner = "ledger";
+      repo = "vim-ledger";
+      rev = "6eb3bb21aa979cc295d0480b2179938c12b33d0d";
+      sha256 = "0rbwyaanvl2bqk8xm4kq8fkv8y92lpf9xx5n8gw54iij7xxhnj01";
+    };
+  };
+
+  vim-localvimrc = buildVimPluginFrom2Nix {
+    name = "vim-localvimrc-2018-08-21";
+    src = fetchFromGitHub {
+      owner = "embear";
+      repo = "vim-localvimrc";
+      rev = "7f8fbfedaaf217488bbc9ae3fbd2539a5d825623";
+      sha256 = "1q12lxblymv0j594161lpy5a6dlsg4510gmsdf2p70kbd8jfp1ar";
+    };
+  };
+
+  vim-logreview = buildVimPluginFrom2Nix {
+    name = "vim-logreview-2017-07-08";
+    src = fetchFromGitHub {
+      owner = "andreshazard";
+      repo = "vim-logreview";
+      rev = "b7b66ab338e904127d796af49235b8c29742f18f";
+      sha256 = "09lyymq0f3ybqdzhbpia7b0wcjbcyg5nkqd72qk8jkvc42da2af3";
+    };
+  };
+
+  vim-maktaba = buildVimPluginFrom2Nix {
+    name = "vim-maktaba-2018-05-07";
+    src = fetchFromGitHub {
+      owner = "google";
+      repo = "vim-maktaba";
+      rev = "ffdb1a5a9921f7fd722c84d0f60e166f9916b67d";
+      sha256 = "1cmhgd9xvx09l6ypks09gxqs1vad1bddinf4cx2jmd516bv8qss3";
+    };
+  };
+
+  vim-markdown = buildVimPluginFrom2Nix {
+    name = "vim-markdown-2018-07-30";
+    src = fetchFromGitHub {
+      owner = "plasticboy";
+      repo = "vim-markdown";
+      rev = "f19506b1bfe5e60c39581dd53f6913a09385f5dd";
+      sha256 = "0x0lsynmwg41fq8zf7149a2anj2b7fnm0d7b0vqnj3dwdwrjj5a1";
+    };
+  };
+
+  vim-misc = buildVimPluginFrom2Nix {
+    name = "vim-misc-2015-05-21";
+    src = fetchFromGitHub {
+      owner = "xolox";
+      repo = "vim-misc";
+      rev = "3e6b8fb6f03f13434543ce1f5d24f6a5d3f34f0b";
+      sha256 = "0rd9788dyfc58py50xbiaz5j7nphyvf3rpp3yal7yq2dhf0awwfi";
+    };
+  };
+
+  vim-multiple-cursors = buildVimPluginFrom2Nix {
+    name = "vim-multiple-cursors-2018-08-10";
+    src = fetchFromGitHub {
+      owner = "terryma";
+      repo = "vim-multiple-cursors";
+      rev = "dd9289af03abafa76b28c503e20747ff7d7d89e5";
+      sha256 = "082y4xsvsq2psllds7bncshzjsvh48l4200mri9vkv3f5mydz985";
+    };
+  };
+
+  vim-nerdtree-tabs = buildVimPluginFrom2Nix {
+    name = "vim-nerdtree-tabs-2018-05-05";
+    src = fetchFromGitHub {
+      owner = "jistr";
+      repo = "vim-nerdtree-tabs";
+      rev = "5fc6c6857028a07e8fe50f0adef28fb20218776b";
+      sha256 = "051m4jb8jcc9rbafp995hmf4q6zn07bwh7anra6k1cr14i9lasaa";
+    };
+  };
+
+  vim-niceblock = buildVimPluginFrom2Nix {
+    name = "vim-niceblock-2018-09-06";
+    src = fetchFromGitHub {
+      owner = "kana";
+      repo = "vim-niceblock";
+      rev = "9302f527eefc0fde8df983cbb9710ad52c4213b5";
+      sha256 = "1d0rx7s10jl1q9y5s4235imizbyxrgkm4dxh5ankcr8s617l7mz2";
+    };
+  };
+
+  vim-nix = buildVimPluginFrom2Nix {
+    name = "vim-nix-2018-08-27";
+    src = fetchFromGitHub {
+      owner = "LnL7";
+      repo = "vim-nix";
+      rev = "be0c6bb409732b79cc86c177ca378b0b334e1efe";
+      sha256 = "1ivkwlm6lz43xk1m7aii0bgn2p3225dixck0qyhxw4zxhp2xiz06";
+    };
+  };
+
+  vim-obsession = buildVimPluginFrom2Nix {
+    name = "vim-obsession-2018-08-27";
+    src = fetchFromGitHub {
+      owner = "tpope";
+      repo = "vim-obsession";
+      rev = "523b2c60eb956aba6014e18be75aa7bde5280c33";
+      sha256 = "18hgsrlk4319mpr36sj78a43fvr85lzisxblkik36gvyby9qr3h3";
+    };
+  };
+
+  vim-operator-replace = buildVimPluginFrom2Nix {
+    name = "vim-operator-replace-2015-02-24";
+    src = fetchFromGitHub {
+      owner = "kana";
+      repo = "vim-operator-replace";
+      rev = "1345a556a321a092716e149d4765a5e17c0e9f0f";
+      sha256 = "07cibp61zwbzpjfxqdc77fzrgnz8jhimmdhhyjr0lvgrjgvsnv6q";
+    };
+  };
+
+  vim-operator-surround = buildVimPluginFrom2Nix {
+    name = "vim-operator-surround-2017-12-22";
+    src = fetchFromGitHub {
+      owner = "rhysd";
+      repo = "vim-operator-surround";
+      rev = "001c0da077b5b38a723151b19760d220e02363db";
+      sha256 = "0c6w6id57faw6sjf5wvw9qp2a4i7xj65q0c4hjs0spgzycv2wpkh";
+    };
+  };
+
+  vim-operator-user = buildVimPluginFrom2Nix {
+    name = "vim-operator-user-2015-02-17";
+    src = fetchFromGitHub {
+      owner = "kana";
+      repo = "vim-operator-user";
+      rev = "c3dfd41c1ed516b4b901c97562e644de62c367aa";
+      sha256 = "16y2fyrmwg4vkcl85i8xg8s6m39ca2jvgi9qm36b3vzbnkcifafb";
+    };
+  };
+
+  vim-orgmode = buildVimPluginFrom2Nix {
+    name = "vim-orgmode-2018-07-25";
+    src = fetchFromGitHub {
+      owner = "jceb";
+      repo = "vim-orgmode";
+      rev = "35e94218c12a0c063b4b3a9b48e7867578e1e13c";
+      sha256 = "0j6zfqqysnky4z54413l87q7wxbskg0zb221zbz48ry4l1anilhx";
+    };
+  };
+
+  vim-pager = buildVimPluginFrom2Nix {
+    name = "vim-pager-2015-08-26";
+    src = fetchFromGitHub {
+      owner = "lambdalisue";
+      repo = "vim-pager";
+      rev = "a657d508b4d5a23aada7585c9f1e0063914c0c45";
+      sha256 = "10xm77pia916zf9i2llyhs89s653r98l6zq8cswm7cw61bjfxvv6";
+    };
+  };
+
+  vim-pandoc = buildVimPluginFrom2Nix {
+    name = "vim-pandoc-2018-08-13";
+    src = fetchFromGitHub {
+      owner = "vim-pandoc";
+      repo = "vim-pandoc";
+      rev = "d0911146c68512defcf9d947542b06d7f7eed37e";
+      sha256 = "13qqwpmnzida7bm57r306w3fpb397h6b2gxclq9in0ccq5h92xid";
+    };
+  };
+
+  vim-pandoc-after = buildVimPluginFrom2Nix {
+    name = "vim-pandoc-after-2017-11-21";
+    src = fetchFromGitHub {
+      owner = "vim-pandoc";
+      repo = "vim-pandoc-after";
+      rev = "844f27debf4d72811049167f97191a3b551ddfd5";
+      sha256 = "0i99g9lnk1xzarw3vzbc47i4bg4iybaywkjvd2krln4q426a6saf";
+    };
+  };
+
+  vim-pandoc-syntax = buildVimPluginFrom2Nix {
+    name = "vim-pandoc-syntax-2017-04-13";
+    src = fetchFromGitHub {
+      owner = "vim-pandoc";
+      repo = "vim-pandoc-syntax";
+      rev = "56e8e41ef863a0a7d33d85c3c0c895aa6e9e62d3";
+      sha256 = "19ll4zrw5yd0frgsbi7pg9b68lmy4bfiwbnwgzii7inifrqsykfw";
+    };
+  };
+
+  vim-pathogen = buildVimPluginFrom2Nix {
+    name = "vim-pathogen-2018-04-05";
+    src = fetchFromGitHub {
+      owner = "tpope";
+      repo = "vim-pathogen";
+      rev = "06da921608b971fb47603671bcafdb2843992eb3";
+      sha256 = "1mxkp2yqqmfl0lq6kmkl716y9x8cdm7aibb376azydxlsbqv4qmi";
+    };
+  };
+
+  vim-peekaboo = buildVimPluginFrom2Nix {
+    name = "vim-peekaboo-2017-03-20";
+    src = fetchFromGitHub {
+      owner = "junegunn";
+      repo = "vim-peekaboo";
+      rev = "a7c940b15b008afdcea096d3fc4d25e3e431eb49";
+      sha256 = "1rc4hr6vwj2mmrgz8lifxf9rvcw1rb5dahq649yn8ccw03x8zn6m";
+    };
+  };
+
+  vim-pencil = buildVimPluginFrom2Nix {
+    name = "vim-pencil-2017-06-14";
+    src = fetchFromGitHub {
+      owner = "reedes";
+      repo = "vim-pencil";
+      rev = "2dcd974b7255e4af83cf79a208f04a3489065e22";
+      sha256 = "0swc6sszj1f4h5hgi7z7j1xw54d69mg7f18rk2kf5y453qwg4jc0";
+    };
+  };
+
+  vim-plugin-AnsiEsc = buildVimPluginFrom2Nix {
+    name = "vim-plugin-AnsiEsc-2018-05-10";
+    src = fetchFromGitHub {
+      owner = "powerman";
+      repo = "vim-plugin-AnsiEsc";
+      rev = "9df135fd4a564559aad0f6d28ae6975678cedcaf";
+      sha256 = "06s6fz3jw6pmy08nqzlvzhcgnv2d2p0vs863hqvd39amhg1xa5nf";
+    };
+  };
+
+  vim-polyglot = buildVimPluginFrom2Nix {
+    name = "vim-polyglot-2018-07-08";
+    src = fetchFromGitHub {
+      owner = "sheerun";
+      repo = "vim-polyglot";
+      rev = "055f7710b65dfa2df52fc0b5be2486ae36ac5751";
+      sha256 = "1yyqsy3q1kjvlqffc10zn3kl0k468xj8mycc22xp1hp1zrkxcf5x";
+    };
+  };
+
+  vim-prettyprint = buildVimPluginFrom2Nix {
+    name = "vim-prettyprint-2016-07-16";
+    src = fetchFromGitHub {
+      owner = "thinca";
+      repo = "vim-prettyprint";
+      rev = "d6060d2b1ff1cff71714e126addd3b10883ade12";
+      sha256 = "0mb1ylsq4023ik9wd9iwzlynra2c320xp9h2i79bspapglgd5gk9";
+    };
+  };
+
+  vim-projectionist = buildVimPluginFrom2Nix {
+    name = "vim-projectionist-2018-09-09";
+    src = fetchFromGitHub {
+      owner = "tpope";
+      repo = "vim-projectionist";
+      rev = "ee68be42d26a8879b871c051e85ce0dfae7364f0";
+      sha256 = "1x1v6q6gqw1f5h0rshj8q7x5cip78x2p6xdj05dglqdq1wz4w28i";
+    };
+  };
+
+  vim-puppet = buildVimPluginFrom2Nix {
+    name = "vim-puppet-2018-04-12";
+    src = fetchFromGitHub {
+      owner = "rodjek";
+      repo = "vim-puppet";
+      rev = "dc1f681045c4d8bd126063ce000f7cc7b2f95097";
+      sha256 = "18z2d2wpn5c3g857wprmdwp5pdb719dciyy0682hqpw8lfjn6zhv";
+    };
+  };
+
+  vim-qml = buildVimPluginFrom2Nix {
+    name = "vim-qml-2018-07-22";
+    src = fetchFromGitHub {
+      owner = "peterhoeg";
+      repo = "vim-qml";
+      rev = "8af43da6950ce5483704bb97f5b24471d8ffda1a";
+      sha256 = "1y1xvbfr1ffxyyk3zzf50xn87a85i1zszj4fqlq5ka8zhgdrnhvc";
+    };
+  };
+
+  vim-quickrun = buildVimPluginFrom2Nix {
+    name = "vim-quickrun-2018-09-06";
+    src = fetchFromGitHub {
+      owner = "thinca";
+      repo = "vim-quickrun";
+      rev = "0a78a3fe79b3607e01543cd33d8f2d8aceb35909";
+      sha256 = "1alpirkl6gi840ja21wn62gfmcyri6669p8r2c0qyjsajwx8gm8y";
+    };
+  };
+
+  vim-racer = buildVimPluginFrom2Nix {
+    name = "vim-racer-2018-08-26";
+    src = fetchFromGitHub {
+      owner = "racer-rust";
+      repo = "vim-racer";
+      rev = "9c0a05e8b97700ee5d3e742fab889cf40e9e7b88";
+      sha256 = "1gywh4xqbc7z15nvqr0v3h0n51fpaik8z1is0pxvpmj0fwzds0b3";
+    };
+  };
+
+  vim-repeat = buildVimPluginFrom2Nix {
+    name = "vim-repeat-2018-07-02";
+    src = fetchFromGitHub {
+      owner = "tpope";
+      repo = "vim-repeat";
+      rev = "43d2678fa59d068c815d8298331c195e850ff5a7";
+      sha256 = "0nb20503ka95qbx0mwhhni15drc86gfcd6kg92nf65llrvyfivk0";
+    };
+  };
+
+  vim-rhubarb = buildVimPluginFrom2Nix {
+    name = "vim-rhubarb-2018-08-22";
+    src = fetchFromGitHub {
+      owner = "tpope";
+      repo = "vim-rhubarb";
+      rev = "b6cbbb0ad3e22870a3cd8d79a22722c63d98d18b";
+      sha256 = "13mndz5p7slhn7ba8nnmzkh20ixhsq5rsy07y61sm5fxnb128r4n";
+    };
+  };
+
+  vim-ruby = buildVimPluginFrom2Nix {
+    name = "vim-ruby-2018-08-13";
+    src = fetchFromGitHub {
+      owner = "vim-ruby";
+      repo = "vim-ruby";
+      rev = "68aa43c524b20aaaa269265d315a87b89e6d0148";
+      sha256 = "027lyy5wjgi0p23qxiaxssbargdv81ip2z04l7c2wgx4lgs5mi86";
+    };
+  };
+
+  vim-sayonara = buildVimPluginFrom2Nix {
+    name = "vim-sayonara-2017-03-13";
+    src = fetchFromGitHub {
+      owner = "mhinz";
+      repo = "vim-sayonara";
+      rev = "357135ce127581fab2c0caf45d4b3fec4603aa77";
+      sha256 = "0m4pbpqq7m4rbqj1sxzx3r25znm9m5df6z6kndc6x5c1p27a63pi";
+    };
+  };
+
+  vim-scala = buildVimPluginFrom2Nix {
+    name = "vim-scala-2017-11-10";
+    src = fetchFromGitHub {
+      owner = "derekwyatt";
+      repo = "vim-scala";
+      rev = "0b909e24f31d94552eafae610da0f31040c08f2b";
+      sha256 = "1lqqapimgjr7k4imr26ap0lgx6k4qjl5gmgb1knvh5kz100bsjl5";
+    };
+  };
+
+  vim-scouter = buildVimPluginFrom2Nix {
+    name = "vim-scouter-2014-08-10";
+    src = fetchFromGitHub {
+      owner = "thinca";
+      repo = "vim-scouter";
+      rev = "5221901d4ad6b2ef8b370b336db2aa7f69f2b6dc";
+      sha256 = "0fx64hj1kzrsxz96195d5lm3x88zyycbcr78819mcbgfzyxis6b8";
+    };
+  };
+
+  vim-scriptease = buildVimPluginFrom2Nix {
+    name = "vim-scriptease-2018-07-27";
+    src = fetchFromGitHub {
+      owner = "tpope";
+      repo = "vim-scriptease";
+      rev = "2619a1f5f63b670578ed0a504a6f844807804436";
+      sha256 = "0mmrkbxi6gzv8q94cps010nbw95v9f3cc87l77klslg57hl515pl";
+    };
+  };
+
+  vim-sensible = buildVimPluginFrom2Nix {
+    name = "vim-sensible-2018-07-16";
+    src = fetchFromGitHub {
+      owner = "tpope";
+      repo = "vim-sensible";
+      rev = "c82c6d4978be28adcf85dc1e61fa428e801bd525";
+      sha256 = "0w87wic0qx20h36k075lvmj53glxkcyv8hkrx5aw4xqxvbq5fk6q";
+    };
+  };
+
+  vim-signature = buildVimPluginFrom2Nix {
+    name = "vim-signature-2018-07-06";
+    src = fetchFromGitHub {
+      owner = "kshenoy";
+      repo = "vim-signature";
+      rev = "6bc3dd1294a22e897f0dcf8dd72b85f350e306bc";
+      sha256 = "08m5dg77yavria7n7iajkj4kqaw848763680003j2gbrjlhpprpm";
+    };
+  };
+
+  vim-signify = buildVimPluginFrom2Nix {
+    name = "vim-signify-2018-08-05";
+    src = fetchFromGitHub {
+      owner = "mhinz";
+      repo = "vim-signify";
+      rev = "40d1a4ee19ac61ad772dfcedc4d4bd21810f1c0b";
+      sha256 = "1gvj2dqq96mf8h2jdyxr21jrvhr6r9bq9lsxgagvzi4ab81fm507";
+    };
+  };
+
+  vim-sleuth = buildVimPluginFrom2Nix {
+    name = "vim-sleuth-2018-08-19";
+    src = fetchFromGitHub {
+      owner = "tpope";
+      repo = "vim-sleuth";
+      rev = "7a104e34c10c6f3581c6e98da7834d765d0b067c";
+      sha256 = "0i147vhrrkarir36ysyaic42d22hk38cnpaqzqck7b2zdwnqrvbv";
+    };
+  };
+
+  vim-smalls = buildVimPluginFrom2Nix {
+    name = "vim-smalls-2015-05-02";
+    src = fetchFromGitHub {
+      owner = "t9md";
+      repo = "vim-smalls";
+      rev = "9619eae81626bd63f88165e0520c467698264e34";
+      sha256 = "0s5z3zv220cg95yky2av6w0jmpc56ysyhsx0596ksvgz5jwhpbad";
+    };
+  };
+
+  vim-snipmate = buildVimPluginFrom2Nix {
+    name = "vim-snipmate-2017-04-20";
+    src = fetchFromGitHub {
+      owner = "garbas";
+      repo = "vim-snipmate";
+      rev = "a9802f2351910f64b70fb10b63651e6ff6b8125e";
+      sha256 = "1l7sc6lf66pkiy18aq9s3wk1dmvvvsy1063cc0bxich9xa8m34bj";
+    };
+  };
+
+  vim-snippets = buildVimPluginFrom2Nix {
+    name = "vim-snippets-2018-09-14";
+    src = fetchFromGitHub {
+      owner = "honza";
+      repo = "vim-snippets";
+      rev = "2af1ffe88d3de3fbe40a6e74fb626b18a6548cbd";
+      sha256 = "1rkmj800lyp1gqbb00qyscw6fwc1mjz0bc4drd6b6pc2x952m2fi";
+    };
+  };
+
+  vim-solidity = buildVimPluginFrom2Nix {
+    name = "vim-solidity-2018-04-17";
+    src = fetchFromGitHub {
+      owner = "tomlion";
+      repo = "vim-solidity";
+      rev = "569bbbedc3898236d5912fed0caf114936112ae4";
+      sha256 = "1qpfbbrm4gjgvbkimhpxyl4fsdqkyw4raf17nw0ibqillz2d3pxx";
+    };
+  };
+
+  vim-sort-motion = buildVimPluginFrom2Nix {
+    name = "vim-sort-motion-2018-07-15";
+    src = fetchFromGitHub {
+      owner = "christoomey";
+      repo = "vim-sort-motion";
+      rev = "49dfcabeee2bf3a85a6cc0774b35f687b6c9d0e5";
+      sha256 = "02v12iqy3gjhvh5aza6b6b3pfv2qkyyw83bxqjgbjj002f71ydkb";
+    };
+  };
+
+  vim-speeddating = buildVimPluginFrom2Nix {
+    name = "vim-speeddating-2017-05-24";
+    src = fetchFromGitHub {
+      owner = "tpope";
+      repo = "vim-speeddating";
+      rev = "a418667791f03694065948342f2d6c5cca8d0f32";
+      sha256 = "1wm33izawazh0dy70zjk6rkg30yrlldba5r1gypnr4barps702gw";
+    };
+  };
+
+  vim-startify = buildVimPluginFrom2Nix {
+    name = "vim-startify-2018-08-02";
+    src = fetchFromGitHub {
+      owner = "mhinz";
+      repo = "vim-startify";
+      rev = "187e46aea30e242ef214cbfb20afc0ad49d38171";
+      sha256 = "15gmqm5qscnj70icibdjlw68r5zk1p5xzbznbzhar8l1yd5kkqgk";
+    };
+  };
+
+  vim-stylish-haskell = buildVimPluginFrom2Nix {
+    name = "vim-stylish-haskell-2018-08-31";
+    src = fetchFromGitHub {
+      owner = "nbouscal";
+      repo = "vim-stylish-haskell";
+      rev = "0df8a2dd397f232a9ee0e56bc57071ccf29e21bf";
+      sha256 = "05f2ms2c914ycxjjd7csga89mpsk3wzyhi56vikg3nd7a8z54gzw";
+    };
+  };
+
+  vim-stylishask = buildVimPluginFrom2Nix {
+    name = "vim-stylishask-2018-07-05";
+    src = fetchFromGitHub {
+      owner = "alx741";
+      repo = "vim-stylishask";
+      rev = "62608c70af8fafbbc9712238dafd2c5a433ed179";
+      sha256 = "12vj2kf82kvmd6smimgnz9yy97n7bvrji063ig3wlicxwmz62fdr";
+    };
+  };
+
+  vim-surround = buildVimPluginFrom2Nix {
+    name = "vim-surround-2018-07-23";
+    src = fetchFromGitHub {
+      owner = "tpope";
+      repo = "vim-surround";
+      rev = "597068870b8f093a8b2d11536c62ff31222ee8d0";
+      sha256 = "080kcgb5ayxs49q1p1cms6k1byf2fzzy8bglnspr511m9fql5a9x";
+    };
+  };
+
+  vim-SyntaxRange = buildVimPluginFrom2Nix {
+    name = "vim-SyntaxRange-2018-03-09";
+    src = fetchFromGitHub {
+      owner = "inkarkat";
+      repo = "vim-SyntaxRange";
+      rev = "dc33d8f84ebbf4c9fa03ce00b8adeb83e05249d3";
+      sha256 = "0nf0hkgl5fm0laxb5253br894259kz33zyiwxzrry6w3108alasr";
+    };
+  };
+
+  vim-table-mode = buildVimPluginFrom2Nix {
+    name = "vim-table-mode-2018-05-16";
+    src = fetchFromGitHub {
+      owner = "dhruvasagar";
+      repo = "vim-table-mode";
+      rev = "5483e163bd0a67e729e0e8436315f33f9e126baf";
+      sha256 = "0mmpa7zhrj8mqf4931ldf6n9jlpfxc4kg8xdhqlp7srlnq4h8siw";
+    };
+  };
+
+  vim-tabpagecd = buildVimPluginFrom2Nix {
+    name = "vim-tabpagecd-2013-11-29";
+    src = fetchFromGitHub {
+      owner = "kana";
+      repo = "vim-tabpagecd";
+      rev = "8b71a03a037608fa5918f5096812577cec6355e4";
+      sha256 = "1mr6s2hvsf2a2nkjjvq78c9isfxk2k1ih890w740srbq6ssj0npm";
+    };
+  };
+
+  vim-tbone = buildVimPluginFrom2Nix {
+    name = "vim-tbone-2018-06-28";
+    src = fetchFromGitHub {
+      owner = "tpope";
+      repo = "vim-tbone";
+      rev = "8bc7348f658c32bea57365aa6acf3a7dde12e737";
+      sha256 = "17s2b66xxkvv17pzf3xrw6ba7y9awpd2k2d21v0pag924c5hi6d4";
+    };
+  };
+
+  vim-test = buildVimPluginFrom2Nix {
+    name = "vim-test-2018-08-30";
+    src = fetchFromGitHub {
+      owner = "janko-m";
+      repo = "vim-test";
+      rev = "0941cfc91cdaa896f16f5e32d20940aab902f88c";
+      sha256 = "0zggwjyiyiipykw42b5qxgz8zhh10vi5ci3ywj1rh5h7kl858bwb";
+    };
+  };
+
+  vim-textobj-multiblock = buildVimPluginFrom2Nix {
+    name = "vim-textobj-multiblock-2014-06-02";
+    src = fetchFromGitHub {
+      owner = "osyo-manga";
+      repo = "vim-textobj-multiblock";
+      rev = "670a5ba57d73fcd793f480e262617c6eb0103355";
+      sha256 = "1s71hdr73cl8yg9mrdflvzrdccpiv7qrlainai7gqw30r1hfhfzf";
+    };
+  };
+
+  vim-themis = buildVimPluginFrom2Nix {
+    name = "vim-themis-2017-12-27";
+    src = fetchFromGitHub {
+      owner = "thinca";
+      repo = "vim-themis";
+      rev = "691cd3912ba318dbd8d9fa0035fee629b424766d";
+      sha256 = "1mrdaah3iyg35v6cgvr3jav3386czialfcinwa3y9jy14basbqhd";
+    };
+  };
+
+  vim-tmux-navigator = buildVimPluginFrom2Nix {
+    name = "vim-tmux-navigator-2018-07-13";
+    src = fetchFromGitHub {
+      owner = "christoomey";
+      repo = "vim-tmux-navigator";
+      rev = "18b775fbccde5ff02e516c014290650bb40e257d";
+      sha256 = "09v8amrdk8h4hsr9va8v9wdgzvj89z04y4j71l94rd7r6smxinbj";
+    };
+  };
+
+  vim-toml = buildVimPluginFrom2Nix {
+    name = "vim-toml-2018-06-15";
+    src = fetchFromGitHub {
+      owner = "cespare";
+      repo = "vim-toml";
+      rev = "85ba8277a6e331a56fce920d62bfdacce5bc5a80";
+      sha256 = "0nnm4ja5j9gcsl9cv7ra30slrlpjpy4dsl0ykg0yhdq1vbby3m6n";
+    };
+  };
+
+  vim-trailing-whitespace = buildVimPluginFrom2Nix {
+    name = "vim-trailing-whitespace-2017-09-23";
+    src = fetchFromGitHub {
+      owner = "bronson";
+      repo = "vim-trailing-whitespace";
+      rev = "4c596548216b7c19971f8fc94e38ef1a2b55fee6";
+      sha256 = "0f1cpnp1nxb4i5hgymjn2yn3k1jwkqmlgw1g02sq270lavp2dzs9";
+    };
+  };
+
+  vim-unimpaired = buildVimPluginFrom2Nix {
+    name = "vim-unimpaired-2018-07-26";
+    src = fetchFromGitHub {
+      owner = "tpope";
+      repo = "vim-unimpaired";
+      rev = "d6325994b3c16ce36fd494c47dae4dab8d21a3da";
+      sha256 = "0l5g3xq0azplaq3i2rblg8d61czpj47k0126zi8x48na9sj0aslv";
+    };
+  };
+
+  vim-vinegar = buildVimPluginFrom2Nix {
+    name = "vim-vinegar-2018-08-06";
+    src = fetchFromGitHub {
+      owner = "tpope";
+      repo = "vim-vinegar";
+      rev = "c38ea2195a43747aedf0bb4b7eb5aa8870260296";
+      sha256 = "1bcpi4m7ng9jaipf8xjf74469lgk34bs5ajjpv9dnkcrsalm28nf";
+    };
+  };
+
+  vim-visualstar = buildVimPluginFrom2Nix {
+    name = "vim-visualstar-2015-08-27";
+    src = fetchFromGitHub {
+      owner = "thinca";
+      repo = "vim-visualstar";
+      rev = "a18cd0e7a03311ac709595c1d261ed44b45c9098";
+      sha256 = "0yz6ci4i84xxrgazjfa5nsj3q8733p0b6vwcljk1l7ghdfiflvy4";
+    };
+  };
+
+  vim-wakatime = buildVimPluginFrom2Nix {
+    name = "vim-wakatime-2018-07-14";
+    src = fetchFromGitHub {
+      owner = "wakatime";
+      repo = "vim-wakatime";
+      rev = "25aa400fd1f1e3d689c721605a65e015024dc4cf";
+      sha256 = "11lk5k8wl3kxp6p2i0nnp56f4wcaniy40kzs3anjdwlzya631rg2";
+    };
+  };
+
+  vim-watchdogs = buildVimPluginFrom2Nix {
+    name = "vim-watchdogs-2017-12-03";
+    src = fetchFromGitHub {
+      owner = "osyo-manga";
+      repo = "vim-watchdogs";
+      rev = "a6415c2d928af8c1aacdbce9b1ed8d315891eb03";
+      sha256 = "0n6aqsgn0q1qgpj4yznqwbsbbk2a077gnjlq86ii3jhkzh5fzcff";
+    };
+  };
+
+  vim-wordy = buildVimPluginFrom2Nix {
+    name = "vim-wordy-2018-03-10";
+    src = fetchFromGitHub {
+      owner = "reedes";
+      repo = "vim-wordy";
+      rev = "14b9dbf76a82e29273a74768573900361200467f";
+      sha256 = "0qx3ngw4k7bgzmxpv1x4lkq3njm3zcb1j5ph6fx26wgagxhiaqhk";
+    };
+  };
+
+  vim-xdebug = buildVimPluginFrom2Nix {
+    name = "vim-xdebug-2012-08-15";
+    src = fetchFromGitHub {
+      owner = "joonty";
+      repo = "vim-xdebug";
+      rev = "a4980fa65f7f159780593ee37c178281691ba2c4";
+      sha256 = "1qh18r0sm4gh95sjbi2hnflvxdl4gk00jyy3n7z4i1gnx9ihxjqw";
+    };
+  };
+
+  vim-xkbswitch = buildVimPluginFrom2Nix {
+    name = "vim-xkbswitch-2017-03-27";
+    src = fetchFromGitHub {
+      owner = "lyokha";
+      repo = "vim-xkbswitch";
+      rev = "a85ebddb9038e6b05138c48868a319a9e13d1868";
+      sha256 = "0v0wckkvsj3pd3a5lj35dqwlvgr1kfz0x6rpnx28mzrcg05p19fr";
+    };
+  };
+
+  vim-yapf = buildVimPluginFrom2Nix {
+    name = "vim-yapf-2018-06-05";
+    src = fetchFromGitHub {
+      owner = "mindriot101";
+      repo = "vim-yapf";
+      rev = "cae79733a1a39732c5305d4a89cd093d17cb917d";
+      sha256 = "16bmzvzks6kbqm6dk908k23b9wj7qf3x8bz3kikrzj27s0p7s9cc";
+    };
+  };
+
+  vim2hs = buildVimPluginFrom2Nix {
+    name = "vim2hs-2014-04-16";
+    src = fetchFromGitHub {
+      owner = "dag";
+      repo = "vim2hs";
+      rev = "f2afd55704bfe0a2d66e6b270d247e9b8a7b1664";
+      sha256 = "18lqrl3hqb6cmizc04bbnsh8j0g761w2q8wascbzzfw80dmxy36b";
+    };
+  };
+
+  vimoutliner = buildVimPluginFrom2Nix {
+    name = "vimoutliner-2018-07-04";
+    src = fetchFromGitHub {
+      owner = "vimoutliner";
+      repo = "vimoutliner";
+      rev = "aad0a213069b8a1b5de91cca07d153fc8352c957";
+      sha256 = "0pgkgs6xky0skhpp3s9vrw3h48j80im0j39q4vc2b3pd1ydy6rx2";
+    };
+  };
+
+  vimpreviewpandoc = buildVimPluginFrom2Nix {
+    name = "vimpreviewpandoc-2018-05-12";
+    src = fetchFromGitHub {
+      owner = "tex";
+      repo = "vimpreviewpandoc";
+      rev = "266d14d362f6c069863b2d63edb683e802e7e3ee";
+      sha256 = "1qhc5vyk7vxrgq11dh1iwkz2a3zd7wfjvyirhhlpx1zx12d6l0ly";
+    };
+  };
+
+  vimproc-vim = buildVimPluginFrom2Nix {
+    name = "vimproc-vim-2018-01-07";
+    src = fetchFromGitHub {
+      owner = "shougo";
+      repo = "vimproc.vim";
+      rev = "2300224d366642f4f8d6f88861535d4ccbe20143";
+      sha256 = "0b8ljqnix8bs667bpymg3s0g5f49fnphgddl6196dj6jvdfn1xia";
+    };
+  };
+
+  vimshell-vim = buildVimPluginFrom2Nix {
+    name = "vimshell-vim-2018-06-02";
+    src = fetchFromGitHub {
+      owner = "shougo";
+      repo = "vimshell.vim";
+      rev = "03bf7673a5098918a533000d67dca97546695237";
+      sha256 = "1ckxjap9kz8skbjchg561sqyd5y5qwacg8mabmniy78qa7i3qdzi";
+    };
+  };
+
+  vimtex = buildVimPluginFrom2Nix {
+    name = "vimtex-2018-09-15";
+    src = fetchFromGitHub {
+      owner = "lervag";
+      repo = "vimtex";
+      rev = "46e2e4f73f89e4116b85a8d6726af44776e3a4f8";
+      sha256 = "05cgw7b3l63lb3dbb07kzb2h9akf5gxa6kl7hzvrsf8khva20nic";
+    };
+  };
+
+  vimwiki = buildVimPluginFrom2Nix {
+    name = "vimwiki-2018-09-03";
+    src = fetchFromGitHub {
+      owner = "vimwiki";
+      repo = "vimwiki";
+      rev = "f55ec31675e372e2f59d51322b445ea91191ec2b";
+      sha256 = "1qjczzj35nwhv1lrl9cf1bdpisr5vlwhf444apzj9c9pcjymc00z";
+    };
+  };
+
+  vundle = buildVimPluginFrom2Nix {
+    name = "vundle-2018-02-03";
+    src = fetchFromGitHub {
+      owner = "gmarik";
+      repo = "vundle";
+      rev = "9a38216a1c0c597f978d73547d37681fc689c90d";
+      sha256 = "1695glma8zf2lnp0w713sdvwqagf1s127p4i60114nk6gx5g5x2c";
+    };
+  };
+
+  webapi-vim = buildVimPluginFrom2Nix {
+    name = "webapi-vim-2018-03-14";
+    src = fetchFromGitHub {
+      owner = "mattn";
+      repo = "webapi-vim";
+      rev = "252250381a9509257bfb06b9f95441e41e3e23b5";
+      sha256 = "0g37d1i6rxsj6f31g9jy2bhr8ng3jwmnvqqcmw19vbql4v56zq6a";
+    };
+  };
+
+  wombat256-vim = buildVimPluginFrom2Nix {
+    name = "wombat256-vim-2010-10-18";
+    src = fetchFromGitHub {
+      owner = "vim-scripts";
+      repo = "wombat256.vim";
+      rev = "8734ba45dcf5e38c4d2686b35c94f9fcb30427e2";
+      sha256 = "01fdvfwdfqn5xi88lfanb4lb6jmn1ma6wq6d9jj2x7qamdbpvsrg";
+    };
+  };
+
+  xptemplate = buildVimPluginFrom2Nix {
+    name = "xptemplate-2017-12-06";
+    src = fetchFromGitHub {
+      owner = "drmingdrmer";
+      repo = "xptemplate";
+      rev = "74aac3aebaf9c67c12c21d6b25295b9bec9c93b3";
+      sha256 = "01yvas50hg7iwwrdh61407mc477byviccksgi0fkaz89p78bbd1p";
+    };
+  };
+
+  xterm-color-table-vim = buildVimPluginFrom2Nix {
+    name = "xterm-color-table-vim-2014-01-01";
+    src = fetchFromGitHub {
+      owner = "guns";
+      repo = "xterm-color-table.vim";
+      rev = "9754e857e5f4fe1f8727106dcc682d21c29a51e4";
+      sha256 = "08a1d9428xwrjp40qgi34cb5fwgc239qf3agxl32k7bqbn08pq19";
+    };
+  };
+
+  YankRing-vim = buildVimPluginFrom2Nix {
+    name = "YankRing-vim-2015-07-29";
+    src = fetchFromGitHub {
+      owner = "vim-scripts";
+      repo = "YankRing.vim";
+      rev = "28854abef8fa4ebd3cb219aefcf22566997d8f65";
+      sha256 = "0zdp8pdsqgrh6lfw8ipjhrig6psvmdxkim9ik801y3r373sk2hxw";
+    };
+  };
+
+  youcompleteme = buildVimPluginFrom2Nix {
+    name = "youcompleteme-2018-09-09";
+    src = fetchFromGitHub {
+      owner = "valloric";
+      repo = "youcompleteme";
+      rev = "487b8ab2b4d5bcaece29a17a26818a62616e21b5";
+      sha256 = "1r0sdcllnqgi376hbj1f31irppqw1qqx7rna1jvj5qvi5d81s2nr";
+      fetchSubmodules = true;
+    };
+  };
+
+  YUNOcommit-vim = buildVimPluginFrom2Nix {
+    name = "YUNOcommit-vim-2014-11-26";
+    src = fetchFromGitHub {
+      owner = "esneider";
+      repo = "YUNOcommit.vim";
+      rev = "981082055a73ef076d7e27477874d2303153a448";
+      sha256 = "0mjc7fn405vcx1n7vadl98p5wgm6jxrlbdbkqgjq8f1m1ir81zab";
+    };
+  };
+
+  zeavim-vim = buildVimPluginFrom2Nix {
+    name = "zeavim-vim-2018-03-22";
+    src = fetchFromGitHub {
+      owner = "KabbAmine";
+      repo = "zeavim.vim";
+      rev = "6db8d84528d66ce6638db03c2864abfa8afa02aa";
+      sha256 = "1xw8d3ap6n31rh0a4413784sx4ki7wcz8qlwm2vf9in475vvznxj";
+    };
+  };
+
+  zenburn = buildVimPluginFrom2Nix {
+    name = "zenburn-2018-04-29";
+    src = fetchFromGitHub {
+      owner = "jnurmine";
+      repo = "zenburn";
+      rev = "2cacfcb222d9db34a8d1a13bb8bb814f039b98cd";
+      sha256 = "0m5d5sjckirfpdhg9sf1nl5xywvzdx6y04r13m47jlavf79hhimi";
+    };
+  };
+
+  zig-vim = buildVimPluginFrom2Nix {
+    name = "zig-vim-2018-09-13";
+    src = fetchFromGitHub {
+      owner = "zig-lang";
+      repo = "zig.vim";
+      rev = "057fdd7cd36e12dff0f65092d8e0861f36efdfe2";
+      sha256 = "1i5x4mnfdjqkk71v8calwbm1y85blyrrpg4hqljf58csc7vhq2v9";
+    };
+  };
+}
\ No newline at end of file
diff --git a/pkgs/misc/vim-plugins/update.py b/pkgs/misc/vim-plugins/update.py
new file mode 100755
index 000000000000..c9ccd2364725
--- /dev/null
+++ b/pkgs/misc/vim-plugins/update.py
@@ -0,0 +1,347 @@
+#!/usr/bin/env nix-shell
+#!nix-shell -p python3 nix -i python3
+
+# format:
+# $ nix run nixpkgs.python3Packages.black -c black update.py
+# type-check:
+# $ nix run nixpkgs.python3Packages.mypy -c mypy update.py
+# linted:
+# $ nix run nixpkgs.python3Packages.flake8 -c flake8 --ignore E501,E265 update.py
+
+import functools
+import json
+import os
+import subprocess
+import sys
+import traceback
+import urllib.error
+import urllib.request
+import xml.etree.ElementTree as ET
+from datetime import datetime
+from multiprocessing.dummy import Pool
+from pathlib import Path
+from typing import Dict, List, Optional, Tuple, Union, Any
+from urllib.parse import urljoin, urlparse
+from tempfile import NamedTemporaryFile
+
+ATOM_ENTRY = "{http://www.w3.org/2005/Atom}entry"
+ATOM_LINK = "{http://www.w3.org/2005/Atom}link"
+ATOM_UPDATED = "{http://www.w3.org/2005/Atom}updated"
+
+ROOT = Path(__file__).parent
+
+
+class Repo:
+    def __init__(self, owner: str, name: str) -> None:
+        self.owner = owner
+        self.name = name
+
+    def url(self, path: str) -> str:
+        return urljoin(f"https://github.com/{self.owner}/{self.name}/", path)
+
+    def __repr__(self) -> str:
+        return f"Repo({self.owner}, {self.name})"
+
+    def has_submodules(self) -> bool:
+        try:
+            urllib.request.urlopen(self.url("blob/master/.gitmodules")).close()
+        except urllib.error.HTTPError as e:
+            if e.code == 404:
+                return False
+            else:
+                raise
+        return True
+
+    def latest_commit(self) -> Tuple[str, datetime]:
+        with urllib.request.urlopen(self.url("commits/master.atom")) as req:
+            xml = req.read()
+            root = ET.fromstring(xml)
+            latest_entry = root.find(ATOM_ENTRY)
+            assert latest_entry is not None, f"No commits found in repository {self}"
+            commit_link = latest_entry.find(ATOM_LINK)
+            assert commit_link is not None, f"No link tag found feed entry {xml}"
+            url = urlparse(commit_link.get("href"))
+            updated_tag = latest_entry.find(ATOM_UPDATED)
+            assert (
+                updated_tag is not None and updated_tag.text is not None
+            ), f"No updated tag found feed entry {xml}"
+            updated = datetime.strptime(updated_tag.text, "%Y-%m-%dT%H:%M:%SZ")
+            return Path(url.path).name, updated
+
+    def prefetch_git(self, ref: str) -> str:
+        data = subprocess.check_output(
+            ["nix-prefetch-git", "--fetch-submodules", self.url(""), ref]
+        )
+        return json.loads(data)["sha256"]
+
+    def prefetch_github(self, ref: str) -> str:
+        data = subprocess.check_output(
+            ["nix-prefetch-url", "--unpack", self.url(f"archive/{ref}.tar.gz")]
+        )
+        return data.strip().decode("utf-8")
+
+
+class Plugin:
+    def __init__(
+        self,
+        name: str,
+        commit: str,
+        has_submodules: bool,
+        sha256: str,
+        date: Optional[datetime] = None,
+    ) -> None:
+        self.name = name
+        self.commit = commit
+        self.has_submodules = has_submodules
+        self.sha256 = sha256
+        self.date = date
+
+    @property
+    def normalized_name(self) -> str:
+        return self.name.replace(".", "-")
+
+    @property
+    def version(self) -> str:
+        assert self.date is not None
+        return self.date.strftime("%Y-%m-%d")
+
+    def as_json(self) -> Dict[str, str]:
+        copy = self.__dict__.copy()
+        del copy["date"]
+        return copy
+
+
+GET_PLUGINS = """(with import <localpkgs> {};
+let
+  hasChecksum = value: lib.isAttrs value && lib.hasAttrByPath ["src" "outputHash"] value;
+  getChecksum = name: value:
+    if hasChecksum value then {
+      submodules = value.src.fetchSubmodules or false;
+      sha256 = value.src.outputHash;
+      rev = value.src.rev;
+    } else null;
+  checksums = lib.mapAttrs getChecksum vimPlugins;
+in lib.filterAttrs (n: v: v != null) checksums)"""
+
+
+class CleanEnvironment(object):
+    def __enter__(self) -> None:
+        self.old_environ = os.environ.copy()
+        local_pkgs = str(ROOT.joinpath("../../.."))
+        os.environ["NIX_PATH"] = f"localpkgs={local_pkgs}"
+        self.empty_config = NamedTemporaryFile()
+        self.empty_config.write(b"{}")
+        self.empty_config.flush()
+        os.environ["NIXPKGS_CONFIG"] = self.empty_config.name
+
+    def __exit__(self, exc_type: Any, exc_value: Any, traceback: Any) -> None:
+        os.environ.update(self.old_environ)
+        self.empty_config.close()
+
+
+def get_current_plugins() -> List[Plugin]:
+    with CleanEnvironment():
+        out = subprocess.check_output(["nix", "eval", "--json", GET_PLUGINS])
+    data = json.loads(out)
+    plugins = []
+    for name, attr in data.items():
+        p = Plugin(name, attr["rev"], attr["submodules"], attr["sha256"])
+        plugins.append(p)
+    return plugins
+
+
+def prefetch_plugin(user: str, repo_name: str, cache: "Cache") -> Plugin:
+    repo = Repo(user, repo_name)
+    commit, date = repo.latest_commit()
+    has_submodules = repo.has_submodules()
+    cached_plugin = cache[commit]
+    if cached_plugin is not None:
+        cached_plugin.name = repo_name
+        cached_plugin.date = date
+        return cached_plugin
+
+    print(f"prefetch {user}/{repo_name}")
+    if has_submodules:
+        sha256 = repo.prefetch_git(commit)
+    else:
+        sha256 = repo.prefetch_github(commit)
+
+    return Plugin(repo_name, commit, has_submodules, sha256, date=date)
+
+
+def print_download_error(plugin: str, ex: Exception):
+    print(f"{plugin}: {ex}", file=sys.stderr)
+    ex_traceback = ex.__traceback__
+    tb_lines = [
+        line.rstrip("\n")
+        for line in traceback.format_exception(ex.__class__, ex, ex_traceback)
+    ]
+    print("\n".join(tb_lines))
+
+
+def check_results(
+    results: List[Tuple[str, str, Union[Exception, Plugin]]]
+) -> List[Tuple[str, str, Plugin]]:
+    failures: List[Tuple[str, Exception]] = []
+    plugins = []
+    for (owner, name, result) in results:
+        if isinstance(result, Exception):
+            failures.append((name, result))
+        else:
+            plugins.append((owner, name, result))
+
+    print(f"{len(results) - len(failures)} plugins were checked", end="")
+    if len(failures) == 0:
+        print()
+        return plugins
+    else:
+        print(f", {len(failures)} plugin(s) could not be downloaded:\n")
+
+        for (plugin, exception) in failures:
+            print_download_error(plugin, exception)
+
+        sys.exit(1)
+
+
+def load_plugin_spec() -> List[Tuple[str, str]]:
+    plugin_file = ROOT.joinpath("vim-plugin-names")
+    plugins = []
+    with open(plugin_file) as f:
+        for line in f:
+            spec = line.strip()
+            parts = spec.split("/")
+            if len(parts) != 2:
+                msg = f"Invalid repository {spec}, must be in the format owner/repo"
+                print(msg, file=sys.stderr)
+                sys.exit(1)
+            plugins.append((parts[0], parts[1]))
+    return plugins
+
+
+def get_cache_path() -> Optional[Path]:
+    xdg_cache = os.environ.get("XDG_CACHE_HOME", None)
+    if xdg_cache is None:
+        home = os.environ.get("HOME", None)
+        if home is None:
+            return None
+        xdg_cache = str(Path(home, ".cache"))
+
+    return Path(xdg_cache, "vim-plugin-cache.json")
+
+
+class Cache:
+    def __init__(self, initial_plugins: List[Plugin]) -> None:
+        self.cache_file = get_cache_path()
+
+        downloads = {}
+        for plugin in initial_plugins:
+            downloads[plugin.commit] = plugin
+        downloads.update(self.load())
+        self.downloads = downloads
+
+    def load(self) -> Dict[str, Plugin]:
+        if self.cache_file is None or not self.cache_file.exists():
+            return {}
+
+        downloads: Dict[str, Plugin] = {}
+        with open(self.cache_file) as f:
+            data = json.load(f)
+            for attr in data.values():
+                p = Plugin(
+                    attr["name"], attr["commit"], attr["has_submodules"], attr["sha256"]
+                )
+                downloads[attr["commit"]] = p
+        return downloads
+
+    def store(self) -> None:
+        if self.cache_file is None:
+            return
+
+        os.makedirs(self.cache_file.parent, exist_ok=True)
+        with open(self.cache_file, "w+") as f:
+            data = {}
+            for name, attr in self.downloads.items():
+                data[name] = attr.as_json()
+            json.dump(data, f, indent=4, sort_keys=True)
+
+    def __getitem__(self, key: str) -> Optional[Plugin]:
+        return self.downloads.get(key, None)
+
+    def __setitem__(self, key: str, value: Plugin) -> None:
+        self.downloads[key] = value
+
+
+def prefetch(
+    args: Tuple[str, str], cache: Cache
+) -> Tuple[str, str, Union[Exception, Plugin]]:
+    assert len(args) == 2
+    owner, repo = args
+    try:
+        plugin = prefetch_plugin(owner, repo, cache)
+        cache[plugin.commit] = plugin
+        return (owner, repo, plugin)
+    except Exception as e:
+        return (owner, repo, e)
+
+
+header = (
+    "# This file has been generated by ./pkgs/misc/vim-plugins/update.py. Do not edit!"
+)
+
+
+def generate_nix(plugins: List[Tuple[str, str, Plugin]]):
+    sorted_plugins = sorted(plugins, key=lambda v: v[2].name.lower())
+
+    with open(ROOT.joinpath("generated.nix"), "w+") as f:
+        f.write(header)
+        f.write(
+            """
+{ buildVimPluginFrom2Nix, fetchFromGitHub }:
+
+{"""
+        )
+        for owner, repo, plugin in sorted_plugins:
+            if plugin.has_submodules:
+                submodule_attr = "\n      fetchSubmodules = true;"
+            else:
+                submodule_attr = ""
+
+            f.write(
+                f"""
+  {plugin.normalized_name} = buildVimPluginFrom2Nix {{
+    name = "{plugin.normalized_name}-{plugin.version}";
+    src = fetchFromGitHub {{
+      owner = "{owner}";
+      repo = "{repo}";
+      rev = "{plugin.commit}";
+      sha256 = "{plugin.sha256}";{submodule_attr}
+    }};
+  }};
+"""
+            )
+        f.write("}")
+    print("updated generated.nix")
+
+
+def main() -> None:
+    plugin_names = load_plugin_spec()
+    current_plugins = get_current_plugins()
+    cache = Cache(current_plugins)
+
+    prefetch_with_cache = functools.partial(prefetch, cache=cache)
+
+    try:
+        # synchronous variant for debugging
+        # results = map(prefetch_with_cache, plugins)
+        pool = Pool(processes=30)
+        results = pool.map(prefetch_with_cache, plugin_names)
+    finally:
+        cache.store()
+
+    plugins = check_results(results)
+
+    generate_nix(plugins)
+
+
+if __name__ == "__main__":
+    main()
diff --git a/pkgs/misc/vim-plugins/vim-plugin-names b/pkgs/misc/vim-plugins/vim-plugin-names
index f2a46ee8a806..595d0f9ae6a0 100644
--- a/pkgs/misc/vim-plugins/vim-plugin-names
+++ b/pkgs/misc/vim-plugins/vim-plugin-names
@@ -1,293 +1,326 @@
-"github:907th/vim-auto-save"
-"github:airblade/vim-gitgutter"
-"github:ajh17/Spacegray.vim"
-"github:albfan/nerdtree-git-plugin"
-"github:altercation/vim-colors-solarized"
-"github:alvan/vim-closetag"
-"github:amiorin/ctrlp-z"
-"github:andreshazard/vim-logreview"
-"github:andsild/peskcolor.vim.git"
-"github:andviro/flake8-vim"
-"github:ap/vim-css-color"
-"github:bazelbuild/vim-bazel"
-"github:bbchung/clighter8"
-"github:benekastah/neomake"
-"github:bitc/vim-hdevtools"
-"github:bronson/vim-trailing-whitespace"
-"github:cespare/vim-toml"
-"github:chemzqm/denite-extra"
-"github:chemzqm/denite-git"
-"github:Chiel92/vim-autoformat"
-"github:chikatoike/concealedyank.vim"
-"github:chikatoike/sourcemap.vim"
-"github:chrisbra/CheckAttach"
-"github:chrisbra/csv.vim"
-"github:chrisgeo/sparkup"
-"github:chriskempson/base16-vim"
-"github:christoomey/vim-sort-motion"
-"github:christoomey/vim-tmux-navigator"
-"github:ctjhoa/spacevim"
-"github:ctrlpvim/ctrlp.vim"
-"github:dag/vim2hs"
-"github:dannyob/quickfixstatus"
-"github:derekelkins/agda-vim"
-"github:derekwyatt/vim-scala"
-"github:dhruvasagar/vim-table-mode"
-"github:digitaltoad/vim-jade"
-"github:dleonard0/pony-vim-syntax"
-"github:dracula/vim"
-"github:drmingdrmer/xptemplate"
-"github:eagletmt/ghcmod-vim"
-"github:eagletmt/neco-ghc"
-"github:editorconfig/editorconfig-vim"
-"github:ehamberg/vim-cute-python.git"
-"github:eikenb/acp"
-"github:elixir-lang/vim-elixir"
-"github:elmcast/elm-vim"
-"github:elzr/vim-json"
-"github:embear/vim-localvimrc"
-"github:enomsg/vim-haskellConcealPlus"
-"github:ensime/ensime-vim"
-"github:ervandew/supertab"
-"github:esneider/YUNOcommit.vim"
-"github:farmergreg/vim-lastplace"
-"github:fatih/vim-go"
-"github:FelikZ/ctrlp-py-matcher"
-"github:fisadev/vim-isort"
-"github:flazz/vim-colorschemes"
-"github:floobits/floobits-neovim"
-"github:frigoeu/psc-ide-vim"
-"github:garbas/vim-snipmate"
-"github:gmarik/vundle"
-"github:godlygeek/csapprox"
-"github:godlygeek/tabular"
-"github:google/vim-codefmt"
-"github:google/vim-jsonnet"
-"github:google/vim-maktaba"
-"github:gregsexton/gitv"
-"github:guns/xterm-color-table.vim"
-"github:heavenshell/vim-jsdoc"
-"github:hecal3/vim-leader-guide"
-"github:honza/vim-snippets"
-"github:idris-hackers/idris-vim"
-"github:inkarkat/vim-SyntaxRange"
-"github:int3/vim-extradite"
-"github:itchyny/calendar.vim"
-"github:itchyny/lightline.vim"
-"github:itchyny/thumbnail.vim"
-"github:itchyny/vim-cursorword"
-"github:itchyny/vim-gitbranch"
-"github:ivanov/vim-ipython"
-"github:jacoborus/tender.vim"
-"github:janko-m/vim-test.git"
-"github:JazzCore/ctrlp-cmatcher"
-"github:jceb/vim-hier"
-"github:jceb/vim-orgmode"
-"github:jeetsukumaran/vim-buffergator"
-"github:jgdavey/tslime.vim"
-"github:jhradilek/vim-docbk"
-"github:jiangmiao/auto-pairs"
-"github:jistr/vim-nerdtree-tabs"
-"github:jnurmine/zenburn"
-"github:jonbri/vim-colorstepper"
-"github:joonty/vim-xdebug"
-"github:JuliaEditorSupport/julia-vim"
-"github:junegunn/fzf.vim"
-"github:junegunn/goyo.vim"
-"github:junegunn/limelight.vim"
-"github:junegunn/vim-easy-align"
-"github:junegunn/vim-github-dashboard"
-"github:junegunn/vim-peekaboo"
-"github:justincampbell/vim-eighties"
-"github:KabbAmine/zeavim.vim"
-"github:kana/vim-niceblock"
-"github:kana/vim-operator-replace"
-"github:kana/vim-operator-user"
-"github:kana/vim-tabpagecd"
-"github:kchmck/vim-coffee-script"
-"github:keith/swift.vim"
-"github:kien/rainbow_parentheses.vim"
-"github:konfekt/fastfold"
-"github:kshenoy/vim-signature"
-"github:lambdalisue/vim-gista"
-"github:latex-box-team/latex-box"
-"github:leafgarland/typescript-vim"
-"github:ledger/vim-ledger"
-"github:lepture/vim-jinja"
-"github:lervag/vimtex"
-"github:lfilho/cosco.vim"
-"github:LnL7/vim-nix"
-"github:lokaltog/vim-easymotion"
-"github:ludovicchabant/vim-lawrencium"
-"github:luochen1990/rainbow"
-"github:lyokha/vim-xkbswitch"
-"github:machakann/vim-highlightedyank"
-"github:majutsushi/tagbar"
-"github:maksimr/vim-jsbeautify"
-"github:MarcWeber/vim-addon-actions"
-"github:MarcWeber/vim-addon-async"
-"github:MarcWeber/vim-addon-background-cmd"
-"github:MarcWeber/vim-addon-commenting"
-"github:MarcWeber/vim-addon-completion"
-"github:MarcWeber/vim-addon-errorformats"
-"github:MarcWeber/vim-addon-goto-thing-at-cursor"
-"github:MarcWeber/vim-addon-local-vimrc"
-"github:MarcWeber/vim-addon-manager"
-"github:MarcWeber/vim-addon-mru"
-"github:MarcWeber/vim-addon-mw-utils"
-"github:MarcWeber/vim-addon-nix"
-"github:MarcWeber/vim-addon-other"
-"github:MarcWeber/vim-addon-php-manual"
-"github:MarcWeber/vim-addon-signs"
-"github:MarcWeber/vim-addon-sql"
-"github:MarcWeber/vim-addon-syntax-checker"
-"github:MarcWeber/vim-addon-toggle-buffer"
-"github:MarcWeber/vim-addon-xdebug"
-"github:martinda/Jenkinsfile-vim-syntax"
-"github:mattn/gist-vim"
-"github:mattn/webapi-vim"
-"github:mbbill/undotree"
-"github:megaannum/forms"
-"github:megaannum/self"
-"github:mfukar/robotframework-vim"
-"github:mhinz/vim-grepper.git"
-"github:mhinz/vim-signify"
-"github:mhinz/vim-startify"
-"github:michaeljsmith/vim-indent-object"
-"github:mileszs/ack.vim"
-"github:mindriot101/vim-yapf"
-"github:mkasa/lushtags"
-"github:morhetz/gruvbox"
-"github:mpickering/hlint-refactor-vim"
-"github:nathanaelkane/vim-indent-guides"
-"github:nbouscal/vim-stylish-haskell"
-"github:neoclide/vim-easygit"
-"github:neovimhaskell/haskell-vim"
-"github:nixprime/cpsm"
-"github:noc7c9/vim-iced-coffee-script"
-"github:osyo-manga/shabadou.vim"
-"github:osyo-manga/vim-textobj-multiblock"
-"github:osyo-manga/vim-watchdogs"
-"github:pangloss/vim-javascript"
-"github:peterhoeg/vim-qml"
-"github:plasticboy/vim-markdown"
-"github:python-mode/python-mode"
-"github:Quramy/tsuquyomi"
-"github:racer-rust/vim-racer"
-"github:rafi/awesome-vim-colorschemes"
-"github:raichoo/purescript-vim"
-"github:reedes/vim-pencil"
-"github:reedes/vim-wordy"
-"github:rhysd/committia.vim.git"
-"github:rhysd/vim-grammarous"
-"github:rhysd/vim-operator-surround"
-"github:Rip-Rip/clang_complete"
-"github:rodjek/vim-puppet"
-"github:roxma/nvim-cm-racer"
-"github:roxma/nvim-completion-manager"
-"github:rust-lang/rust.vim"
-"github:ryanoasis/vim-devicons"
-"github:ryanoasis/vim-devicons"
-"github:Rykka/riv.vim"
-"github:sbdchd/neoformat"
-"github:scrooloose/nerdcommenter"
-"github:scrooloose/nerdtree"
-"github:scrooloose/syntastic"
-"github:sebastianmarkow/deoplete-rust"
-"github:sheerun/vim-polyglot"
-"github:shougo/context_filetype.vim"
-"github:shougo/denite.nvim"
-"github:shougo/deoplete.nvim"
-"github:shougo/echodoc.vim"
-"github:shougo/neco-syntax"
-"github:shougo/neco-vim"
-"github:shougo/neocomplete.vim"
-"github:shougo/neoinclude.vim"
-"github:shougo/neomru.vim"
-"github:shougo/neosnippet-snippets"
-"github:shougo/neosnippet.vim"
-"github:shougo/neoyank.vim.git"
-"github:shougo/tabpagebuffer.vim"
-"github:shougo/unite.vim"
-"github:shougo/vimproc.vim"
-"github:shumphrey/fugitive-gitlab.vim"
-"github:SirVer/ultisnips"
-"github:sjl/gundo.vim"
-"github:sjl/splice.vim"
-"github:sk1418/last256"
-"github:slashmili/alchemist.vim"
-"github:t9md/vim-smalls"
-"github:takac/vim-hardtime"
-"github:terryma/vim-expand-region"
-"github:terryma/vim-multiple-cursors"
-"github:tex/vimpreviewpandoc"
-"github:thinca/vim-ft-diff_fold"
-"github:thinca/vim-prettyprint"
-"github:thinca/vim-quickrun"
-"github:thinca/vim-scouter"
-"github:thinca/vim-themis"
-"github:tomasr/molokai"
-"github:tomlion/vim-solidity"
-"github:tomtom/tlib_vim"
-"github:tpope/vim-abolish"
-"github:tpope/vim-commentary"
-"github:tpope/vim-dispatch"
-"github:tpope/vim-eunuch"
-"github:tpope/vim-fireplace"
-"github:tpope/vim-flagship"
-"github:tpope/vim-fugitive"
-"github:tpope/vim-pathogen"
-"github:tpope/vim-projectionist"
-"github:tpope/vim-repeat"
-"github:tpope/vim-rhubarb"
-"github:tpope/vim-scriptease"
-"github:tpope/vim-sensible"
-"github:tpope/vim-sleuth"
-"github:tpope/vim-speeddating"
-"github:tpope/vim-surround"
-"github:tpope/vim-tbone"
-"github:tpope/vim-vinegar"
-"github:travitch/hasksyn"
-"github:twinside/vim-haskellconceal"
-"github:Twinside/vim-hoogle"
-"github:tyru/caw.vim"
-"github:tyru/open-browser.vim"
-"github:ujihisa/neco-look"
-"github:valloric/youcompleteme"
-"github:vim-airline/vim-airline"
-"github:vim-airline/vim-airline-themes"
-"github:vimoutliner/vimoutliner"
-"github:vim-pandoc/vim-pandoc"
-"github:vim-pandoc/vim-pandoc-after"
-"github:vim-pandoc/vim-pandoc-syntax"
-"github:vim-ruby/vim-ruby"
-"github:vim-scripts/align"
-"github:vim-scripts/argtextobj.vim"
-"github:vim-scripts/a.vim"
-"github:vim-scripts/bats.vim"
-"github:vim-scripts/changeColorScheme.vim"
-"github:vim-scripts/Colour-Sampler-Pack"
-"github:vim-scripts/Improved-AnsiEsc"
-"github:vim-scripts/matchit.zip"
-"github:vim-scripts/mayansmoke.git"
-"github:vim-scripts/random.vim"
-"github:vim-scripts/Rename"
-"github:vim-scripts/ReplaceWithRegister"
-"github:vim-scripts/tabmerge"
-"github:vim-scripts/taglist.vim"
-"github:vim-scripts/wombat256.vim"
-"github:vim-scripts/YankRing.vim"
-"github:vimwiki/vimwiki"
-"github:vmchale/dhall-vim"
-"github:w0rp/ale"
-"github:wakatime/vim-wakatime"
-"github:wellle/targets.vim"
-"github:will133/vim-dirdiff"
-"github:wincent/command-t"
-"github:xolox/vim-easytags"
-"github:xolox/vim-misc"
-"github:xuhdev/vim-latex-live-preview"
-"github:zah/nim.vim"
-"github:zchee/deoplete-go"
-"github:zchee/deoplete-jedi"
-"github:zig-lang/zig.vim"
+907th/vim-auto-save
+airblade/vim-gitgutter
+ajh17/Spacegray.vim
+albfan/nerdtree-git-plugin
+altercation/vim-colors-solarized
+alvan/vim-closetag
+alx741/vim-hindent
+alx741/vim-stylishask
+amiorin/ctrlp-z
+andreshazard/vim-logreview
+andsild/peskcolor.vim
+andviro/flake8-vim
+ap/vim-css-color
+artur-shaik/vim-javacomplete2
+bazelbuild/vim-bazel
+bbchung/clighter8
+benekastah/neomake
+bitc/vim-hdevtools
+bling/vim-bufferline
+bronson/vim-trailing-whitespace
+carlitux/deoplete-ternjs
+ccarpita/rtorrent-syntax-file
+cespare/vim-toml
+chemzqm/denite-extra
+chemzqm/denite-git
+Chiel92/vim-autoformat
+chikatoike/concealedyank.vim
+chikatoike/sourcemap.vim
+chrisbra/CheckAttach
+chrisbra/csv.vim
+chrisgeo/sparkup
+chriskempson/base16-vim
+christoomey/vim-sort-motion
+christoomey/vim-tmux-navigator
+ctjhoa/spacevim
+ctrlpvim/ctrlp.vim
+dag/vim2hs
+dannyob/quickfixstatus
+derekelkins/agda-vim
+derekwyatt/vim-scala
+dhruvasagar/vim-table-mode
+digitaltoad/vim-jade
+dleonard0/pony-vim-syntax
+dracula/vim
+drmingdrmer/xptemplate
+eagletmt/ghcmod-vim
+eagletmt/neco-ghc
+easymotion/vim-easymotion
+editorconfig/editorconfig-vim
+ehamberg/vim-cute-python
+eikenb/acp
+elixir-lang/vim-elixir
+elmcast/elm-vim
+elzr/vim-json
+embear/vim-localvimrc
+enomsg/vim-haskellConcealPlus
+ensime/ensime-vim
+ervandew/supertab
+esneider/YUNOcommit.vim
+farmergreg/vim-lastplace
+fatih/vim-go
+FelikZ/ctrlp-py-matcher
+fisadev/vim-isort
+flazz/vim-colorschemes
+floobits/floobits-neovim
+frigoeu/psc-ide-vim
+garbas/vim-snipmate
+gmarik/vundle
+godlygeek/csapprox
+godlygeek/tabular
+google/vim-codefmt
+google/vim-jsonnet
+google/vim-maktaba
+gregsexton/gitv
+guns/xterm-color-table.vim
+haya14busa/incsearch-easymotion.vim
+haya14busa/incsearch.vim
+heavenshell/vim-jsdoc
+hecal3/vim-leader-guide
+honza/vim-snippets
+hsanson/vim-android
+idris-hackers/idris-vim
+inkarkat/vim-SyntaxRange
+int3/vim-extradite
+itchyny/calendar.vim
+itchyny/lightline.vim
+itchyny/thumbnail.vim
+itchyny/vim-cursorword
+itchyny/vim-gitbranch
+ivanov/vim-ipython
+jacoborus/tender.vim
+janko-m/vim-test
+JazzCore/ctrlp-cmatcher
+jceb/vim-hier
+jceb/vim-orgmode
+jeetsukumaran/vim-buffergator
+jgdavey/tslime.vim
+jhradilek/vim-docbk
+jiangmiao/auto-pairs
+jistr/vim-nerdtree-tabs
+jnurmine/zenburn
+jonbri/vim-colorstepper
+joonty/vim-xdebug
+JuliaEditorSupport/deoplete-julia
+JuliaEditorSupport/julia-vim
+junegunn/fzf.vim
+junegunn/goyo.vim
+junegunn/limelight.vim
+junegunn/vim-easy-align
+junegunn/vim-github-dashboard
+junegunn/vim-peekaboo
+justincampbell/vim-eighties
+justinmk/vim-dirvish
+KabbAmine/zeavim.vim
+kana/vim-niceblock
+kana/vim-operator-replace
+kana/vim-operator-user
+kana/vim-tabpagecd
+kchmck/vim-coffee-script
+keith/swift.vim
+kien/rainbow_parentheses.vim
+konfekt/fastfold
+kshenoy/vim-signature
+lambdalisue/vim-gista
+lambdalisue/vim-pager
+latex-box-team/latex-box
+leafgarland/typescript-vim
+ledger/vim-ledger
+lepture/vim-jinja
+lervag/vimtex
+lfilho/cosco.vim
+LnL7/vim-nix
+ludovicchabant/vim-gutentags
+ludovicchabant/vim-lawrencium
+luochen1990/rainbow
+lyokha/vim-xkbswitch
+machakann/vim-highlightedyank
+majutsushi/tagbar
+maksimr/vim-jsbeautify
+MarcWeber/vim-addon-actions
+MarcWeber/vim-addon-async
+MarcWeber/vim-addon-background-cmd
+MarcWeber/vim-addon-commenting
+MarcWeber/vim-addon-completion
+MarcWeber/vim-addon-errorformats
+MarcWeber/vim-addon-goto-thing-at-cursor
+MarcWeber/vim-addon-local-vimrc
+MarcWeber/vim-addon-manager
+MarcWeber/vim-addon-mru
+MarcWeber/vim-addon-mw-utils
+MarcWeber/vim-addon-nix
+MarcWeber/vim-addon-other
+MarcWeber/vim-addon-php-manual
+MarcWeber/vim-addon-signs
+MarcWeber/vim-addon-sql
+MarcWeber/vim-addon-syntax-checker
+MarcWeber/vim-addon-toggle-buffer
+MarcWeber/vim-addon-xdebug
+martinda/Jenkinsfile-vim-syntax
+mattn/gist-vim
+mattn/webapi-vim
+mbbill/undotree
+megaannum/forms
+megaannum/self
+mfukar/robotframework-vim
+mhinz/vim-grepper
+mhinz/vim-sayonara
+mhinz/vim-signify
+mhinz/vim-startify
+michaeljsmith/vim-indent-object
+mileszs/ack.vim
+mindriot101/vim-yapf
+mkasa/lushtags
+morhetz/gruvbox
+mpickering/hlint-refactor-vim
+nathanaelkane/vim-indent-guides
+nbouscal/vim-stylish-haskell
+ncm2/ncm2
+ncm2/ncm2-bufword
+ncm2/ncm2-path
+ncm2/ncm2-tmux
+ncm2/ncm2-ultisnips
+neoclide/vim-easygit
+neovimhaskell/haskell-vim
+neovim/nvimdev.nvim
+nixprime/cpsm
+noc7c9/vim-iced-coffee-script
+osyo-manga/shabadou.vim
+osyo-manga/vim-anzu
+osyo-manga/vim-textobj-multiblock
+osyo-manga/vim-watchdogs
+pangloss/vim-javascript
+parsonsmatt/intero-neovim
+peterhoeg/vim-qml
+plasticboy/vim-markdown
+powerman/vim-plugin-AnsiEsc
+python-mode/python-mode
+Quramy/tsuquyomi
+racer-rust/vim-racer
+rafaqz/ranger.vim
+rafi/awesome-vim-colorschemes
+raghur/vim-ghost
+raichoo/purescript-vim
+reedes/vim-pencil
+reedes/vim-wordy
+rhysd/committia.vim
+rhysd/vim-grammarous
+rhysd/vim-operator-surround
+Rip-Rip/clang_complete
+rodjek/vim-puppet
+roxma/nvim-cm-racer
+roxma/nvim-completion-manager
+roxma/nvim-yarp
+rust-lang/rust.vim
+ryanoasis/vim-devicons
+Rykka/riv.vim
+sbdchd/neoformat
+scrooloose/nerdcommenter
+scrooloose/nerdtree
+scrooloose/syntastic
+sebastianmarkow/deoplete-rust
+sheerun/vim-polyglot
+shougo/context_filetype.vim
+shougo/denite.nvim
+Shougo/deol.nvim
+shougo/deoplete.nvim
+shougo/echodoc.vim
+shougo/neco-syntax
+shougo/neco-vim
+shougo/neocomplete.vim
+shougo/neoinclude.vim
+shougo/neomru.vim
+shougo/neosnippet-snippets
+shougo/neosnippet.vim
+shougo/neoyank.vim
+shougo/tabpagebuffer.vim
+shougo/unite.vim
+shougo/vimproc.vim
+shougo/vimshell.vim
+shumphrey/fugitive-gitlab.vim
+SirVer/ultisnips
+sjl/gundo.vim
+sjl/splice.vim
+sk1418/last256
+slashmili/alchemist.vim
+t9md/vim-smalls
+takac/vim-hardtime
+ternjs/tern_for_vim
+terryma/vim-expand-region
+terryma/vim-multiple-cursors
+tex/vimpreviewpandoc
+thinca/vim-ft-diff_fold
+thinca/vim-prettyprint
+thinca/vim-quickrun
+thinca/vim-scouter
+thinca/vim-themis
+thinca/vim-visualstar
+tomasr/molokai
+tomlion/vim-solidity
+tomtom/tlib_vim
+tpope/vim-abolish
+tpope/vim-commentary
+tpope/vim-dispatch
+tpope/vim-eunuch
+tpope/vim-fireplace
+tpope/vim-flagship
+tpope/vim-fugitive
+tpope/vim-obsession
+tpope/vim-pathogen
+tpope/vim-projectionist
+tpope/vim-repeat
+tpope/vim-rhubarb
+tpope/vim-scriptease
+tpope/vim-sensible
+tpope/vim-sleuth
+tpope/vim-speeddating
+tpope/vim-surround
+tpope/vim-tbone
+tpope/vim-unimpaired
+tpope/vim-vinegar
+travitch/hasksyn
+twinside/vim-haskellconceal
+Twinside/vim-hoogle
+tyru/caw.vim
+tyru/open-browser.vim
+ujihisa/neco-look
+valloric/youcompleteme
+vhda/verilog_systemverilog.vim
+vim-airline/vim-airline
+vim-airline/vim-airline-themes
+vimoutliner/vimoutliner
+vim-pandoc/vim-pandoc
+vim-pandoc/vim-pandoc-after
+vim-pandoc/vim-pandoc-syntax
+vim-ruby/vim-ruby
+vim-scripts/align
+vim-scripts/argtextobj.vim
+vim-scripts/a.vim
+vim-scripts/bats.vim
+vim-scripts/changeColorScheme.vim
+vim-scripts/Colour-Sampler-Pack
+vim-scripts/Improved-AnsiEsc
+vim-scripts/matchit.zip
+vim-scripts/mayansmoke
+vim-scripts/random.vim
+vim-scripts/Rename
+vim-scripts/ReplaceWithRegister
+vim-scripts/tabmerge
+vim-scripts/taglist.vim
+vim-scripts/wombat256.vim
+vim-scripts/YankRing.vim
+vimwiki/vimwiki
+vmchale/dhall-vim
+w0rp/ale
+wakatime/vim-wakatime
+wellle/targets.vim
+will133/vim-dirdiff
+wincent/command-t
+xolox/vim-easytags
+xolox/vim-misc
+xuhdev/vim-latex-live-preview
+zah/nim.vim
+zchee/deoplete-clang
+zchee/deoplete-go
+zchee/deoplete-jedi
+zig-lang/zig.vim
diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_generic/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_generic/default.nix
index 7986706cb647..fe68ee78d1f0 100644
--- a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_generic/default.nix
+++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_generic/default.nix
@@ -1,7 +1,7 @@
 { appleDerivation_, applePackage, pkgs, stdenv }:
 name: version: sha256: args: let
   n = stdenv.lib.removePrefix "lib" name;
-  makeFile = ../. + builtins.toPath "/${name}/GNUmakefile";
+  makeFile = ../. + "/${name}/GNUmakefile";
   appleDerivation = appleDerivation_ name version sha256;
   in applePackage name version sha256 (args // {
     appleDerivation = a:
diff --git a/pkgs/os-specific/darwin/maloader/default.nix b/pkgs/os-specific/darwin/maloader/default.nix
index 133266ec95aa..d1df820615df 100644
--- a/pkgs/os-specific/darwin/maloader/default.nix
+++ b/pkgs/os-specific/darwin/maloader/default.nix
@@ -33,5 +33,6 @@ stdenv.mkDerivation {
     homepage = https://github.com/shinh/maloader;
     license = stdenv.lib.licenses.bsd2;
     platforms = stdenv.lib.platforms.linux;
+    broken = true; # 2018-09-08, no succesful build since 2017-08-21
   };
 }
diff --git a/pkgs/os-specific/darwin/swift-corelibs/corefoundation.nix b/pkgs/os-specific/darwin/swift-corelibs/corefoundation.nix
index 969168fa54ba..1dea55cccc9e 100644
--- a/pkgs/os-specific/darwin/swift-corelibs/corefoundation.nix
+++ b/pkgs/os-specific/darwin/swift-corelibs/corefoundation.nix
@@ -1,32 +1,78 @@
-{ stdenv, fetchFromGitHub, python, ninja, libxml2 }:
+{ stdenv, fetchFromGitHub, fetchurl, python, ninja, libxml2, objc4, ICU, curl }:
 
-stdenv.mkDerivation {
+let
+  # 10.12 adds a new sysdir.h that our version of CF in the main derivation depends on, but
+  # isn't available publicly, so instead we grab an older version of the same file that did
+  # not use sysdir.h, but provided the same functionality. Luckily it's simple :) hack hack
+  sysdir-free-system-directories = fetchurl {
+    url    = "https://raw.githubusercontent.com/apple/swift-corelibs-foundation/9a5d8420f7793e63a8d5ec1ede516c4ebec939f0/CoreFoundation/Base.subproj/CFSystemDirectories.c";
+    sha256 = "0krfyghj4f096arvvpf884ra5czqlmbrgf8yyc0b3avqmb613pcc";
+  };
+in stdenv.mkDerivation {
   name = "swift-corefoundation";
 
   src = fetchFromGitHub {
     owner  = "apple";
     repo   = "swift-corelibs-foundation";
-    rev    = "dce4233f583ec15190b240d6116396bf9641cd57";
-    sha256 = "0i2ldvy14x05k2vgl5z0g5l2i5llifdfbij5zwfdwb8jmmq215qr";
+    rev    = "85c640e7ce50e6ca61a134c72270e214bc63fdba"; # https://github.com/apple/swift-corelibs-foundation/pull/1686
+    sha256 = "0z2v278wy7jh0c92g1dszd8hj8naxari660sqx6yab5dwapd46qc";
   };
 
-  buildInputs = [ ninja python libxml2 ];
+  buildInputs = [ ninja python libxml2 objc4 ICU curl ];
+
+  sourceRoot = "source/CoreFoundation";
 
   patchPhase = ''
-    substituteInPlace CoreFoundation/build.py \
-      --replace '-I''${SYSROOT}/usr/include/libxml2' '-I${libxml2.dev}/include/libxml2' \
-  '';
+    cp ${sysdir-free-system-directories} Base.subproj/CFSystemDirectories.c
+
+    # In order, since I can't comment individual lines:
+    # 1. Disable dispatch support for now
+    # 2. For the linker too
+    # 3. Use the legit CoreFoundation.h, not the one telling you not to use it because of Swift
+    substituteInPlace build.py \
+      --replace "cf.CFLAGS += '-DDEPLOYMENT" '#' \
+      --replace "cf.LDFLAGS += '-ldispatch" '#' \
+      --replace "Base.subproj/SwiftRuntime/CoreFoundation.h" 'Base.subproj/CoreFoundation.h'
+
+    # Includes xpc for some initialization routine that they don't define anyway, so no harm here
+    substituteInPlace PlugIn.subproj/CFBundlePriv.h \
+      --replace '#if (TARGET_OS_MAC' '#if (0'
+
+    # Why do we define __GNU__? Is that normal?
+    substituteInPlace Base.subproj/CFAsmMacros.h \
+      --replace '#if defined(__GNU__) ||' '#if 0 &&'
 
-  configurePhase = ":";
+    # The MIN macro doesn't seem to be defined sensibly for us. Not sure if our stdenv or their bug
+    substituteInPlace Base.subproj/CoreFoundation_Prefix.h \
+      --replace '#if DEPLOYMENT_TARGET_WINDOWS || DEPLOYMENT_TARGET_LINUX' '#if 1'
 
-  buildPhase = ''
-    cd CoreFoundation
-    ../configure --sysroot unused
-    ninja
+    # Somehow our ICU doesn't have this, probably because it's too old (we'll update it soon when we update the rest of the SDK)
+    substituteInPlace Locale.subproj/CFLocale.c \
+      --replace '#if U_ICU_VERSION_MAJOR_NUM' '#if 0 //'
   '';
 
+  BUILD_DIR = "./Build";
+  CFLAGS = "-DINCLUDE_OBJC -I${libxml2.dev}/include/libxml2"; # They seem to assume we include objc in some places and not in others, make a PR; also not sure why but libxml2 include path isn't getting picked up from buildInputs
+  LDFLAGS = "-install_name ${placeholder "out"}/Frameworks/CoreFoundation.framework/CoreFoundation -current_version 1234.56.7 -compatibility_version 150.0.0 -init ___CFInitialize";
+  configurePhase = "../configure --sysroot unused";
+
+  enableParallelBuilding = true;
+  buildPhase = "ninja -j $NIX_BUILD_CORES";
+
+  # TODO: their build system sorta kinda can do this, but it doesn't seem to work right now
+  # Also, this includes a bunch of private headers in the framework, which is not what we want
   installPhase = ''
-    mkdir -p $out/lib
-    cp ../Build/CoreFoundation/libCoreFoundation.a $out/lib
+    base="$out/Library/Frameworks/CoreFoundation.framework"
+    mkdir -p $base/Versions/A/{Headers,PrivateHeaders,Modules}
+
+    cp ./Build/CoreFoundation/libCoreFoundation.dylib $base/Versions/A/CoreFoundation
+    cp ./Build/CoreFoundation/usr/include/CoreFoundation/*.h $base/Versions/A/Headers
+    cp ./Build/CoreFoundation/usr/include/CoreFoundation/module.modulemap $base/Versions/A/Modules
+
+    ln -s A $base/Versions/Current
+
+    for i in CoreFoundation Headers Modules; do
+      ln -s Versions/Current/$i $base/$i
+    done
   '';
 }
diff --git a/pkgs/os-specific/darwin/swift-corelibs/default.nix b/pkgs/os-specific/darwin/swift-corelibs/default.nix
index dd652dc56273..0d96b8fd008e 100644
--- a/pkgs/os-specific/darwin/swift-corelibs/default.nix
+++ b/pkgs/os-specific/darwin/swift-corelibs/default.nix
@@ -1,7 +1,7 @@
-{callPackage, darwin}:
+{ callPackage, darwin }:
 
 rec {
-  corefoundation = callPackage ./corefoundation.nix {};
+  corefoundation = callPackage ./corefoundation.nix { inherit (darwin) objc4 ICU; };
   libdispatch = callPackage ./libdispatch.nix {
    inherit (darwin) apple_sdk_sierra xnu;
   };
diff --git a/pkgs/os-specific/linux/bcc/default.nix b/pkgs/os-specific/linux/bcc/default.nix
index a02127ab7989..5a40368f3ceb 100644
--- a/pkgs/os-specific/linux/bcc/default.nix
+++ b/pkgs/os-specific/linux/bcc/default.nix
@@ -4,14 +4,14 @@
 }:
 
 python.pkgs.buildPythonApplication rec {
-  version = "0.6.1";
+  version = "0.7.0";
   name = "bcc-${version}";
 
   src = fetchFromGitHub {
     owner  = "iovisor";
     repo   = "bcc";
     rev    = "v${version}";
-    sha256 = "1rfqjbq8ah8zrsnpbx0h5irq3h2snncfvi4pvaxl7574kciprjxj";
+    sha256 = "1ww7l0chx2ivw9d2ahxjyhxmh6hz3w5z69r4lz02f0361rnrvk7f";
   };
 
   format = "other";
diff --git a/pkgs/os-specific/linux/busybox/default.nix b/pkgs/os-specific/linux/busybox/default.nix
index 69fe94a1fe47..71ad6203e325 100644
--- a/pkgs/os-specific/linux/busybox/default.nix
+++ b/pkgs/os-specific/linux/busybox/default.nix
@@ -32,14 +32,14 @@ let
 in
 
 stdenv.mkDerivation rec {
-  name = "busybox-1.29.2";
+  name = "busybox-1.29.3";
 
   # Note to whoever is updating busybox: please verify that:
   # nix-build pkgs/stdenv/linux/make-bootstrap-tools.nix -A test
   # still builds after the update.
   src = fetchurl {
     url = "https://busybox.net/downloads/${name}.tar.bz2";
-    sha256 = "0qax9926qx9lpxiw75f4hkknz1pg0zcn5pkjx5gqfibs2ipgmlk7";
+    sha256 = "1dzg45vgy2w1xcd3p6h8d76ykhabbvk1h0lf8yb24ikrwlv8cr4p";
   };
 
   hardeningDisable = [ "format" ] ++ lib.optionals enableStatic [ "fortify" ];
diff --git a/pkgs/os-specific/linux/cryptsetup/default.nix b/pkgs/os-specific/linux/cryptsetup/default.nix
index 178fc7d91408..4eec4754ca9a 100644
--- a/pkgs/os-specific/linux/cryptsetup/default.nix
+++ b/pkgs/os-specific/linux/cryptsetup/default.nix
@@ -14,8 +14,19 @@ stdenv.mkDerivation rec {
     sha256 = "0d2p9g2wqcv6l3671gvw96p16jadbgyh21ddy2bhqgi96dq3qflx";
   };
 
+  # Disable 4 test cases that fail in a sandbox
+  patches = [ ./disable-failing-tests.patch ];
+
   postPatch = ''
     patchShebangs tests
+    ${stdenv.lib.optionalString enablePython ''
+      patchShebangs ./python/pycryptsetup-test.py
+    ''}
+
+    # O_DIRECT is filesystem dependent and fails in a sandbox (on tmpfs)
+    # and on several filesystem types (btrfs, zfs) without sandboxing.
+    # Remove it, see discussion in #46151
+    substituteInPlace tests/unit-utils-io.c --replace "| O_DIRECT" ""
   '';
 
   NIX_LDFLAGS = "-lgcc_s";
@@ -30,6 +41,8 @@ stdenv.mkDerivation rec {
   buildInputs = [ lvm2 json_c openssl libuuid popt ]
     ++ stdenv.lib.optional enablePython python2;
 
+  doCheck = true;
+
   meta = {
     homepage = https://gitlab.com/cryptsetup/cryptsetup/;
     description = "LUKS for dm-crypt";
diff --git a/pkgs/os-specific/linux/cryptsetup/disable-failing-tests.patch b/pkgs/os-specific/linux/cryptsetup/disable-failing-tests.patch
new file mode 100644
index 000000000000..1504bf3e1511
--- /dev/null
+++ b/pkgs/os-specific/linux/cryptsetup/disable-failing-tests.patch
@@ -0,0 +1,19 @@
+diff -ur a/tests/blockwise-compat b/tests/blockwise-compat
+--- a/tests/blockwise-compat	2018-09-08 12:23:11.706555098 +0200
++++ b/tests/blockwise-compat	2018-09-08 12:24:24.444393460 +0200
+@@ -148,15 +148,11 @@
+ 	# device/file fn_name length
+ 	RUN "P" $1 read_buffer $BSIZE
+ 	RUN "P" $1 read_buffer $((2*BSIZE))
+-	RUN "F" $1 read_buffer $((BSIZE-1))
+-	RUN "F" $1 read_buffer $((BSIZE+1))
+ 	RUN "P" $1 read_buffer 0
+ 
+ 	RUN "P" $1 write_buffer $BSIZE
+ 	RUN "P" $1 write_buffer $((2*BSIZE))
+ 
+-	RUN "F" $1 write_buffer $((BSIZE-1))
+-	RUN "F" $1 write_buffer $((BSIZE+1))
+ 	RUN "F" $1 write_buffer 0
+ 
+ 	# basic blockwise functions
diff --git a/pkgs/os-specific/linux/earlyoom/default.nix b/pkgs/os-specific/linux/earlyoom/default.nix
index 081996dfd42b..52333c109ee0 100644
--- a/pkgs/os-specific/linux/earlyoom/default.nix
+++ b/pkgs/os-specific/linux/earlyoom/default.nix
@@ -1,19 +1,19 @@
 { lib, stdenv, fetchFromGitHub }:
 
 stdenv.mkDerivation rec {
-  name = "earlyoom-${version}";
-  version = "0.11";
+  name = "earlyoom-${VERSION}";
+  # This environment variable is read by make to set the build version.
+  VERSION = "0.11";
 
   src = fetchFromGitHub {
     owner = "rfjakob";
     repo = "earlyoom";
-    rev = "08b7ed8e72feed2eec2e558ba2cfacbf6d469594";
+    rev = "v${VERSION}";
     sha256 = "1k3xslb70fzk80wlka32l0k2v45qn1xgwyjkjiz85gv6v4mv92vl";
   };
 
   installPhase = ''
-    mkdir -p $out/bin
-    cp earlyoom $out/bin
+    install -D earlyoom $out/bin/earlyoom
   '';
 
   meta = {
diff --git a/pkgs/os-specific/linux/firmware/raspberrypi/default.nix b/pkgs/os-specific/linux/firmware/raspberrypi/default.nix
index b29cf88f168f..11a5074cff2c 100644
--- a/pkgs/os-specific/linux/firmware/raspberrypi/default.nix
+++ b/pkgs/os-specific/linux/firmware/raspberrypi/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "raspberrypi-firmware-${version}";
-  version = "1.20180619";
+  version = "1.20180817";
 
   src = fetchFromGitHub {
     owner = "raspberrypi";
     repo = "firmware";
     rev = version;
-    sha256 = "1wppk6c5mbanx9h2wa3yz3rzh5am8bqvgw23gxqgwhbar8w99cfn";
+    sha256 = "0cjlgs7y0x7wjvbz6046017yb9r9wkjrxksvlnc6i9mgdjcryqqm";
   };
 
   installPhase = ''
diff --git a/pkgs/os-specific/linux/i2c-tools/default.nix b/pkgs/os-specific/linux/i2c-tools/default.nix
index eacac156c975..3f90b91f10d8 100644
--- a/pkgs/os-specific/linux/i2c-tools/default.nix
+++ b/pkgs/os-specific/linux/i2c-tools/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Set of I2C tools for Linux";
-    homepage = http://www.lm-sensors.org/wiki/I2CTools;
+    homepage = https://i2c.wiki.kernel.org/index.php/I2C_Tools;
     license = licenses.gpl2;
     maintainers = [ maintainers.dezgeg ];
     platforms = platforms.linux;
diff --git a/pkgs/os-specific/linux/kernel/copperhead-4-14.patch b/pkgs/os-specific/linux/kernel/copperhead-4-14.patch
deleted file mode 100644
index 78112d164f06..000000000000
--- a/pkgs/os-specific/linux/kernel/copperhead-4-14.patch
+++ /dev/null
@@ -1,2864 +0,0 @@
-diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt
-index 0380a45ecf4b..39956a3ef645 100644
---- a/Documentation/admin-guide/kernel-parameters.txt
-+++ b/Documentation/admin-guide/kernel-parameters.txt
-@@ -490,16 +490,6 @@
-			nosocket -- Disable socket memory accounting.
-			nokmem -- Disable kernel memory accounting.
-
--	checkreqprot	[SELINUX] Set initial checkreqprot flag value.
--			Format: { "0" | "1" }
--			See security/selinux/Kconfig help text.
--			0 -- check protection applied by kernel (includes
--				any implied execute protection).
--			1 -- check protection requested by application.
--			Default value is set via a kernel config option.
--			Value can be changed at runtime via
--				/selinux/checkreqprot.
--
-	cio_ignore=	[S390]
-			See Documentation/s390/CommonIO for details.
-	clk_ignore_unused
-@@ -2899,6 +2889,11 @@
-			the specified number of seconds.  This is to be used if
-			your oopses keep scrolling off the screen.
-
-+	extra_latent_entropy
-+			Enable a very simple form of latent entropy extraction
-+			from the first 4GB of memory as the bootmem allocator
-+			passes the memory pages to the buddy allocator.
-+
-	pcbit=		[HW,ISDN]
-
-	pcd.		[PARIDE]
-diff --git a/Documentation/sysctl/kernel.txt b/Documentation/sysctl/kernel.txt
-index 694968c7523c..002d86416ef8 100644
---- a/Documentation/sysctl/kernel.txt
-+++ b/Documentation/sysctl/kernel.txt
-@@ -91,6 +91,7 @@ show up in /proc/sys/kernel:
- - sysctl_writes_strict
- - tainted
- - threads-max
-+- tiocsti_restrict
- - unknown_nmi_panic
- - watchdog
- - watchdog_thresh
-@@ -999,6 +1000,26 @@ available RAM pages threads-max is reduced accordingly.
-
- ==============================================================
-
-+tiocsti_restrict:
-+
-+This toggle indicates whether unprivileged users are prevented
-+from using the TIOCSTI ioctl to inject commands into other processes
-+which share a tty session.
-+
-+When tiocsti_restrict is set to (0) there are no restrictions(accept
-+the default restriction of only being able to injection commands into
-+one's own tty). When tiocsti_restrict is set to (1), users must
-+have CAP_SYS_ADMIN to use the TIOCSTI ioctl.
-+
-+When user namespaces are in use, the check for the capability
-+CAP_SYS_ADMIN is done against the user namespace that originally
-+opened the tty.
-+
-+The kernel config option CONFIG_SECURITY_TIOCSTI_RESTRICT sets the
-+default value of tiocsti_restrict.
-+
-+==============================================================
-+
- unknown_nmi_panic:
-
- The value in this file affects behavior of handling NMI. When the
-diff --git a/Makefile b/Makefile
-index 787cf6605209..e4fda5330730 100644
---- a/Makefile
-+++ b/Makefile
-@@ -710,6 +710,9 @@ endif
- KBUILD_CFLAGS += $(stackp-flag)
-
- ifeq ($(cc-name),clang)
-+ifdef CONFIG_LOCAL_INIT
-+KBUILD_CFLAGS   += -fsanitize=local-init
-+endif
- KBUILD_CPPFLAGS += $(call cc-option,-Qunused-arguments,)
- KBUILD_CFLAGS += $(call cc-disable-warning, unused-variable)
- KBUILD_CFLAGS += $(call cc-disable-warning, format-invalid-specifier)
-diff --git a/arch/Kconfig b/arch/Kconfig
-index 400b9e1b2f27..4637096f7902 100644
---- a/arch/Kconfig
-+++ b/arch/Kconfig
-@@ -440,6 +440,11 @@ config GCC_PLUGIN_LATENT_ENTROPY
-	  is some slowdown of the boot process (about 0.5%) and fork and
-	  irq processing.
-
-+	  When extra_latent_entropy is passed on the kernel command line,
-+	  entropy will be extracted from up to the first 4GB of RAM while the
-+	  runtime memory allocator is being initialized.  This costs even more
-+	  slowdown of the boot process.
-+
-	  Note that entropy extracted this way is not cryptographically
-	  secure!
-
-@@ -533,7 +538,7 @@ config CC_STACKPROTECTOR
- choice
-	prompt "Stack Protector buffer overflow detection"
-	depends on HAVE_CC_STACKPROTECTOR
--	default CC_STACKPROTECTOR_NONE
-+	default CC_STACKPROTECTOR_STRONG
-	help
-	  This option turns on the "stack-protector" GCC feature. This
-	  feature puts, at the beginning of functions, a canary value on
-@@ -735,7 +740,7 @@ config ARCH_MMAP_RND_BITS
-	int "Number of bits to use for ASLR of mmap base address" if EXPERT
-	range ARCH_MMAP_RND_BITS_MIN ARCH_MMAP_RND_BITS_MAX
-	default ARCH_MMAP_RND_BITS_DEFAULT if ARCH_MMAP_RND_BITS_DEFAULT
--	default ARCH_MMAP_RND_BITS_MIN
-+	default ARCH_MMAP_RND_BITS_MAX
-	depends on HAVE_ARCH_MMAP_RND_BITS
-	help
-	  This value can be used to select the number of bits to use to
-@@ -769,7 +774,7 @@ config ARCH_MMAP_RND_COMPAT_BITS
-	int "Number of bits to use for ASLR of mmap base address for compatible applications" if EXPERT
-	range ARCH_MMAP_RND_COMPAT_BITS_MIN ARCH_MMAP_RND_COMPAT_BITS_MAX
-	default ARCH_MMAP_RND_COMPAT_BITS_DEFAULT if ARCH_MMAP_RND_COMPAT_BITS_DEFAULT
--	default ARCH_MMAP_RND_COMPAT_BITS_MIN
-+	default ARCH_MMAP_RND_COMPAT_BITS_MAX
-	depends on HAVE_ARCH_MMAP_RND_COMPAT_BITS
-	help
-	  This value can be used to select the number of bits to use to
-@@ -952,6 +957,7 @@ config ARCH_HAS_REFCOUNT
-
- config REFCOUNT_FULL
-	bool "Perform full reference count validation at the expense of speed"
-+	default y
-	help
-	  Enabling this switches the refcounting infrastructure from a fast
-	  unchecked atomic_t implementation to a fully state checked
-diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
-index 2d5f7aca156d..aa4839a74c6a 100644
---- a/arch/arm64/Kconfig
-+++ b/arch/arm64/Kconfig
-@@ -918,6 +918,7 @@ endif
-
- config ARM64_SW_TTBR0_PAN
-	bool "Emulate Privileged Access Never using TTBR0_EL1 switching"
-+	default y
-	help
-	  Enabling this option prevents the kernel from accessing
-	  user-space memory directly by pointing TTBR0_EL1 to a reserved
-@@ -1044,6 +1045,7 @@ config RANDOMIZE_BASE
-	bool "Randomize the address of the kernel image"
-	select ARM64_MODULE_PLTS if MODULES
-	select RELOCATABLE
-+	default y
-	help
-	  Randomizes the virtual address at which the kernel image is
-	  loaded, as a security feature that deters exploit attempts
-diff --git a/arch/arm64/Kconfig.debug b/arch/arm64/Kconfig.debug
-index cc6bd559af85..01d5442d4722 100644
---- a/arch/arm64/Kconfig.debug
-+++ b/arch/arm64/Kconfig.debug
-@@ -45,6 +45,7 @@ config ARM64_RANDOMIZE_TEXT_OFFSET
- config DEBUG_WX
-	bool "Warn on W+X mappings at boot"
-	select ARM64_PTDUMP_CORE
-+	default y
-	---help---
-	  Generate a warning if any W+X mappings are found at boot.
-
-diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
-index 34480e9af2e7..26304242250c 100644
---- a/arch/arm64/configs/defconfig
-+++ b/arch/arm64/configs/defconfig
-@@ -1,4 +1,3 @@
--CONFIG_SYSVIPC=y
- CONFIG_POSIX_MQUEUE=y
- CONFIG_AUDIT=y
- CONFIG_NO_HZ_IDLE=y
-diff --git a/arch/arm64/include/asm/elf.h b/arch/arm64/include/asm/elf.h
-index 33be513ef24c..6f0c0e3ef0dd 100644
---- a/arch/arm64/include/asm/elf.h
-+++ b/arch/arm64/include/asm/elf.h
-@@ -114,10 +114,10 @@
-
- /*
-  * This is the base location for PIE (ET_DYN with INTERP) loads. On
-- * 64-bit, this is above 4GB to leave the entire 32-bit address
-+ * 64-bit, this is raised to 4GB to leave the entire 32-bit address
-  * space open for things that want to use the area for 32-bit pointers.
-  */
--#define ELF_ET_DYN_BASE		(2 * TASK_SIZE_64 / 3)
-+#define ELF_ET_DYN_BASE		0x100000000UL
-
- #ifndef __ASSEMBLY__
-
-@@ -158,10 +158,10 @@ extern int arch_setup_additional_pages(struct linux_binprm *bprm,
- /* 1GB of VA */
- #ifdef CONFIG_COMPAT
- #define STACK_RND_MASK			(test_thread_flag(TIF_32BIT) ? \
--						0x7ff >> (PAGE_SHIFT - 12) : \
--						0x3ffff >> (PAGE_SHIFT - 12))
-+						((1UL << mmap_rnd_compat_bits) - 1) >> (PAGE_SHIFT - 12) : \
-+						((1UL << mmap_rnd_bits) - 1) >> (PAGE_SHIFT - 12))
- #else
--#define STACK_RND_MASK			(0x3ffff >> (PAGE_SHIFT - 12))
-+#define STACK_RND_MASK			(((1UL << mmap_rnd_bits) - 1) >> (PAGE_SHIFT - 12))
- #endif
-
- #ifdef __AARCH64EB__
-diff --git a/arch/arm64/kernel/process.c b/arch/arm64/kernel/process.c
-index 9e773732520c..91359f45b5fc 100644
---- a/arch/arm64/kernel/process.c
-+++ b/arch/arm64/kernel/process.c
-@@ -419,9 +419,9 @@ unsigned long arch_align_stack(unsigned long sp)
- unsigned long arch_randomize_brk(struct mm_struct *mm)
- {
-	if (is_compat_task())
--		return randomize_page(mm->brk, SZ_32M);
-+		return mm->brk + get_random_long() % SZ_32M + PAGE_SIZE;
-	else
--		return randomize_page(mm->brk, SZ_1G);
-+		return mm->brk + get_random_long() % SZ_1G + PAGE_SIZE;
- }
-
- /*
-diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
-index 7483cd514c32..835a86c45fb0 100644
---- a/arch/x86/Kconfig
-+++ b/arch/x86/Kconfig
-@@ -1153,8 +1153,7 @@ config VM86
-        default X86_LEGACY_VM86
-
- config X86_16BIT
--	bool "Enable support for 16-bit segments" if EXPERT
--	default y
-+	bool "Enable support for 16-bit segments"
-	depends on MODIFY_LDT_SYSCALL
-	---help---
-	  This option is required by programs like Wine to run 16-bit
-@@ -2228,7 +2227,7 @@ config COMPAT_VDSO
- choice
-	prompt "vsyscall table for legacy applications"
-	depends on X86_64
--	default LEGACY_VSYSCALL_EMULATE
-+	default LEGACY_VSYSCALL_NONE
-	help
-	  Legacy user code that does not know how to find the vDSO expects
-	  to be able to issue three syscalls by calling fixed addresses in
-@@ -2318,8 +2317,7 @@ config CMDLINE_OVERRIDE
-	  be set to 'N' under normal conditions.
-
- config MODIFY_LDT_SYSCALL
--	bool "Enable the LDT (local descriptor table)" if EXPERT
--	default y
-+	bool "Enable the LDT (local descriptor table)"
-	---help---
-	  Linux can allow user programs to install a per-process x86
-	  Local Descriptor Table (LDT) using the modify_ldt(2) system
-diff --git a/arch/x86/Kconfig.debug b/arch/x86/Kconfig.debug
-index 6293a8768a91..add82e0f1df3 100644
---- a/arch/x86/Kconfig.debug
-+++ b/arch/x86/Kconfig.debug
-@@ -101,6 +101,7 @@ config EFI_PGT_DUMP
- config DEBUG_WX
-	bool "Warn on W+X mappings at boot"
-	select X86_PTDUMP_CORE
-+	default y
-	---help---
-	  Generate a warning if any W+X mappings are found at boot.
-
-diff --git a/arch/x86/configs/x86_64_defconfig b/arch/x86/configs/x86_64_defconfig
-index e32fc1f274d8..d08acc76502a 100644
---- a/arch/x86/configs/x86_64_defconfig
-+++ b/arch/x86/configs/x86_64_defconfig
-@@ -1,5 +1,4 @@
- # CONFIG_LOCALVERSION_AUTO is not set
--CONFIG_SYSVIPC=y
- CONFIG_POSIX_MQUEUE=y
- CONFIG_BSD_PROCESS_ACCT=y
- CONFIG_TASKSTATS=y
-diff --git a/arch/x86/entry/vdso/vma.c b/arch/x86/entry/vdso/vma.c
-index 1911310959f8..bba8dbbc07a8 100644
---- a/arch/x86/entry/vdso/vma.c
-+++ b/arch/x86/entry/vdso/vma.c
-@@ -203,55 +203,9 @@ static int map_vdso(const struct vdso_image *image, unsigned long addr)
- }
-
- #ifdef CONFIG_X86_64
--/*
-- * Put the vdso above the (randomized) stack with another randomized
-- * offset.  This way there is no hole in the middle of address space.
-- * To save memory make sure it is still in the same PTE as the stack
-- * top.  This doesn't give that many random bits.
-- *
-- * Note that this algorithm is imperfect: the distribution of the vdso
-- * start address within a PMD is biased toward the end.
-- *
-- * Only used for the 64-bit and x32 vdsos.
-- */
--static unsigned long vdso_addr(unsigned long start, unsigned len)
--{
--	unsigned long addr, end;
--	unsigned offset;
--
--	/*
--	 * Round up the start address.  It can start out unaligned as a result
--	 * of stack start randomization.
--	 */
--	start = PAGE_ALIGN(start);
--
--	/* Round the lowest possible end address up to a PMD boundary. */
--	end = (start + len + PMD_SIZE - 1) & PMD_MASK;
--	if (end >= TASK_SIZE_MAX)
--		end = TASK_SIZE_MAX;
--	end -= len;
--
--	if (end > start) {
--		offset = get_random_int() % (((end - start) >> PAGE_SHIFT) + 1);
--		addr = start + (offset << PAGE_SHIFT);
--	} else {
--		addr = start;
--	}
--
--	/*
--	 * Forcibly align the final address in case we have a hardware
--	 * issue that requires alignment for performance reasons.
--	 */
--	addr = align_vdso_addr(addr);
--
--	return addr;
--}
--
- static int map_vdso_randomized(const struct vdso_image *image)
- {
--	unsigned long addr = vdso_addr(current->mm->start_stack, image->size-image->sym_vvar_start);
--
--	return map_vdso(image, addr);
-+	return map_vdso(image, 0);
- }
- #endif
-
-diff --git a/arch/x86/include/asm/elf.h b/arch/x86/include/asm/elf.h
-index 3a091cea36c5..0931c05a3348 100644
---- a/arch/x86/include/asm/elf.h
-+++ b/arch/x86/include/asm/elf.h
-@@ -249,11 +249,11 @@ extern int force_personality32;
-
- /*
-  * This is the base location for PIE (ET_DYN with INTERP) loads. On
-- * 64-bit, this is above 4GB to leave the entire 32-bit address
-+ * 64-bit, this is raised to 4GB to leave the entire 32-bit address
-  * space open for things that want to use the area for 32-bit pointers.
-  */
- #define ELF_ET_DYN_BASE		(mmap_is_ia32() ? 0x000400000UL : \
--						  (DEFAULT_MAP_WINDOW / 3 * 2))
-+						  0x100000000UL)
-
- /* This yields a mask that user programs can use to figure out what
-    instruction set this CPU supports.  This could be done in user space,
-@@ -312,8 +312,8 @@ extern unsigned long get_mmap_base(int is_legacy);
-
- #ifdef CONFIG_X86_32
-
--#define __STACK_RND_MASK(is32bit) (0x7ff)
--#define STACK_RND_MASK (0x7ff)
-+#define __STACK_RND_MASK(is32bit) ((1UL << mmap_rnd_bits) - 1)
-+#define STACK_RND_MASK ((1UL << mmap_rnd_bits) - 1)
-
- #define ARCH_DLINFO		ARCH_DLINFO_IA32
-
-@@ -322,7 +322,11 @@ extern unsigned long get_mmap_base(int is_legacy);
- #else /* CONFIG_X86_32 */
-
- /* 1GB for 64bit, 8MB for 32bit */
--#define __STACK_RND_MASK(is32bit) ((is32bit) ? 0x7ff : 0x3fffff)
-+#ifdef CONFIG_COMPAT
-+#define __STACK_RND_MASK(is32bit) ((is32bit) ? (1UL << mmap_rnd_compat_bits) - 1 : (1UL << mmap_rnd_bits) - 1)
-+#else
-+#define __STACK_RND_MASK(is32bit) ((1UL << mmap_rnd_bits) - 1)
-+#endif
- #define STACK_RND_MASK __STACK_RND_MASK(mmap_is_ia32())
-
- #define ARCH_DLINFO							\
-@@ -380,5 +384,4 @@ struct va_alignment {
- } ____cacheline_aligned;
-
- extern struct va_alignment va_align;
--extern unsigned long align_vdso_addr(unsigned long);
- #endif /* _ASM_X86_ELF_H */
-diff --git a/arch/x86/include/asm/tlbflush.h b/arch/x86/include/asm/tlbflush.h
-index 704f31315dde..bb82b6344a7b 100644
---- a/arch/x86/include/asm/tlbflush.h
-+++ b/arch/x86/include/asm/tlbflush.h
-@@ -253,6 +253,7 @@ static inline void cr4_set_bits(unsigned long mask)
-	unsigned long cr4;
-
-	cr4 = this_cpu_read(cpu_tlbstate.cr4);
-+	BUG_ON(cr4 != __read_cr4());
-	if ((cr4 | mask) != cr4) {
-		cr4 |= mask;
-		this_cpu_write(cpu_tlbstate.cr4, cr4);
-@@ -266,6 +267,7 @@ static inline void cr4_clear_bits(unsigned long mask)
-	unsigned long cr4;
-
-	cr4 = this_cpu_read(cpu_tlbstate.cr4);
-+	BUG_ON(cr4 != __read_cr4());
-	if ((cr4 & ~mask) != cr4) {
-		cr4 &= ~mask;
-		this_cpu_write(cpu_tlbstate.cr4, cr4);
-@@ -278,6 +280,7 @@ static inline void cr4_toggle_bits(unsigned long mask)
-	unsigned long cr4;
-
-	cr4 = this_cpu_read(cpu_tlbstate.cr4);
-+	BUG_ON(cr4 != __read_cr4());
-	cr4 ^= mask;
-	this_cpu_write(cpu_tlbstate.cr4, cr4);
-	__write_cr4(cr4);
-@@ -386,6 +389,7 @@ static inline void __native_flush_tlb_global(void)
-	raw_local_irq_save(flags);
-
-	cr4 = this_cpu_read(cpu_tlbstate.cr4);
-+	BUG_ON(cr4 != __read_cr4());
-	/* toggle PGE */
-	native_write_cr4(cr4 ^ X86_CR4_PGE);
-	/* write old PGE again and flush TLBs */
-diff --git a/arch/x86/kernel/cpu/common.c b/arch/x86/kernel/cpu/common.c
-index 48e98964ecad..a94dc690612f 100644
---- a/arch/x86/kernel/cpu/common.c
-+++ b/arch/x86/kernel/cpu/common.c
-@@ -1637,7 +1637,6 @@ void cpu_init(void)
-	wrmsrl(MSR_KERNEL_GS_BASE, 0);
-	barrier();
-
--	x86_configure_nx();
-	x2apic_setup();
-
-	/*
-diff --git a/arch/x86/kernel/process.c b/arch/x86/kernel/process.c
-index 988a98f34c66..dc36d2d9078a 100644
---- a/arch/x86/kernel/process.c
-+++ b/arch/x86/kernel/process.c
-@@ -40,6 +40,8 @@
- #include <asm/desc.h>
- #include <asm/prctl.h>
- #include <asm/spec-ctrl.h>
-+#include <asm/elf.h>
-+#include <linux/sizes.h>
-
- /*
-  * per-CPU TSS segments. Threads are completely 'soft' on Linux,
-@@ -719,7 +721,10 @@ unsigned long arch_align_stack(unsigned long sp)
-
- unsigned long arch_randomize_brk(struct mm_struct *mm)
- {
--	return randomize_page(mm->brk, 0x02000000);
-+	if (mmap_is_ia32())
-+		return mm->brk + get_random_long() % SZ_32M + PAGE_SIZE;
-+	else
-+		return mm->brk + get_random_long() % SZ_1G + PAGE_SIZE;
- }
-
- /*
-diff --git a/arch/x86/kernel/sys_x86_64.c b/arch/x86/kernel/sys_x86_64.c
-index a63fe77b3217..e1085e76043e 100644
---- a/arch/x86/kernel/sys_x86_64.c
-+++ b/arch/x86/kernel/sys_x86_64.c
-@@ -54,13 +54,6 @@ static unsigned long get_align_bits(void)
-	return va_align.bits & get_align_mask();
- }
-
--unsigned long align_vdso_addr(unsigned long addr)
--{
--	unsigned long align_mask = get_align_mask();
--	addr = (addr + align_mask) & ~align_mask;
--	return addr | get_align_bits();
--}
--
- static int __init control_va_addr_alignment(char *str)
- {
-	/* guard against enabling this on other CPU families */
-@@ -122,10 +115,7 @@ static void find_start_end(unsigned long addr, unsigned long flags,
-	}
-
-	*begin	= get_mmap_base(1);
--	if (in_compat_syscall())
--		*end = task_size_32bit();
--	else
--		*end = task_size_64bit(addr > DEFAULT_MAP_WINDOW);
-+	*end	= get_mmap_base(0);
- }
-
- unsigned long
-@@ -206,7 +196,7 @@ arch_get_unmapped_area_topdown(struct file *filp, const unsigned long addr0,
-
-	info.flags = VM_UNMAPPED_AREA_TOPDOWN;
-	info.length = len;
--	info.low_limit = PAGE_SIZE;
-+	info.low_limit = get_mmap_base(1);
-	info.high_limit = get_mmap_base(0);
-
-	/*
-diff --git a/arch/x86/mm/init_32.c b/arch/x86/mm/init_32.c
-index 3141e67ec24c..e93173193f60 100644
---- a/arch/x86/mm/init_32.c
-+++ b/arch/x86/mm/init_32.c
-@@ -558,7 +558,7 @@ static void __init pagetable_init(void)
-	permanent_kmaps_init(pgd_base);
- }
-
--pteval_t __supported_pte_mask __read_mostly = ~(_PAGE_NX | _PAGE_GLOBAL);
-+pteval_t __supported_pte_mask __ro_after_init = ~(_PAGE_NX | _PAGE_GLOBAL);
- EXPORT_SYMBOL_GPL(__supported_pte_mask);
-
- /* user-defined highmem size */
-@@ -865,7 +865,7 @@ int arch_remove_memory(u64 start, u64 size)
- #endif
- #endif
-
--int kernel_set_to_readonly __read_mostly;
-+int kernel_set_to_readonly __ro_after_init;
-
- void set_kernel_text_rw(void)
- {
-@@ -917,12 +917,11 @@ void mark_rodata_ro(void)
-	unsigned long start = PFN_ALIGN(_text);
-	unsigned long size = PFN_ALIGN(_etext) - start;
-
-+	kernel_set_to_readonly = 1;
-	set_pages_ro(virt_to_page(start), size >> PAGE_SHIFT);
-	printk(KERN_INFO "Write protecting the kernel text: %luk\n",
-		size >> 10);
-
--	kernel_set_to_readonly = 1;
--
- #ifdef CONFIG_CPA_DEBUG
-	printk(KERN_INFO "Testing CPA: Reverting %lx-%lx\n",
-		start, start+size);
-diff --git a/arch/x86/mm/init_64.c b/arch/x86/mm/init_64.c
-index 642357aff216..8bbf93ce3cd2 100644
---- a/arch/x86/mm/init_64.c
-+++ b/arch/x86/mm/init_64.c
-@@ -65,7 +65,7 @@
-  * around without checking the pgd every time.
-  */
-
--pteval_t __supported_pte_mask __read_mostly = ~0;
-+pteval_t __supported_pte_mask __ro_after_init = ~0;
- EXPORT_SYMBOL_GPL(__supported_pte_mask);
-
- int force_personality32;
-@@ -1185,7 +1185,7 @@ void __init mem_init(void)
-	mem_init_print_info(NULL);
- }
-
--int kernel_set_to_readonly;
-+int kernel_set_to_readonly __ro_after_init;
-
- void set_kernel_text_rw(void)
- {
-@@ -1234,9 +1234,8 @@ void mark_rodata_ro(void)
-
-	printk(KERN_INFO "Write protecting the kernel read-only data: %luk\n",
-	       (end - start) >> 10);
--	set_memory_ro(start, (end - start) >> PAGE_SHIFT);
--
-	kernel_set_to_readonly = 1;
-+	set_memory_ro(start, (end - start) >> PAGE_SHIFT);
-
-	/*
-	 * The rodata/data/bss/brk section (but not the kernel text!)
-diff --git a/block/blk-softirq.c b/block/blk-softirq.c
-index 01e2b353a2b9..9aeddca4a29f 100644
---- a/block/blk-softirq.c
-+++ b/block/blk-softirq.c
-@@ -20,7 +20,7 @@ static DEFINE_PER_CPU(struct list_head, blk_cpu_done);
-  * Softirq action handler - move entries to local list and loop over them
-  * while passing them to the queue registered handler.
-  */
--static __latent_entropy void blk_done_softirq(struct softirq_action *h)
-+static __latent_entropy void blk_done_softirq(void)
- {
-	struct list_head *cpu_list, local_list;
-
-diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c
-index 473f150d6b22..65a65f9824ed 100644
---- a/drivers/ata/libata-core.c
-+++ b/drivers/ata/libata-core.c
-@@ -5141,7 +5141,7 @@ void ata_qc_free(struct ata_queued_cmd *qc)
-	struct ata_port *ap;
-	unsigned int tag;
-
--	WARN_ON_ONCE(qc == NULL); /* ata_qc_from_tag _might_ return NULL */
-+	BUG_ON(qc == NULL); /* ata_qc_from_tag _might_ return NULL */
-	ap = qc->ap;
-
-	qc->flags = 0;
-@@ -5158,7 +5158,7 @@ void __ata_qc_complete(struct ata_queued_cmd *qc)
-	struct ata_port *ap;
-	struct ata_link *link;
-
--	WARN_ON_ONCE(qc == NULL); /* ata_qc_from_tag _might_ return NULL */
-+	BUG_ON(qc == NULL); /* ata_qc_from_tag _might_ return NULL */
-	WARN_ON_ONCE(!(qc->flags & ATA_QCFLAG_ACTIVE));
-	ap = qc->ap;
-	link = qc->dev->link;
-diff --git a/drivers/char/Kconfig b/drivers/char/Kconfig
-index c28dca0c613d..d4813f0d25ca 100644
---- a/drivers/char/Kconfig
-+++ b/drivers/char/Kconfig
-@@ -9,7 +9,6 @@ source "drivers/tty/Kconfig"
-
- config DEVMEM
-	bool "/dev/mem virtual device support"
--	default y
-	help
-	  Say Y here if you want to support the /dev/mem device.
-	  The /dev/mem device is used to access areas of physical
-@@ -568,7 +567,6 @@ config TELCLOCK
- config DEVPORT
-	bool "/dev/port character device"
-	depends on ISA || PCI
--	default y
-	help
-	  Say Y here if you want to support the /dev/port device. The /dev/port
-	  device is similar to /dev/mem, but for I/O ports.
-diff --git a/drivers/media/dvb-frontends/cx24116.c b/drivers/media/dvb-frontends/cx24116.c
-index e105532bfba8..e07d52bb9b62 100644
---- a/drivers/media/dvb-frontends/cx24116.c
-+++ b/drivers/media/dvb-frontends/cx24116.c
-@@ -1462,7 +1462,7 @@ static int cx24116_tune(struct dvb_frontend *fe, bool re_tune,
-	return cx24116_read_status(fe, status);
- }
-
--static int cx24116_get_algo(struct dvb_frontend *fe)
-+static enum dvbfe_algo cx24116_get_algo(struct dvb_frontend *fe)
- {
-	return DVBFE_ALGO_HW;
- }
-diff --git a/drivers/media/dvb-frontends/cx24117.c b/drivers/media/dvb-frontends/cx24117.c
-index d37cb7762bd6..97e0feff0ede 100644
---- a/drivers/media/dvb-frontends/cx24117.c
-+++ b/drivers/media/dvb-frontends/cx24117.c
-@@ -1555,7 +1555,7 @@ static int cx24117_tune(struct dvb_frontend *fe, bool re_tune,
-	return cx24117_read_status(fe, status);
- }
-
--static int cx24117_get_algo(struct dvb_frontend *fe)
-+static enum dvbfe_algo cx24117_get_algo(struct dvb_frontend *fe)
- {
-	return DVBFE_ALGO_HW;
- }
-diff --git a/drivers/media/dvb-frontends/cx24120.c b/drivers/media/dvb-frontends/cx24120.c
-index 7f11dcc94d85..01da670760ba 100644
---- a/drivers/media/dvb-frontends/cx24120.c
-+++ b/drivers/media/dvb-frontends/cx24120.c
-@@ -1491,7 +1491,7 @@ static int cx24120_tune(struct dvb_frontend *fe, bool re_tune,
-	return cx24120_read_status(fe, status);
- }
-
--static int cx24120_get_algo(struct dvb_frontend *fe)
-+static enum dvbfe_algo cx24120_get_algo(struct dvb_frontend *fe)
- {
-	return DVBFE_ALGO_HW;
- }
-diff --git a/drivers/media/dvb-frontends/cx24123.c b/drivers/media/dvb-frontends/cx24123.c
-index 1d59d1d3bd82..41cd0e9ea199 100644
---- a/drivers/media/dvb-frontends/cx24123.c
-+++ b/drivers/media/dvb-frontends/cx24123.c
-@@ -1005,7 +1005,7 @@ static int cx24123_tune(struct dvb_frontend *fe,
-	return retval;
- }
-
--static int cx24123_get_algo(struct dvb_frontend *fe)
-+static enum dvbfe_algo cx24123_get_algo(struct dvb_frontend *fe)
- {
-	return DVBFE_ALGO_HW;
- }
-diff --git a/drivers/media/dvb-frontends/cxd2820r_core.c b/drivers/media/dvb-frontends/cxd2820r_core.c
-index f6ebbb47b9b2..3e0d8cbd76da 100644
---- a/drivers/media/dvb-frontends/cxd2820r_core.c
-+++ b/drivers/media/dvb-frontends/cxd2820r_core.c
-@@ -403,7 +403,7 @@ static enum dvbfe_search cxd2820r_search(struct dvb_frontend *fe)
-	return DVBFE_ALGO_SEARCH_ERROR;
- }
-
--static int cxd2820r_get_frontend_algo(struct dvb_frontend *fe)
-+static enum dvbfe_algo cxd2820r_get_frontend_algo(struct dvb_frontend *fe)
- {
-	return DVBFE_ALGO_CUSTOM;
- }
-diff --git a/drivers/media/dvb-frontends/mb86a20s.c b/drivers/media/dvb-frontends/mb86a20s.c
-index e8ac8c3e2ec0..e0f4ba8302d1 100644
---- a/drivers/media/dvb-frontends/mb86a20s.c
-+++ b/drivers/media/dvb-frontends/mb86a20s.c
-@@ -2055,7 +2055,7 @@ static void mb86a20s_release(struct dvb_frontend *fe)
-	kfree(state);
- }
-
--static int mb86a20s_get_frontend_algo(struct dvb_frontend *fe)
-+static enum dvbfe_algo mb86a20s_get_frontend_algo(struct dvb_frontend *fe)
- {
-         return DVBFE_ALGO_HW;
- }
-diff --git a/drivers/media/dvb-frontends/s921.c b/drivers/media/dvb-frontends/s921.c
-index 274544a3ae0e..9ef9b9bc1bd2 100644
---- a/drivers/media/dvb-frontends/s921.c
-+++ b/drivers/media/dvb-frontends/s921.c
-@@ -464,7 +464,7 @@ static int s921_tune(struct dvb_frontend *fe,
-	return rc;
- }
-
--static int s921_get_algo(struct dvb_frontend *fe)
-+static enum dvbfe_algo s921_get_algo(struct dvb_frontend *fe)
- {
-	return DVBFE_ALGO_HW;
- }
-diff --git a/drivers/media/pci/bt8xx/dst.c b/drivers/media/pci/bt8xx/dst.c
-index 7166d2279465..fa682f9fdc4b 100644
---- a/drivers/media/pci/bt8xx/dst.c
-+++ b/drivers/media/pci/bt8xx/dst.c
-@@ -1657,7 +1657,7 @@ static int dst_tune_frontend(struct dvb_frontend* fe,
-	return 0;
- }
-
--static int dst_get_tuning_algo(struct dvb_frontend *fe)
-+static enum dvbfe_algo dst_get_tuning_algo(struct dvb_frontend *fe)
- {
-	return dst_algo ? DVBFE_ALGO_HW : DVBFE_ALGO_SW;
- }
-diff --git a/drivers/media/pci/pt1/va1j5jf8007s.c b/drivers/media/pci/pt1/va1j5jf8007s.c
-index f75f69556be7..d913a6050e8c 100644
---- a/drivers/media/pci/pt1/va1j5jf8007s.c
-+++ b/drivers/media/pci/pt1/va1j5jf8007s.c
-@@ -98,7 +98,7 @@ static int va1j5jf8007s_read_snr(struct dvb_frontend *fe, u16 *snr)
-	return 0;
- }
-
--static int va1j5jf8007s_get_frontend_algo(struct dvb_frontend *fe)
-+static enum dvbfe_algo va1j5jf8007s_get_frontend_algo(struct dvb_frontend *fe)
- {
-	return DVBFE_ALGO_HW;
- }
-diff --git a/drivers/media/pci/pt1/va1j5jf8007t.c b/drivers/media/pci/pt1/va1j5jf8007t.c
-index 63fda79a75c0..4115c3ccd4a8 100644
---- a/drivers/media/pci/pt1/va1j5jf8007t.c
-+++ b/drivers/media/pci/pt1/va1j5jf8007t.c
-@@ -88,7 +88,7 @@ static int va1j5jf8007t_read_snr(struct dvb_frontend *fe, u16 *snr)
-	return 0;
- }
-
--static int va1j5jf8007t_get_frontend_algo(struct dvb_frontend *fe)
-+static enum dvbfe_algo va1j5jf8007t_get_frontend_algo(struct dvb_frontend *fe)
- {
-	return DVBFE_ALGO_HW;
- }
-diff --git a/drivers/misc/lkdtm_core.c b/drivers/misc/lkdtm_core.c
-index 981b3ef71e47..9883da1da383 100644
---- a/drivers/misc/lkdtm_core.c
-+++ b/drivers/misc/lkdtm_core.c
-@@ -78,7 +78,7 @@ static irqreturn_t jp_handle_irq_event(unsigned int irq,
-	return 0;
- }
-
--static void jp_tasklet_action(struct softirq_action *a)
-+static void jp_tasklet_action(void)
- {
-	lkdtm_handler();
-	jprobe_return();
-diff --git a/drivers/tty/Kconfig b/drivers/tty/Kconfig
-index b811442c5ce6..4f62a63cbcb1 100644
---- a/drivers/tty/Kconfig
-+++ b/drivers/tty/Kconfig
-@@ -122,7 +122,6 @@ config UNIX98_PTYS
-
- config LEGACY_PTYS
-	bool "Legacy (BSD) PTY support"
--	default y
-	---help---
-	  A pseudo terminal (PTY) is a software device consisting of two
-	  halves: a master and a slave. The slave device behaves identical to
-diff --git a/drivers/tty/tty_io.c b/drivers/tty/tty_io.c
-index 562d31073f9a..2184b9b5485f 100644
---- a/drivers/tty/tty_io.c
-+++ b/drivers/tty/tty_io.c
-@@ -171,6 +171,7 @@ static void free_tty_struct(struct tty_struct *tty)
-	put_device(tty->dev);
-	kfree(tty->write_buf);
-	tty->magic = 0xDEADDEAD;
-+	put_user_ns(tty->owner_user_ns);
-	kfree(tty);
- }
-
-@@ -2154,11 +2155,19 @@ static int tty_fasync(int fd, struct file *filp, int on)
-  *	FIXME: may race normal receive processing
-  */
-
-+int tiocsti_restrict = IS_ENABLED(CONFIG_SECURITY_TIOCSTI_RESTRICT);
-+
- static int tiocsti(struct tty_struct *tty, char __user *p)
- {
-	char ch, mbz = 0;
-	struct tty_ldisc *ld;
-
-+	if (tiocsti_restrict &&
-+		!ns_capable(tty->owner_user_ns, CAP_SYS_ADMIN)) {
-+		dev_warn_ratelimited(tty->dev,
-+			"Denied TIOCSTI ioctl for non-privileged process\n");
-+		return -EPERM;
-+	}
-	if ((current->signal->tty != tty) && !capable(CAP_SYS_ADMIN))
-		return -EPERM;
-	if (get_user(ch, p))
-@@ -2841,6 +2850,7 @@ struct tty_struct *alloc_tty_struct(struct tty_driver *driver, int idx)
-	tty->index = idx;
-	tty_line_name(driver, idx, tty->name);
-	tty->dev = tty_get_device(tty);
-+	tty->owner_user_ns = get_user_ns(current_user_ns());
-
-	return tty;
- }
-diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c
-index 442be7f312f6..788557d5c454 100644
---- a/drivers/usb/core/hub.c
-+++ b/drivers/usb/core/hub.c
-@@ -38,6 +38,8 @@
- #define USB_VENDOR_GENESYS_LOGIC		0x05e3
- #define HUB_QUIRK_CHECK_PORT_AUTOSUSPEND	0x01
-
-+extern int deny_new_usb;
-+
- /* Protect struct usb_device->state and ->children members
-  * Note: Both are also protected by ->dev.sem, except that ->state can
-  * change to USB_STATE_NOTATTACHED even when the semaphore isn't held. */
-@@ -4806,6 +4808,12 @@ static void hub_port_connect(struct usb_hub *hub, int port1, u16 portstatus,
-			goto done;
-		return;
-	}
-+
-+	if (deny_new_usb) {
-+		dev_err(&port_dev->dev, "denied insert of USB device on port %d\n", port1);
-+		goto done;
-+	}
-+
-	if (hub_is_superspeed(hub->hdev))
-		unit_load = 150;
-	else
-diff --git a/fs/exec.c b/fs/exec.c
-index 0da4d748b4e6..69fcee853363 100644
---- a/fs/exec.c
-+++ b/fs/exec.c
-@@ -62,6 +62,7 @@
- #include <linux/oom.h>
- #include <linux/compat.h>
- #include <linux/vmalloc.h>
-+#include <linux/random.h>
-
- #include <linux/uaccess.h>
- #include <asm/mmu_context.h>
-@@ -321,6 +322,8 @@ static int __bprm_mm_init(struct linux_binprm *bprm)
-	arch_bprm_mm_init(mm, vma);
-	up_write(&mm->mmap_sem);
-	bprm->p = vma->vm_end - sizeof(void *);
-+	if (randomize_va_space)
-+		bprm->p ^= get_random_int() & ~PAGE_MASK;
-	return 0;
- err:
-	up_write(&mm->mmap_sem);
-diff --git a/fs/namei.c b/fs/namei.c
-index 0b46b858cd42..3ae8e72341da 100644
---- a/fs/namei.c
-+++ b/fs/namei.c
-@@ -902,8 +902,8 @@ static inline void put_link(struct nameidata *nd)
-		path_put(&last->link);
- }
-
--int sysctl_protected_symlinks __read_mostly = 0;
--int sysctl_protected_hardlinks __read_mostly = 0;
-+int sysctl_protected_symlinks __read_mostly = 1;
-+int sysctl_protected_hardlinks __read_mostly = 1;
-
- /**
-  * may_follow_link - Check symlink following for unsafe situations
-diff --git a/fs/nfs/Kconfig b/fs/nfs/Kconfig
-index 5f93cfacb3d1..cea0d7d3b23e 100644
---- a/fs/nfs/Kconfig
-+++ b/fs/nfs/Kconfig
-@@ -195,4 +195,3 @@ config NFS_DEBUG
-	bool
-	depends on NFS_FS && SUNRPC_DEBUG
-	select CRC32
--	default y
-diff --git a/fs/pipe.c b/fs/pipe.c
-index 8ef7d7bef775..b82f305ec13d 100644
---- a/fs/pipe.c
-+++ b/fs/pipe.c
-@@ -38,7 +38,7 @@ unsigned int pipe_max_size = 1048576;
- /*
-  * Minimum pipe size, as required by POSIX
-  */
--unsigned int pipe_min_size = PAGE_SIZE;
-+unsigned int pipe_min_size __read_only = PAGE_SIZE;
-
- /* Maximum allocatable pages per user. Hard limit is unset by default, soft
-  * matches default values.
-diff --git a/fs/proc/Kconfig b/fs/proc/Kconfig
-index 1ade1206bb89..60b0f76dec47 100644
---- a/fs/proc/Kconfig
-+++ b/fs/proc/Kconfig
-@@ -39,7 +39,6 @@ config PROC_KCORE
- config PROC_VMCORE
-	bool "/proc/vmcore support"
-	depends on PROC_FS && CRASH_DUMP
--	default y
-         help
-         Exports the dump image of crashed kernel in ELF format.
-
-diff --git a/fs/stat.c b/fs/stat.c
-index 873785dae022..d3c2ada8b9c7 100644
---- a/fs/stat.c
-+++ b/fs/stat.c
-@@ -40,8 +40,13 @@ void generic_fillattr(struct inode *inode, struct kstat *stat)
-	stat->gid = inode->i_gid;
-	stat->rdev = inode->i_rdev;
-	stat->size = i_size_read(inode);
--	stat->atime = inode->i_atime;
--	stat->mtime = inode->i_mtime;
-+	if (is_sidechannel_device(inode) && !capable_noaudit(CAP_MKNOD)) {
-+		stat->atime = inode->i_ctime;
-+		stat->mtime = inode->i_ctime;
-+	} else {
-+		stat->atime = inode->i_atime;
-+		stat->mtime = inode->i_mtime;
-+	}
-	stat->ctime = inode->i_ctime;
-	stat->blksize = i_blocksize(inode);
-	stat->blocks = inode->i_blocks;
-@@ -75,9 +80,14 @@ int vfs_getattr_nosec(const struct path *path, struct kstat *stat,
-	stat->result_mask |= STATX_BASIC_STATS;
-	request_mask &= STATX_ALL;
-	query_flags &= KSTAT_QUERY_FLAGS;
--	if (inode->i_op->getattr)
--		return inode->i_op->getattr(path, stat, request_mask,
--					    query_flags);
-+	if (inode->i_op->getattr) {
-+		int retval = inode->i_op->getattr(path, stat, request_mask, query_flags);
-+		if (!retval && is_sidechannel_device(inode) && !capable_noaudit(CAP_MKNOD)) {
-+			stat->atime = stat->ctime;
-+			stat->mtime = stat->ctime;
-+		}
-+		return retval;
-+	}
-
-	generic_fillattr(inode, stat);
-	return 0;
-diff --git a/include/linux/cache.h b/include/linux/cache.h
-index 750621e41d1c..e7157c18c62c 100644
---- a/include/linux/cache.h
-+++ b/include/linux/cache.h
-@@ -31,6 +31,8 @@
- #define __ro_after_init __attribute__((__section__(".data..ro_after_init")))
- #endif
-
-+#define __read_only __ro_after_init
-+
- #ifndef ____cacheline_aligned
- #define ____cacheline_aligned __attribute__((__aligned__(SMP_CACHE_BYTES)))
- #endif
-diff --git a/include/linux/capability.h b/include/linux/capability.h
-index f640dcbc880c..2b4f5d651f19 100644
---- a/include/linux/capability.h
-+++ b/include/linux/capability.h
-@@ -207,6 +207,7 @@ extern bool has_capability_noaudit(struct task_struct *t, int cap);
- extern bool has_ns_capability_noaudit(struct task_struct *t,
-				      struct user_namespace *ns, int cap);
- extern bool capable(int cap);
-+extern bool capable_noaudit(int cap);
- extern bool ns_capable(struct user_namespace *ns, int cap);
- extern bool ns_capable_noaudit(struct user_namespace *ns, int cap);
- #else
-@@ -232,6 +233,10 @@ static inline bool capable(int cap)
- {
-	return true;
- }
-+static inline bool capable_noaudit(int cap)
-+{
-+	return true;
-+}
- static inline bool ns_capable(struct user_namespace *ns, int cap)
- {
-	return true;
-diff --git a/include/linux/fs.h b/include/linux/fs.h
-index cc613f20e5a6..7606596d6c2e 100644
---- a/include/linux/fs.h
-+++ b/include/linux/fs.h
-@@ -3392,4 +3392,15 @@ static inline bool dir_relax_shared(struct inode *inode)
- extern bool path_noexec(const struct path *path);
- extern void inode_nohighmem(struct inode *inode);
-
-+extern int device_sidechannel_restrict;
-+
-+static inline bool is_sidechannel_device(const struct inode *inode)
-+{
-+	umode_t mode;
-+	if (!device_sidechannel_restrict)
-+		return false;
-+	mode = inode->i_mode;
-+	return ((S_ISCHR(mode) || S_ISBLK(mode)) && (mode & (S_IROTH | S_IWOTH)));
-+}
-+
- #endif /* _LINUX_FS_H */
-diff --git a/include/linux/fsnotify.h b/include/linux/fsnotify.h
-index bdaf22582f6e..326ff15d4637 100644
---- a/include/linux/fsnotify.h
-+++ b/include/linux/fsnotify.h
-@@ -181,6 +181,9 @@ static inline void fsnotify_access(struct file *file)
-	struct inode *inode = path->dentry->d_inode;
-	__u32 mask = FS_ACCESS;
-
-+	if (is_sidechannel_device(inode))
-+		return;
-+
-	if (S_ISDIR(inode->i_mode))
-		mask |= FS_ISDIR;
-
-@@ -199,6 +202,9 @@ static inline void fsnotify_modify(struct file *file)
-	struct inode *inode = path->dentry->d_inode;
-	__u32 mask = FS_MODIFY;
-
-+	if (is_sidechannel_device(inode))
-+		return;
-+
-	if (S_ISDIR(inode->i_mode))
-		mask |= FS_ISDIR;
-
-diff --git a/include/linux/gfp.h b/include/linux/gfp.h
-index b041f94678de..a5e0175c79e0 100644
---- a/include/linux/gfp.h
-+++ b/include/linux/gfp.h
-@@ -518,9 +518,9 @@ extern struct page *alloc_pages_vma(gfp_t gfp_mask, int order,
- extern unsigned long __get_free_pages(gfp_t gfp_mask, unsigned int order);
- extern unsigned long get_zeroed_page(gfp_t gfp_mask);
-
--void *alloc_pages_exact(size_t size, gfp_t gfp_mask);
-+void *alloc_pages_exact(size_t size, gfp_t gfp_mask) __attribute__((alloc_size(1)));
- void free_pages_exact(void *virt, size_t size);
--void * __meminit alloc_pages_exact_nid(int nid, size_t size, gfp_t gfp_mask);
-+void * __meminit alloc_pages_exact_nid(int nid, size_t size, gfp_t gfp_mask) __attribute__((alloc_size(1)));
-
- #define __get_free_page(gfp_mask) \
-		__get_free_pages((gfp_mask), 0)
-diff --git a/include/linux/highmem.h b/include/linux/highmem.h
-index 776f90f3a1cd..3f5c47000059 100644
---- a/include/linux/highmem.h
-+++ b/include/linux/highmem.h
-@@ -191,6 +191,13 @@ static inline void clear_highpage(struct page *page)
-	kunmap_atomic(kaddr);
- }
-
-+static inline void verify_zero_highpage(struct page *page)
-+{
-+	void *kaddr = kmap_atomic(page);
-+	BUG_ON(memchr_inv(kaddr, 0, PAGE_SIZE));
-+	kunmap_atomic(kaddr);
-+}
-+
- static inline void zero_user_segments(struct page *page,
-	unsigned start1, unsigned end1,
-	unsigned start2, unsigned end2)
-diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h
-index 69c238210325..ee487ea4f48f 100644
---- a/include/linux/interrupt.h
-+++ b/include/linux/interrupt.h
-@@ -485,7 +485,7 @@ extern const char * const softirq_to_name[NR_SOFTIRQS];
-
- struct softirq_action
- {
--	void	(*action)(struct softirq_action *);
-+	void	(*action)(void);
- };
-
- asmlinkage void do_softirq(void);
-@@ -500,7 +500,7 @@ static inline void do_softirq_own_stack(void)
- }
- #endif
-
--extern void open_softirq(int nr, void (*action)(struct softirq_action *));
-+extern void __init open_softirq(int nr, void (*action)(void));
- extern void softirq_init(void);
- extern void __raise_softirq_irqoff(unsigned int nr);
-
-diff --git a/include/linux/kobject_ns.h b/include/linux/kobject_ns.h
-index df32d2508290..c992d130b94d 100644
---- a/include/linux/kobject_ns.h
-+++ b/include/linux/kobject_ns.h
-@@ -46,7 +46,7 @@ struct kobj_ns_type_operations {
-	void (*drop_ns)(void *);
- };
-
--int kobj_ns_type_register(const struct kobj_ns_type_operations *ops);
-+int __init kobj_ns_type_register(const struct kobj_ns_type_operations *ops);
- int kobj_ns_type_registered(enum kobj_ns_type type);
- const struct kobj_ns_type_operations *kobj_child_ns_ops(struct kobject *parent);
- const struct kobj_ns_type_operations *kobj_ns_ops(struct kobject *kobj);
-diff --git a/include/linux/mm.h b/include/linux/mm.h
-index f23215854c80..98df98c44cc0 100644
---- a/include/linux/mm.h
-+++ b/include/linux/mm.h
-@@ -525,7 +525,7 @@ static inline int is_vmalloc_or_module_addr(const void *x)
- }
- #endif
-
--extern void *kvmalloc_node(size_t size, gfp_t flags, int node);
-+extern void *kvmalloc_node(size_t size, gfp_t flags, int node) __attribute__((alloc_size(1)));
- static inline void *kvmalloc(size_t size, gfp_t flags)
- {
-	return kvmalloc_node(size, flags, NUMA_NO_NODE);
-diff --git a/include/linux/percpu.h b/include/linux/percpu.h
-index 296bbe49d5d1..b26652c9a98d 100644
---- a/include/linux/percpu.h
-+++ b/include/linux/percpu.h
-@@ -129,7 +129,7 @@ extern int __init pcpu_page_first_chunk(size_t reserved_size,
-				pcpu_fc_populate_pte_fn_t populate_pte_fn);
- #endif
-
--extern void __percpu *__alloc_reserved_percpu(size_t size, size_t align);
-+extern void __percpu *__alloc_reserved_percpu(size_t size, size_t align) __attribute__((alloc_size(1)));
- extern bool __is_kernel_percpu_address(unsigned long addr, unsigned long *can_addr);
- extern bool is_kernel_percpu_address(unsigned long addr);
-
-@@ -137,8 +137,8 @@ extern bool is_kernel_percpu_address(unsigned long addr);
- extern void __init setup_per_cpu_areas(void);
- #endif
-
--extern void __percpu *__alloc_percpu_gfp(size_t size, size_t align, gfp_t gfp);
--extern void __percpu *__alloc_percpu(size_t size, size_t align);
-+extern void __percpu *__alloc_percpu_gfp(size_t size, size_t align, gfp_t gfp) __attribute__((alloc_size(1)));
-+extern void __percpu *__alloc_percpu(size_t size, size_t align) __attribute__((alloc_size(1)));
- extern void free_percpu(void __percpu *__pdata);
- extern phys_addr_t per_cpu_ptr_to_phys(void *addr);
-
-diff --git a/include/linux/perf_event.h b/include/linux/perf_event.h
-index 8e22f24ded6a..b7fecdfa6de5 100644
---- a/include/linux/perf_event.h
-+++ b/include/linux/perf_event.h
-@@ -1165,6 +1165,11 @@ extern int perf_cpu_time_max_percent_handler(struct ctl_table *table, int write,
- int perf_event_max_stack_handler(struct ctl_table *table, int write,
-				 void __user *buffer, size_t *lenp, loff_t *ppos);
-
-+static inline bool perf_paranoid_any(void)
-+{
-+	return sysctl_perf_event_paranoid > 2;
-+}
-+
- static inline bool perf_paranoid_tracepoint_raw(void)
- {
-	return sysctl_perf_event_paranoid > -1;
-diff --git a/include/linux/slab.h b/include/linux/slab.h
-index ae5ed6492d54..fd0786124504 100644
---- a/include/linux/slab.h
-+++ b/include/linux/slab.h
-@@ -146,8 +146,8 @@ void memcg_destroy_kmem_caches(struct mem_cgroup *);
- /*
-  * Common kmalloc functions provided by all allocators
-  */
--void * __must_check __krealloc(const void *, size_t, gfp_t);
--void * __must_check krealloc(const void *, size_t, gfp_t);
-+void * __must_check __krealloc(const void *, size_t, gfp_t) __attribute__((alloc_size(2)));
-+void * __must_check krealloc(const void *, size_t, gfp_t) __attribute((alloc_size(2)));
- void kfree(const void *);
- void kzfree(const void *);
- size_t ksize(const void *);
-@@ -324,7 +324,7 @@ static __always_inline int kmalloc_index(size_t size)
- }
- #endif /* !CONFIG_SLOB */
-
--void *__kmalloc(size_t size, gfp_t flags) __assume_kmalloc_alignment __malloc;
-+void *__kmalloc(size_t size, gfp_t flags) __assume_kmalloc_alignment __malloc __attribute__((alloc_size(1)));
- void *kmem_cache_alloc(struct kmem_cache *, gfp_t flags) __assume_slab_alignment __malloc;
- void kmem_cache_free(struct kmem_cache *, void *);
-
-@@ -348,7 +348,7 @@ static __always_inline void kfree_bulk(size_t size, void **p)
- }
-
- #ifdef CONFIG_NUMA
--void *__kmalloc_node(size_t size, gfp_t flags, int node) __assume_kmalloc_alignment __malloc;
-+void *__kmalloc_node(size_t size, gfp_t flags, int node) __assume_kmalloc_alignment __malloc __attribute__((alloc_size(1)));
- void *kmem_cache_alloc_node(struct kmem_cache *, gfp_t flags, int node) __assume_slab_alignment __malloc;
- #else
- static __always_inline void *__kmalloc_node(size_t size, gfp_t flags, int node)
-@@ -473,7 +473,7 @@ static __always_inline void *kmalloc_large(size_t size, gfp_t flags)
-  * for general use, and so are not documented here. For a full list of
-  * potential flags, always refer to linux/gfp.h.
-  */
--static __always_inline void *kmalloc(size_t size, gfp_t flags)
-+static __always_inline __attribute__((alloc_size(1))) void *kmalloc(size_t size, gfp_t flags)
- {
-	if (__builtin_constant_p(size)) {
-		if (size > KMALLOC_MAX_CACHE_SIZE)
-@@ -513,7 +513,7 @@ static __always_inline int kmalloc_size(int n)
-	return 0;
- }
-
--static __always_inline void *kmalloc_node(size_t size, gfp_t flags, int node)
-+static __always_inline __attribute__((alloc_size(1))) void *kmalloc_node(size_t size, gfp_t flags, int node)
- {
- #ifndef CONFIG_SLOB
-	if (__builtin_constant_p(size) &&
-diff --git a/include/linux/slub_def.h b/include/linux/slub_def.h
-index 39fa09bcde23..0b7a48cd883b 100644
---- a/include/linux/slub_def.h
-+++ b/include/linux/slub_def.h
-@@ -120,6 +120,11 @@ struct kmem_cache {
-	unsigned long random;
- #endif
-
-+#ifdef CONFIG_SLAB_CANARY
-+	unsigned long random_active;
-+	unsigned long random_inactive;
-+#endif
-+
- #ifdef CONFIG_NUMA
-	/*
-	 * Defragmentation by allocating from a remote node.
-diff --git a/include/linux/string.h b/include/linux/string.h
-index cfd83eb2f926..b9ecb42c762d 100644
---- a/include/linux/string.h
-+++ b/include/linux/string.h
-@@ -234,10 +234,16 @@ void __read_overflow2(void) __compiletime_error("detected read beyond size of ob
- void __read_overflow3(void) __compiletime_error("detected read beyond size of object passed as 3rd parameter");
- void __write_overflow(void) __compiletime_error("detected write beyond size of object passed as 1st parameter");
-
-+#ifdef CONFIG_FORTIFY_SOURCE_STRICT_STRING
-+#define __string_size(p) __builtin_object_size(p, 1)
-+#else
-+#define __string_size(p) __builtin_object_size(p, 0)
-+#endif
-+
- #if !defined(__NO_FORTIFY) && defined(__OPTIMIZE__) && defined(CONFIG_FORTIFY_SOURCE)
- __FORTIFY_INLINE char *strncpy(char *p, const char *q, __kernel_size_t size)
- {
--	size_t p_size = __builtin_object_size(p, 0);
-+	size_t p_size = __string_size(p);
-	if (__builtin_constant_p(size) && p_size < size)
-		__write_overflow();
-	if (p_size < size)
-@@ -247,7 +253,7 @@ __FORTIFY_INLINE char *strncpy(char *p, const char *q, __kernel_size_t size)
-
- __FORTIFY_INLINE char *strcat(char *p, const char *q)
- {
--	size_t p_size = __builtin_object_size(p, 0);
-+	size_t p_size = __string_size(p);
-	if (p_size == (size_t)-1)
-		return __builtin_strcat(p, q);
-	if (strlcat(p, q, p_size) >= p_size)
-@@ -258,7 +264,7 @@ __FORTIFY_INLINE char *strcat(char *p, const char *q)
- __FORTIFY_INLINE __kernel_size_t strlen(const char *p)
- {
-	__kernel_size_t ret;
--	size_t p_size = __builtin_object_size(p, 0);
-+	size_t p_size = __string_size(p);
-
-	/* Work around gcc excess stack consumption issue */
-	if (p_size == (size_t)-1 ||
-@@ -273,7 +279,7 @@ __FORTIFY_INLINE __kernel_size_t strlen(const char *p)
- extern __kernel_size_t __real_strnlen(const char *, __kernel_size_t) __RENAME(strnlen);
- __FORTIFY_INLINE __kernel_size_t strnlen(const char *p, __kernel_size_t maxlen)
- {
--	size_t p_size = __builtin_object_size(p, 0);
-+	size_t p_size = __string_size(p);
-	__kernel_size_t ret = __real_strnlen(p, maxlen < p_size ? maxlen : p_size);
-	if (p_size <= ret && maxlen != ret)
-		fortify_panic(__func__);
-@@ -285,8 +291,8 @@ extern size_t __real_strlcpy(char *, const char *, size_t) __RENAME(strlcpy);
- __FORTIFY_INLINE size_t strlcpy(char *p, const char *q, size_t size)
- {
-	size_t ret;
--	size_t p_size = __builtin_object_size(p, 0);
--	size_t q_size = __builtin_object_size(q, 0);
-+	size_t p_size = __string_size(p);
-+	size_t q_size = __string_size(q);
-	if (p_size == (size_t)-1 && q_size == (size_t)-1)
-		return __real_strlcpy(p, q, size);
-	ret = strlen(q);
-@@ -306,8 +312,8 @@ __FORTIFY_INLINE size_t strlcpy(char *p, const char *q, size_t size)
- __FORTIFY_INLINE char *strncat(char *p, const char *q, __kernel_size_t count)
- {
-	size_t p_len, copy_len;
--	size_t p_size = __builtin_object_size(p, 0);
--	size_t q_size = __builtin_object_size(q, 0);
-+	size_t p_size = __string_size(p);
-+	size_t q_size = __string_size(q);
-	if (p_size == (size_t)-1 && q_size == (size_t)-1)
-		return __builtin_strncat(p, q, count);
-	p_len = strlen(p);
-@@ -420,8 +426,8 @@ __FORTIFY_INLINE void *kmemdup(const void *p, size_t size, gfp_t gfp)
- /* defined after fortified strlen and memcpy to reuse them */
- __FORTIFY_INLINE char *strcpy(char *p, const char *q)
- {
--	size_t p_size = __builtin_object_size(p, 0);
--	size_t q_size = __builtin_object_size(q, 0);
-+	size_t p_size = __string_size(p);
-+	size_t q_size = __string_size(q);
-	if (p_size == (size_t)-1 && q_size == (size_t)-1)
-		return __builtin_strcpy(p, q);
-	memcpy(p, q, strlen(q) + 1);
-diff --git a/include/linux/tty.h b/include/linux/tty.h
-index 1dd587ba6d88..9a9a04fb641d 100644
---- a/include/linux/tty.h
-+++ b/include/linux/tty.h
-@@ -13,6 +13,7 @@
- #include <uapi/linux/tty.h>
- #include <linux/rwsem.h>
- #include <linux/llist.h>
-+#include <linux/user_namespace.h>
-
-
- /*
-@@ -335,6 +336,7 @@ struct tty_struct {
-	/* If the tty has a pending do_SAK, queue it here - akpm */
-	struct work_struct SAK_work;
-	struct tty_port *port;
-+	struct user_namespace *owner_user_ns;
- } __randomize_layout;
-
- /* Each of a tty's open files has private_data pointing to tty_file_private */
-@@ -344,6 +346,8 @@ struct tty_file_private {
-	struct list_head list;
- };
-
-+extern int tiocsti_restrict;
-+
- /* tty magic number */
- #define TTY_MAGIC		0x5401
-
-diff --git a/include/linux/vmalloc.h b/include/linux/vmalloc.h
-index 1e5d8c392f15..66d0e49c9987 100644
---- a/include/linux/vmalloc.h
-+++ b/include/linux/vmalloc.h
-@@ -68,19 +68,19 @@ static inline void vmalloc_init(void)
- }
- #endif
-
--extern void *vmalloc(unsigned long size);
--extern void *vzalloc(unsigned long size);
--extern void *vmalloc_user(unsigned long size);
--extern void *vmalloc_node(unsigned long size, int node);
--extern void *vzalloc_node(unsigned long size, int node);
--extern void *vmalloc_exec(unsigned long size);
--extern void *vmalloc_32(unsigned long size);
--extern void *vmalloc_32_user(unsigned long size);
--extern void *__vmalloc(unsigned long size, gfp_t gfp_mask, pgprot_t prot);
-+extern void *vmalloc(unsigned long size) __attribute__((alloc_size(1)));
-+extern void *vzalloc(unsigned long size) __attribute__((alloc_size(1)));
-+extern void *vmalloc_user(unsigned long size) __attribute__((alloc_size(1)));
-+extern void *vmalloc_node(unsigned long size, int node) __attribute__((alloc_size(1)));
-+extern void *vzalloc_node(unsigned long size, int node) __attribute__((alloc_size(1)));
-+extern void *vmalloc_exec(unsigned long size) __attribute__((alloc_size(1)));
-+extern void *vmalloc_32(unsigned long size) __attribute__((alloc_size(1)));
-+extern void *vmalloc_32_user(unsigned long size) __attribute__((alloc_size(1)));
-+extern void *__vmalloc(unsigned long size, gfp_t gfp_mask, pgprot_t prot) __attribute__((alloc_size(1)));
- extern void *__vmalloc_node_range(unsigned long size, unsigned long align,
-			unsigned long start, unsigned long end, gfp_t gfp_mask,
-			pgprot_t prot, unsigned long vm_flags, int node,
--			const void *caller);
-+			const void *caller) __attribute__((alloc_size(1)));
- #ifndef CONFIG_MMU
- extern void *__vmalloc_node_flags(unsigned long size, int node, gfp_t flags);
- static inline void *__vmalloc_node_flags_caller(unsigned long size, int node,
-diff --git a/init/Kconfig b/init/Kconfig
-index 46075327c165..0c78750bc76d 100644
---- a/init/Kconfig
-+++ b/init/Kconfig
-@@ -309,6 +309,7 @@ config USELIB
- config AUDIT
-	bool "Auditing support"
-	depends on NET
-+	default y
-	help
-	  Enable auditing infrastructure that can be used with another
-	  kernel subsystem, such as SELinux (which requires this for
-@@ -1052,6 +1053,12 @@ config CC_OPTIMIZE_FOR_SIZE
-
- endchoice
-
-+config LOCAL_INIT
-+	bool "Zero uninitialized locals"
-+	help
-+	  Zero-fill uninitialized local variables, other than variable-length
-+	  arrays. Requires compiler support.
-+
- config SYSCTL
-	bool
-
-@@ -1361,8 +1368,7 @@ config SHMEM
-	  which may be appropriate on small systems without swap.
-
- config AIO
--	bool "Enable AIO support" if EXPERT
--	default y
-+	bool "Enable AIO support"
-	help
-	  This option enables POSIX asynchronous I/O which may by used
-	  by some high performance threaded applications. Disabling
-@@ -1491,7 +1497,7 @@ config VM_EVENT_COUNTERS
-
- config SLUB_DEBUG
-	default y
--	bool "Enable SLUB debugging support" if EXPERT
-+	bool "Enable SLUB debugging support"
-	depends on SLUB && SYSFS
-	help
-	  SLUB has extensive debug support features. Disabling these can
-@@ -1515,7 +1521,6 @@ config SLUB_MEMCG_SYSFS_ON
-
- config COMPAT_BRK
-	bool "Disable heap randomization"
--	default y
-	help
-	  Randomizing heap placement makes heap exploits harder, but it
-	  also breaks ancient binaries (including anything libc5 based).
-@@ -1562,7 +1567,6 @@ endchoice
-
- config SLAB_MERGE_DEFAULT
-	bool "Allow slab caches to be merged"
--	default y
-	help
-	  For reduced kernel memory fragmentation, slab caches can be
-	  merged when they share the same size and other characteristics.
-@@ -1575,9 +1579,9 @@ config SLAB_MERGE_DEFAULT
-	  command line.
-
- config SLAB_FREELIST_RANDOM
--	default n
-	depends on SLAB || SLUB
-	bool "SLAB freelist randomization"
-+	default y
-	help
-	  Randomizes the freelist order used on creating new pages. This
-	  security feature reduces the predictability of the kernel slab
-@@ -1586,12 +1590,56 @@ config SLAB_FREELIST_RANDOM
- config SLAB_FREELIST_HARDENED
-	bool "Harden slab freelist metadata"
-	depends on SLUB
-+	default y
-	help
-	  Many kernel heap attacks try to target slab cache metadata and
-	  other infrastructure. This options makes minor performance
-	  sacrifies to harden the kernel slab allocator against common
-	  freelist exploit methods.
-
-+config SLAB_HARDENED
-+	default y
-+	depends on SLUB
-+	bool "Hardened SLAB infrastructure"
-+	help
-+          Make minor performance sacrifices to harden the kernel slab
-+          allocator.
-+
-+config SLAB_CANARY
-+	depends on SLUB
-+	depends on !SLAB_MERGE_DEFAULT
-+	bool "SLAB canaries"
-+	default y
-+	help
-+	  Place canaries at the end of kernel slab allocations, sacrificing
-+	  some performance and memory usage for security.
-+
-+	  Canaries can detect some forms of heap corruption when allocations
-+	  are freed and as part of the HARDENED_USERCOPY feature. It provides
-+	  basic use-after-free detection for HARDENED_USERCOPY.
-+
-+	  Canaries absorb small overflows (rendering them harmless), mitigate
-+	  non-NUL terminated C string overflows on 64-bit via a guaranteed zero
-+	  byte and provide basic double-free detection.
-+
-+config SLAB_SANITIZE
-+	bool "Sanitize SLAB allocations"
-+	depends on SLUB
-+	default y
-+	help
-+	  Zero fill slab allocations on free, reducing the lifetime of
-+	  sensitive data and helping to mitigate use-after-free bugs.
-+
-+	  For slabs with debug poisoning enabling, this has no impact.
-+
-+config SLAB_SANITIZE_VERIFY
-+	depends on SLAB_SANITIZE && PAGE_SANITIZE
-+	default y
-+	bool "Verify sanitized SLAB allocations"
-+	help
-+	  Verify that newly allocated slab allocations are zeroed to detect
-+	  write-after-free bugs.
-+
- config SLUB_CPU_PARTIAL
-	default y
-	depends on SLUB && SMP
-diff --git a/kernel/audit.c b/kernel/audit.c
-index 5b34d3114af4..e57930192ce1 100644
---- a/kernel/audit.c
-+++ b/kernel/audit.c
-@@ -1573,6 +1573,9 @@ static int __init audit_enable(char *str)
-	audit_default = !!simple_strtol(str, NULL, 0);
-	if (!audit_default)
-		audit_initialized = AUDIT_DISABLED;
-+        else
-+		audit_initialized = AUDIT_UNINITIALIZED;
-+
-	audit_enabled = audit_default;
-	audit_ever_enabled = !!audit_enabled;
-
-diff --git a/kernel/bpf/core.c b/kernel/bpf/core.c
-index d203a5d6b726..2a6c3e2c57a6 100644
---- a/kernel/bpf/core.c
-+++ b/kernel/bpf/core.c
-@@ -539,7 +539,7 @@ void __weak bpf_jit_free(struct bpf_prog *fp)
-	bpf_prog_unlock_free(fp);
- }
-
--int bpf_jit_harden __read_mostly;
-+int bpf_jit_harden __read_mostly = 2;
-
- static int bpf_jit_blind_insn(const struct bpf_insn *from,
-			      const struct bpf_insn *aux,
-diff --git a/kernel/bpf/syscall.c b/kernel/bpf/syscall.c
-index 4e933219fec6..0f37db32a2b1 100644
---- a/kernel/bpf/syscall.c
-+++ b/kernel/bpf/syscall.c
-@@ -37,7 +37,7 @@ static DEFINE_SPINLOCK(prog_idr_lock);
- static DEFINE_IDR(map_idr);
- static DEFINE_SPINLOCK(map_idr_lock);
-
--int sysctl_unprivileged_bpf_disabled __read_mostly;
-+int sysctl_unprivileged_bpf_disabled __read_mostly = 1;
-
- static const struct bpf_map_ops * const bpf_map_types[] = {
- #define BPF_PROG_TYPE(_id, _ops)
-diff --git a/kernel/capability.c b/kernel/capability.c
-index 1e1c0236f55b..452062fe45ce 100644
---- a/kernel/capability.c
-+++ b/kernel/capability.c
-@@ -431,6 +431,12 @@ bool capable(int cap)
-	return ns_capable(&init_user_ns, cap);
- }
- EXPORT_SYMBOL(capable);
-+
-+bool capable_noaudit(int cap)
-+{
-+	return ns_capable_noaudit(&init_user_ns, cap);
-+}
-+EXPORT_SYMBOL(capable_noaudit);
- #endif /* CONFIG_MULTIUSER */
-
- /**
-diff --git a/kernel/events/core.c b/kernel/events/core.c
-index cb8274d7824f..c1b3d232b0a4 100644
---- a/kernel/events/core.c
-+++ b/kernel/events/core.c
-@@ -397,8 +397,13 @@ static cpumask_var_t perf_online_mask;
-  *   0 - disallow raw tracepoint access for unpriv
-  *   1 - disallow cpu events for unpriv
-  *   2 - disallow kernel profiling for unpriv
-+ *   3 - disallow all unpriv perf event use
-  */
-+#ifdef CONFIG_SECURITY_PERF_EVENTS_RESTRICT
-+int sysctl_perf_event_paranoid __read_mostly = 3;
-+#else
- int sysctl_perf_event_paranoid __read_mostly = 2;
-+#endif
-
- /* Minimum for 512 kiB + 1 user control page */
- int sysctl_perf_event_mlock __read_mostly = 512 + (PAGE_SIZE / 1024); /* 'free' kiB per user */
-@@ -9941,6 +9946,9 @@ SYSCALL_DEFINE5(perf_event_open,
-	if (flags & ~PERF_FLAG_ALL)
-		return -EINVAL;
-
-+	if (perf_paranoid_any() && !capable(CAP_SYS_ADMIN))
-+		return -EACCES;
-+
-	err = perf_copy_attr(attr_uptr, &attr);
-	if (err)
-		return err;
-diff --git a/kernel/fork.c b/kernel/fork.c
-index 98c91bd341b4..dbb9540ee61c 100644
---- a/kernel/fork.c
-+++ b/kernel/fork.c
-@@ -102,6 +102,11 @@
-
- #define CREATE_TRACE_POINTS
- #include <trace/events/task.h>
-+#ifdef CONFIG_USER_NS
-+extern int unprivileged_userns_clone;
-+#else
-+#define unprivileged_userns_clone 0
-+#endif
-
- /*
-  * Minimum number of threads to boot the kernel
-@@ -1554,6 +1559,10 @@ static __latent_entropy struct task_struct *copy_process(
-	if ((clone_flags & (CLONE_NEWUSER|CLONE_FS)) == (CLONE_NEWUSER|CLONE_FS))
-		return ERR_PTR(-EINVAL);
-
-+	if ((clone_flags & CLONE_NEWUSER) && !unprivileged_userns_clone)
-+		if (!capable(CAP_SYS_ADMIN))
-+			return ERR_PTR(-EPERM);
-+
-	/*
-	 * Thread groups must share signals as well, and detached threads
-	 * can only be started up within the thread group.
-@@ -2347,6 +2356,12 @@ SYSCALL_DEFINE1(unshare, unsigned long, unshare_flags)
-	if (unshare_flags & CLONE_NEWNS)
-		unshare_flags |= CLONE_FS;
-
-+	if ((unshare_flags & CLONE_NEWUSER) && !unprivileged_userns_clone) {
-+		err = -EPERM;
-+		if (!capable(CAP_SYS_ADMIN))
-+			goto bad_unshare_out;
-+	}
-+
-	err = check_unshare_flags(unshare_flags);
-	if (err)
-		goto bad_unshare_out;
-diff --git a/kernel/power/snapshot.c b/kernel/power/snapshot.c
-index 0972a8e09d08..00dde7aad47a 100644
---- a/kernel/power/snapshot.c
-+++ b/kernel/power/snapshot.c
-@@ -1136,7 +1136,7 @@ void free_basic_memory_bitmaps(void)
-
- void clear_free_pages(void)
- {
--#ifdef CONFIG_PAGE_POISONING_ZERO
-+#if defined(CONFIG_PAGE_POISONING_ZERO) || defined(CONFIG_PAGE_SANITIZE)
-	struct memory_bitmap *bm = free_pages_map;
-	unsigned long pfn;
-
-@@ -1153,7 +1153,7 @@ void clear_free_pages(void)
-	}
-	memory_bm_position_reset(bm);
-	pr_info("PM: free pages cleared after restore\n");
--#endif /* PAGE_POISONING_ZERO */
-+#endif /* PAGE_POISONING_ZERO || PAGE_SANITIZE */
- }
-
- /**
-diff --git a/kernel/rcu/tiny.c b/kernel/rcu/tiny.c
-index a64eee0db39e..4d7de378fe4c 100644
---- a/kernel/rcu/tiny.c
-+++ b/kernel/rcu/tiny.c
-@@ -164,7 +164,7 @@ static void __rcu_process_callbacks(struct rcu_ctrlblk *rcp)
-	}
- }
-
--static __latent_entropy void rcu_process_callbacks(struct softirq_action *unused)
-+static __latent_entropy void rcu_process_callbacks(void)
- {
-	__rcu_process_callbacks(&rcu_sched_ctrlblk);
-	__rcu_process_callbacks(&rcu_bh_ctrlblk);
-diff --git a/kernel/rcu/tree.c b/kernel/rcu/tree.c
-index 3e3650e94ae6..7ecd7a5d04b3 100644
---- a/kernel/rcu/tree.c
-+++ b/kernel/rcu/tree.c
-@@ -2918,7 +2918,7 @@ __rcu_process_callbacks(struct rcu_state *rsp)
- /*
-  * Do RCU core processing for the current CPU.
-  */
--static __latent_entropy void rcu_process_callbacks(struct softirq_action *unused)
-+static __latent_entropy void rcu_process_callbacks(void)
- {
-	struct rcu_state *rsp;
-
-diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
-index 5c09ddf8c832..f5db6ece105a 100644
---- a/kernel/sched/fair.c
-+++ b/kernel/sched/fair.c
-@@ -8986,7 +8986,7 @@ static void nohz_idle_balance(struct rq *this_rq, enum cpu_idle_type idle) { }
-  * run_rebalance_domains is triggered when needed from the scheduler tick.
-  * Also triggered for nohz idle balancing (with nohz_balancing_kick set).
-  */
--static __latent_entropy void run_rebalance_domains(struct softirq_action *h)
-+static __latent_entropy void run_rebalance_domains(void)
- {
-	struct rq *this_rq = this_rq();
-	enum cpu_idle_type idle = this_rq->idle_balance ?
-diff --git a/kernel/softirq.c b/kernel/softirq.c
-index e89c3b0cff6d..0d3ebd520931 100644
---- a/kernel/softirq.c
-+++ b/kernel/softirq.c
-@@ -53,7 +53,7 @@ irq_cpustat_t irq_stat[NR_CPUS] ____cacheline_aligned;
- EXPORT_SYMBOL(irq_stat);
- #endif
-
--static struct softirq_action softirq_vec[NR_SOFTIRQS] __cacheline_aligned_in_smp;
-+static struct softirq_action softirq_vec[NR_SOFTIRQS] __ro_after_init __aligned(PAGE_SIZE);
-
- DEFINE_PER_CPU(struct task_struct *, ksoftirqd);
-
-@@ -281,7 +281,7 @@ asmlinkage __visible void __softirq_entry __do_softirq(void)
-		kstat_incr_softirqs_this_cpu(vec_nr);
-
-		trace_softirq_entry(vec_nr);
--		h->action(h);
-+		h->action();
-		trace_softirq_exit(vec_nr);
-		if (unlikely(prev_count != preempt_count())) {
-			pr_err("huh, entered softirq %u %s %p with preempt_count %08x, exited with %08x?\n",
-@@ -444,7 +444,7 @@ void __raise_softirq_irqoff(unsigned int nr)
-	or_softirq_pending(1UL << nr);
- }
-
--void open_softirq(int nr, void (*action)(struct softirq_action *))
-+void __init open_softirq(int nr, void (*action)(void))
- {
-	softirq_vec[nr].action = action;
- }
-@@ -486,7 +486,7 @@ void __tasklet_hi_schedule(struct tasklet_struct *t)
- }
- EXPORT_SYMBOL(__tasklet_hi_schedule);
-
--static __latent_entropy void tasklet_action(struct softirq_action *a)
-+static __latent_entropy void tasklet_action(void)
- {
-	struct tasklet_struct *list;
-
-@@ -522,7 +522,7 @@ static __latent_entropy void tasklet_action(struct softirq_action *a)
-	}
- }
-
--static __latent_entropy void tasklet_hi_action(struct softirq_action *a)
-+static __latent_entropy void tasklet_hi_action(void)
- {
-	struct tasklet_struct *list;
-
-diff --git a/kernel/sysctl.c b/kernel/sysctl.c
-index 069550540a39..822783a174aa 100644
---- a/kernel/sysctl.c
-+++ b/kernel/sysctl.c
-@@ -66,6 +66,7 @@
- #include <linux/kexec.h>
- #include <linux/bpf.h>
- #include <linux/mount.h>
-+#include <linux/tty.h>
-
- #include <linux/uaccess.h>
- #include <asm/processor.h>
-@@ -98,12 +99,19 @@
- #if defined(CONFIG_SYSCTL)
-
- /* External variables not in a header file. */
-+#if IS_ENABLED(CONFIG_USB)
-+int deny_new_usb __read_mostly = 0;
-+EXPORT_SYMBOL(deny_new_usb);
-+#endif
- extern int suid_dumpable;
- #ifdef CONFIG_COREDUMP
- extern int core_uses_pid;
- extern char core_pattern[];
- extern unsigned int core_pipe_limit;
- #endif
-+#ifdef CONFIG_USER_NS
-+extern int unprivileged_userns_clone;
-+#endif
- extern int pid_max;
- extern int pid_max_min, pid_max_max;
- extern int percpu_pagelist_fraction;
-@@ -115,40 +123,43 @@ extern int sysctl_nr_trim_pages;
-
- /* Constants used for minimum and  maximum */
- #ifdef CONFIG_LOCKUP_DETECTOR
--static int sixty = 60;
-+static int sixty __read_only = 60;
- #endif
-
--static int __maybe_unused neg_one = -1;
-+static int __maybe_unused neg_one __read_only = -1;
-
- static int zero;
--static int __maybe_unused one = 1;
--static int __maybe_unused two = 2;
--static int __maybe_unused four = 4;
--static unsigned long one_ul = 1;
--static int one_hundred = 100;
--static int one_thousand = 1000;
-+static int __maybe_unused one __read_only = 1;
-+static int __maybe_unused two __read_only = 2;
-+static int __maybe_unused four __read_only = 4;
-+static unsigned long one_ul __read_only = 1;
-+static int one_hundred __read_only = 100;
-+static int one_thousand __read_only = 1000;
- #ifdef CONFIG_PRINTK
--static int ten_thousand = 10000;
-+static int ten_thousand __read_only = 10000;
- #endif
- #ifdef CONFIG_PERF_EVENTS
--static int six_hundred_forty_kb = 640 * 1024;
-+static int six_hundred_forty_kb __read_only = 640 * 1024;
- #endif
-
- /* this is needed for the proc_doulongvec_minmax of vm_dirty_bytes */
--static unsigned long dirty_bytes_min = 2 * PAGE_SIZE;
-+static unsigned long dirty_bytes_min __read_only = 2 * PAGE_SIZE;
-
- /* this is needed for the proc_dointvec_minmax for [fs_]overflow UID and GID */
--static int maxolduid = 65535;
--static int minolduid;
-+static int maxolduid __read_only = 65535;
-+static int minolduid __read_only;
-
--static int ngroups_max = NGROUPS_MAX;
-+static int ngroups_max __read_only = NGROUPS_MAX;
- static const int cap_last_cap = CAP_LAST_CAP;
-
- /*this is needed for proc_doulongvec_minmax of sysctl_hung_task_timeout_secs */
- #ifdef CONFIG_DETECT_HUNG_TASK
--static unsigned long hung_task_timeout_max = (LONG_MAX/HZ);
-+static unsigned long hung_task_timeout_max __read_only = (LONG_MAX/HZ);
- #endif
-
-+int device_sidechannel_restrict __read_mostly = 1;
-+EXPORT_SYMBOL(device_sidechannel_restrict);
-+
- #ifdef CONFIG_INOTIFY_USER
- #include <linux/inotify.h>
- #endif
-@@ -286,19 +297,19 @@ static struct ctl_table sysctl_base_table[] = {
- };
-
- #ifdef CONFIG_SCHED_DEBUG
--static int min_sched_granularity_ns = 100000;		/* 100 usecs */
--static int max_sched_granularity_ns = NSEC_PER_SEC;	/* 1 second */
--static int min_wakeup_granularity_ns;			/* 0 usecs */
--static int max_wakeup_granularity_ns = NSEC_PER_SEC;	/* 1 second */
-+static int min_sched_granularity_ns __read_only = 100000;		/* 100 usecs */
-+static int max_sched_granularity_ns __read_only = NSEC_PER_SEC;	/* 1 second */
-+static int min_wakeup_granularity_ns __read_only;			/* 0 usecs */
-+static int max_wakeup_granularity_ns __read_only = NSEC_PER_SEC;	/* 1 second */
- #ifdef CONFIG_SMP
--static int min_sched_tunable_scaling = SCHED_TUNABLESCALING_NONE;
--static int max_sched_tunable_scaling = SCHED_TUNABLESCALING_END-1;
-+static int min_sched_tunable_scaling __read_only = SCHED_TUNABLESCALING_NONE;
-+static int max_sched_tunable_scaling __read_only = SCHED_TUNABLESCALING_END-1;
- #endif /* CONFIG_SMP */
- #endif /* CONFIG_SCHED_DEBUG */
-
- #ifdef CONFIG_COMPACTION
--static int min_extfrag_threshold;
--static int max_extfrag_threshold = 1000;
-+static int min_extfrag_threshold __read_only;
-+static int max_extfrag_threshold __read_only = 1000;
- #endif
-
- static struct ctl_table kern_table[] = {
-@@ -512,6 +523,15 @@ static struct ctl_table kern_table[] = {
-		.proc_handler	= proc_dointvec,
-	},
- #endif
-+#ifdef CONFIG_USER_NS
-+	{
-+		.procname	= "unprivileged_userns_clone",
-+		.data		= &unprivileged_userns_clone,
-+		.maxlen		= sizeof(int),
-+		.mode		= 0644,
-+		.proc_handler	= proc_dointvec,
-+	},
-+#endif
- #ifdef CONFIG_PROC_SYSCTL
-	{
-		.procname	= "tainted",
-@@ -853,6 +873,37 @@ static struct ctl_table kern_table[] = {
-		.extra1		= &zero,
-		.extra2		= &two,
-	},
-+#endif
-+#if defined CONFIG_TTY
-+	{
-+		.procname	= "tiocsti_restrict",
-+		.data		= &tiocsti_restrict,
-+		.maxlen		= sizeof(int),
-+		.mode		= 0644,
-+		.proc_handler	= proc_dointvec_minmax_sysadmin,
-+		.extra1		= &zero,
-+		.extra2		= &one,
-+	},
-+#endif
-+	{
-+		.procname	= "device_sidechannel_restrict",
-+		.data		= &device_sidechannel_restrict,
-+		.maxlen		= sizeof(int),
-+		.mode		= 0644,
-+		.proc_handler	= proc_dointvec_minmax_sysadmin,
-+		.extra1		= &zero,
-+		.extra2		= &one,
-+	},
-+#if IS_ENABLED(CONFIG_USB)
-+	{
-+		.procname	= "deny_new_usb",
-+		.data		= &deny_new_usb,
-+		.maxlen		= sizeof(int),
-+		.mode		= 0644,
-+		.proc_handler	= proc_dointvec_minmax_sysadmin,
-+		.extra1		= &zero,
-+		.extra2		= &one,
-+	},
- #endif
-	{
-		.procname	= "ngroups_max",
-diff --git a/kernel/time/timer.c b/kernel/time/timer.c
-index 9fe525f410bf..6a85b0e1292e 100644
---- a/kernel/time/timer.c
-+++ b/kernel/time/timer.c
-@@ -1624,7 +1624,7 @@ static inline void __run_timers(struct timer_base *base)
- /*
-  * This function runs timers and the timer-tq in bottom half context.
-  */
--static __latent_entropy void run_timer_softirq(struct softirq_action *h)
-+static __latent_entropy void run_timer_softirq(void)
- {
-	struct timer_base *base = this_cpu_ptr(&timer_bases[BASE_STD]);
-
-diff --git a/kernel/user_namespace.c b/kernel/user_namespace.c
-index c490f1e4313b..dd03bd39d7bf 100644
---- a/kernel/user_namespace.c
-+++ b/kernel/user_namespace.c
-@@ -24,6 +24,9 @@
- #include <linux/projid.h>
- #include <linux/fs_struct.h>
-
-+/* sysctl */
-+int unprivileged_userns_clone;
-+
- static struct kmem_cache *user_ns_cachep __read_mostly;
- static DEFINE_MUTEX(userns_state_mutex);
-
-diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
-index 62d0e25c054c..3953072277eb 100644
---- a/lib/Kconfig.debug
-+++ b/lib/Kconfig.debug
-@@ -937,6 +937,7 @@ endmenu # "Debug lockups and hangs"
-
- config PANIC_ON_OOPS
-	bool "Panic on Oops"
-+	default y
-	help
-	  Say Y here to enable the kernel to panic when it oopses. This
-	  has the same effect as setting oops=panic on the kernel command
-@@ -946,7 +947,7 @@ config PANIC_ON_OOPS
-	  anything erroneous after an oops which could result in data
-	  corruption or other issues.
-
--	  Say N if unsure.
-+	  Say Y if unsure.
-
- config PANIC_ON_OOPS_VALUE
-	int
-@@ -1319,6 +1320,7 @@ config DEBUG_BUGVERBOSE
- config DEBUG_LIST
-	bool "Debug linked list manipulation"
-	depends on DEBUG_KERNEL || BUG_ON_DATA_CORRUPTION
-+	default y
-	help
-	  Enable this to turn on extended checks in the linked-list
-	  walking routines.
-@@ -1932,6 +1934,7 @@ config MEMTEST
- config BUG_ON_DATA_CORRUPTION
-	bool "Trigger a BUG when data corruption is detected"
-	select DEBUG_LIST
-+	default y
-	help
-	  Select this option if the kernel should BUG when it encounters
-	  data corruption in kernel memory structures when they get checked
-@@ -1952,7 +1955,7 @@ config STRICT_DEVMEM
-	bool "Filter access to /dev/mem"
-	depends on MMU && DEVMEM
-	depends on ARCH_HAS_DEVMEM_IS_ALLOWED
--	default y if TILE || PPC
-+	default y
-	---help---
-	  If this option is disabled, you allow userspace (root) access to all
-	  of memory, including kernel and userspace memory. Accidental
-@@ -1971,6 +1974,7 @@ config STRICT_DEVMEM
- config IO_STRICT_DEVMEM
-	bool "Filter I/O access to /dev/mem"
-	depends on STRICT_DEVMEM
-+	default y
-	---help---
-	  If this option is disabled, you allow userspace (root) access to all
-	  io-memory regardless of whether a driver is actively using that
-diff --git a/lib/irq_poll.c b/lib/irq_poll.c
-index 86a709954f5a..6f15787fcb1b 100644
---- a/lib/irq_poll.c
-+++ b/lib/irq_poll.c
-@@ -75,7 +75,7 @@ void irq_poll_complete(struct irq_poll *iop)
- }
- EXPORT_SYMBOL(irq_poll_complete);
-
--static void __latent_entropy irq_poll_softirq(struct softirq_action *h)
-+static void __latent_entropy irq_poll_softirq(void)
- {
-	struct list_head *list = this_cpu_ptr(&blk_cpu_iopoll);
-	int rearm = 0, budget = irq_poll_budget;
-diff --git a/lib/kobject.c b/lib/kobject.c
-index 34f847252c02..4fda329de614 100644
---- a/lib/kobject.c
-+++ b/lib/kobject.c
-@@ -956,9 +956,9 @@ EXPORT_SYMBOL_GPL(kset_create_and_add);
-
-
- static DEFINE_SPINLOCK(kobj_ns_type_lock);
--static const struct kobj_ns_type_operations *kobj_ns_ops_tbl[KOBJ_NS_TYPES];
-+static const struct kobj_ns_type_operations *kobj_ns_ops_tbl[KOBJ_NS_TYPES] __ro_after_init;
-
--int kobj_ns_type_register(const struct kobj_ns_type_operations *ops)
-+int __init kobj_ns_type_register(const struct kobj_ns_type_operations *ops)
- {
-	enum kobj_ns_type type = ops->type;
-	int error;
-diff --git a/lib/nlattr.c b/lib/nlattr.c
-index 3d8295c85505..3fa3b3409d69 100644
---- a/lib/nlattr.c
-+++ b/lib/nlattr.c
-@@ -341,6 +341,8 @@ int nla_memcpy(void *dest, const struct nlattr *src, int count)
- {
-	int minlen = min_t(int, count, nla_len(src));
-
-+	BUG_ON(minlen < 0);
-+
-	memcpy(dest, nla_data(src), minlen);
-	if (count > minlen)
-		memset(dest + minlen, 0, count - minlen);
-diff --git a/lib/vsprintf.c b/lib/vsprintf.c
-index 86c3385b9eb3..c482070e379b 100644
---- a/lib/vsprintf.c
-+++ b/lib/vsprintf.c
-@@ -1591,7 +1591,7 @@ char *device_node_string(char *buf, char *end, struct device_node *dn,
-	return widen_string(buf, buf - buf_start, end, spec);
- }
-
--int kptr_restrict __read_mostly;
-+int kptr_restrict __read_mostly = 2;
-
- /*
-  * Show a '%p' thing.  A kernel extension is that the '%p' is followed
-diff --git a/mm/Kconfig b/mm/Kconfig
-index 59efbd3337e0..c070e14ec83d 100644
---- a/mm/Kconfig
-+++ b/mm/Kconfig
-@@ -319,7 +319,8 @@ config KSM
- config DEFAULT_MMAP_MIN_ADDR
-         int "Low address space to protect from user allocation"
-	depends on MMU
--        default 4096
-+	default 32768 if ARM || (ARM64 && COMPAT)
-+	default 65536
-         help
-	  This is the portion of low virtual memory which should be protected
-	  from userspace allocation.  Keeping a user from writing to low pages
-diff --git a/mm/mmap.c b/mm/mmap.c
-index 11f96fad5271..632e7f9a710e 100644
---- a/mm/mmap.c
-+++ b/mm/mmap.c
-@@ -220,6 +220,13 @@ SYSCALL_DEFINE1(brk, unsigned long, brk)
-
-	newbrk = PAGE_ALIGN(brk);
-	oldbrk = PAGE_ALIGN(mm->brk);
-+	/* properly handle unaligned min_brk as an empty heap */
-+	if (min_brk & ~PAGE_MASK) {
-+		if (brk == min_brk)
-+			newbrk -= PAGE_SIZE;
-+		if (mm->brk == min_brk)
-+			oldbrk -= PAGE_SIZE;
-+	}
-	if (oldbrk == newbrk)
-		goto set_brk;
-
-diff --git a/mm/page_alloc.c b/mm/page_alloc.c
-index 1d7693c35424..8963a3b4d37c 100644
---- a/mm/page_alloc.c
-+++ b/mm/page_alloc.c
-@@ -67,6 +67,7 @@
- #include <linux/ftrace.h>
- #include <linux/lockdep.h>
- #include <linux/nmi.h>
-+#include <linux/random.h>
-
- #include <asm/sections.h>
- #include <asm/tlbflush.h>
-@@ -98,6 +99,15 @@ int _node_numa_mem_[MAX_NUMNODES];
- DEFINE_MUTEX(pcpu_drain_mutex);
- DEFINE_PER_CPU(struct work_struct, pcpu_drain);
-
-+bool __meminitdata extra_latent_entropy;
-+
-+static int __init setup_extra_latent_entropy(char *str)
-+{
-+	extra_latent_entropy = true;
-+	return 0;
-+}
-+early_param("extra_latent_entropy", setup_extra_latent_entropy);
-+
- #ifdef CONFIG_GCC_PLUGIN_LATENT_ENTROPY
- volatile unsigned long latent_entropy __latent_entropy;
- EXPORT_SYMBOL(latent_entropy);
-@@ -1063,6 +1073,13 @@ static __always_inline bool free_pages_prepare(struct page *page,
-		debug_check_no_obj_freed(page_address(page),
-					   PAGE_SIZE << order);
-	}
-+
-+	if (IS_ENABLED(CONFIG_PAGE_SANITIZE)) {
-+		int i;
-+		for (i = 0; i < (1 << order); i++)
-+			clear_highpage(page + i);
-+	}
-+
-	arch_free_page(page, order);
-	kernel_poison_pages(page, 1 << order, 0);
-	kernel_map_pages(page, 1 << order, 0);
-@@ -1278,6 +1295,21 @@ static void __init __free_pages_boot_core(struct page *page, unsigned int order)
-	__ClearPageReserved(p);
-	set_page_count(p, 0);
-
-+	if (extra_latent_entropy && !PageHighMem(page) && page_to_pfn(page) < 0x100000) {
-+		unsigned long hash = 0;
-+		size_t index, end = PAGE_SIZE * nr_pages / sizeof hash;
-+		const unsigned long *data = lowmem_page_address(page);
-+
-+		for (index = 0; index < end; index++)
-+			hash ^= hash + data[index];
-+#ifdef CONFIG_GCC_PLUGIN_LATENT_ENTROPY
-+		latent_entropy ^= hash;
-+		add_device_randomness((const void *)&latent_entropy, sizeof(latent_entropy));
-+#else
-+		add_device_randomness((const void *)&hash, sizeof(hash));
-+#endif
-+	}
-+
-	page_zone(page)->managed_pages += nr_pages;
-	set_page_refcounted(page);
-	__free_pages(page, order);
-@@ -1718,8 +1750,8 @@ static inline int check_new_page(struct page *page)
-
- static inline bool free_pages_prezeroed(void)
- {
--	return IS_ENABLED(CONFIG_PAGE_POISONING_ZERO) &&
--		page_poisoning_enabled();
-+	return IS_ENABLED(CONFIG_PAGE_SANITIZE) ||
-+		(IS_ENABLED(CONFIG_PAGE_POISONING_ZERO) && page_poisoning_enabled());
- }
-
- #ifdef CONFIG_DEBUG_VM
-@@ -1776,6 +1808,11 @@ static void prep_new_page(struct page *page, unsigned int order, gfp_t gfp_flags
-
-	post_alloc_hook(page, order, gfp_flags);
-
-+	if (IS_ENABLED(CONFIG_PAGE_SANITIZE_VERIFY)) {
-+		for (i = 0; i < (1 << order); i++)
-+			verify_zero_highpage(page + i);
-+	}
-+
-	if (!free_pages_prezeroed() && (gfp_flags & __GFP_ZERO))
-		for (i = 0; i < (1 << order); i++)
-			clear_highpage(page + i);
-diff --git a/mm/slab.h b/mm/slab.h
-index 485d9fbb8802..436461588804 100644
---- a/mm/slab.h
-+++ b/mm/slab.h
-@@ -311,7 +311,11 @@ static inline bool is_root_cache(struct kmem_cache *s)
- static inline bool slab_equal_or_root(struct kmem_cache *s,
-				      struct kmem_cache *p)
- {
-+#ifdef CONFIG_SLAB_HARDENED
-+	return p == s;
-+#else
-	return true;
-+#endif
- }
-
- static inline const char *cache_name(struct kmem_cache *s)
-@@ -363,18 +367,26 @@ static inline struct kmem_cache *cache_from_obj(struct kmem_cache *s, void *x)
-	 * to not do even the assignment. In that case, slab_equal_or_root
-	 * will also be a constant.
-	 */
--	if (!memcg_kmem_enabled() &&
-+	if (!IS_ENABLED(CONFIG_SLAB_HARDENED) &&
-+	    !memcg_kmem_enabled() &&
-	    !unlikely(s->flags & SLAB_CONSISTENCY_CHECKS))
-		return s;
-
-	page = virt_to_head_page(x);
-+#ifdef CONFIG_SLAB_HARDENED
-+	BUG_ON(!PageSlab(page));
-+#endif
-	cachep = page->slab_cache;
-	if (slab_equal_or_root(cachep, s))
-		return cachep;
-
-	pr_err("%s: Wrong slab cache. %s but object is from %s\n",
-	       __func__, s->name, cachep->name);
-+#ifdef CONFIG_BUG_ON_DATA_CORRUPTION
-+	BUG_ON(1);
-+#else
-	WARN_ON_ONCE(1);
-+#endif
-	return s;
- }
-
-@@ -399,7 +411,7 @@ static inline size_t slab_ksize(const struct kmem_cache *s)
-	 * back there or track user information then we can
-	 * only use the space before that information.
-	 */
--	if (s->flags & (SLAB_TYPESAFE_BY_RCU | SLAB_STORE_USER))
-+	if ((s->flags & (SLAB_TYPESAFE_BY_RCU | SLAB_STORE_USER)) || IS_ENABLED(CONFIG_SLAB_CANARY))
-		return s->inuse;
-	/*
-	 * Else we can use all the padding etc for the allocation
-diff --git a/mm/slab_common.c b/mm/slab_common.c
-index 65212caa1f2a..d8bf8a75f445 100644
---- a/mm/slab_common.c
-+++ b/mm/slab_common.c
-@@ -26,10 +26,10 @@
-
- #include "slab.h"
-
--enum slab_state slab_state;
-+enum slab_state slab_state __ro_after_init;
- LIST_HEAD(slab_caches);
- DEFINE_MUTEX(slab_mutex);
--struct kmem_cache *kmem_cache;
-+struct kmem_cache *kmem_cache __ro_after_init;
-
- static LIST_HEAD(slab_caches_to_rcu_destroy);
- static void slab_caches_to_rcu_destroy_workfn(struct work_struct *work);
-@@ -49,7 +49,7 @@ static DECLARE_WORK(slab_caches_to_rcu_destroy_work,
- /*
-  * Merge control. If this is set then no merging of slab caches will occur.
-  */
--static bool slab_nomerge = !IS_ENABLED(CONFIG_SLAB_MERGE_DEFAULT);
-+static bool slab_nomerge __ro_after_init = !IS_ENABLED(CONFIG_SLAB_MERGE_DEFAULT);
-
- static int __init setup_slab_nomerge(char *str)
- {
-@@ -927,7 +927,7 @@ EXPORT_SYMBOL(kmalloc_dma_caches);
-  * of two cache sizes there. The size of larger slabs can be determined using
-  * fls.
-  */
--static s8 size_index[24] = {
-+static s8 size_index[24] __ro_after_init = {
-	3,	/* 8 */
-	4,	/* 16 */
-	5,	/* 24 */
-diff --git a/mm/slub.c b/mm/slub.c
-index 41c01690d116..591dd60d37f3 100644
---- a/mm/slub.c
-+++ b/mm/slub.c
-@@ -125,6 +125,16 @@ static inline int kmem_cache_debug(struct kmem_cache *s)
- #endif
- }
-
-+static inline bool has_sanitize(struct kmem_cache *s)
-+{
-+	return IS_ENABLED(CONFIG_SLAB_SANITIZE) && !(s->flags & (SLAB_TYPESAFE_BY_RCU | SLAB_POISON));
-+}
-+
-+static inline bool has_sanitize_verify(struct kmem_cache *s)
-+{
-+	return IS_ENABLED(CONFIG_SLAB_SANITIZE_VERIFY) && has_sanitize(s);
-+}
-+
- void *fixup_red_left(struct kmem_cache *s, void *p)
- {
-	if (kmem_cache_debug(s) && s->flags & SLAB_RED_ZONE)
-@@ -297,6 +307,35 @@ static inline void set_freepointer(struct kmem_cache *s, void *object, void *fp)
-	*(void **)freeptr_addr = freelist_ptr(s, fp, freeptr_addr);
- }
-
-+#ifdef CONFIG_SLAB_CANARY
-+static inline unsigned long *get_canary(struct kmem_cache *s, void *object)
-+{
-+	if (s->offset)
-+		return object + s->offset + sizeof(void *);
-+	return object + s->inuse;
-+}
-+
-+static inline unsigned long get_canary_value(const void *canary, unsigned long value)
-+{
-+	return (value ^ (unsigned long)canary) & CANARY_MASK;
-+}
-+
-+static inline void set_canary(struct kmem_cache *s, void *object, unsigned long value)
-+{
-+	unsigned long *canary = get_canary(s, object);
-+	*canary = get_canary_value(canary, value);
-+}
-+
-+static inline void check_canary(struct kmem_cache *s, void *object, unsigned long value)
-+{
-+	unsigned long *canary = get_canary(s, object);
-+	BUG_ON(*canary != get_canary_value(canary, value));
-+}
-+#else
-+#define set_canary(s, object, value)
-+#define check_canary(s, object, value)
-+#endif
-+
- /* Loop over all objects in a slab */
- #define for_each_object(__p, __s, __addr, __objects) \
-	for (__p = fixup_red_left(__s, __addr); \
-@@ -484,13 +523,13 @@ static inline void *restore_red_left(struct kmem_cache *s, void *p)
-  * Debug settings:
-  */
- #if defined(CONFIG_SLUB_DEBUG_ON)
--static int slub_debug = DEBUG_DEFAULT_FLAGS;
-+static int slub_debug __ro_after_init = DEBUG_DEFAULT_FLAGS;
- #else
--static int slub_debug;
-+static int slub_debug __ro_after_init;
- #endif
-
--static char *slub_debug_slabs;
--static int disable_higher_order_debug;
-+static char *slub_debug_slabs __ro_after_init;
-+static int disable_higher_order_debug __ro_after_init;
-
- /*
-  * slub is about to manipulate internal object metadata.  This memory lies
-@@ -550,6 +589,9 @@ static struct track *get_track(struct kmem_cache *s, void *object,
-	else
-		p = object + s->inuse;
-
-+	if (IS_ENABLED(CONFIG_SLAB_CANARY))
-+		p = (void *)p + sizeof(void *);
-+
-	return p + alloc;
- }
-
-@@ -688,6 +730,9 @@ static void print_trailer(struct kmem_cache *s, struct page *page, u8 *p)
-	else
-		off = s->inuse;
-
-+	if (IS_ENABLED(CONFIG_SLAB_CANARY))
-+		off += sizeof(void *);
-+
-	if (s->flags & SLAB_STORE_USER)
-		off += 2 * sizeof(struct track);
-
-@@ -817,6 +862,9 @@ static int check_pad_bytes(struct kmem_cache *s, struct page *page, u8 *p)
-		/* Freepointer is placed after the object. */
-		off += sizeof(void *);
-
-+	if (IS_ENABLED(CONFIG_SLAB_CANARY))
-+		off += sizeof(void *);
-+
-	if (s->flags & SLAB_STORE_USER)
-		/* We also have user information there */
-		off += 2 * sizeof(struct track);
-@@ -1416,8 +1464,9 @@ static void setup_object(struct kmem_cache *s, struct page *page,
-				void *object)
- {
-	setup_object_debug(s, page, object);
-+	set_canary(s, object, s->random_inactive);
-	kasan_init_slab_obj(s, object);
--	if (unlikely(s->ctor)) {
-+	if (unlikely(s->ctor) && !has_sanitize_verify(s)) {
-		kasan_unpoison_object_data(s, object);
-		s->ctor(object);
-		kasan_poison_object_data(s, object);
-@@ -2717,9 +2766,21 @@ static __always_inline void *slab_alloc_node(struct kmem_cache *s,
-		stat(s, ALLOC_FASTPATH);
-	}
-
--	if (unlikely(gfpflags & __GFP_ZERO) && object)
-+	if (has_sanitize_verify(s) && object) {
-+		size_t offset = s->offset ? 0 : sizeof(void *);
-+		BUG_ON(memchr_inv(object + offset, 0, s->object_size - offset));
-+		if (s->ctor)
-+			s->ctor(object);
-+		if (unlikely(gfpflags & __GFP_ZERO) && offset)
-+			memset(object, 0, sizeof(void *));
-+	} else if (unlikely(gfpflags & __GFP_ZERO) && object)
-		memset(object, 0, s->object_size);
-
-+	if (object) {
-+		check_canary(s, object, s->random_inactive);
-+		set_canary(s, object, s->random_active);
-+	}
-+
-	slab_post_alloc_hook(s, gfpflags, 1, &object);
-
-	return object;
-@@ -2926,6 +2987,27 @@ static __always_inline void do_slab_free(struct kmem_cache *s,
-	void *tail_obj = tail ? : head;
-	struct kmem_cache_cpu *c;
-	unsigned long tid;
-+	bool sanitize = has_sanitize(s);
-+
-+	if (IS_ENABLED(CONFIG_SLAB_CANARY) || sanitize) {
-+		__maybe_unused int offset = s->offset ? 0 : sizeof(void *);
-+		void *x = head;
-+
-+		while (1) {
-+			check_canary(s, x, s->random_active);
-+			set_canary(s, x, s->random_inactive);
-+
-+			if (sanitize) {
-+				memset(x + offset, 0, s->object_size - offset);
-+				if (!IS_ENABLED(CONFIG_SLAB_SANITIZE_VERIFY) && s->ctor)
-+					s->ctor(x);
-+			}
-+			if (x == tail_obj)
-+				break;
-+			x = get_freepointer(s, x);
-+		}
-+	}
-+
- redo:
-	/*
-	 * Determine the currently cpus per cpu slab.
-@@ -3104,7 +3186,7 @@ int kmem_cache_alloc_bulk(struct kmem_cache *s, gfp_t flags, size_t size,
-			  void **p)
- {
-	struct kmem_cache_cpu *c;
--	int i;
-+	int i, k;
-
-	/* memcg and kmem_cache debug support */
-	s = slab_pre_alloc_hook(s, flags);
-@@ -3141,13 +3223,29 @@ int kmem_cache_alloc_bulk(struct kmem_cache *s, gfp_t flags, size_t size,
-	local_irq_enable();
-
-	/* Clear memory outside IRQ disabled fastpath loop */
--	if (unlikely(flags & __GFP_ZERO)) {
-+	if (has_sanitize_verify(s)) {
-+		int j;
-+
-+		for (j = 0; j < i; j++) {
-+			size_t offset = s->offset ? 0 : sizeof(void *);
-+			BUG_ON(memchr_inv(p[j] + offset, 0, s->object_size - offset));
-+			if (s->ctor)
-+				s->ctor(p[j]);
-+			if (unlikely(flags & __GFP_ZERO) && offset)
-+				memset(p[j], 0, sizeof(void *));
-+		}
-+	} else if (unlikely(flags & __GFP_ZERO)) {
-		int j;
-
-		for (j = 0; j < i; j++)
-			memset(p[j], 0, s->object_size);
-	}
-
-+	for (k = 0; k < i; k++) {
-+		check_canary(s, p[k], s->random_inactive);
-+		set_canary(s, p[k], s->random_active);
-+	}
-+
-	/* memcg and kmem_cache debug support */
-	slab_post_alloc_hook(s, flags, size, p);
-	return i;
-@@ -3179,9 +3277,9 @@ EXPORT_SYMBOL(kmem_cache_alloc_bulk);
-  * and increases the number of allocations possible without having to
-  * take the list_lock.
-  */
--static int slub_min_order;
--static int slub_max_order = PAGE_ALLOC_COSTLY_ORDER;
--static int slub_min_objects;
-+static int slub_min_order __ro_after_init;
-+static int slub_max_order __ro_after_init = PAGE_ALLOC_COSTLY_ORDER;
-+static int slub_min_objects __ro_after_init;
-
- /*
-  * Calculate the order of allocation given an slab object size.
-@@ -3351,6 +3449,7 @@ static void early_kmem_cache_node_alloc(int node)
-	init_object(kmem_cache_node, n, SLUB_RED_ACTIVE);
-	init_tracking(kmem_cache_node, n);
- #endif
-+	set_canary(kmem_cache_node, n, kmem_cache_node->random_active);
-	kasan_kmalloc(kmem_cache_node, n, sizeof(struct kmem_cache_node),
-		      GFP_KERNEL);
-	init_kmem_cache_node(n);
-@@ -3507,6 +3606,9 @@ static int calculate_sizes(struct kmem_cache *s, int forced_order)
-		size += sizeof(void *);
-	}
-
-+	if (IS_ENABLED(CONFIG_SLAB_CANARY))
-+		size += sizeof(void *);
-+
- #ifdef CONFIG_SLUB_DEBUG
-	if (flags & SLAB_STORE_USER)
-		/*
-@@ -3577,6 +3679,10 @@ static int kmem_cache_open(struct kmem_cache *s, unsigned long flags)
- #ifdef CONFIG_SLAB_FREELIST_HARDENED
-	s->random = get_random_long();
- #endif
-+#ifdef CONFIG_SLAB_CANARY
-+	s->random_active = get_random_long();
-+	s->random_inactive = get_random_long();
-+#endif
-
-	if (need_reserve_slab_rcu && (s->flags & SLAB_TYPESAFE_BY_RCU))
-		s->reserved = sizeof(struct rcu_head);
-@@ -3841,6 +3947,8 @@ const char *__check_heap_object(const void *ptr, unsigned long n,
-		offset -= s->red_left_pad;
-	}
-
-+	check_canary(s, (void *)ptr - offset, s->random_active);
-+
-	/* Allow address range falling entirely within object size. */
-	if (offset <= object_size && n <= object_size - offset)
-		return NULL;
-@@ -3859,7 +3967,11 @@ static size_t __ksize(const void *object)
-	page = virt_to_head_page(object);
-
-	if (unlikely(!PageSlab(page))) {
-+#ifdef CONFIG_BUG_ON_DATA_CORRUPTION
-+		BUG_ON(!PageCompound(page));
-+#else
-		WARN_ON(!PageCompound(page));
-+#endif
-		return PAGE_SIZE << compound_order(page);
-	}
-
-@@ -4724,7 +4836,7 @@ enum slab_stat_type {
- #define SO_TOTAL	(1 << SL_TOTAL)
-
- #ifdef CONFIG_MEMCG
--static bool memcg_sysfs_enabled = IS_ENABLED(CONFIG_SLUB_MEMCG_SYSFS_ON);
-+static bool memcg_sysfs_enabled __ro_after_init = IS_ENABLED(CONFIG_SLUB_MEMCG_SYSFS_ON);
-
- static int __init setup_slub_memcg_sysfs(char *str)
- {
-diff --git a/mm/swap.c b/mm/swap.c
-index a77d68f2c1b6..d1f1d75f4d1f 100644
---- a/mm/swap.c
-+++ b/mm/swap.c
-@@ -92,6 +92,13 @@ static void __put_compound_page(struct page *page)
-	if (!PageHuge(page))
-		__page_cache_release(page);
-	dtor = get_compound_page_dtor(page);
-+	if (!PageHuge(page))
-+		BUG_ON(dtor != free_compound_page
-+#ifdef CONFIG_TRANSPARENT_HUGEPAGE
-+			&& dtor != free_transhuge_page
-+#endif
-+		);
-+
-	(*dtor)(page);
- }
-
-diff --git a/net/core/dev.c b/net/core/dev.c
-index 6ca771f2f25b..6da2c9c3e6a5 100644
---- a/net/core/dev.c
-+++ b/net/core/dev.c
-@@ -4095,7 +4095,7 @@ int netif_rx_ni(struct sk_buff *skb)
- }
- EXPORT_SYMBOL(netif_rx_ni);
-
--static __latent_entropy void net_tx_action(struct softirq_action *h)
-+static __latent_entropy void net_tx_action(void)
- {
-	struct softnet_data *sd = this_cpu_ptr(&softnet_data);
-
-@@ -5609,7 +5609,7 @@ static int napi_poll(struct napi_struct *n, struct list_head *repoll)
-	return work;
- }
-
--static __latent_entropy void net_rx_action(struct softirq_action *h)
-+static __latent_entropy void net_rx_action(void)
- {
-	struct softnet_data *sd = this_cpu_ptr(&softnet_data);
-	unsigned long time_limit = jiffies +
-diff --git a/net/ipv4/Kconfig b/net/ipv4/Kconfig
-index f48fe6fc7e8c..d78c52835c08 100644
---- a/net/ipv4/Kconfig
-+++ b/net/ipv4/Kconfig
-@@ -261,6 +261,7 @@ config IP_PIMSM_V2
-
- config SYN_COOKIES
-	bool "IP: TCP syncookie support"
-+	default y
-	---help---
-	  Normal TCP/IP networking is open to an attack known as "SYN
-	  flooding". This denial-of-service attack prevents legitimate remote
-diff --git a/scripts/mod/modpost.c b/scripts/mod/modpost.c
-index 54deaa1066cf..211f97bd5ee3 100644
---- a/scripts/mod/modpost.c
-+++ b/scripts/mod/modpost.c
-@@ -37,6 +37,7 @@ static int vmlinux_section_warnings = 1;
- static int warn_unresolved = 0;
- /* How a symbol is exported */
- static int sec_mismatch_count = 0;
-+static int writable_fptr_count = 0;
- static int sec_mismatch_verbose = 1;
- static int sec_mismatch_fatal = 0;
- /* ignore missing files */
-@@ -965,6 +966,7 @@ enum mismatch {
-	ANY_EXIT_TO_ANY_INIT,
-	EXPORT_TO_INIT_EXIT,
-	EXTABLE_TO_NON_TEXT,
-+	DATA_TO_TEXT
- };
-
- /**
-@@ -1091,6 +1093,12 @@ static const struct sectioncheck sectioncheck[] = {
-	.good_tosec = {ALL_TEXT_SECTIONS , NULL},
-	.mismatch = EXTABLE_TO_NON_TEXT,
-	.handler = extable_mismatch_handler,
-+},
-+/* Do not reference code from writable data */
-+{
-+	.fromsec = { DATA_SECTIONS, NULL },
-+	.bad_tosec = { ALL_TEXT_SECTIONS, NULL },
-+	.mismatch = DATA_TO_TEXT
- }
- };
-
-@@ -1240,10 +1248,10 @@ static Elf_Sym *find_elf_symbol(struct elf_info *elf, Elf64_Sword addr,
-			continue;
-		if (ELF_ST_TYPE(sym->st_info) == STT_SECTION)
-			continue;
--		if (sym->st_value == addr)
--			return sym;
-		/* Find a symbol nearby - addr are maybe negative */
-		d = sym->st_value - addr;
-+		if (d == 0)
-+			return sym;
-		if (d < 0)
-			d = addr - sym->st_value;
-		if (d < distance) {
-@@ -1402,7 +1410,11 @@ static void report_sec_mismatch(const char *modname,
-	char *prl_from;
-	char *prl_to;
-
--	sec_mismatch_count++;
-+	if (mismatch->mismatch == DATA_TO_TEXT)
-+		writable_fptr_count++;
-+	else
-+		sec_mismatch_count++;
-+
-	if (!sec_mismatch_verbose)
-		return;
-
-@@ -1526,6 +1538,14 @@ static void report_sec_mismatch(const char *modname,
-		fatal("There's a special handler for this mismatch type, "
-		      "we should never get here.");
-		break;
-+	case DATA_TO_TEXT:
-+#if 0
-+		fprintf(stderr,
-+		"The %s %s:%s references\n"
-+		"the %s %s:%s%s\n",
-+		from, fromsec, fromsym, to, tosec, tosym, to_p);
-+#endif
-+		break;
-	}
-	fprintf(stderr, "\n");
- }
-@@ -2539,6 +2559,14 @@ int main(int argc, char **argv)
-		}
-	}
-	free(buf.p);
-+	if (writable_fptr_count) {
-+		if (!sec_mismatch_verbose) {
-+			warn("modpost: Found %d writable function pointer(s).\n"
-+			     "To see full details build your kernel with:\n"
-+			     "'make CONFIG_DEBUG_SECTION_MISMATCH=y'\n",
-+			     writable_fptr_count);
-+		}
-+	}
-
-	return err;
- }
-diff --git a/security/Kconfig b/security/Kconfig
-index 87f2a6f842fd..7bdbb7edf5bf 100644
---- a/security/Kconfig
-+++ b/security/Kconfig
-@@ -8,7 +8,7 @@ source security/keys/Kconfig
-
- config SECURITY_DMESG_RESTRICT
-	bool "Restrict unprivileged access to the kernel syslog"
--	default n
-+	default y
-	help
-	  This enforces restrictions on unprivileged users reading the kernel
-	  syslog via dmesg(8).
-@@ -18,10 +18,34 @@ config SECURITY_DMESG_RESTRICT
-
-	  If you are unsure how to answer this question, answer N.
-
-+config SECURITY_PERF_EVENTS_RESTRICT
-+	bool "Restrict unprivileged use of performance events"
-+	depends on PERF_EVENTS
-+	default y
-+	help
-+	  If you say Y here, the kernel.perf_event_paranoid sysctl
-+	  will be set to 3 by default, and no unprivileged use of the
-+	  perf_event_open syscall will be permitted unless it is
-+	  changed.
-+
-+config SECURITY_TIOCSTI_RESTRICT
-+	bool "Restrict unprivileged use of tiocsti command injection"
-+	default y
-+	help
-+	  This enforces restrictions on unprivileged users injecting commands
-+	  into other processes which share a tty session using the TIOCSTI
-+	  ioctl. This option makes TIOCSTI use require CAP_SYS_ADMIN.
-+
-+	  If this option is not selected, no restrictions will be enforced
-+	  unless the tiocsti_restrict sysctl is explicitly set to (1).
-+
-+	  If you are unsure how to answer this question, answer N.
-+
- config SECURITY
-	bool "Enable different security models"
-	depends on SYSFS
-	depends on MULTIUSER
-+	default y
-	help
-	  This allows you to choose different security modules to be
-	  configured into your kernel.
-@@ -48,6 +72,7 @@ config SECURITYFS
- config SECURITY_NETWORK
-	bool "Socket and Networking Security Hooks"
-	depends on SECURITY
-+	default y
-	help
-	  This enables the socket and networking security hooks.
-	  If enabled, a security module can use these hooks to
-@@ -155,6 +180,7 @@ config HARDENED_USERCOPY
-	depends on HAVE_HARDENED_USERCOPY_ALLOCATOR
-	select BUG
-	imply STRICT_DEVMEM
-+	default y
-	help
-	  This option checks for obviously wrong memory regions when
-	  copying memory to/from the kernel (via copy_to_user() and
-@@ -178,10 +204,36 @@ config HARDENED_USERCOPY_PAGESPAN
- config FORTIFY_SOURCE
-	bool "Harden common str/mem functions against buffer overflows"
-	depends on ARCH_HAS_FORTIFY_SOURCE
-+	default y
-	help
-	  Detect overflows of buffers in common string and memory functions
-	  where the compiler can determine and validate the buffer sizes.
-
-+config FORTIFY_SOURCE_STRICT_STRING
-+	bool "Harden common functions against buffer overflows"
-+	depends on FORTIFY_SOURCE
-+	depends on EXPERT
-+	help
-+	  Perform stricter overflow checks catching overflows within objects
-+	  for common C string functions rather than only between objects.
-+
-+	  This is not yet intended for production use, only bug finding.
-+
-+config PAGE_SANITIZE
-+	bool "Sanitize pages"
-+	default y
-+	help
-+	  Zero fill page allocations on free, reducing the lifetime of
-+	  sensitive data and helping to mitigate use-after-free bugs.
-+
-+config PAGE_SANITIZE_VERIFY
-+	bool "Verify sanitized pages"
-+	depends on PAGE_SANITIZE
-+	default y
-+	help
-+	  Verify that newly allocated pages are zeroed to detect
-+	  write-after-free bugs.
-+
- config STATIC_USERMODEHELPER
-	bool "Force all usermode helper calls through a single binary"
-	help
-diff --git a/security/selinux/Kconfig b/security/selinux/Kconfig
-index 8af7a690eb40..6539694b0fd3 100644
---- a/security/selinux/Kconfig
-+++ b/security/selinux/Kconfig
-@@ -2,7 +2,7 @@ config SECURITY_SELINUX
-	bool "NSA SELinux Support"
-	depends on SECURITY_NETWORK && AUDIT && NET && INET
-	select NETWORK_SECMARK
--	default n
-+	default y
-	help
-	  This selects NSA Security-Enhanced Linux (SELinux).
-	  You will also need a policy configuration and a labeled filesystem.
-@@ -79,23 +79,3 @@ config SECURITY_SELINUX_AVC_STATS
-	  This option collects access vector cache statistics to
-	  /selinux/avc/cache_stats, which may be monitored via
-	  tools such as avcstat.
--
--config SECURITY_SELINUX_CHECKREQPROT_VALUE
--	int "NSA SELinux checkreqprot default value"
--	depends on SECURITY_SELINUX
--	range 0 1
--	default 0
--	help
--	  This option sets the default value for the 'checkreqprot' flag
--	  that determines whether SELinux checks the protection requested
--	  by the application or the protection that will be applied by the
--	  kernel (including any implied execute for read-implies-exec) for
--	  mmap and mprotect calls.  If this option is set to 0 (zero),
--	  SELinux will default to checking the protection that will be applied
--	  by the kernel.  If this option is set to 1 (one), SELinux will
--	  default to checking the protection requested by the application.
--	  The checkreqprot flag may be changed from the default via the
--	  'checkreqprot=' boot parameter.  It may also be changed at runtime
--	  via /selinux/checkreqprot if authorized by policy.
--
--	  If you are unsure how to answer this question, answer 0.
-diff --git a/security/selinux/include/objsec.h b/security/selinux/include/objsec.h
-index 1649cd18eb0b..067f35559aa7 100644
---- a/security/selinux/include/objsec.h
-+++ b/security/selinux/include/objsec.h
-@@ -150,6 +150,6 @@ struct pkey_security_struct {
-	u32	sid;	/* SID of pkey */
- };
-
--extern unsigned int selinux_checkreqprot;
-+extern const unsigned int selinux_checkreqprot;
-
- #endif /* _SELINUX_OBJSEC_H_ */
-diff --git a/security/selinux/selinuxfs.c b/security/selinux/selinuxfs.c
-index 00eed842c491..8f7b8d7e6f91 100644
---- a/security/selinux/selinuxfs.c
-+++ b/security/selinux/selinuxfs.c
-@@ -41,16 +41,7 @@
- #include "objsec.h"
- #include "conditional.h"
-
--unsigned int selinux_checkreqprot = CONFIG_SECURITY_SELINUX_CHECKREQPROT_VALUE;
--
--static int __init checkreqprot_setup(char *str)
--{
--	unsigned long checkreqprot;
--	if (!kstrtoul(str, 0, &checkreqprot))
--		selinux_checkreqprot = checkreqprot ? 1 : 0;
--	return 1;
--}
--__setup("checkreqprot=", checkreqprot_setup);
-+const unsigned int selinux_checkreqprot;
-
- static DEFINE_MUTEX(sel_mutex);
-
-@@ -610,10 +601,9 @@ static ssize_t sel_write_checkreqprot(struct file *file, const char __user *buf,
-		return PTR_ERR(page);
-
-	length = -EINVAL;
--	if (sscanf(page, "%u", &new_value) != 1)
-+	if (sscanf(page, "%u", &new_value) != 1 || new_value)
-		goto out;
-
--	selinux_checkreqprot = new_value ? 1 : 0;
-	length = count;
- out:
-	kfree(page);
-diff --git a/security/yama/Kconfig b/security/yama/Kconfig
-index 96b27405558a..485c1b85c325 100644
---- a/security/yama/Kconfig
-+++ b/security/yama/Kconfig
-@@ -1,7 +1,7 @@
- config SECURITY_YAMA
-	bool "Yama support"
-	depends on SECURITY
--	default n
-+	default y
-	help
-	  This selects Yama, which extends DAC support with additional
-	  system-wide security settings beyond regular Linux discretionary
diff --git a/pkgs/os-specific/linux/kernel/copperhead-4-16.patch b/pkgs/os-specific/linux/kernel/copperhead-4-16.patch
deleted file mode 100644
index f0a4bc940347..000000000000
--- a/pkgs/os-specific/linux/kernel/copperhead-4-16.patch
+++ /dev/null
@@ -1,2571 +0,0 @@
-diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt
-index 9824d049367e..6ff72316ff0a 100644
---- a/Documentation/admin-guide/kernel-parameters.txt
-+++ b/Documentation/admin-guide/kernel-parameters.txt
-@@ -496,16 +496,6 @@
-			nosocket -- Disable socket memory accounting.
-			nokmem -- Disable kernel memory accounting.
-
--	checkreqprot	[SELINUX] Set initial checkreqprot flag value.
--			Format: { "0" | "1" }
--			See security/selinux/Kconfig help text.
--			0 -- check protection applied by kernel (includes
--				any implied execute protection).
--			1 -- check protection requested by application.
--			Default value is set via a kernel config option.
--			Value can be changed at runtime via
--				/selinux/checkreqprot.
--
-	cio_ignore=	[S390]
-			See Documentation/s390/CommonIO for details.
-	clk_ignore_unused
-@@ -2946,6 +2936,11 @@
-			the specified number of seconds.  This is to be used if
-			your oopses keep scrolling off the screen.
-
-+	extra_latent_entropy
-+			Enable a very simple form of latent entropy extraction
-+			from the first 4GB of memory as the bootmem allocator
-+			passes the memory pages to the buddy allocator.
-+
-	pcbit=		[HW,ISDN]
-
-	pcd.		[PARIDE]
-diff --git a/Makefile b/Makefile
-index ded9e8480d74..2e948bb78142 100644
---- a/Makefile
-+++ b/Makefile
-@@ -734,6 +734,9 @@ endif
- endif
-
- ifeq ($(cc-name),clang)
-+ifdef CONFIG_LOCAL_INIT
-+KBUILD_CFLAGS   += -fsanitize=local-init
-+endif
- KBUILD_CPPFLAGS += $(call cc-option,-Qunused-arguments,)
- KBUILD_CFLAGS += $(call cc-disable-warning, format-invalid-specifier)
- KBUILD_CFLAGS += $(call cc-disable-warning, gnu)
-diff --git a/arch/Kconfig b/arch/Kconfig
-index 76c0b54443b1..63a2d30f807f 100644
---- a/arch/Kconfig
-+++ b/arch/Kconfig
-@@ -454,6 +454,11 @@ config GCC_PLUGIN_LATENT_ENTROPY
-	  is some slowdown of the boot process (about 0.5%) and fork and
-	  irq processing.
-
-+	  When extra_latent_entropy is passed on the kernel command line,
-+	  entropy will be extracted from up to the first 4GB of RAM while the
-+	  runtime memory allocator is being initialized.  This costs even more
-+	  slowdown of the boot process.
-+
-	  Note that entropy extracted this way is not cryptographically
-	  secure!
-
-@@ -747,7 +752,7 @@ config ARCH_MMAP_RND_BITS
-	int "Number of bits to use for ASLR of mmap base address" if EXPERT
-	range ARCH_MMAP_RND_BITS_MIN ARCH_MMAP_RND_BITS_MAX
-	default ARCH_MMAP_RND_BITS_DEFAULT if ARCH_MMAP_RND_BITS_DEFAULT
--	default ARCH_MMAP_RND_BITS_MIN
-+	default ARCH_MMAP_RND_BITS_MAX
-	depends on HAVE_ARCH_MMAP_RND_BITS
-	help
-	  This value can be used to select the number of bits to use to
-@@ -781,7 +786,7 @@ config ARCH_MMAP_RND_COMPAT_BITS
-	int "Number of bits to use for ASLR of mmap base address for compatible applications" if EXPERT
-	range ARCH_MMAP_RND_COMPAT_BITS_MIN ARCH_MMAP_RND_COMPAT_BITS_MAX
-	default ARCH_MMAP_RND_COMPAT_BITS_DEFAULT if ARCH_MMAP_RND_COMPAT_BITS_DEFAULT
--	default ARCH_MMAP_RND_COMPAT_BITS_MIN
-+	default ARCH_MMAP_RND_COMPAT_BITS_MAX
-	depends on HAVE_ARCH_MMAP_RND_COMPAT_BITS
-	help
-	  This value can be used to select the number of bits to use to
-@@ -968,6 +973,7 @@ config ARCH_HAS_REFCOUNT
-
- config REFCOUNT_FULL
-	bool "Perform full reference count validation at the expense of speed"
-+	default y
-	help
-	  Enabling this switches the refcounting infrastructure from a fast
-	  unchecked atomic_t implementation to a fully state checked
-diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
-index be665760f2bd..5fb9026c9762 100644
---- a/arch/arm64/Kconfig
-+++ b/arch/arm64/Kconfig
-@@ -988,6 +988,7 @@ endif
-
- config ARM64_SW_TTBR0_PAN
-	bool "Emulate Privileged Access Never using TTBR0_EL1 switching"
-+	default y
-	help
-	  Enabling this option prevents the kernel from accessing
-	  user-space memory directly by pointing TTBR0_EL1 to a reserved
-@@ -1141,6 +1142,7 @@ config RANDOMIZE_BASE
-	bool "Randomize the address of the kernel image"
-	select ARM64_MODULE_PLTS if MODULES
-	select RELOCATABLE
-+	default y
-	help
-	  Randomizes the virtual address at which the kernel image is
-	  loaded, as a security feature that deters exploit attempts
-diff --git a/arch/arm64/Kconfig.debug b/arch/arm64/Kconfig.debug
-index cc6bd559af85..01d5442d4722 100644
---- a/arch/arm64/Kconfig.debug
-+++ b/arch/arm64/Kconfig.debug
-@@ -45,6 +45,7 @@ config ARM64_RANDOMIZE_TEXT_OFFSET
- config DEBUG_WX
-	bool "Warn on W+X mappings at boot"
-	select ARM64_PTDUMP_CORE
-+	default y
-	---help---
-	  Generate a warning if any W+X mappings are found at boot.
-
-diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
-index 634b373785c4..5b255a6db6a7 100644
---- a/arch/arm64/configs/defconfig
-+++ b/arch/arm64/configs/defconfig
-@@ -1,4 +1,3 @@
--CONFIG_SYSVIPC=y
- CONFIG_POSIX_MQUEUE=y
- CONFIG_AUDIT=y
- CONFIG_NO_HZ_IDLE=y
-diff --git a/arch/arm64/include/asm/elf.h b/arch/arm64/include/asm/elf.h
-index fac1c4de7898..34786ca166e4 100644
---- a/arch/arm64/include/asm/elf.h
-+++ b/arch/arm64/include/asm/elf.h
-@@ -114,10 +114,10 @@
-
- /*
-  * This is the base location for PIE (ET_DYN with INTERP) loads. On
-- * 64-bit, this is above 4GB to leave the entire 32-bit address
-+ * 64-bit, this is raised to 4GB to leave the entire 32-bit address
-  * space open for things that want to use the area for 32-bit pointers.
-  */
--#define ELF_ET_DYN_BASE		(2 * TASK_SIZE_64 / 3)
-+#define ELF_ET_DYN_BASE		0x100000000UL
-
- #ifndef __ASSEMBLY__
-
-@@ -158,10 +158,10 @@ extern int arch_setup_additional_pages(struct linux_binprm *bprm,
- /* 1GB of VA */
- #ifdef CONFIG_COMPAT
- #define STACK_RND_MASK			(test_thread_flag(TIF_32BIT) ? \
--						0x7ff >> (PAGE_SHIFT - 12) : \
--						0x3ffff >> (PAGE_SHIFT - 12))
-+						((1UL << mmap_rnd_compat_bits) - 1) >> (PAGE_SHIFT - 12) : \
-+						((1UL << mmap_rnd_bits) - 1) >> (PAGE_SHIFT - 12))
- #else
--#define STACK_RND_MASK			(0x3ffff >> (PAGE_SHIFT - 12))
-+#define STACK_RND_MASK			(((1UL << mmap_rnd_bits) - 1) >> (PAGE_SHIFT - 12))
- #endif
-
- #ifdef __AARCH64EB__
-diff --git a/arch/arm64/kernel/process.c b/arch/arm64/kernel/process.c
-index c0da6efe5465..f308b521c114 100644
---- a/arch/arm64/kernel/process.c
-+++ b/arch/arm64/kernel/process.c
-@@ -481,9 +481,9 @@ unsigned long arch_align_stack(unsigned long sp)
- unsigned long arch_randomize_brk(struct mm_struct *mm)
- {
-	if (is_compat_task())
--		return randomize_page(mm->brk, SZ_32M);
-+		return mm->brk + get_random_long() % SZ_32M + PAGE_SIZE;
-	else
--		return randomize_page(mm->brk, SZ_1G);
-+		return mm->brk + get_random_long() % SZ_1G + PAGE_SIZE;
- }
-
- /*
-diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
-index 0fa71a78ec99..d78d44944374 100644
---- a/arch/x86/Kconfig
-+++ b/arch/x86/Kconfig
-@@ -1208,8 +1208,7 @@ config VM86
-        default X86_LEGACY_VM86
-
- config X86_16BIT
--	bool "Enable support for 16-bit segments" if EXPERT
--	default y
-+	bool "Enable support for 16-bit segments"
-	depends on MODIFY_LDT_SYSCALL
-	---help---
-	  This option is required by programs like Wine to run 16-bit
-@@ -2299,7 +2298,7 @@ config COMPAT_VDSO
- choice
-	prompt "vsyscall table for legacy applications"
-	depends on X86_64
--	default LEGACY_VSYSCALL_EMULATE
-+	default LEGACY_VSYSCALL_NONE
-	help
-	  Legacy user code that does not know how to find the vDSO expects
-	  to be able to issue three syscalls by calling fixed addresses in
-@@ -2380,8 +2379,7 @@ config CMDLINE_OVERRIDE
-	  be set to 'N' under normal conditions.
-
- config MODIFY_LDT_SYSCALL
--	bool "Enable the LDT (local descriptor table)" if EXPERT
--	default y
-+	bool "Enable the LDT (local descriptor table)"
-	---help---
-	  Linux can allow user programs to install a per-process x86
-	  Local Descriptor Table (LDT) using the modify_ldt(2) system
-diff --git a/arch/x86/Kconfig.debug b/arch/x86/Kconfig.debug
-index 192e4d2f9efc..343c2f1b13da 100644
---- a/arch/x86/Kconfig.debug
-+++ b/arch/x86/Kconfig.debug
-@@ -101,6 +101,7 @@ config EFI_PGT_DUMP
- config DEBUG_WX
-	bool "Warn on W+X mappings at boot"
-	select X86_PTDUMP_CORE
-+	default y
-	---help---
-	  Generate a warning if any W+X mappings are found at boot.
-
-diff --git a/arch/x86/configs/x86_64_defconfig b/arch/x86/configs/x86_64_defconfig
-index e32fc1f274d8..d08acc76502a 100644
---- a/arch/x86/configs/x86_64_defconfig
-+++ b/arch/x86/configs/x86_64_defconfig
-@@ -1,5 +1,4 @@
- # CONFIG_LOCALVERSION_AUTO is not set
--CONFIG_SYSVIPC=y
- CONFIG_POSIX_MQUEUE=y
- CONFIG_BSD_PROCESS_ACCT=y
- CONFIG_TASKSTATS=y
-diff --git a/arch/x86/entry/vdso/vma.c b/arch/x86/entry/vdso/vma.c
-index 5b8b556dbb12..a569f08b4478 100644
---- a/arch/x86/entry/vdso/vma.c
-+++ b/arch/x86/entry/vdso/vma.c
-@@ -204,55 +204,9 @@ static int map_vdso(const struct vdso_image *image, unsigned long addr)
- }
-
- #ifdef CONFIG_X86_64
--/*
-- * Put the vdso above the (randomized) stack with another randomized
-- * offset.  This way there is no hole in the middle of address space.
-- * To save memory make sure it is still in the same PTE as the stack
-- * top.  This doesn't give that many random bits.
-- *
-- * Note that this algorithm is imperfect: the distribution of the vdso
-- * start address within a PMD is biased toward the end.
-- *
-- * Only used for the 64-bit and x32 vdsos.
-- */
--static unsigned long vdso_addr(unsigned long start, unsigned len)
--{
--	unsigned long addr, end;
--	unsigned offset;
--
--	/*
--	 * Round up the start address.  It can start out unaligned as a result
--	 * of stack start randomization.
--	 */
--	start = PAGE_ALIGN(start);
--
--	/* Round the lowest possible end address up to a PMD boundary. */
--	end = (start + len + PMD_SIZE - 1) & PMD_MASK;
--	if (end >= TASK_SIZE_MAX)
--		end = TASK_SIZE_MAX;
--	end -= len;
--
--	if (end > start) {
--		offset = get_random_int() % (((end - start) >> PAGE_SHIFT) + 1);
--		addr = start + (offset << PAGE_SHIFT);
--	} else {
--		addr = start;
--	}
--
--	/*
--	 * Forcibly align the final address in case we have a hardware
--	 * issue that requires alignment for performance reasons.
--	 */
--	addr = align_vdso_addr(addr);
--
--	return addr;
--}
--
- static int map_vdso_randomized(const struct vdso_image *image)
- {
--	unsigned long addr = vdso_addr(current->mm->start_stack, image->size-image->sym_vvar_start);
--
--	return map_vdso(image, addr);
-+	return map_vdso(image, 0);
- }
- #endif
-
-diff --git a/arch/x86/include/asm/elf.h b/arch/x86/include/asm/elf.h
-index 0d157d2a1e2a..770c8ae97f92 100644
---- a/arch/x86/include/asm/elf.h
-+++ b/arch/x86/include/asm/elf.h
-@@ -249,11 +249,11 @@ extern int force_personality32;
-
- /*
-  * This is the base location for PIE (ET_DYN with INTERP) loads. On
-- * 64-bit, this is above 4GB to leave the entire 32-bit address
-+ * 64-bit, this is raised to 4GB to leave the entire 32-bit address
-  * space open for things that want to use the area for 32-bit pointers.
-  */
- #define ELF_ET_DYN_BASE		(mmap_is_ia32() ? 0x000400000UL : \
--						  (DEFAULT_MAP_WINDOW / 3 * 2))
-+						  0x100000000UL)
-
- /* This yields a mask that user programs can use to figure out what
-    instruction set this CPU supports.  This could be done in user space,
-@@ -313,8 +313,8 @@ extern bool mmap_address_hint_valid(unsigned long addr, unsigned long len);
-
- #ifdef CONFIG_X86_32
-
--#define __STACK_RND_MASK(is32bit) (0x7ff)
--#define STACK_RND_MASK (0x7ff)
-+#define __STACK_RND_MASK(is32bit) ((1UL << mmap_rnd_bits) - 1)
-+#define STACK_RND_MASK ((1UL << mmap_rnd_bits) - 1)
-
- #define ARCH_DLINFO		ARCH_DLINFO_IA32
-
-@@ -323,7 +323,11 @@ extern bool mmap_address_hint_valid(unsigned long addr, unsigned long len);
- #else /* CONFIG_X86_32 */
-
- /* 1GB for 64bit, 8MB for 32bit */
--#define __STACK_RND_MASK(is32bit) ((is32bit) ? 0x7ff : 0x3fffff)
-+#ifdef CONFIG_COMPAT
-+#define __STACK_RND_MASK(is32bit) ((is32bit) ? (1UL << mmap_rnd_compat_bits) - 1 : (1UL << mmap_rnd_bits) - 1)
-+#else
-+#define __STACK_RND_MASK(is32bit) ((1UL << mmap_rnd_bits) - 1)
-+#endif
- #define STACK_RND_MASK __STACK_RND_MASK(mmap_is_ia32())
-
- #define ARCH_DLINFO							\
-@@ -381,5 +385,4 @@ struct va_alignment {
- } ____cacheline_aligned;
-
- extern struct va_alignment va_align;
--extern unsigned long align_vdso_addr(unsigned long);
- #endif /* _ASM_X86_ELF_H */
-diff --git a/arch/x86/include/asm/tlbflush.h b/arch/x86/include/asm/tlbflush.h
-index 84137c22fdfa..4f197404cab9 100644
---- a/arch/x86/include/asm/tlbflush.h
-+++ b/arch/x86/include/asm/tlbflush.h
-@@ -261,6 +261,7 @@ static inline void cr4_set_bits(unsigned long mask)
-
-	local_irq_save(flags);
-	cr4 = this_cpu_read(cpu_tlbstate.cr4);
-+	BUG_ON(cr4 != __read_cr4());
-	if ((cr4 | mask) != cr4)
-		__cr4_set(cr4 | mask);
-	local_irq_restore(flags);
-@@ -273,6 +274,7 @@ static inline void cr4_clear_bits(unsigned long mask)
-
-	local_irq_save(flags);
-	cr4 = this_cpu_read(cpu_tlbstate.cr4);
-+	BUG_ON(cr4 != __read_cr4());
-	if ((cr4 & ~mask) != cr4)
-		__cr4_set(cr4 & ~mask);
-	local_irq_restore(flags);
-@@ -283,6 +285,7 @@ static inline void cr4_toggle_bits_irqsoff(unsigned long mask)
-	unsigned long cr4;
-
-	cr4 = this_cpu_read(cpu_tlbstate.cr4);
-+        BUG_ON(cr4 != __read_cr4());
-	__cr4_set(cr4 ^ mask);
- }
-
-@@ -389,6 +392,7 @@ static inline void __native_flush_tlb_global(void)
-	raw_local_irq_save(flags);
-
-	cr4 = this_cpu_read(cpu_tlbstate.cr4);
-+	BUG_ON(cr4 != __read_cr4());
-	/* toggle PGE */
-	native_write_cr4(cr4 ^ X86_CR4_PGE);
-	/* write old PGE again and flush TLBs */
-diff --git a/arch/x86/kernel/cpu/common.c b/arch/x86/kernel/cpu/common.c
-index 5f74f94244e1..9c9fdb5ef52e 100644
---- a/arch/x86/kernel/cpu/common.c
-+++ b/arch/x86/kernel/cpu/common.c
-@@ -1662,7 +1662,6 @@ void cpu_init(void)
-	wrmsrl(MSR_KERNEL_GS_BASE, 0);
-	barrier();
-
--	x86_configure_nx();
-	x2apic_setup();
-
-	/*
-diff --git a/arch/x86/kernel/process.c b/arch/x86/kernel/process.c
-index 30ca2d1a9231..bde0a18cd9f9 100644
---- a/arch/x86/kernel/process.c
-+++ b/arch/x86/kernel/process.c
-@@ -39,6 +39,8 @@
- #include <asm/desc.h>
- #include <asm/prctl.h>
- #include <asm/spec-ctrl.h>
-+#include <asm/elf.h>
-+#include <linux/sizes.h>
-
- /*
-  * per-CPU TSS segments. Threads are completely 'soft' on Linux,
-@@ -718,7 +720,10 @@ unsigned long arch_align_stack(unsigned long sp)
-
- unsigned long arch_randomize_brk(struct mm_struct *mm)
- {
--	return randomize_page(mm->brk, 0x02000000);
-+	if (mmap_is_ia32())
-+		return mm->brk + get_random_long() % SZ_32M + PAGE_SIZE;
-+	else
-+		return mm->brk + get_random_long() % SZ_1G + PAGE_SIZE;
- }
-
- /*
-diff --git a/arch/x86/kernel/sys_x86_64.c b/arch/x86/kernel/sys_x86_64.c
-index 676774b9bb8d..5ad7a95382b0 100644
---- a/arch/x86/kernel/sys_x86_64.c
-+++ b/arch/x86/kernel/sys_x86_64.c
-@@ -54,13 +54,6 @@ static unsigned long get_align_bits(void)
-	return va_align.bits & get_align_mask();
- }
-
--unsigned long align_vdso_addr(unsigned long addr)
--{
--	unsigned long align_mask = get_align_mask();
--	addr = (addr + align_mask) & ~align_mask;
--	return addr | get_align_bits();
--}
--
- static int __init control_va_addr_alignment(char *str)
- {
-	/* guard against enabling this on other CPU families */
-@@ -122,10 +115,7 @@ static void find_start_end(unsigned long addr, unsigned long flags,
-	}
-
-	*begin	= get_mmap_base(1);
--	if (in_compat_syscall())
--		*end = task_size_32bit();
--	else
--		*end = task_size_64bit(addr > DEFAULT_MAP_WINDOW);
-+	*end	= get_mmap_base(0);
- }
-
- unsigned long
-@@ -210,7 +200,7 @@ arch_get_unmapped_area_topdown(struct file *filp, const unsigned long addr0,
-
-	info.flags = VM_UNMAPPED_AREA_TOPDOWN;
-	info.length = len;
--	info.low_limit = PAGE_SIZE;
-+	info.low_limit = get_mmap_base(1);
-	info.high_limit = get_mmap_base(0);
-
-	/*
-diff --git a/arch/x86/mm/init_32.c b/arch/x86/mm/init_32.c
-index 396e1f0151ac..6526b19579dc 100644
---- a/arch/x86/mm/init_32.c
-+++ b/arch/x86/mm/init_32.c
-@@ -558,7 +558,7 @@ static void __init pagetable_init(void)
-	permanent_kmaps_init(pgd_base);
- }
-
--pteval_t __supported_pte_mask __read_mostly = ~(_PAGE_NX | _PAGE_GLOBAL);
-+pteval_t __supported_pte_mask __ro_after_init = ~(_PAGE_NX | _PAGE_GLOBAL);
- EXPORT_SYMBOL_GPL(__supported_pte_mask);
-
- /* user-defined highmem size */
-@@ -866,7 +866,7 @@ int arch_remove_memory(u64 start, u64 size, struct vmem_altmap *altmap)
- #endif
- #endif
-
--int kernel_set_to_readonly __read_mostly;
-+int kernel_set_to_readonly __ro_after_init;
-
- void set_kernel_text_rw(void)
- {
-@@ -918,12 +918,11 @@ void mark_rodata_ro(void)
-	unsigned long start = PFN_ALIGN(_text);
-	unsigned long size = PFN_ALIGN(_etext) - start;
-
-+	kernel_set_to_readonly = 1;
-	set_pages_ro(virt_to_page(start), size >> PAGE_SHIFT);
-	printk(KERN_INFO "Write protecting the kernel text: %luk\n",
-		size >> 10);
-
--	kernel_set_to_readonly = 1;
--
- #ifdef CONFIG_CPA_DEBUG
-	printk(KERN_INFO "Testing CPA: Reverting %lx-%lx\n",
-		start, start+size);
-diff --git a/arch/x86/mm/init_64.c b/arch/x86/mm/init_64.c
-index af11a2890235..b2d28d38c01e 100644
---- a/arch/x86/mm/init_64.c
-+++ b/arch/x86/mm/init_64.c
-@@ -65,7 +65,7 @@
-  * around without checking the pgd every time.
-  */
-
--pteval_t __supported_pte_mask __read_mostly = ~0;
-+pteval_t __supported_pte_mask __ro_after_init = ~0;
- EXPORT_SYMBOL_GPL(__supported_pte_mask);
-
- int force_personality32;
-@@ -1195,7 +1195,7 @@ void __init mem_init(void)
-	mem_init_print_info(NULL);
- }
-
--int kernel_set_to_readonly;
-+int kernel_set_to_readonly __ro_after_init;
-
- void set_kernel_text_rw(void)
- {
-@@ -1244,9 +1244,8 @@ void mark_rodata_ro(void)
-
-	printk(KERN_INFO "Write protecting the kernel read-only data: %luk\n",
-	       (end - start) >> 10);
--	set_memory_ro(start, (end - start) >> PAGE_SHIFT);
--
-	kernel_set_to_readonly = 1;
-+	set_memory_ro(start, (end - start) >> PAGE_SHIFT);
-
-	/*
-	 * The rodata/data/bss/brk section (but not the kernel text!)
-diff --git a/block/blk-softirq.c b/block/blk-softirq.c
-index 01e2b353a2b9..9aeddca4a29f 100644
---- a/block/blk-softirq.c
-+++ b/block/blk-softirq.c
-@@ -20,7 +20,7 @@ static DEFINE_PER_CPU(struct list_head, blk_cpu_done);
-  * Softirq action handler - move entries to local list and loop over them
-  * while passing them to the queue registered handler.
-  */
--static __latent_entropy void blk_done_softirq(struct softirq_action *h)
-+static __latent_entropy void blk_done_softirq(void)
- {
-	struct list_head *cpu_list, local_list;
-
-diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c
-index 0df21f046fc6..6f8d9bf71bba 100644
---- a/drivers/ata/libata-core.c
-+++ b/drivers/ata/libata-core.c
-@@ -5151,7 +5151,7 @@ void ata_qc_free(struct ata_queued_cmd *qc)
-	struct ata_port *ap;
-	unsigned int tag;
-
--	WARN_ON_ONCE(qc == NULL); /* ata_qc_from_tag _might_ return NULL */
-+	BUG_ON(qc == NULL); /* ata_qc_from_tag _might_ return NULL */
-	ap = qc->ap;
-
-	qc->flags = 0;
-@@ -5168,7 +5168,7 @@ void __ata_qc_complete(struct ata_queued_cmd *qc)
-	struct ata_port *ap;
-	struct ata_link *link;
-
--	WARN_ON_ONCE(qc == NULL); /* ata_qc_from_tag _might_ return NULL */
-+	BUG_ON(qc == NULL); /* ata_qc_from_tag _might_ return NULL */
-	WARN_ON_ONCE(!(qc->flags & ATA_QCFLAG_ACTIVE));
-	ap = qc->ap;
-	link = qc->dev->link;
-diff --git a/drivers/char/Kconfig b/drivers/char/Kconfig
-index c28dca0c613d..d4813f0d25ca 100644
---- a/drivers/char/Kconfig
-+++ b/drivers/char/Kconfig
-@@ -9,7 +9,6 @@ source "drivers/tty/Kconfig"
-
- config DEVMEM
-	bool "/dev/mem virtual device support"
--	default y
-	help
-	  Say Y here if you want to support the /dev/mem device.
-	  The /dev/mem device is used to access areas of physical
-@@ -568,7 +567,6 @@ config TELCLOCK
- config DEVPORT
-	bool "/dev/port character device"
-	depends on ISA || PCI
--	default y
-	help
-	  Say Y here if you want to support the /dev/port device. The /dev/port
-	  device is similar to /dev/mem, but for I/O ports.
-diff --git a/drivers/tty/Kconfig b/drivers/tty/Kconfig
-index b811442c5ce6..4f62a63cbcb1 100644
---- a/drivers/tty/Kconfig
-+++ b/drivers/tty/Kconfig
-@@ -122,7 +122,6 @@ config UNIX98_PTYS
-
- config LEGACY_PTYS
-	bool "Legacy (BSD) PTY support"
--	default y
-	---help---
-	  A pseudo terminal (PTY) is a software device consisting of two
-	  halves: a master and a slave. The slave device behaves identical to
-diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c
-index 83c58a20d16f..32ef2e3a8482 100644
---- a/drivers/usb/core/hub.c
-+++ b/drivers/usb/core/hub.c
-@@ -41,6 +41,8 @@
- #define USB_TP_TRANSMISSION_DELAY	40	/* ns */
- #define USB_TP_TRANSMISSION_DELAY_MAX	65535	/* ns */
-
-+extern int deny_new_usb;
-+
- /* Protect struct usb_device->state and ->children members
-  * Note: Both are also protected by ->dev.sem, except that ->state can
-  * change to USB_STATE_NOTATTACHED even when the semaphore isn't held. */
-@@ -4847,6 +4849,12 @@ static void hub_port_connect(struct usb_hub *hub, int port1, u16 portstatus,
-			goto done;
-		return;
-	}
-+
-+	if (deny_new_usb) {
-+		dev_err(&port_dev->dev, "denied insert of USB device on port %d\n", port1);
-+		goto done;
-+	}
-+
-	if (hub_is_superspeed(hub->hdev))
-		unit_load = 150;
-	else
-diff --git a/fs/exec.c b/fs/exec.c
-index 7eb8d21bcab9..171f31b3bf05 100644
---- a/fs/exec.c
-+++ b/fs/exec.c
-@@ -62,6 +62,7 @@
- #include <linux/oom.h>
- #include <linux/compat.h>
- #include <linux/vmalloc.h>
-+#include <linux/random.h>
-
- #include <linux/uaccess.h>
- #include <asm/mmu_context.h>
-@@ -321,6 +322,8 @@ static int __bprm_mm_init(struct linux_binprm *bprm)
-	arch_bprm_mm_init(mm, vma);
-	up_write(&mm->mmap_sem);
-	bprm->p = vma->vm_end - sizeof(void *);
-+	if (randomize_va_space)
-+		bprm->p ^= get_random_int() & ~PAGE_MASK;
-	return 0;
- err:
-	up_write(&mm->mmap_sem);
-diff --git a/fs/namei.c b/fs/namei.c
-index b61d6aa9279d..255c2dc36189 100644
---- a/fs/namei.c
-+++ b/fs/namei.c
-@@ -883,8 +883,8 @@ static inline void put_link(struct nameidata *nd)
-		path_put(&last->link);
- }
-
--int sysctl_protected_symlinks __read_mostly = 0;
--int sysctl_protected_hardlinks __read_mostly = 0;
-+int sysctl_protected_symlinks __read_mostly = 1;
-+int sysctl_protected_hardlinks __read_mostly = 1;
-
- /**
-  * may_follow_link - Check symlink following for unsafe situations
-diff --git a/fs/nfs/Kconfig b/fs/nfs/Kconfig
-index 5f93cfacb3d1..cea0d7d3b23e 100644
---- a/fs/nfs/Kconfig
-+++ b/fs/nfs/Kconfig
-@@ -195,4 +195,3 @@ config NFS_DEBUG
-	bool
-	depends on NFS_FS && SUNRPC_DEBUG
-	select CRC32
--	default y
-diff --git a/fs/proc/Kconfig b/fs/proc/Kconfig
-index 1ade1206bb89..60b0f76dec47 100644
---- a/fs/proc/Kconfig
-+++ b/fs/proc/Kconfig
-@@ -39,7 +39,6 @@ config PROC_KCORE
- config PROC_VMCORE
-	bool "/proc/vmcore support"
-	depends on PROC_FS && CRASH_DUMP
--	default y
-         help
-         Exports the dump image of crashed kernel in ELF format.
-
-diff --git a/fs/stat.c b/fs/stat.c
-index 873785dae022..d3c2ada8b9c7 100644
---- a/fs/stat.c
-+++ b/fs/stat.c
-@@ -40,8 +40,13 @@ void generic_fillattr(struct inode *inode, struct kstat *stat)
-	stat->gid = inode->i_gid;
-	stat->rdev = inode->i_rdev;
-	stat->size = i_size_read(inode);
--	stat->atime = inode->i_atime;
--	stat->mtime = inode->i_mtime;
-+	if (is_sidechannel_device(inode) && !capable_noaudit(CAP_MKNOD)) {
-+		stat->atime = inode->i_ctime;
-+		stat->mtime = inode->i_ctime;
-+	} else {
-+		stat->atime = inode->i_atime;
-+		stat->mtime = inode->i_mtime;
-+	}
-	stat->ctime = inode->i_ctime;
-	stat->blksize = i_blocksize(inode);
-	stat->blocks = inode->i_blocks;
-@@ -75,9 +80,14 @@ int vfs_getattr_nosec(const struct path *path, struct kstat *stat,
-	stat->result_mask |= STATX_BASIC_STATS;
-	request_mask &= STATX_ALL;
-	query_flags &= KSTAT_QUERY_FLAGS;
--	if (inode->i_op->getattr)
--		return inode->i_op->getattr(path, stat, request_mask,
--					    query_flags);
-+	if (inode->i_op->getattr) {
-+		int retval = inode->i_op->getattr(path, stat, request_mask, query_flags);
-+		if (!retval && is_sidechannel_device(inode) && !capable_noaudit(CAP_MKNOD)) {
-+			stat->atime = stat->ctime;
-+			stat->mtime = stat->ctime;
-+		}
-+		return retval;
-+	}
-
-	generic_fillattr(inode, stat);
-	return 0;
-diff --git a/include/linux/cache.h b/include/linux/cache.h
-index 750621e41d1c..e7157c18c62c 100644
---- a/include/linux/cache.h
-+++ b/include/linux/cache.h
-@@ -31,6 +31,8 @@
- #define __ro_after_init __attribute__((__section__(".data..ro_after_init")))
- #endif
-
-+#define __read_only __ro_after_init
-+
- #ifndef ____cacheline_aligned
- #define ____cacheline_aligned __attribute__((__aligned__(SMP_CACHE_BYTES)))
- #endif
-diff --git a/include/linux/capability.h b/include/linux/capability.h
-index f640dcbc880c..2b4f5d651f19 100644
---- a/include/linux/capability.h
-+++ b/include/linux/capability.h
-@@ -207,6 +207,7 @@ extern bool has_capability_noaudit(struct task_struct *t, int cap);
- extern bool has_ns_capability_noaudit(struct task_struct *t,
-				      struct user_namespace *ns, int cap);
- extern bool capable(int cap);
-+extern bool capable_noaudit(int cap);
- extern bool ns_capable(struct user_namespace *ns, int cap);
- extern bool ns_capable_noaudit(struct user_namespace *ns, int cap);
- #else
-@@ -232,6 +233,10 @@ static inline bool capable(int cap)
- {
-	return true;
- }
-+static inline bool capable_noaudit(int cap)
-+{
-+	return true;
-+}
- static inline bool ns_capable(struct user_namespace *ns, int cap)
- {
-	return true;
-diff --git a/include/linux/fs.h b/include/linux/fs.h
-index c6baf767619e..31904f3d38a6 100644
---- a/include/linux/fs.h
-+++ b/include/linux/fs.h
-@@ -3407,4 +3407,15 @@ static inline bool dir_relax_shared(struct inode *inode)
- extern bool path_noexec(const struct path *path);
- extern void inode_nohighmem(struct inode *inode);
-
-+extern int device_sidechannel_restrict;
-+
-+static inline bool is_sidechannel_device(const struct inode *inode)
-+{
-+	umode_t mode;
-+	if (!device_sidechannel_restrict)
-+		return false;
-+	mode = inode->i_mode;
-+	return ((S_ISCHR(mode) || S_ISBLK(mode)) && (mode & (S_IROTH | S_IWOTH)));
-+}
-+
- #endif /* _LINUX_FS_H */
-diff --git a/include/linux/fsnotify.h b/include/linux/fsnotify.h
-index bdaf22582f6e..326ff15d4637 100644
---- a/include/linux/fsnotify.h
-+++ b/include/linux/fsnotify.h
-@@ -181,6 +181,9 @@ static inline void fsnotify_access(struct file *file)
-	struct inode *inode = path->dentry->d_inode;
-	__u32 mask = FS_ACCESS;
-
-+	if (is_sidechannel_device(inode))
-+		return;
-+
-	if (S_ISDIR(inode->i_mode))
-		mask |= FS_ISDIR;
-
-@@ -199,6 +202,9 @@ static inline void fsnotify_modify(struct file *file)
-	struct inode *inode = path->dentry->d_inode;
-	__u32 mask = FS_MODIFY;
-
-+	if (is_sidechannel_device(inode))
-+		return;
-+
-	if (S_ISDIR(inode->i_mode))
-		mask |= FS_ISDIR;
-
-diff --git a/include/linux/gfp.h b/include/linux/gfp.h
-index 1a4582b44d32..4d445a8fe7f2 100644
---- a/include/linux/gfp.h
-+++ b/include/linux/gfp.h
-@@ -513,9 +513,9 @@ extern struct page *alloc_pages_vma(gfp_t gfp_mask, int order,
- extern unsigned long __get_free_pages(gfp_t gfp_mask, unsigned int order);
- extern unsigned long get_zeroed_page(gfp_t gfp_mask);
-
--void *alloc_pages_exact(size_t size, gfp_t gfp_mask);
-+void *alloc_pages_exact(size_t size, gfp_t gfp_mask) __attribute__((alloc_size(1)));
- void free_pages_exact(void *virt, size_t size);
--void * __meminit alloc_pages_exact_nid(int nid, size_t size, gfp_t gfp_mask);
-+void * __meminit alloc_pages_exact_nid(int nid, size_t size, gfp_t gfp_mask) __attribute__((alloc_size(1)));
-
- #define __get_free_page(gfp_mask) \
-		__get_free_pages((gfp_mask), 0)
-diff --git a/include/linux/highmem.h b/include/linux/highmem.h
-index 776f90f3a1cd..3f5c47000059 100644
---- a/include/linux/highmem.h
-+++ b/include/linux/highmem.h
-@@ -191,6 +191,13 @@ static inline void clear_highpage(struct page *page)
-	kunmap_atomic(kaddr);
- }
-
-+static inline void verify_zero_highpage(struct page *page)
-+{
-+	void *kaddr = kmap_atomic(page);
-+	BUG_ON(memchr_inv(kaddr, 0, PAGE_SIZE));
-+	kunmap_atomic(kaddr);
-+}
-+
- static inline void zero_user_segments(struct page *page,
-	unsigned start1, unsigned end1,
-	unsigned start2, unsigned end2)
-diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h
-index 69c238210325..ee487ea4f48f 100644
---- a/include/linux/interrupt.h
-+++ b/include/linux/interrupt.h
-@@ -485,7 +485,7 @@ extern const char * const softirq_to_name[NR_SOFTIRQS];
-
- struct softirq_action
- {
--	void	(*action)(struct softirq_action *);
-+	void	(*action)(void);
- };
-
- asmlinkage void do_softirq(void);
-@@ -500,7 +500,7 @@ static inline void do_softirq_own_stack(void)
- }
- #endif
-
--extern void open_softirq(int nr, void (*action)(struct softirq_action *));
-+extern void __init open_softirq(int nr, void (*action)(void));
- extern void softirq_init(void);
- extern void __raise_softirq_irqoff(unsigned int nr);
-
-diff --git a/include/linux/kobject_ns.h b/include/linux/kobject_ns.h
-index 069aa2ebef90..cb9e3637a620 100644
---- a/include/linux/kobject_ns.h
-+++ b/include/linux/kobject_ns.h
-@@ -45,7 +45,7 @@ struct kobj_ns_type_operations {
-	void (*drop_ns)(void *);
- };
-
--int kobj_ns_type_register(const struct kobj_ns_type_operations *ops);
-+int __init kobj_ns_type_register(const struct kobj_ns_type_operations *ops);
- int kobj_ns_type_registered(enum kobj_ns_type type);
- const struct kobj_ns_type_operations *kobj_child_ns_ops(struct kobject *parent);
- const struct kobj_ns_type_operations *kobj_ns_ops(struct kobject *kobj);
-diff --git a/include/linux/mm.h b/include/linux/mm.h
-index a4e9bdbec490..0fe7ebd0f462 100644
---- a/include/linux/mm.h
-+++ b/include/linux/mm.h
-@@ -535,7 +535,7 @@ static inline int is_vmalloc_or_module_addr(const void *x)
- }
- #endif
-
--extern void *kvmalloc_node(size_t size, gfp_t flags, int node);
-+extern void *kvmalloc_node(size_t size, gfp_t flags, int node) __attribute__((alloc_size(1)));
- static inline void *kvmalloc(size_t size, gfp_t flags)
- {
-	return kvmalloc_node(size, flags, NUMA_NO_NODE);
-diff --git a/include/linux/percpu.h b/include/linux/percpu.h
-index 296bbe49d5d1..b26652c9a98d 100644
---- a/include/linux/percpu.h
-+++ b/include/linux/percpu.h
-@@ -129,7 +129,7 @@ extern int __init pcpu_page_first_chunk(size_t reserved_size,
-				pcpu_fc_populate_pte_fn_t populate_pte_fn);
- #endif
-
--extern void __percpu *__alloc_reserved_percpu(size_t size, size_t align);
-+extern void __percpu *__alloc_reserved_percpu(size_t size, size_t align) __attribute__((alloc_size(1)));
- extern bool __is_kernel_percpu_address(unsigned long addr, unsigned long *can_addr);
- extern bool is_kernel_percpu_address(unsigned long addr);
-
-@@ -137,8 +137,8 @@ extern bool is_kernel_percpu_address(unsigned long addr);
- extern void __init setup_per_cpu_areas(void);
- #endif
-
--extern void __percpu *__alloc_percpu_gfp(size_t size, size_t align, gfp_t gfp);
--extern void __percpu *__alloc_percpu(size_t size, size_t align);
-+extern void __percpu *__alloc_percpu_gfp(size_t size, size_t align, gfp_t gfp) __attribute__((alloc_size(1)));
-+extern void __percpu *__alloc_percpu(size_t size, size_t align) __attribute__((alloc_size(1)));
- extern void free_percpu(void __percpu *__pdata);
- extern phys_addr_t per_cpu_ptr_to_phys(void *addr);
-
-diff --git a/include/linux/perf_event.h b/include/linux/perf_event.h
-index 7546822a1d74..320033b310d2 100644
---- a/include/linux/perf_event.h
-+++ b/include/linux/perf_event.h
-@@ -1151,6 +1151,11 @@ extern int perf_cpu_time_max_percent_handler(struct ctl_table *table, int write,
- int perf_event_max_stack_handler(struct ctl_table *table, int write,
-				 void __user *buffer, size_t *lenp, loff_t *ppos);
-
-+static inline bool perf_paranoid_any(void)
-+{
-+	return sysctl_perf_event_paranoid > 2;
-+}
-+
- static inline bool perf_paranoid_tracepoint_raw(void)
- {
-	return sysctl_perf_event_paranoid > -1;
-diff --git a/include/linux/slab.h b/include/linux/slab.h
-index 231abc8976c5..b0bf5d4a4934 100644
---- a/include/linux/slab.h
-+++ b/include/linux/slab.h
-@@ -177,8 +177,8 @@ void memcg_destroy_kmem_caches(struct mem_cgroup *);
- /*
-  * Common kmalloc functions provided by all allocators
-  */
--void * __must_check __krealloc(const void *, size_t, gfp_t);
--void * __must_check krealloc(const void *, size_t, gfp_t);
-+void * __must_check __krealloc(const void *, size_t, gfp_t) __attribute__((alloc_size(2)));
-+void * __must_check krealloc(const void *, size_t, gfp_t) __attribute((alloc_size(2)));
- void kfree(const void *);
- void kzfree(const void *);
- size_t ksize(const void *);
-@@ -351,7 +351,7 @@ static __always_inline int kmalloc_index(size_t size)
- }
- #endif /* !CONFIG_SLOB */
-
--void *__kmalloc(size_t size, gfp_t flags) __assume_kmalloc_alignment __malloc;
-+void *__kmalloc(size_t size, gfp_t flags) __assume_kmalloc_alignment __malloc __attribute__((alloc_size(1)));
- void *kmem_cache_alloc(struct kmem_cache *, gfp_t flags) __assume_slab_alignment __malloc;
- void kmem_cache_free(struct kmem_cache *, void *);
-
-@@ -375,7 +375,7 @@ static __always_inline void kfree_bulk(size_t size, void **p)
- }
-
- #ifdef CONFIG_NUMA
--void *__kmalloc_node(size_t size, gfp_t flags, int node) __assume_kmalloc_alignment __malloc;
-+void *__kmalloc_node(size_t size, gfp_t flags, int node) __assume_kmalloc_alignment __malloc __attribute__((alloc_size(1)));
- void *kmem_cache_alloc_node(struct kmem_cache *, gfp_t flags, int node) __assume_slab_alignment __malloc;
- #else
- static __always_inline void *__kmalloc_node(size_t size, gfp_t flags, int node)
-@@ -497,7 +497,7 @@ static __always_inline void *kmalloc_large(size_t size, gfp_t flags)
-  * for general use, and so are not documented here. For a full list of
-  * potential flags, always refer to linux/gfp.h.
-  */
--static __always_inline void *kmalloc(size_t size, gfp_t flags)
-+static __always_inline __attribute__((alloc_size(1))) void *kmalloc(size_t size, gfp_t flags)
- {
-	if (__builtin_constant_p(size)) {
-		if (size > KMALLOC_MAX_CACHE_SIZE)
-@@ -537,7 +537,7 @@ static __always_inline int kmalloc_size(int n)
-	return 0;
- }
-
--static __always_inline void *kmalloc_node(size_t size, gfp_t flags, int node)
-+static __always_inline __attribute__((alloc_size(1))) void *kmalloc_node(size_t size, gfp_t flags, int node)
- {
- #ifndef CONFIG_SLOB
-	if (__builtin_constant_p(size) &&
-diff --git a/include/linux/slub_def.h b/include/linux/slub_def.h
-index 8ad99c47b19c..91fea0d0db3b 100644
---- a/include/linux/slub_def.h
-+++ b/include/linux/slub_def.h
-@@ -120,6 +120,11 @@ struct kmem_cache {
-	unsigned long random;
- #endif
-
-+#ifdef CONFIG_SLAB_CANARY
-+	unsigned long random_active;
-+	unsigned long random_inactive;
-+#endif
-+
- #ifdef CONFIG_NUMA
-	/*
-	 * Defragmentation by allocating from a remote node.
-diff --git a/include/linux/string.h b/include/linux/string.h
-index dd39a690c841..00d16d874c0a 100644
---- a/include/linux/string.h
-+++ b/include/linux/string.h
-@@ -235,10 +235,16 @@ void __read_overflow2(void) __compiletime_error("detected read beyond size of ob
- void __read_overflow3(void) __compiletime_error("detected read beyond size of object passed as 3rd parameter");
- void __write_overflow(void) __compiletime_error("detected write beyond size of object passed as 1st parameter");
-
-+#ifdef CONFIG_FORTIFY_SOURCE_STRICT_STRING
-+#define __string_size(p) __builtin_object_size(p, 1)
-+#else
-+#define __string_size(p) __builtin_object_size(p, 0)
-+#endif
-+
- #if !defined(__NO_FORTIFY) && defined(__OPTIMIZE__) && defined(CONFIG_FORTIFY_SOURCE)
- __FORTIFY_INLINE char *strncpy(char *p, const char *q, __kernel_size_t size)
- {
--	size_t p_size = __builtin_object_size(p, 0);
-+	size_t p_size = __string_size(p);
-	if (__builtin_constant_p(size) && p_size < size)
-		__write_overflow();
-	if (p_size < size)
-@@ -248,7 +254,7 @@ __FORTIFY_INLINE char *strncpy(char *p, const char *q, __kernel_size_t size)
-
- __FORTIFY_INLINE char *strcat(char *p, const char *q)
- {
--	size_t p_size = __builtin_object_size(p, 0);
-+	size_t p_size = __string_size(p);
-	if (p_size == (size_t)-1)
-		return __builtin_strcat(p, q);
-	if (strlcat(p, q, p_size) >= p_size)
-@@ -259,7 +265,7 @@ __FORTIFY_INLINE char *strcat(char *p, const char *q)
- __FORTIFY_INLINE __kernel_size_t strlen(const char *p)
- {
-	__kernel_size_t ret;
--	size_t p_size = __builtin_object_size(p, 0);
-+	size_t p_size = __string_size(p);
-
-	/* Work around gcc excess stack consumption issue */
-	if (p_size == (size_t)-1 ||
-@@ -274,7 +280,7 @@ __FORTIFY_INLINE __kernel_size_t strlen(const char *p)
- extern __kernel_size_t __real_strnlen(const char *, __kernel_size_t) __RENAME(strnlen);
- __FORTIFY_INLINE __kernel_size_t strnlen(const char *p, __kernel_size_t maxlen)
- {
--	size_t p_size = __builtin_object_size(p, 0);
-+	size_t p_size = __string_size(p);
-	__kernel_size_t ret = __real_strnlen(p, maxlen < p_size ? maxlen : p_size);
-	if (p_size <= ret && maxlen != ret)
-		fortify_panic(__func__);
-@@ -286,8 +292,8 @@ extern size_t __real_strlcpy(char *, const char *, size_t) __RENAME(strlcpy);
- __FORTIFY_INLINE size_t strlcpy(char *p, const char *q, size_t size)
- {
-	size_t ret;
--	size_t p_size = __builtin_object_size(p, 0);
--	size_t q_size = __builtin_object_size(q, 0);
-+	size_t p_size = __string_size(p);
-+	size_t q_size = __string_size(q);
-	if (p_size == (size_t)-1 && q_size == (size_t)-1)
-		return __real_strlcpy(p, q, size);
-	ret = strlen(q);
-@@ -307,8 +313,8 @@ __FORTIFY_INLINE size_t strlcpy(char *p, const char *q, size_t size)
- __FORTIFY_INLINE char *strncat(char *p, const char *q, __kernel_size_t count)
- {
-	size_t p_len, copy_len;
--	size_t p_size = __builtin_object_size(p, 0);
--	size_t q_size = __builtin_object_size(q, 0);
-+	size_t p_size = __string_size(p);
-+	size_t q_size = __string_size(q);
-	if (p_size == (size_t)-1 && q_size == (size_t)-1)
-		return __builtin_strncat(p, q, count);
-	p_len = strlen(p);
-@@ -421,8 +427,8 @@ __FORTIFY_INLINE void *kmemdup(const void *p, size_t size, gfp_t gfp)
- /* defined after fortified strlen and memcpy to reuse them */
- __FORTIFY_INLINE char *strcpy(char *p, const char *q)
- {
--	size_t p_size = __builtin_object_size(p, 0);
--	size_t q_size = __builtin_object_size(q, 0);
-+	size_t p_size = __string_size(p);
-+	size_t q_size = __string_size(q);
-	if (p_size == (size_t)-1 && q_size == (size_t)-1)
-		return __builtin_strcpy(p, q);
-	memcpy(p, q, strlen(q) + 1);
-diff --git a/include/linux/vmalloc.h b/include/linux/vmalloc.h
-index 1e5d8c392f15..66d0e49c9987 100644
---- a/include/linux/vmalloc.h
-+++ b/include/linux/vmalloc.h
-@@ -68,19 +68,19 @@ static inline void vmalloc_init(void)
- }
- #endif
-
--extern void *vmalloc(unsigned long size);
--extern void *vzalloc(unsigned long size);
--extern void *vmalloc_user(unsigned long size);
--extern void *vmalloc_node(unsigned long size, int node);
--extern void *vzalloc_node(unsigned long size, int node);
--extern void *vmalloc_exec(unsigned long size);
--extern void *vmalloc_32(unsigned long size);
--extern void *vmalloc_32_user(unsigned long size);
--extern void *__vmalloc(unsigned long size, gfp_t gfp_mask, pgprot_t prot);
-+extern void *vmalloc(unsigned long size) __attribute__((alloc_size(1)));
-+extern void *vzalloc(unsigned long size) __attribute__((alloc_size(1)));
-+extern void *vmalloc_user(unsigned long size) __attribute__((alloc_size(1)));
-+extern void *vmalloc_node(unsigned long size, int node) __attribute__((alloc_size(1)));
-+extern void *vzalloc_node(unsigned long size, int node) __attribute__((alloc_size(1)));
-+extern void *vmalloc_exec(unsigned long size) __attribute__((alloc_size(1)));
-+extern void *vmalloc_32(unsigned long size) __attribute__((alloc_size(1)));
-+extern void *vmalloc_32_user(unsigned long size) __attribute__((alloc_size(1)));
-+extern void *__vmalloc(unsigned long size, gfp_t gfp_mask, pgprot_t prot) __attribute__((alloc_size(1)));
- extern void *__vmalloc_node_range(unsigned long size, unsigned long align,
-			unsigned long start, unsigned long end, gfp_t gfp_mask,
-			pgprot_t prot, unsigned long vm_flags, int node,
--			const void *caller);
-+			const void *caller) __attribute__((alloc_size(1)));
- #ifndef CONFIG_MMU
- extern void *__vmalloc_node_flags(unsigned long size, int node, gfp_t flags);
- static inline void *__vmalloc_node_flags_caller(unsigned long size, int node,
-diff --git a/init/Kconfig b/init/Kconfig
-index e37f4b2a6445..49c20dea1afd 100644
---- a/init/Kconfig
-+++ b/init/Kconfig
-@@ -296,6 +296,7 @@ config USELIB
- config AUDIT
-	bool "Auditing support"
-	depends on NET
-+	default y
-	help
-	  Enable auditing infrastructure that can be used with another
-	  kernel subsystem, such as SELinux (which requires this for
-@@ -1039,6 +1040,12 @@ config CC_OPTIMIZE_FOR_SIZE
-
- endchoice
-
-+config LOCAL_INIT
-+	bool "Zero uninitialized locals"
-+	help
-+	  Zero-fill uninitialized local variables, other than variable-length
-+	  arrays. Requires compiler support.
-+
- config SYSCTL
-	bool
-
-@@ -1296,8 +1303,7 @@ config SHMEM
-	  which may be appropriate on small systems without swap.
-
- config AIO
--	bool "Enable AIO support" if EXPERT
--	default y
-+	bool "Enable AIO support"
-	help
-	  This option enables POSIX asynchronous I/O which may by used
-	  by some high performance threaded applications. Disabling
-@@ -1502,7 +1508,7 @@ config VM_EVENT_COUNTERS
-
- config SLUB_DEBUG
-	default y
--	bool "Enable SLUB debugging support" if EXPERT
-+	bool "Enable SLUB debugging support"
-	depends on SLUB && SYSFS
-	help
-	  SLUB has extensive debug support features. Disabling these can
-@@ -1526,7 +1532,6 @@ config SLUB_MEMCG_SYSFS_ON
-
- config COMPAT_BRK
-	bool "Disable heap randomization"
--	default y
-	help
-	  Randomizing heap placement makes heap exploits harder, but it
-	  also breaks ancient binaries (including anything libc5 based).
-@@ -1573,7 +1578,6 @@ endchoice
-
- config SLAB_MERGE_DEFAULT
-	bool "Allow slab caches to be merged"
--	default y
-	help
-	  For reduced kernel memory fragmentation, slab caches can be
-	  merged when they share the same size and other characteristics.
-@@ -1586,9 +1590,9 @@ config SLAB_MERGE_DEFAULT
-	  command line.
-
- config SLAB_FREELIST_RANDOM
--	default n
-	depends on SLAB || SLUB
-	bool "SLAB freelist randomization"
-+	default y
-	help
-	  Randomizes the freelist order used on creating new pages. This
-	  security feature reduces the predictability of the kernel slab
-@@ -1597,12 +1601,56 @@ config SLAB_FREELIST_RANDOM
- config SLAB_FREELIST_HARDENED
-	bool "Harden slab freelist metadata"
-	depends on SLUB
-+	default y
-	help
-	  Many kernel heap attacks try to target slab cache metadata and
-	  other infrastructure. This options makes minor performance
-	  sacrifies to harden the kernel slab allocator against common
-	  freelist exploit methods.
-
-+config SLAB_HARDENED
-+	default y
-+	depends on SLUB
-+	bool "Hardened SLAB infrastructure"
-+	help
-+          Make minor performance sacrifices to harden the kernel slab
-+          allocator.
-+
-+config SLAB_CANARY
-+	depends on SLUB
-+	depends on !SLAB_MERGE_DEFAULT
-+	bool "SLAB canaries"
-+	default y
-+	help
-+	  Place canaries at the end of kernel slab allocations, sacrificing
-+	  some performance and memory usage for security.
-+
-+	  Canaries can detect some forms of heap corruption when allocations
-+	  are freed and as part of the HARDENED_USERCOPY feature. It provides
-+	  basic use-after-free detection for HARDENED_USERCOPY.
-+
-+	  Canaries absorb small overflows (rendering them harmless), mitigate
-+	  non-NUL terminated C string overflows on 64-bit via a guaranteed zero
-+	  byte and provide basic double-free detection.
-+
-+config SLAB_SANITIZE
-+	bool "Sanitize SLAB allocations"
-+	depends on SLUB
-+	default y
-+	help
-+	  Zero fill slab allocations on free, reducing the lifetime of
-+	  sensitive data and helping to mitigate use-after-free bugs.
-+
-+	  For slabs with debug poisoning enabling, this has no impact.
-+
-+config SLAB_SANITIZE_VERIFY
-+	depends on SLAB_SANITIZE && PAGE_SANITIZE
-+	default y
-+	bool "Verify sanitized SLAB allocations"
-+	help
-+	  Verify that newly allocated slab allocations are zeroed to detect
-+	  write-after-free bugs.
-+
- config SLUB_CPU_PARTIAL
-	default y
-	depends on SLUB && SMP
-diff --git a/kernel/audit.c b/kernel/audit.c
-index 227db99b0f19..aec52b408543 100644
---- a/kernel/audit.c
-+++ b/kernel/audit.c
-@@ -1578,6 +1578,9 @@ static int __init audit_enable(char *str)
-
-	if (audit_default == AUDIT_OFF)
-		audit_initialized = AUDIT_DISABLED;
-+	else if (!audit_ever_enabled)
-+		audit_initialized = AUDIT_UNINITIALIZED;
-+
-	if (audit_set_enabled(audit_default))
-		panic("audit: error setting audit state (%d)\n", audit_default);
-
-diff --git a/kernel/bpf/core.c b/kernel/bpf/core.c
-index ba03ec39efb3..47ed9081b668 100644
---- a/kernel/bpf/core.c
-+++ b/kernel/bpf/core.c
-@@ -302,7 +302,7 @@ struct bpf_prog *bpf_patch_insn_single(struct bpf_prog *prog, u32 off,
- #ifdef CONFIG_BPF_JIT
- /* All BPF JIT sysctl knobs here. */
- int bpf_jit_enable   __read_mostly = IS_BUILTIN(CONFIG_BPF_JIT_ALWAYS_ON);
--int bpf_jit_harden   __read_mostly;
-+int bpf_jit_harden   __read_mostly = 2;
- int bpf_jit_kallsyms __read_mostly;
-
- static __always_inline void
-diff --git a/kernel/bpf/syscall.c b/kernel/bpf/syscall.c
-index 43f95d190eea..8e353f596873 100644
---- a/kernel/bpf/syscall.c
-+++ b/kernel/bpf/syscall.c
-@@ -42,7 +42,7 @@ static DEFINE_SPINLOCK(prog_idr_lock);
- static DEFINE_IDR(map_idr);
- static DEFINE_SPINLOCK(map_idr_lock);
-
--int sysctl_unprivileged_bpf_disabled __read_mostly;
-+int sysctl_unprivileged_bpf_disabled __read_mostly = 1;
-
- static const struct bpf_map_ops * const bpf_map_types[] = {
- #define BPF_PROG_TYPE(_id, _ops)
-diff --git a/kernel/capability.c b/kernel/capability.c
-index 1e1c0236f55b..452062fe45ce 100644
---- a/kernel/capability.c
-+++ b/kernel/capability.c
-@@ -431,6 +431,12 @@ bool capable(int cap)
-	return ns_capable(&init_user_ns, cap);
- }
- EXPORT_SYMBOL(capable);
-+
-+bool capable_noaudit(int cap)
-+{
-+	return ns_capable_noaudit(&init_user_ns, cap);
-+}
-+EXPORT_SYMBOL(capable_noaudit);
- #endif /* CONFIG_MULTIUSER */
-
- /**
-diff --git a/kernel/events/core.c b/kernel/events/core.c
-index ca7298760c83..910ac6cc9f07 100644
---- a/kernel/events/core.c
-+++ b/kernel/events/core.c
-@@ -397,8 +397,13 @@ static cpumask_var_t perf_online_mask;
-  *   0 - disallow raw tracepoint access for unpriv
-  *   1 - disallow cpu events for unpriv
-  *   2 - disallow kernel profiling for unpriv
-+ *   3 - disallow all unpriv perf event use
-  */
-+#ifdef CONFIG_SECURITY_PERF_EVENTS_RESTRICT
-+int sysctl_perf_event_paranoid __read_mostly = 3;
-+#else
- int sysctl_perf_event_paranoid __read_mostly = 2;
-+#endif
-
- /* Minimum for 512 kiB + 1 user control page */
- int sysctl_perf_event_mlock __read_mostly = 512 + (PAGE_SIZE / 1024); /* 'free' kiB per user */
-@@ -9921,6 +9926,9 @@ SYSCALL_DEFINE5(perf_event_open,
-	if (flags & ~PERF_FLAG_ALL)
-		return -EINVAL;
-
-+	if (perf_paranoid_any() && !capable(CAP_SYS_ADMIN))
-+		return -EACCES;
-+
-	err = perf_copy_attr(attr_uptr, &attr);
-	if (err)
-		return err;
-diff --git a/kernel/fork.c b/kernel/fork.c
-index e5d9d405ae4e..c4be89c51f25 100644
---- a/kernel/fork.c
-+++ b/kernel/fork.c
-@@ -103,6 +103,11 @@
-
- #define CREATE_TRACE_POINTS
- #include <trace/events/task.h>
-+#ifdef CONFIG_USER_NS
-+extern int unprivileged_userns_clone;
-+#else
-+#define unprivileged_userns_clone 0
-+#endif
-
- /*
-  * Minimum number of threads to boot the kernel
-@@ -1591,6 +1596,10 @@ static __latent_entropy struct task_struct *copy_process(
-	if ((clone_flags & (CLONE_NEWUSER|CLONE_FS)) == (CLONE_NEWUSER|CLONE_FS))
-		return ERR_PTR(-EINVAL);
-
-+	if ((clone_flags & CLONE_NEWUSER) && !unprivileged_userns_clone)
-+		if (!capable(CAP_SYS_ADMIN))
-+			return ERR_PTR(-EPERM);
-+
-	/*
-	 * Thread groups must share signals as well, and detached threads
-	 * can only be started up within the thread group.
-@@ -2385,6 +2394,12 @@ SYSCALL_DEFINE1(unshare, unsigned long, unshare_flags)
-	if (unshare_flags & CLONE_NEWNS)
-		unshare_flags |= CLONE_FS;
-
-+	if ((unshare_flags & CLONE_NEWUSER) && !unprivileged_userns_clone) {
-+		err = -EPERM;
-+		if (!capable(CAP_SYS_ADMIN))
-+			goto bad_unshare_out;
-+	}
-+
-	err = check_unshare_flags(unshare_flags);
-	if (err)
-		goto bad_unshare_out;
-diff --git a/kernel/power/snapshot.c b/kernel/power/snapshot.c
-index 3d37c279c090..0789ca413f09 100644
---- a/kernel/power/snapshot.c
-+++ b/kernel/power/snapshot.c
-@@ -1138,7 +1138,7 @@ void free_basic_memory_bitmaps(void)
-
- void clear_free_pages(void)
- {
--#ifdef CONFIG_PAGE_POISONING_ZERO
-+#if defined(CONFIG_PAGE_POISONING_ZERO) || defined(CONFIG_PAGE_SANITIZE)
-	struct memory_bitmap *bm = free_pages_map;
-	unsigned long pfn;
-
-@@ -1155,7 +1155,7 @@ void clear_free_pages(void)
-	}
-	memory_bm_position_reset(bm);
-	pr_info("free pages cleared after restore\n");
--#endif /* PAGE_POISONING_ZERO */
-+#endif /* PAGE_POISONING_ZERO || PAGE_SANITIZE */
- }
-
- /**
-diff --git a/kernel/rcu/tiny.c b/kernel/rcu/tiny.c
-index a64eee0db39e..4d7de378fe4c 100644
---- a/kernel/rcu/tiny.c
-+++ b/kernel/rcu/tiny.c
-@@ -164,7 +164,7 @@ static void __rcu_process_callbacks(struct rcu_ctrlblk *rcp)
-	}
- }
-
--static __latent_entropy void rcu_process_callbacks(struct softirq_action *unused)
-+static __latent_entropy void rcu_process_callbacks(void)
- {
-	__rcu_process_callbacks(&rcu_sched_ctrlblk);
-	__rcu_process_callbacks(&rcu_bh_ctrlblk);
-diff --git a/kernel/rcu/tree.c b/kernel/rcu/tree.c
-index 491bdf39f276..28f51c774671 100644
---- a/kernel/rcu/tree.c
-+++ b/kernel/rcu/tree.c
-@@ -2906,7 +2906,7 @@ __rcu_process_callbacks(struct rcu_state *rsp)
- /*
-  * Do RCU core processing for the current CPU.
-  */
--static __latent_entropy void rcu_process_callbacks(struct softirq_action *unused)
-+static __latent_entropy void rcu_process_callbacks(void)
- {
-	struct rcu_state *rsp;
-
-diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
-index 5eb3ffc9be84..a60c59cbbaee 100644
---- a/kernel/sched/fair.c
-+++ b/kernel/sched/fair.c
-@@ -9387,7 +9387,7 @@ static void nohz_idle_balance(struct rq *this_rq, enum cpu_idle_type idle) { }
-  * run_rebalance_domains is triggered when needed from the scheduler tick.
-  * Also triggered for nohz idle balancing (with nohz_balancing_kick set).
-  */
--static __latent_entropy void run_rebalance_domains(struct softirq_action *h)
-+static __latent_entropy void run_rebalance_domains(void)
- {
-	struct rq *this_rq = this_rq();
-	enum cpu_idle_type idle = this_rq->idle_balance ?
-diff --git a/kernel/softirq.c b/kernel/softirq.c
-index 24d243ef8e71..4ed8a162cd70 100644
---- a/kernel/softirq.c
-+++ b/kernel/softirq.c
-@@ -53,7 +53,7 @@ irq_cpustat_t irq_stat[NR_CPUS] ____cacheline_aligned;
- EXPORT_SYMBOL(irq_stat);
- #endif
-
--static struct softirq_action softirq_vec[NR_SOFTIRQS] __cacheline_aligned_in_smp;
-+static struct softirq_action softirq_vec[NR_SOFTIRQS] __ro_after_init __aligned(PAGE_SIZE);
-
- DEFINE_PER_CPU(struct task_struct *, ksoftirqd);
-
-@@ -282,7 +282,7 @@ asmlinkage __visible void __softirq_entry __do_softirq(void)
-		kstat_incr_softirqs_this_cpu(vec_nr);
-
-		trace_softirq_entry(vec_nr);
--		h->action(h);
-+		h->action();
-		trace_softirq_exit(vec_nr);
-		if (unlikely(prev_count != preempt_count())) {
-			pr_err("huh, entered softirq %u %s %p with preempt_count %08x, exited with %08x?\n",
-@@ -444,7 +444,7 @@ void __raise_softirq_irqoff(unsigned int nr)
-	or_softirq_pending(1UL << nr);
- }
-
--void open_softirq(int nr, void (*action)(struct softirq_action *))
-+void __init open_softirq(int nr, void (*action)(void))
- {
-	softirq_vec[nr].action = action;
- }
-@@ -486,7 +486,7 @@ void __tasklet_hi_schedule(struct tasklet_struct *t)
- }
- EXPORT_SYMBOL(__tasklet_hi_schedule);
-
--static __latent_entropy void tasklet_action(struct softirq_action *a)
-+static __latent_entropy void tasklet_action(void)
- {
-	struct tasklet_struct *list;
-
-@@ -522,7 +522,7 @@ static __latent_entropy void tasklet_action(struct softirq_action *a)
-	}
- }
-
--static __latent_entropy void tasklet_hi_action(struct softirq_action *a)
-+static __latent_entropy void tasklet_hi_action(void)
- {
-	struct tasklet_struct *list;
-
-diff --git a/kernel/sysctl.c b/kernel/sysctl.c
-index f98f28c12020..861e8b721161 100644
---- a/kernel/sysctl.c
-+++ b/kernel/sysctl.c
-@@ -99,12 +99,19 @@
- #if defined(CONFIG_SYSCTL)
-
- /* External variables not in a header file. */
-+#if IS_ENABLED(CONFIG_USB)
-+int deny_new_usb __read_mostly = 0;
-+EXPORT_SYMBOL(deny_new_usb);
-+#endif
- extern int suid_dumpable;
- #ifdef CONFIG_COREDUMP
- extern int core_uses_pid;
- extern char core_pattern[];
- extern unsigned int core_pipe_limit;
- #endif
-+#ifdef CONFIG_USER_NS
-+extern int unprivileged_userns_clone;
-+#endif
- extern int pid_max;
- extern int pid_max_min, pid_max_max;
- extern int percpu_pagelist_fraction;
-@@ -116,40 +123,43 @@ extern int sysctl_nr_trim_pages;
-
- /* Constants used for minimum and  maximum */
- #ifdef CONFIG_LOCKUP_DETECTOR
--static int sixty = 60;
-+static int sixty __read_only = 60;
- #endif
-
--static int __maybe_unused neg_one = -1;
-+static int __maybe_unused neg_one __read_only = -1;
-
- static int zero;
--static int __maybe_unused one = 1;
--static int __maybe_unused two = 2;
--static int __maybe_unused four = 4;
--static unsigned long one_ul = 1;
--static int one_hundred = 100;
--static int one_thousand = 1000;
-+static int __maybe_unused one __read_only = 1;
-+static int __maybe_unused two __read_only = 2;
-+static int __maybe_unused four __read_only = 4;
-+static unsigned long one_ul __read_only = 1;
-+static int one_hundred __read_only = 100;
-+static int one_thousand __read_only = 1000;
- #ifdef CONFIG_PRINTK
--static int ten_thousand = 10000;
-+static int ten_thousand __read_only = 10000;
- #endif
- #ifdef CONFIG_PERF_EVENTS
--static int six_hundred_forty_kb = 640 * 1024;
-+static int six_hundred_forty_kb __read_only = 640 * 1024;
- #endif
-
- /* this is needed for the proc_doulongvec_minmax of vm_dirty_bytes */
--static unsigned long dirty_bytes_min = 2 * PAGE_SIZE;
-+static unsigned long dirty_bytes_min __read_only = 2 * PAGE_SIZE;
-
- /* this is needed for the proc_dointvec_minmax for [fs_]overflow UID and GID */
--static int maxolduid = 65535;
--static int minolduid;
-+static int maxolduid __read_only = 65535;
-+static int minolduid __read_only;
-
--static int ngroups_max = NGROUPS_MAX;
-+static int ngroups_max __read_only = NGROUPS_MAX;
- static const int cap_last_cap = CAP_LAST_CAP;
-
- /*this is needed for proc_doulongvec_minmax of sysctl_hung_task_timeout_secs */
- #ifdef CONFIG_DETECT_HUNG_TASK
--static unsigned long hung_task_timeout_max = (LONG_MAX/HZ);
-+static unsigned long hung_task_timeout_max __read_only = (LONG_MAX/HZ);
- #endif
-
-+int device_sidechannel_restrict __read_mostly = 1;
-+EXPORT_SYMBOL(device_sidechannel_restrict);
-+
- #ifdef CONFIG_INOTIFY_USER
- #include <linux/inotify.h>
- #endif
-@@ -289,19 +299,19 @@ static struct ctl_table sysctl_base_table[] = {
- };
-
- #ifdef CONFIG_SCHED_DEBUG
--static int min_sched_granularity_ns = 100000;		/* 100 usecs */
--static int max_sched_granularity_ns = NSEC_PER_SEC;	/* 1 second */
--static int min_wakeup_granularity_ns;			/* 0 usecs */
--static int max_wakeup_granularity_ns = NSEC_PER_SEC;	/* 1 second */
-+static int min_sched_granularity_ns __read_only = 100000;		/* 100 usecs */
-+static int max_sched_granularity_ns __read_only = NSEC_PER_SEC;	/* 1 second */
-+static int min_wakeup_granularity_ns __read_only;			/* 0 usecs */
-+static int max_wakeup_granularity_ns __read_only = NSEC_PER_SEC;	/* 1 second */
- #ifdef CONFIG_SMP
--static int min_sched_tunable_scaling = SCHED_TUNABLESCALING_NONE;
--static int max_sched_tunable_scaling = SCHED_TUNABLESCALING_END-1;
-+static int min_sched_tunable_scaling __read_only = SCHED_TUNABLESCALING_NONE;
-+static int max_sched_tunable_scaling __read_only = SCHED_TUNABLESCALING_END-1;
- #endif /* CONFIG_SMP */
- #endif /* CONFIG_SCHED_DEBUG */
-
- #ifdef CONFIG_COMPACTION
--static int min_extfrag_threshold;
--static int max_extfrag_threshold = 1000;
-+static int min_extfrag_threshold __read_only;
-+static int max_extfrag_threshold __read_only = 1000;
- #endif
-
- static struct ctl_table kern_table[] = {
-@@ -515,6 +525,15 @@ static struct ctl_table kern_table[] = {
-		.proc_handler	= proc_dointvec,
-	},
- #endif
-+#ifdef CONFIG_USER_NS
-+	{
-+		.procname	= "unprivileged_userns_clone",
-+		.data		= &unprivileged_userns_clone,
-+		.maxlen		= sizeof(int),
-+		.mode		= 0644,
-+		.proc_handler	= proc_dointvec,
-+	},
-+#endif
- #ifdef CONFIG_PROC_SYSCTL
-	{
-		.procname	= "tainted",
-@@ -856,6 +875,26 @@ static struct ctl_table kern_table[] = {
-		.extra1		= &zero,
-		.extra2		= &two,
-	},
-+#endif
-+	{
-+		.procname	= "device_sidechannel_restrict",
-+		.data		= &device_sidechannel_restrict,
-+		.maxlen		= sizeof(int),
-+		.mode		= 0644,
-+		.proc_handler	= proc_dointvec_minmax_sysadmin,
-+		.extra1		= &zero,
-+		.extra2		= &one,
-+	},
-+#if IS_ENABLED(CONFIG_USB)
-+	{
-+		.procname	= "deny_new_usb",
-+		.data		= &deny_new_usb,
-+		.maxlen		= sizeof(int),
-+		.mode		= 0644,
-+		.proc_handler	= proc_dointvec_minmax_sysadmin,
-+		.extra1		= &zero,
-+		.extra2		= &one,
-+	},
- #endif
-	{
-		.procname	= "ngroups_max",
-diff --git a/kernel/time/hrtimer.c b/kernel/time/hrtimer.c
-index 23788100e214..5577a58d1c7a 100644
---- a/kernel/time/hrtimer.c
-+++ b/kernel/time/hrtimer.c
-@@ -1413,7 +1413,7 @@ static void __hrtimer_run_queues(struct hrtimer_cpu_base *cpu_base, ktime_t now,
-	}
- }
-
--static __latent_entropy void hrtimer_run_softirq(struct softirq_action *h)
-+static __latent_entropy void hrtimer_run_softirq(void)
- {
-	struct hrtimer_cpu_base *cpu_base = this_cpu_ptr(&hrtimer_bases);
-	unsigned long flags;
-diff --git a/kernel/time/timer.c b/kernel/time/timer.c
-index 4a4fd567fb26..be236ef42690 100644
---- a/kernel/time/timer.c
-+++ b/kernel/time/timer.c
-@@ -1672,7 +1672,7 @@ static inline void __run_timers(struct timer_base *base)
- /*
-  * This function runs timers and the timer-tq in bottom half context.
-  */
--static __latent_entropy void run_timer_softirq(struct softirq_action *h)
-+static __latent_entropy void run_timer_softirq(void)
- {
-	struct timer_base *base = this_cpu_ptr(&timer_bases[BASE_STD]);
-
-diff --git a/kernel/user_namespace.c b/kernel/user_namespace.c
-index 246d4d4ce5c7..f64432b45cec 100644
---- a/kernel/user_namespace.c
-+++ b/kernel/user_namespace.c
-@@ -26,6 +26,9 @@
- #include <linux/bsearch.h>
- #include <linux/sort.h>
-
-+/* sysctl */
-+int unprivileged_userns_clone;
-+
- static struct kmem_cache *user_ns_cachep __read_mostly;
- static DEFINE_MUTEX(userns_state_mutex);
-
-diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
-index 64155e310a9f..0c002bbb8f75 100644
---- a/lib/Kconfig.debug
-+++ b/lib/Kconfig.debug
-@@ -945,6 +945,7 @@ endmenu # "Debug lockups and hangs"
-
- config PANIC_ON_OOPS
-	bool "Panic on Oops"
-+	default y
-	help
-	  Say Y here to enable the kernel to panic when it oopses. This
-	  has the same effect as setting oops=panic on the kernel command
-@@ -954,7 +955,7 @@ config PANIC_ON_OOPS
-	  anything erroneous after an oops which could result in data
-	  corruption or other issues.
-
--	  Say N if unsure.
-+	  Say Y if unsure.
-
- config PANIC_ON_OOPS_VALUE
-	int
-@@ -1309,6 +1310,7 @@ config DEBUG_BUGVERBOSE
- config DEBUG_LIST
-	bool "Debug linked list manipulation"
-	depends on DEBUG_KERNEL || BUG_ON_DATA_CORRUPTION
-+	default y
-	help
-	  Enable this to turn on extended checks in the linked-list
-	  walking routines.
-@@ -1949,6 +1951,7 @@ config MEMTEST
- config BUG_ON_DATA_CORRUPTION
-	bool "Trigger a BUG when data corruption is detected"
-	select DEBUG_LIST
-+	default y
-	help
-	  Select this option if the kernel should BUG when it encounters
-	  data corruption in kernel memory structures when they get checked
-@@ -1988,6 +1991,7 @@ config STRICT_DEVMEM
- config IO_STRICT_DEVMEM
-	bool "Filter I/O access to /dev/mem"
-	depends on STRICT_DEVMEM
-+	default y
-	---help---
-	  If this option is disabled, you allow userspace (root) access to all
-	  io-memory regardless of whether a driver is actively using that
-diff --git a/lib/irq_poll.c b/lib/irq_poll.c
-index 86a709954f5a..6f15787fcb1b 100644
---- a/lib/irq_poll.c
-+++ b/lib/irq_poll.c
-@@ -75,7 +75,7 @@ void irq_poll_complete(struct irq_poll *iop)
- }
- EXPORT_SYMBOL(irq_poll_complete);
-
--static void __latent_entropy irq_poll_softirq(struct softirq_action *h)
-+static void __latent_entropy irq_poll_softirq(void)
- {
-	struct list_head *list = this_cpu_ptr(&blk_cpu_iopoll);
-	int rearm = 0, budget = irq_poll_budget;
-diff --git a/lib/kobject.c b/lib/kobject.c
-index d20a97a7e168..7afe7fcfa6c9 100644
---- a/lib/kobject.c
-+++ b/lib/kobject.c
-@@ -954,9 +954,9 @@ EXPORT_SYMBOL_GPL(kset_create_and_add);
-
-
- static DEFINE_SPINLOCK(kobj_ns_type_lock);
--static const struct kobj_ns_type_operations *kobj_ns_ops_tbl[KOBJ_NS_TYPES];
-+static const struct kobj_ns_type_operations *kobj_ns_ops_tbl[KOBJ_NS_TYPES] __ro_after_init;
-
--int kobj_ns_type_register(const struct kobj_ns_type_operations *ops)
-+int __init kobj_ns_type_register(const struct kobj_ns_type_operations *ops)
- {
-	enum kobj_ns_type type = ops->type;
-	int error;
-diff --git a/lib/nlattr.c b/lib/nlattr.c
-index dfa55c873c13..c6b0436f473d 100644
---- a/lib/nlattr.c
-+++ b/lib/nlattr.c
-@@ -364,6 +364,8 @@ int nla_memcpy(void *dest, const struct nlattr *src, int count)
- {
-	int minlen = min_t(int, count, nla_len(src));
-
-+	BUG_ON(minlen < 0);
-+
-	memcpy(dest, nla_data(src), minlen);
-	if (count > minlen)
-		memset(dest + minlen, 0, count - minlen);
-diff --git a/lib/vsprintf.c b/lib/vsprintf.c
-index 38b509cc6b46..6b3bf13d57d6 100644
---- a/lib/vsprintf.c
-+++ b/lib/vsprintf.c
-@@ -1344,7 +1344,7 @@ char *uuid_string(char *buf, char *end, const u8 *addr,
-	return string(buf, end, uuid, spec);
- }
-
--int kptr_restrict __read_mostly;
-+int kptr_restrict __read_mostly = 2;
-
- static noinline_for_stack
- char *restricted_pointer(char *buf, char *end, const void *ptr,
-diff --git a/mm/Kconfig b/mm/Kconfig
-index e07608f64d47..18937911b87a 100644
---- a/mm/Kconfig
-+++ b/mm/Kconfig
-@@ -319,7 +319,8 @@ config KSM
- config DEFAULT_MMAP_MIN_ADDR
-         int "Low address space to protect from user allocation"
-	depends on MMU
--        default 4096
-+	default 32768 if ARM || (ARM64 && COMPAT)
-+	default 65536
-         help
-	  This is the portion of low virtual memory which should be protected
-	  from userspace allocation.  Keeping a user from writing to low pages
-diff --git a/mm/mmap.c b/mm/mmap.c
-index 03ca089cce0f..9bf52aa6b042 100644
---- a/mm/mmap.c
-+++ b/mm/mmap.c
-@@ -220,6 +220,13 @@ SYSCALL_DEFINE1(brk, unsigned long, brk)
-
-	newbrk = PAGE_ALIGN(brk);
-	oldbrk = PAGE_ALIGN(mm->brk);
-+	/* properly handle unaligned min_brk as an empty heap */
-+	if (min_brk & ~PAGE_MASK) {
-+		if (brk == min_brk)
-+			newbrk -= PAGE_SIZE;
-+		if (mm->brk == min_brk)
-+			oldbrk -= PAGE_SIZE;
-+	}
-	if (oldbrk == newbrk)
-		goto set_brk;
-
-diff --git a/mm/page_alloc.c b/mm/page_alloc.c
-index 1741dd23e7c1..462ce9910e43 100644
---- a/mm/page_alloc.c
-+++ b/mm/page_alloc.c
-@@ -68,6 +68,7 @@
- #include <linux/ftrace.h>
- #include <linux/lockdep.h>
- #include <linux/nmi.h>
-+#include <linux/random.h>
-
- #include <asm/sections.h>
- #include <asm/tlbflush.h>
-@@ -101,6 +102,15 @@ int _node_numa_mem_[MAX_NUMNODES];
- DEFINE_MUTEX(pcpu_drain_mutex);
- DEFINE_PER_CPU(struct work_struct, pcpu_drain);
-
-+bool __meminitdata extra_latent_entropy;
-+
-+static int __init setup_extra_latent_entropy(char *str)
-+{
-+	extra_latent_entropy = true;
-+	return 0;
-+}
-+early_param("extra_latent_entropy", setup_extra_latent_entropy);
-+
- #ifdef CONFIG_GCC_PLUGIN_LATENT_ENTROPY
- volatile unsigned long latent_entropy __latent_entropy;
- EXPORT_SYMBOL(latent_entropy);
-@@ -1069,6 +1079,13 @@ static __always_inline bool free_pages_prepare(struct page *page,
-		debug_check_no_obj_freed(page_address(page),
-					   PAGE_SIZE << order);
-	}
-+
-+	if (IS_ENABLED(CONFIG_PAGE_SANITIZE)) {
-+		int i;
-+		for (i = 0; i < (1 << order); i++)
-+			clear_highpage(page + i);
-+	}
-+
-	arch_free_page(page, order);
-	kernel_poison_pages(page, 1 << order, 0);
-	kernel_map_pages(page, 1 << order, 0);
-@@ -1286,6 +1303,21 @@ static void __init __free_pages_boot_core(struct page *page, unsigned int order)
-	__ClearPageReserved(p);
-	set_page_count(p, 0);
-
-+	if (extra_latent_entropy && !PageHighMem(page) && page_to_pfn(page) < 0x100000) {
-+		unsigned long hash = 0;
-+		size_t index, end = PAGE_SIZE * nr_pages / sizeof hash;
-+		const unsigned long *data = lowmem_page_address(page);
-+
-+		for (index = 0; index < end; index++)
-+			hash ^= hash + data[index];
-+#ifdef CONFIG_GCC_PLUGIN_LATENT_ENTROPY
-+		latent_entropy ^= hash;
-+		add_device_randomness((const void *)&latent_entropy, sizeof(latent_entropy));
-+#else
-+		add_device_randomness((const void *)&hash, sizeof(hash));
-+#endif
-+	}
-+
-	page_zone(page)->managed_pages += nr_pages;
-	set_page_refcounted(page);
-	__free_pages(page, order);
-@@ -1754,8 +1786,8 @@ static inline int check_new_page(struct page *page)
-
- static inline bool free_pages_prezeroed(void)
- {
--	return IS_ENABLED(CONFIG_PAGE_POISONING_ZERO) &&
--		page_poisoning_enabled();
-+	return IS_ENABLED(CONFIG_PAGE_SANITIZE) ||
-+		(IS_ENABLED(CONFIG_PAGE_POISONING_ZERO) && page_poisoning_enabled());
- }
-
- #ifdef CONFIG_DEBUG_VM
-@@ -1812,6 +1844,11 @@ static void prep_new_page(struct page *page, unsigned int order, gfp_t gfp_flags
-
-	post_alloc_hook(page, order, gfp_flags);
-
-+	if (IS_ENABLED(CONFIG_PAGE_SANITIZE_VERIFY)) {
-+		for (i = 0; i < (1 << order); i++)
-+			verify_zero_highpage(page + i);
-+	}
-+
-	if (!free_pages_prezeroed() && (gfp_flags & __GFP_ZERO))
-		for (i = 0; i < (1 << order); i++)
-			clear_highpage(page + i);
-diff --git a/mm/slab.h b/mm/slab.h
-index 51813236e773..e0d1b194a454 100644
---- a/mm/slab.h
-+++ b/mm/slab.h
-@@ -312,7 +312,11 @@ static inline bool is_root_cache(struct kmem_cache *s)
- static inline bool slab_equal_or_root(struct kmem_cache *s,
-				      struct kmem_cache *p)
- {
-+#ifdef CONFIG_SLAB_HARDENED
-+	return p == s;
-+#else
-	return true;
-+#endif
- }
-
- static inline const char *cache_name(struct kmem_cache *s)
-@@ -364,18 +368,26 @@ static inline struct kmem_cache *cache_from_obj(struct kmem_cache *s, void *x)
-	 * to not do even the assignment. In that case, slab_equal_or_root
-	 * will also be a constant.
-	 */
--	if (!memcg_kmem_enabled() &&
-+	if (!IS_ENABLED(CONFIG_SLAB_HARDENED) &&
-+	    !memcg_kmem_enabled() &&
-	    !unlikely(s->flags & SLAB_CONSISTENCY_CHECKS))
-		return s;
-
-	page = virt_to_head_page(x);
-+#ifdef CONFIG_SLAB_HARDENED
-+	BUG_ON(!PageSlab(page));
-+#endif
-	cachep = page->slab_cache;
-	if (slab_equal_or_root(cachep, s))
-		return cachep;
-
-	pr_err("%s: Wrong slab cache. %s but object is from %s\n",
-	       __func__, s->name, cachep->name);
-+#ifdef CONFIG_BUG_ON_DATA_CORRUPTION
-+	BUG_ON(1);
-+#else
-	WARN_ON_ONCE(1);
-+#endif
-	return s;
- }
-
-@@ -400,7 +412,7 @@ static inline size_t slab_ksize(const struct kmem_cache *s)
-	 * back there or track user information then we can
-	 * only use the space before that information.
-	 */
--	if (s->flags & (SLAB_TYPESAFE_BY_RCU | SLAB_STORE_USER))
-+	if ((s->flags & (SLAB_TYPESAFE_BY_RCU | SLAB_STORE_USER)) || IS_ENABLED(CONFIG_SLAB_CANARY))
-		return s->inuse;
-	/*
-	 * Else we can use all the padding etc for the allocation
-diff --git a/mm/slab_common.c b/mm/slab_common.c
-index 10f127b2de7c..3637ef72c5b4 100644
---- a/mm/slab_common.c
-+++ b/mm/slab_common.c
-@@ -26,10 +26,10 @@
-
- #include "slab.h"
-
--enum slab_state slab_state;
-+enum slab_state slab_state __ro_after_init;
- LIST_HEAD(slab_caches);
- DEFINE_MUTEX(slab_mutex);
--struct kmem_cache *kmem_cache;
-+struct kmem_cache *kmem_cache __ro_after_init;
-
- #ifdef CONFIG_HARDENED_USERCOPY
- bool usercopy_fallback __ro_after_init =
-@@ -57,7 +57,7 @@ static DECLARE_WORK(slab_caches_to_rcu_destroy_work,
- /*
-  * Merge control. If this is set then no merging of slab caches will occur.
-  */
--static bool slab_nomerge = !IS_ENABLED(CONFIG_SLAB_MERGE_DEFAULT);
-+static bool slab_nomerge __ro_after_init = !IS_ENABLED(CONFIG_SLAB_MERGE_DEFAULT);
-
- static int __init setup_slab_nomerge(char *str)
- {
-@@ -968,7 +968,7 @@ EXPORT_SYMBOL(kmalloc_dma_caches);
-  * of two cache sizes there. The size of larger slabs can be determined using
-  * fls.
-  */
--static s8 size_index[24] = {
-+static s8 size_index[24] __ro_after_init = {
-	3,	/* 8 */
-	4,	/* 16 */
-	5,	/* 24 */
-diff --git a/mm/slub.c b/mm/slub.c
-index e381728a3751..76dd844d978a 100644
---- a/mm/slub.c
-+++ b/mm/slub.c
-@@ -125,6 +125,16 @@ static inline int kmem_cache_debug(struct kmem_cache *s)
- #endif
- }
-
-+static inline bool has_sanitize(struct kmem_cache *s)
-+{
-+	return IS_ENABLED(CONFIG_SLAB_SANITIZE) && !(s->flags & (SLAB_TYPESAFE_BY_RCU | SLAB_POISON));
-+}
-+
-+static inline bool has_sanitize_verify(struct kmem_cache *s)
-+{
-+	return IS_ENABLED(CONFIG_SLAB_SANITIZE_VERIFY) && has_sanitize(s);
-+}
-+
- void *fixup_red_left(struct kmem_cache *s, void *p)
- {
-	if (kmem_cache_debug(s) && s->flags & SLAB_RED_ZONE)
-@@ -299,6 +309,35 @@ static inline void set_freepointer(struct kmem_cache *s, void *object, void *fp)
-	*(void **)freeptr_addr = freelist_ptr(s, fp, freeptr_addr);
- }
-
-+#ifdef CONFIG_SLAB_CANARY
-+static inline unsigned long *get_canary(struct kmem_cache *s, void *object)
-+{
-+	if (s->offset)
-+		return object + s->offset + sizeof(void *);
-+	return object + s->inuse;
-+}
-+
-+static inline unsigned long get_canary_value(const void *canary, unsigned long value)
-+{
-+	return (value ^ (unsigned long)canary) & CANARY_MASK;
-+}
-+
-+static inline void set_canary(struct kmem_cache *s, void *object, unsigned long value)
-+{
-+	unsigned long *canary = get_canary(s, object);
-+	*canary = get_canary_value(canary, value);
-+}
-+
-+static inline void check_canary(struct kmem_cache *s, void *object, unsigned long value)
-+{
-+	unsigned long *canary = get_canary(s, object);
-+	BUG_ON(*canary != get_canary_value(canary, value));
-+}
-+#else
-+#define set_canary(s, object, value)
-+#define check_canary(s, object, value)
-+#endif
-+
- /* Loop over all objects in a slab */
- #define for_each_object(__p, __s, __addr, __objects) \
-	for (__p = fixup_red_left(__s, __addr); \
-@@ -486,13 +525,13 @@ static inline void *restore_red_left(struct kmem_cache *s, void *p)
-  * Debug settings:
-  */
- #if defined(CONFIG_SLUB_DEBUG_ON)
--static slab_flags_t slub_debug = DEBUG_DEFAULT_FLAGS;
-+static slab_flags_t slub_debug __ro_after_init = DEBUG_DEFAULT_FLAGS;
- #else
--static slab_flags_t slub_debug;
-+static slab_flags_t slub_debug __ro_after_init;
- #endif
-
--static char *slub_debug_slabs;
--static int disable_higher_order_debug;
-+static char *slub_debug_slabs __ro_after_init;
-+static int disable_higher_order_debug __ro_after_init;
-
- /*
-  * slub is about to manipulate internal object metadata.  This memory lies
-@@ -552,6 +591,9 @@ static struct track *get_track(struct kmem_cache *s, void *object,
-	else
-		p = object + s->inuse;
-
-+	if (IS_ENABLED(CONFIG_SLAB_CANARY))
-+		p = (void *)p + sizeof(void *);
-+
-	return p + alloc;
- }
-
-@@ -690,6 +732,9 @@ static void print_trailer(struct kmem_cache *s, struct page *page, u8 *p)
-	else
-		off = s->inuse;
-
-+	if (IS_ENABLED(CONFIG_SLAB_CANARY))
-+		off += sizeof(void *);
-+
-	if (s->flags & SLAB_STORE_USER)
-		off += 2 * sizeof(struct track);
-
-@@ -819,6 +864,9 @@ static int check_pad_bytes(struct kmem_cache *s, struct page *page, u8 *p)
-		/* Freepointer is placed after the object. */
-		off += sizeof(void *);
-
-+	if (IS_ENABLED(CONFIG_SLAB_CANARY))
-+		off += sizeof(void *);
-+
-	if (s->flags & SLAB_STORE_USER)
-		/* We also have user information there */
-		off += 2 * sizeof(struct track);
-@@ -1420,8 +1468,9 @@ static void setup_object(struct kmem_cache *s, struct page *page,
-				void *object)
- {
-	setup_object_debug(s, page, object);
-+	set_canary(s, object, s->random_inactive);
-	kasan_init_slab_obj(s, object);
--	if (unlikely(s->ctor)) {
-+	if (unlikely(s->ctor) && !has_sanitize_verify(s)) {
-		kasan_unpoison_object_data(s, object);
-		s->ctor(object);
-		kasan_poison_object_data(s, object);
-@@ -2719,9 +2768,21 @@ static __always_inline void *slab_alloc_node(struct kmem_cache *s,
-		stat(s, ALLOC_FASTPATH);
-	}
-
--	if (unlikely(gfpflags & __GFP_ZERO) && object)
-+	if (has_sanitize_verify(s) && object) {
-+		size_t offset = s->offset ? 0 : sizeof(void *);
-+		BUG_ON(memchr_inv(object + offset, 0, s->object_size - offset));
-+		if (s->ctor)
-+			s->ctor(object);
-+		if (unlikely(gfpflags & __GFP_ZERO) && offset)
-+			memset(object, 0, sizeof(void *));
-+	} else if (unlikely(gfpflags & __GFP_ZERO) && object)
-		memset(object, 0, s->object_size);
-
-+	if (object) {
-+		check_canary(s, object, s->random_inactive);
-+		set_canary(s, object, s->random_active);
-+	}
-+
-	slab_post_alloc_hook(s, gfpflags, 1, &object);
-
-	return object;
-@@ -2928,6 +2989,27 @@ static __always_inline void do_slab_free(struct kmem_cache *s,
-	void *tail_obj = tail ? : head;
-	struct kmem_cache_cpu *c;
-	unsigned long tid;
-+	bool sanitize = has_sanitize(s);
-+
-+	if (IS_ENABLED(CONFIG_SLAB_CANARY) || sanitize) {
-+		__maybe_unused int offset = s->offset ? 0 : sizeof(void *);
-+		void *x = head;
-+
-+		while (1) {
-+			check_canary(s, x, s->random_active);
-+			set_canary(s, x, s->random_inactive);
-+
-+			if (sanitize) {
-+				memset(x + offset, 0, s->object_size - offset);
-+				if (!IS_ENABLED(CONFIG_SLAB_SANITIZE_VERIFY) && s->ctor)
-+					s->ctor(x);
-+			}
-+			if (x == tail_obj)
-+				break;
-+			x = get_freepointer(s, x);
-+		}
-+	}
-+
- redo:
-	/*
-	 * Determine the currently cpus per cpu slab.
-@@ -3106,7 +3188,7 @@ int kmem_cache_alloc_bulk(struct kmem_cache *s, gfp_t flags, size_t size,
-			  void **p)
- {
-	struct kmem_cache_cpu *c;
--	int i;
-+	int i, k;
-
-	/* memcg and kmem_cache debug support */
-	s = slab_pre_alloc_hook(s, flags);
-@@ -3143,13 +3225,29 @@ int kmem_cache_alloc_bulk(struct kmem_cache *s, gfp_t flags, size_t size,
-	local_irq_enable();
-
-	/* Clear memory outside IRQ disabled fastpath loop */
--	if (unlikely(flags & __GFP_ZERO)) {
-+	if (has_sanitize_verify(s)) {
-+		int j;
-+
-+		for (j = 0; j < i; j++) {
-+			size_t offset = s->offset ? 0 : sizeof(void *);
-+			BUG_ON(memchr_inv(p[j] + offset, 0, s->object_size - offset));
-+			if (s->ctor)
-+				s->ctor(p[j]);
-+			if (unlikely(flags & __GFP_ZERO) && offset)
-+				memset(p[j], 0, sizeof(void *));
-+		}
-+	} else if (unlikely(flags & __GFP_ZERO)) {
-		int j;
-
-		for (j = 0; j < i; j++)
-			memset(p[j], 0, s->object_size);
-	}
-
-+	for (k = 0; k < i; k++) {
-+		check_canary(s, p[k], s->random_inactive);
-+		set_canary(s, p[k], s->random_active);
-+	}
-+
-	/* memcg and kmem_cache debug support */
-	slab_post_alloc_hook(s, flags, size, p);
-	return i;
-@@ -3181,9 +3279,9 @@ EXPORT_SYMBOL(kmem_cache_alloc_bulk);
-  * and increases the number of allocations possible without having to
-  * take the list_lock.
-  */
--static int slub_min_order;
--static int slub_max_order = PAGE_ALLOC_COSTLY_ORDER;
--static int slub_min_objects;
-+static int slub_min_order __ro_after_init;
-+static int slub_max_order __ro_after_init = PAGE_ALLOC_COSTLY_ORDER;
-+static int slub_min_objects __ro_after_init;
-
- /*
-  * Calculate the order of allocation given an slab object size.
-@@ -3353,6 +3451,7 @@ static void early_kmem_cache_node_alloc(int node)
-	init_object(kmem_cache_node, n, SLUB_RED_ACTIVE);
-	init_tracking(kmem_cache_node, n);
- #endif
-+	set_canary(kmem_cache_node, n, kmem_cache_node->random_active);
-	kasan_kmalloc(kmem_cache_node, n, sizeof(struct kmem_cache_node),
-		      GFP_KERNEL);
-	init_kmem_cache_node(n);
-@@ -3509,6 +3608,9 @@ static int calculate_sizes(struct kmem_cache *s, int forced_order)
-		size += sizeof(void *);
-	}
-
-+	if (IS_ENABLED(CONFIG_SLAB_CANARY))
-+		size += sizeof(void *);
-+
- #ifdef CONFIG_SLUB_DEBUG
-	if (flags & SLAB_STORE_USER)
-		/*
-@@ -3579,6 +3681,10 @@ static int kmem_cache_open(struct kmem_cache *s, slab_flags_t flags)
- #ifdef CONFIG_SLAB_FREELIST_HARDENED
-	s->random = get_random_long();
- #endif
-+#ifdef CONFIG_SLAB_CANARY
-+	s->random_active = get_random_long();
-+	s->random_inactive = get_random_long();
-+#endif
-
-	if (need_reserve_slab_rcu && (s->flags & SLAB_TYPESAFE_BY_RCU))
-		s->reserved = sizeof(struct rcu_head);
-@@ -3846,6 +3952,8 @@ void __check_heap_object(const void *ptr, unsigned long n, struct page *page,
-		offset -= s->red_left_pad;
-	}
-
-+	check_canary(s, (void *)ptr - offset, s->random_active);
-+
-	/* Allow address range falling entirely within usercopy region. */
-	if (offset >= s->useroffset &&
-	    offset - s->useroffset <= s->usersize &&
-@@ -3879,7 +3987,11 @@ static size_t __ksize(const void *object)
-	page = virt_to_head_page(object);
-
-	if (unlikely(!PageSlab(page))) {
-+#ifdef CONFIG_BUG_ON_DATA_CORRUPTION
-+		BUG_ON(!PageCompound(page));
-+#else
-		WARN_ON(!PageCompound(page));
-+#endif
-		return PAGE_SIZE << compound_order(page);
-	}
-
-@@ -4744,7 +4856,7 @@ enum slab_stat_type {
- #define SO_TOTAL	(1 << SL_TOTAL)
-
- #ifdef CONFIG_MEMCG
--static bool memcg_sysfs_enabled = IS_ENABLED(CONFIG_SLUB_MEMCG_SYSFS_ON);
-+static bool memcg_sysfs_enabled __ro_after_init = IS_ENABLED(CONFIG_SLUB_MEMCG_SYSFS_ON);
-
- static int __init setup_slub_memcg_sysfs(char *str)
- {
-diff --git a/mm/swap.c b/mm/swap.c
-index 0f17330dd0e5..6e52cb476ef5 100644
---- a/mm/swap.c
-+++ b/mm/swap.c
-@@ -92,6 +92,13 @@ static void __put_compound_page(struct page *page)
-	if (!PageHuge(page))
-		__page_cache_release(page);
-	dtor = get_compound_page_dtor(page);
-+	if (!PageHuge(page))
-+		BUG_ON(dtor != free_compound_page
-+#ifdef CONFIG_TRANSPARENT_HUGEPAGE
-+			&& dtor != free_transhuge_page
-+#endif
-+		);
-+
-	(*dtor)(page);
- }
-
-diff --git a/net/core/dev.c b/net/core/dev.c
-index ace13bea3e50..77a1519c52b7 100644
---- a/net/core/dev.c
-+++ b/net/core/dev.c
-@@ -4196,7 +4196,7 @@ int netif_rx_ni(struct sk_buff *skb)
- }
- EXPORT_SYMBOL(netif_rx_ni);
-
--static __latent_entropy void net_tx_action(struct softirq_action *h)
-+static __latent_entropy void net_tx_action(void)
- {
-	struct softnet_data *sd = this_cpu_ptr(&softnet_data);
-
-@@ -5745,7 +5745,7 @@ static int napi_poll(struct napi_struct *n, struct list_head *repoll)
-	return work;
- }
-
--static __latent_entropy void net_rx_action(struct softirq_action *h)
-+static __latent_entropy void net_rx_action(void)
- {
-	struct softnet_data *sd = this_cpu_ptr(&softnet_data);
-	unsigned long time_limit = jiffies +
-diff --git a/net/ipv4/Kconfig b/net/ipv4/Kconfig
-index f48fe6fc7e8c..d78c52835c08 100644
---- a/net/ipv4/Kconfig
-+++ b/net/ipv4/Kconfig
-@@ -261,6 +261,7 @@ config IP_PIMSM_V2
-
- config SYN_COOKIES
-	bool "IP: TCP syncookie support"
-+	default y
-	---help---
-	  Normal TCP/IP networking is open to an attack known as "SYN
-	  flooding". This denial-of-service attack prevents legitimate remote
-diff --git a/scripts/mod/modpost.c b/scripts/mod/modpost.c
-index 9917f928d0fd..784e0e2fc839 100644
---- a/scripts/mod/modpost.c
-+++ b/scripts/mod/modpost.c
-@@ -37,6 +37,7 @@ static int vmlinux_section_warnings = 1;
- static int warn_unresolved = 0;
- /* How a symbol is exported */
- static int sec_mismatch_count = 0;
-+static int writable_fptr_count = 0;
- static int sec_mismatch_verbose = 1;
- static int sec_mismatch_fatal = 0;
- /* ignore missing files */
-@@ -965,6 +966,7 @@ enum mismatch {
-	ANY_EXIT_TO_ANY_INIT,
-	EXPORT_TO_INIT_EXIT,
-	EXTABLE_TO_NON_TEXT,
-+	DATA_TO_TEXT
- };
-
- /**
-@@ -1091,6 +1093,12 @@ static const struct sectioncheck sectioncheck[] = {
-	.good_tosec = {ALL_TEXT_SECTIONS , NULL},
-	.mismatch = EXTABLE_TO_NON_TEXT,
-	.handler = extable_mismatch_handler,
-+},
-+/* Do not reference code from writable data */
-+{
-+	.fromsec = { DATA_SECTIONS, NULL },
-+	.bad_tosec = { ALL_TEXT_SECTIONS, NULL },
-+	.mismatch = DATA_TO_TEXT
- }
- };
-
-@@ -1240,10 +1248,10 @@ static Elf_Sym *find_elf_symbol(struct elf_info *elf, Elf64_Sword addr,
-			continue;
-		if (ELF_ST_TYPE(sym->st_info) == STT_SECTION)
-			continue;
--		if (sym->st_value == addr)
--			return sym;
-		/* Find a symbol nearby - addr are maybe negative */
-		d = sym->st_value - addr;
-+		if (d == 0)
-+			return sym;
-		if (d < 0)
-			d = addr - sym->st_value;
-		if (d < distance) {
-@@ -1402,7 +1410,11 @@ static void report_sec_mismatch(const char *modname,
-	char *prl_from;
-	char *prl_to;
-
--	sec_mismatch_count++;
-+	if (mismatch->mismatch == DATA_TO_TEXT)
-+		writable_fptr_count++;
-+	else
-+		sec_mismatch_count++;
-+
-	if (!sec_mismatch_verbose)
-		return;
-
-@@ -1526,6 +1538,14 @@ static void report_sec_mismatch(const char *modname,
-		fatal("There's a special handler for this mismatch type, "
-		      "we should never get here.");
-		break;
-+	case DATA_TO_TEXT:
-+#if 0
-+		fprintf(stderr,
-+		"The %s %s:%s references\n"
-+		"the %s %s:%s%s\n",
-+		from, fromsec, fromsym, to, tosec, tosym, to_p);
-+#endif
-+		break;
-	}
-	fprintf(stderr, "\n");
- }
-@@ -2539,6 +2559,14 @@ int main(int argc, char **argv)
-		}
-	}
-	free(buf.p);
-+	if (writable_fptr_count) {
-+		if (!sec_mismatch_verbose) {
-+			warn("modpost: Found %d writable function pointer(s).\n"
-+			     "To see full details build your kernel with:\n"
-+			     "'make CONFIG_DEBUG_SECTION_MISMATCH=y'\n",
-+			     writable_fptr_count);
-+		}
-+	}
-
-	return err;
- }
-diff --git a/security/Kconfig b/security/Kconfig
-index c4302067a3ad..1b1e9368cae5 100644
---- a/security/Kconfig
-+++ b/security/Kconfig
-@@ -8,7 +8,7 @@ source security/keys/Kconfig
-
- config SECURITY_DMESG_RESTRICT
-	bool "Restrict unprivileged access to the kernel syslog"
--	default n
-+	default y
-	help
-	  This enforces restrictions on unprivileged users reading the kernel
-	  syslog via dmesg(8).
-@@ -18,10 +18,21 @@ config SECURITY_DMESG_RESTRICT
-
-	  If you are unsure how to answer this question, answer N.
-
-+config SECURITY_PERF_EVENTS_RESTRICT
-+	bool "Restrict unprivileged use of performance events"
-+	depends on PERF_EVENTS
-+	default y
-+	help
-+	  If you say Y here, the kernel.perf_event_paranoid sysctl
-+	  will be set to 3 by default, and no unprivileged use of the
-+	  perf_event_open syscall will be permitted unless it is
-+	  changed.
-+
- config SECURITY
-	bool "Enable different security models"
-	depends on SYSFS
-	depends on MULTIUSER
-+	default y
-	help
-	  This allows you to choose different security modules to be
-	  configured into your kernel.
-@@ -48,6 +59,7 @@ config SECURITYFS
- config SECURITY_NETWORK
-	bool "Socket and Networking Security Hooks"
-	depends on SECURITY
-+	default y
-	help
-	  This enables the socket and networking security hooks.
-	  If enabled, a security module can use these hooks to
-@@ -155,6 +167,7 @@ config HARDENED_USERCOPY
-	depends on HAVE_HARDENED_USERCOPY_ALLOCATOR
-	select BUG
-	imply STRICT_DEVMEM
-+	default y
-	help
-	  This option checks for obviously wrong memory regions when
-	  copying memory to/from the kernel (via copy_to_user() and
-@@ -167,7 +180,6 @@ config HARDENED_USERCOPY
- config HARDENED_USERCOPY_FALLBACK
-	bool "Allow usercopy whitelist violations to fallback to object size"
-	depends on HARDENED_USERCOPY
--	default y
-	help
-	  This is a temporary option that allows missing usercopy whitelists
-	  to be discovered via a WARN() to the kernel log, instead of
-@@ -192,10 +204,36 @@ config HARDENED_USERCOPY_PAGESPAN
- config FORTIFY_SOURCE
-	bool "Harden common str/mem functions against buffer overflows"
-	depends on ARCH_HAS_FORTIFY_SOURCE
-+	default y
-	help
-	  Detect overflows of buffers in common string and memory functions
-	  where the compiler can determine and validate the buffer sizes.
-
-+config FORTIFY_SOURCE_STRICT_STRING
-+	bool "Harden common functions against buffer overflows"
-+	depends on FORTIFY_SOURCE
-+	depends on EXPERT
-+	help
-+	  Perform stricter overflow checks catching overflows within objects
-+	  for common C string functions rather than only between objects.
-+
-+	  This is not yet intended for production use, only bug finding.
-+
-+config PAGE_SANITIZE
-+	bool "Sanitize pages"
-+	default y
-+	help
-+	  Zero fill page allocations on free, reducing the lifetime of
-+	  sensitive data and helping to mitigate use-after-free bugs.
-+
-+config PAGE_SANITIZE_VERIFY
-+	bool "Verify sanitized pages"
-+	depends on PAGE_SANITIZE
-+	default y
-+	help
-+	  Verify that newly allocated pages are zeroed to detect
-+	  write-after-free bugs.
-+
- config STATIC_USERMODEHELPER
-	bool "Force all usermode helper calls through a single binary"
-	help
-diff --git a/security/selinux/Kconfig b/security/selinux/Kconfig
-index 8af7a690eb40..6539694b0fd3 100644
---- a/security/selinux/Kconfig
-+++ b/security/selinux/Kconfig
-@@ -2,7 +2,7 @@ config SECURITY_SELINUX
-	bool "NSA SELinux Support"
-	depends on SECURITY_NETWORK && AUDIT && NET && INET
-	select NETWORK_SECMARK
--	default n
-+	default y
-	help
-	  This selects NSA Security-Enhanced Linux (SELinux).
-	  You will also need a policy configuration and a labeled filesystem.
-@@ -79,23 +79,3 @@ config SECURITY_SELINUX_AVC_STATS
-	  This option collects access vector cache statistics to
-	  /selinux/avc/cache_stats, which may be monitored via
-	  tools such as avcstat.
--
--config SECURITY_SELINUX_CHECKREQPROT_VALUE
--	int "NSA SELinux checkreqprot default value"
--	depends on SECURITY_SELINUX
--	range 0 1
--	default 0
--	help
--	  This option sets the default value for the 'checkreqprot' flag
--	  that determines whether SELinux checks the protection requested
--	  by the application or the protection that will be applied by the
--	  kernel (including any implied execute for read-implies-exec) for
--	  mmap and mprotect calls.  If this option is set to 0 (zero),
--	  SELinux will default to checking the protection that will be applied
--	  by the kernel.  If this option is set to 1 (one), SELinux will
--	  default to checking the protection requested by the application.
--	  The checkreqprot flag may be changed from the default via the
--	  'checkreqprot=' boot parameter.  It may also be changed at runtime
--	  via /selinux/checkreqprot if authorized by policy.
--
--	  If you are unsure how to answer this question, answer 0.
-diff --git a/security/selinux/include/objsec.h b/security/selinux/include/objsec.h
-index 3d54468ce334..ceafb908afde 100644
---- a/security/selinux/include/objsec.h
-+++ b/security/selinux/include/objsec.h
-@@ -154,6 +154,6 @@ struct bpf_security_struct {
-	u32 sid;  /*SID of bpf obj creater*/
- };
-
--extern unsigned int selinux_checkreqprot;
-+extern const unsigned int selinux_checkreqprot;
-
- #endif /* _SELINUX_OBJSEC_H_ */
-diff --git a/security/selinux/selinuxfs.c b/security/selinux/selinuxfs.c
-index 00eed842c491..8f7b8d7e6f91 100644
---- a/security/selinux/selinuxfs.c
-+++ b/security/selinux/selinuxfs.c
-@@ -41,16 +41,7 @@
- #include "objsec.h"
- #include "conditional.h"
-
--unsigned int selinux_checkreqprot = CONFIG_SECURITY_SELINUX_CHECKREQPROT_VALUE;
--
--static int __init checkreqprot_setup(char *str)
--{
--	unsigned long checkreqprot;
--	if (!kstrtoul(str, 0, &checkreqprot))
--		selinux_checkreqprot = checkreqprot ? 1 : 0;
--	return 1;
--}
--__setup("checkreqprot=", checkreqprot_setup);
-+const unsigned int selinux_checkreqprot;
-
- static DEFINE_MUTEX(sel_mutex);
-
-@@ -610,10 +601,9 @@ static ssize_t sel_write_checkreqprot(struct file *file, const char __user *buf,
-		return PTR_ERR(page);
-
-	length = -EINVAL;
--	if (sscanf(page, "%u", &new_value) != 1)
-+	if (sscanf(page, "%u", &new_value) != 1 || new_value)
-		goto out;
-
--	selinux_checkreqprot = new_value ? 1 : 0;
-	length = count;
- out:
-	kfree(page);
-diff --git a/security/yama/Kconfig b/security/yama/Kconfig
-index 96b27405558a..485c1b85c325 100644
---- a/security/yama/Kconfig
-+++ b/security/yama/Kconfig
-@@ -1,7 +1,7 @@
- config SECURITY_YAMA
-	bool "Yama support"
-	depends on SECURITY
--	default n
-+	default y
-	help
-	  This selects Yama, which extends DAC support with additional
-	  system-wide security settings beyond regular Linux discretionary
diff --git a/pkgs/os-specific/linux/kernel/linux-4.14.nix b/pkgs/os-specific/linux/kernel/linux-4.14.nix
index 000764eca9b3..bc52e3ddf875 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.67";
+  version = "4.14.70";
 
   # 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 = "1fkha288nv5vk2l13dj0xj09c2pxvipysdaaga7sfcvjq9nhajrz";
+    sha256 = "0b733s4m9r9606xmxv5jfr5x14c4ik665awln2smd23z8wrdipy5";
   };
 } // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-4.17.nix b/pkgs/os-specific/linux/kernel/linux-4.17.nix
deleted file mode 100644
index 5c13f366221e..000000000000
--- a/pkgs/os-specific/linux/kernel/linux-4.17.nix
+++ /dev/null
@@ -1,18 +0,0 @@
-{ stdenv, buildPackages, fetchurl, perl, buildLinux, modDirVersionArg ? null, ... } @ args:
-
-with stdenv.lib;
-
-buildLinux (args // rec {
-  version = "4.17.19";
-
-  # 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;
-
-  # branchVersion needs to be x.y
-  extraMeta.branch = concatStrings (intersperse "." (take 2 (splitString "." version)));
-
-  src = fetchurl {
-    url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "05wz76qq70bfhfwd1zwzfmzq4rlgz40jpi9plb31njx1y7vkx6xs";
-  };
-} // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-4.18.nix b/pkgs/os-specific/linux/kernel/linux-4.18.nix
index e76beadc27bf..91232ab0bbee 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.18.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.18.nix
@@ -3,7 +3,7 @@
 with stdenv.lib;
 
 buildLinux (args // rec {
-  version = "4.18.5";
+  version = "4.18.8";
 
   # 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 = "1ga7ys6s5d9dk1ly9722sbik1y6kbc3w6nw9pw86zpzdh0v0l2gv";
+    sha256 = "152lz1yim77kpighdcyy1csxs0xf8m2zkwwcz847fqdbd6ninmgi";
   };
 } // (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 7c5f345e3400..c25da926b267 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.153";
+  version = "4.4.156";
   extraMeta.branch = "4.4";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "00jlajwbq7w5cxzzaa5mib5qvihqab3ysfq401b71ji2bi8ma8qg";
+    sha256 = "1aj87ncc8afx4dr42rf2kr5ai2k5w5arcp8z336i2wlnrbcdhhh4";
   };
 } // (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 ed0075b7876b..db46ea80e609 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.124";
+  version = "4.9.127";
   extraMeta.branch = "4.9";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "04a3iqy6divkd9bamn60d0v8jkls2jbip7qn0m82dlcdikab19jw";
+    sha256 = "03yxdzmlikyvbkfaha871h9n7y58lyzyxgybsx09ln4pxnnswxwl";
   };
 } // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-copperhead-lts.nix b/pkgs/os-specific/linux/kernel/linux-copperhead-lts.nix
deleted file mode 100644
index 366cfd39e4af..000000000000
--- a/pkgs/os-specific/linux/kernel/linux-copperhead-lts.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-{ stdenv, buildPackages, fetchFromGitHub, perl, buildLinux, ... } @ args:
-
-with stdenv.lib;
-
-let
-  version = "4.14.44";
-  revision = "a";
-  sha256 = "1alvhpwy9xzppwsag7qh1lkk3l4piyh2fv27w37il6gclja4dxkf";
-
-  # modVersion needs to be x.y.z, will automatically add .0 if needed
-  modVersion = concatStrings (intersperse "." (take 3 (splitString "." "${version}.0")));
-
-  # branchVersion needs to be x.y
-  branchVersion = concatStrings (intersperse "." (take 2 (splitString "." version)));
-
-  modDirVersion = "${modVersion}-hardened";
-in
-buildLinux (args // {
-  inherit modDirVersion;
-
-  version = "${version}-${revision}";
-  extraMeta.branch = "${branchVersion}";
-
-  src = fetchFromGitHub {
-    inherit sha256;
-    owner = "copperhead";
-    repo = "linux-hardened";
-    rev = "${version}.${revision}";
-  };
-} // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-hardkernel-4.14.nix b/pkgs/os-specific/linux/kernel/linux-hardkernel-4.14.nix
index d1d7d240cce5..0afb92d705c6 100644
--- a/pkgs/os-specific/linux/kernel/linux-hardkernel-4.14.nix
+++ b/pkgs/os-specific/linux/kernel/linux-hardkernel-4.14.nix
@@ -1,10 +1,10 @@
 { stdenv, buildPackages, fetchFromGitHub, perl, buildLinux, libelf, utillinux, ... } @ args:
 
 buildLinux (args // rec {
-  version = "4.14.66-147";
+  version = "4.14.69-148";
 
   # modDirVersion needs to be x.y.z.
-  modDirVersion = "4.14.66";
+  modDirVersion = "4.14.69";
 
   # branchVersion needs to be x.y.
   extraMeta.branch = "4.14";
@@ -13,7 +13,7 @@ buildLinux (args // rec {
     owner = "hardkernel";
     repo = "linux";
     rev = version;
-    sha256 = "06v38jl4i7l8gl8zcpyp9vmjjhaqhbp7by15f82rxa724zppxi9x";
+    sha256 = "1grsmb7lnxnkva03nh8ny4zizvrxjim5kf5ssqkcbfz5mx1fqni0";
   };
 
   defconfig = "odroidxu4_defconfig";
diff --git a/pkgs/os-specific/linux/kernel/linux-rpi.nix b/pkgs/os-specific/linux/kernel/linux-rpi.nix
index e6d7b1cee9db..d061e41eb2fe 100644
--- a/pkgs/os-specific/linux/kernel/linux-rpi.nix
+++ b/pkgs/os-specific/linux/kernel/linux-rpi.nix
@@ -1,8 +1,8 @@
 { stdenv, buildPackages, fetchFromGitHub, perl, buildLinux, ... } @ args:
 
 let
-  modDirVersion = "4.14.50";
-  tag = "1.20180619";
+  modDirVersion = "4.14.62";
+  tag = "1.20180817";
 in
 stdenv.lib.overrideDerivation (buildLinux (args // rec {
   version = "${modDirVersion}-${tag}";
@@ -12,7 +12,7 @@ stdenv.lib.overrideDerivation (buildLinux (args // rec {
     owner = "raspberrypi";
     repo = "linux";
     rev = "raspberrypi-kernel_${tag}-1";
-    sha256 = "0yccz8j3vrzv6h23b7yn7dx84kkzq3dmicm3shhz18nkpyyq71ch";
+    sha256 = "17k7c9hcp834qmlpllag8jc6xhym9wkr5lck1vr0y2wlcxccwnaz";
   };
 
   defconfig = {
diff --git a/pkgs/os-specific/linux/kernel/linux-testing.nix b/pkgs/os-specific/linux/kernel/linux-testing.nix
index 44f267bf7151..4bfea7a10988 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 = "4.19-rc1";
-  modDirVersion = "4.19.0-rc1";
+  version = "4.19-rc4";
+  modDirVersion = "4.19.0-rc4";
   extraMeta.branch = "4.19";
 
   src = fetchurl {
     url = "https://git.kernel.org/torvalds/t/linux-${version}.tar.gz";
-    sha256 = "14c9xg9sv0jrdri36das97vdbybi7vmcy59mj9wmgaz81cdk3wg5";
+    sha256 = "083nlh25zddrbg1hzyxfpg9i7h91ij9f299i52r5zwzi85yi8whn";
   };
 
   # Should the testing kernels ever be built on Hydra?
diff --git a/pkgs/os-specific/linux/kernel/manual-config.nix b/pkgs/os-specific/linux/kernel/manual-config.nix
index 2cc83e62d11e..97921f07e82c 100644
--- a/pkgs/os-specific/linux/kernel/manual-config.nix
+++ b/pkgs/os-specific/linux/kernel/manual-config.nix
@@ -247,6 +247,7 @@ let
           maintainers.thoughtpolice
         ];
         platforms = platforms.linux;
+        timeout = 7200; # 2 hours
       } // extraMeta;
     };
 in
diff --git a/pkgs/os-specific/linux/kernel/patches.nix b/pkgs/os-specific/linux/kernel/patches.nix
index 143671428c41..d54e0153229d 100644
--- a/pkgs/os-specific/linux/kernel/patches.nix
+++ b/pkgs/os-specific/linux/kernel/patches.nix
@@ -28,16 +28,6 @@ rec {
     patch = ./tag-hardened.patch;
   };
 
-  copperhead_4_14 = rec {
-    name = "copperhead-4.14";
-    patch = ./copperhead-4-14.patch;
-  };
-
-  copperhead_4_16 = rec {
-    name = "copperhead-4.16";
-    patch = ./copperhead-4-16.patch;
-  };
-
   # https://bugzilla.kernel.org/show_bug.cgi?id=197591#c6
   iwlwifi_mvm_support_version_7_scan_req_umac_fw_command = rec {
     name = "iwlwifi_mvm_support_version_7_scan_req_umac_fw_command";
diff --git a/pkgs/os-specific/linux/kmscube/default.nix b/pkgs/os-specific/linux/kmscube/default.nix
index 99ef7d4a5508..442c54ac8462 100644
--- a/pkgs/os-specific/linux/kmscube/default.nix
+++ b/pkgs/os-specific/linux/kmscube/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchgit, autoreconfHook, libdrm, libX11, libGL, mesa_noglu, pkgconfig }:
 
 stdenv.mkDerivation rec {
-  name = "kmscube-2017-03-19";
+  name = "kmscube-2018-06-17";
 
   src = fetchgit {
     url = git://anongit.freedesktop.org/mesa/kmscube;
-    rev = "b88a44d95eceaeebc5b9c6972ffcbfe9eca00aea";
-    sha256 = "029ccslfavz6jllqv980sr6mj9bdbr0kx7bi21ra0q9yl2vh0yca";
+    rev = "9dcce71e603616ee7a54707e932f962cdf8fb20a";
+    sha256 = "1q5b5yvyfj3127385mp1bfmcbnpnbdswdk8gspp7g4541xk4k933";
   };
 
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Example OpenGL app using KMS/GBM";
-    homepage = https://github.com/robclark/kmscube;
+    homepage = https://gitlab.freedesktop.org/mesa/kmscube;
     license = licenses.mit;
     maintainers = with maintainers; [ dezgeg ];
     platforms = platforms.linux;
diff --git a/pkgs/os-specific/linux/lm-sensors/default.nix b/pkgs/os-specific/linux/lm-sensors/default.nix
index af52dc551ddd..04ce60c87b04 100644
--- a/pkgs/os-specific/linux/lm-sensors/default.nix
+++ b/pkgs/os-specific/linux/lm-sensors/default.nix
@@ -11,7 +11,8 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     urls = [
-      "http://dl.lm-sensors.org/lm-sensors/releases/lm_sensors-${version}.tar.bz2"
+      # "http://dl.lm-sensors.org/lm-sensors/releases/lm_sensors-${version}.tar.bz2" # dead
+      # https://github.com/lm-sensors/lm-sensors/releases/... # only generated tarballs
       "https://src.fedoraproject.org/repo/pkgs/lm_sensors/lm_sensors-${version}.tar.bz2/c03675ae9d43d60322110c679416901a/lm_sensors-${version}.tar.bz2"
     ];
     sha256 = "07q6811l4pp0f7pxr8bk3s97ippb84mx5qdg7v92s9hs10b90mz0";
@@ -28,7 +29,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://www.lm-sensors.org/;
+    homepage = https://hwmon.wiki.kernel.org/lm_sensors;
     description = "Tools for reading hardware sensors";
     license = with licenses; [ gpl2 lgpl21 ];
     platforms = platforms.linux;
diff --git a/pkgs/os-specific/linux/musl/default.nix b/pkgs/os-specific/linux/musl/default.nix
index 9628ec516763..a24900ce337a 100644
--- a/pkgs/os-specific/linux/musl/default.nix
+++ b/pkgs/os-specific/linux/musl/default.nix
@@ -29,11 +29,11 @@ let
 in
 stdenv.mkDerivation rec {
   name    = "musl-${version}";
-  version = "1.1.19";
+  version = "1.1.20";
 
   src = fetchurl {
     url    = "https://www.musl-libc.org/releases/musl-${version}.tar.gz";
-    sha256 = "1nf1wh44bhm8gdcfr75ayib29b99vpq62zmjymrq7f96h9bshnfv";
+    sha256 = "0q8dsjxl41dccscv9a0r78bs7jap57mn4mni5pwbbip6s1qqggj4";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/os-specific/linux/pmount/default.nix b/pkgs/os-specific/linux/pmount/default.nix
index f0f706157ed1..cd0e277b2c6b 100644
--- a/pkgs/os-specific/linux/pmount/default.nix
+++ b/pkgs/os-specific/linux/pmount/default.nix
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
   doCheck = false; # fails 1 out of 1 tests with "Error: could not open fstab-type file: No such file or directory"
 
   meta = {
-    homepage = http://pmount.alioth.debian.org/;
+    homepage = https://bazaar.launchpad.net/~fourmond/pmount/main/files;
     description = "Mount removable devices as normal user";
     license = stdenv.lib.licenses.gpl2;
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/os-specific/linux/s6-linux-utils/default.nix b/pkgs/os-specific/linux/s6-linux-utils/default.nix
index dbef7c41c067..0d208a6eb55f 100644
--- a/pkgs/os-specific/linux/s6-linux-utils/default.nix
+++ b/pkgs/os-specific/linux/s6-linux-utils/default.nix
@@ -1,24 +1,19 @@
-{ stdenv, fetchurl, skalibs }:
+{ stdenv, skawarePackages }:
 
-let
+with skawarePackages;
 
-  version = "2.4.0.2";
+buildPackage {
+  pname = "s6-linux-utils";
+  version = "2.5.0.0";
+  sha256 = "04q2z71dkzahd2ppga2zikclz2qk014c23gm7rigqxjc8rs1amvq";
 
-in stdenv.mkDerivation rec {
-
-  name = "s6-linux-utils-${version}";
-
-  src = fetchurl {
-    url = "https://www.skarnet.org/software/s6-linux-utils/${name}.tar.gz";
-    sha256 = "0245rmk7wfyyfsi4g7f0niprwlvqlwkbyjxflb8kkbvhwfdavqip";
-  };
+  description = "A set of minimalistic Linux-specific system utilities";
+  platforms = stdenv.lib.platforms.linux;
 
   outputs = [ "bin" "dev" "doc" "out" ];
 
-  dontDisableStatic = true;
-
+  # TODO: nsss support
   configureFlags = [
-    "--enable-absolute-paths"
     "--bindir=\${bin}/bin"
     "--includedir=\${dev}/include"
     "--with-sysdeps=${skalibs.lib}/lib/skalibs/sysdeps"
@@ -28,16 +23,10 @@ in stdenv.mkDerivation rec {
   ];
 
   postInstall = ''
-    mkdir -p $doc/share/doc/s6-networking/
-    mv doc $doc/share/doc/s6-networking/html
-  '';
+    # remove all s6 executables from build directory
+    rm $(find -name "s6-*" -type f -mindepth 1 -maxdepth 1 -executable)
 
-  meta = {
-    homepage = http://www.skarnet.org/software/s6-linux-utils/;
-    description = "A set of minimalistic Linux-specific system utilities";
-    platforms = stdenv.lib.platforms.linux;
-    license = stdenv.lib.licenses.isc;
-    maintainers = with stdenv.lib.maintainers; [ pmahoney Profpatsch ];
-  };
+    mv doc $doc/share/doc/s6-linux-utils/html
+  '';
 
 }
diff --git a/pkgs/os-specific/linux/semodule-utils/default.nix b/pkgs/os-specific/linux/semodule-utils/default.nix
new file mode 100644
index 000000000000..10ba1a3c7d07
--- /dev/null
+++ b/pkgs/os-specific/linux/semodule-utils/default.nix
@@ -0,0 +1,27 @@
+{ stdenv, fetchurl, libsepol }:
+
+stdenv.mkDerivation rec {
+  name = "semodule-utils-${version}";
+  version = "2.7";
+
+  inherit (libsepol) se_release se_url;
+
+  src = fetchurl {
+    url = "${se_url}/${se_release}/${name}.tar.gz";
+    sha256 = "1fl60x4w8rn5bcwy68sy48aydwsn1a17d48slni4sfx4c8rqpjch";
+  };
+
+  buildInputs = [ libsepol ];
+
+  makeFlags = [
+    "PREFIX=$(out)"
+    "LIBSEPOLA=${stdenv.lib.getLib libsepol}/lib/libsepol.a"
+  ];
+
+  meta = with stdenv.lib; {
+    description = "SELinux policy core utilities (packaging additions)";
+    license = licenses.gpl2;
+    inherit (libsepol.meta) homepage platforms;
+    maintainers = [ maintainers.e-user ];
+  };
+}
diff --git a/pkgs/os-specific/linux/spl/default.nix b/pkgs/os-specific/linux/spl/default.nix
index 146e1c276965..13fc9ae37605 100644
--- a/pkgs/os-specific/linux/spl/default.nix
+++ b/pkgs/os-specific/linux/spl/default.nix
@@ -10,13 +10,13 @@ assert kernel != null;
 
 stdenv.mkDerivation rec {
   name = "spl-${version}-${kernel.version}";
-  version = "0.7.9";
+  version = "0.7.11";
 
   src = fetchFromGitHub {
     owner = "zfsonlinux";
     repo = "spl";
     rev = "spl-${version}";
-    sha256 = "0540m1dv9jvrzk9kw61glg0h0cwj976mr9zb42y3nh17k47ywff0";
+    sha256 = "15h02g5k3i20y2cycc72vr6hdn8n70jmzqii8dmx9za6bl9nk2rm";
   };
 
   patches = [ ./install_prefix.patch ];
@@ -52,6 +52,5 @@ stdenv.mkDerivation rec {
     platforms = platforms.linux;
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ jcumming wizeman wkennington fpletz globin ];
-    broken = stdenv.lib.versionAtLeast kernel.version "4.18";
   };
 }
diff --git a/pkgs/os-specific/linux/sysdig/default.nix b/pkgs/os-specific/linux/sysdig/default.nix
index 9b0f3ff767c2..20ecdb5b5773 100644
--- a/pkgs/os-specific/linux/sysdig/default.nix
+++ b/pkgs/os-specific/linux/sysdig/default.nix
@@ -3,13 +3,13 @@
 with stdenv.lib;
 stdenv.mkDerivation rec {
   name = "sysdig-${version}";
-  version = "0.22.1";
+  version = "0.23.1";
 
   src = fetchFromGitHub {
     owner = "draios";
     repo = "sysdig";
     rev = version;
-    sha256 = "1wbvpsalm2ccwh8xz6fa4gqviilvjd8lnwvdryixhsdsf7j8w0j0";
+    sha256 = "0q52yfag97n6cvrnzgx7inx11zdg7bgwkvqn2idsg9874fd2wkzh";
   };
 
   buildInputs = [
diff --git a/pkgs/os-specific/linux/zfs/default.nix b/pkgs/os-specific/linux/zfs/default.nix
index c689faad492f..cae06dbd0f38 100644
--- a/pkgs/os-specific/linux/zfs/default.nix
+++ b/pkgs/os-specific/linux/zfs/default.nix
@@ -158,12 +158,12 @@ in {
   # to be adapted
   zfsStable = common {
     # comment/uncomment if breaking kernel versions are known
-    incompatibleKernelVersion = "4.18";
+    # incompatibleKernelVersion = null;
 
     # this package should point to the latest release.
-    version = "0.7.9";
+    version = "0.7.11";
 
-    sha256 = "0krpxrvnda2jx6l71xhw9fsksyp2a6h9l9asppac3szsd1n7fp9n";
+    sha256 = "0m9wkq6wf4cg8w38s3avd0bvybnv0avqwxk3gwz9rgb9rn0m98jg";
 
     extraPatches = [
       (fetchpatch {
@@ -180,10 +180,10 @@ in {
     incompatibleKernelVersion = null;
 
     # this package should point to a version / git revision compatible with the latest kernel release
-    version = "2018-08-13";
+    version = "0.8.0-rc1";
 
-    rev = "64e96969a88c21aebb2f8d982a8c345e55a2ae6c";
-    sha256 = "164fvsf9zqvq3vafnvjxafjl8gihmfqfsjwsmky16i90a6hs96gf";
+    rev = "b8a90418f3a9c23b89c5d2c729a4dd0fea644508";
+    sha256 = "041b7h8gbb042x9mhg8y87bgq9y793bawglc7b0fg871k6190drx";
     isUnstable = true;
 
     extraPatches = [
diff --git a/pkgs/servers/apache-kafka/default.nix b/pkgs/servers/apache-kafka/default.nix
index 31cff39cb3e6..52bb166f401c 100644
--- a/pkgs/servers/apache-kafka/default.nix
+++ b/pkgs/servers/apache-kafka/default.nix
@@ -9,24 +9,29 @@ let
       sha256 = "0ykcjv5dz9i5bws9my2d60pww1g9v2p2nqr67h0i2xrjm7az8a6v";
     };
     "0.10" = {
-      kafkaVersion = "0.10.2.1";
+      kafkaVersion = "0.10.2.2";
       scalaVersion = "2.12";
-      sha256 = "0iszr6r0n9yjgq7kcp1hf00fg754m86gs4jzqc18542an94b88z5";
+      sha256 = "13wibnz7n7znv2g13jlpkz1r0y73qy5b02pdqhsq7cl72h9s6wms";
     };
     "0.11" = {
-      kafkaVersion = "0.11.0.1";
+      kafkaVersion = "0.11.0.3";
       scalaVersion = "2.12";
-      sha256 = "1wj639h95aq5n132fq1rbyzqh5rsa4mlhbg3c5mszqglnzdz4xn7";
+      sha256 = "0zkzp9a8lcfcpavks131119v10hpn90sc0pw4f90jc4zn2yw3rgd";
     };
     "1.0" = {
-      kafkaVersion = "1.0.1";
+      kafkaVersion = "1.0.2";
       scalaVersion = "2.12";
-      sha256 = "1fxn6i0kanwksj1dhcnlni0cn542k50wdg8jkwhfmf4qq8yfl90m";
+      sha256 = "0cmq8ww1lbkp3ipy9d1q8c1yz4kfwj0v4ynnhsk1i48sqlmvwybj";
     };
     "1.1" = {
-      kafkaVersion = "1.1.0";
+      kafkaVersion = "1.1.1";
       scalaVersion = "2.12";
-      sha256 = "04idhsr6pbkb0xkx38faxv2pn5nkjcflz6wl4s3ka82h1fbq74j9";
+      sha256 = "13vg0wm2fsd06pfw05m4bhcgbjmb2bmd4i31zfs48w0f7hjc8qf2";
+    };
+    "2.0" = {
+      kafkaVersion = "2.0.0";
+      scalaVersion = "2.12";
+      sha256 = "0mbrp8rafv1bra9nrdicpxy6w59ixanaj50c9pkgdrih82f57wdm";
     };
   };
 in
diff --git a/pkgs/servers/atlassian/confluence.nix b/pkgs/servers/atlassian/confluence.nix
index c3427b8029e5..617ae3ee1d10 100644
--- a/pkgs/servers/atlassian/confluence.nix
+++ b/pkgs/servers/atlassian/confluence.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   name = "atlassian-confluence-${version}";
-  version = "6.8.0";
+  version = "6.11.1";
 
   src = fetchurl {
     url = "https://www.atlassian.com/software/confluence/downloads/binary/${name}.tar.gz";
-    sha256 = "07awdbkjxkk4rbnpbb5xfjp4125c33bwxncmydlgzgk5fzy6dg2w";
+    sha256 = "0sp1ggllvxdz0pf409yyil1x9dah1jyqspknfzgivkmwhcqj7brr";
   };
 
   phases = [ "unpackPhase" "buildPhase" "installPhase" ];
diff --git a/pkgs/servers/atlassian/crowd.nix b/pkgs/servers/atlassian/crowd.nix
index 4989c3a417a2..4ad0388e8db4 100644
--- a/pkgs/servers/atlassian/crowd.nix
+++ b/pkgs/servers/atlassian/crowd.nix
@@ -3,11 +3,11 @@
 
 stdenv.mkDerivation rec {
   name = "atlassian-crowd-${version}";
-  version = "3.1.2";
+  version = "3.2.5";
 
   src = fetchurl {
     url = "https://www.atlassian.com/software/crowd/downloads/binary/${name}.tar.gz";
-    sha256 = "0pnl0zl38827ckgxh4y1mnq3lr7bvd7v3ysdxxv3nfr5zya4xgki";
+    sha256 = "1h8kxh89d2wm0hkgrzx5dnnfy8sbhpgisgdwn3srhb4js8h4qil6";
   };
 
   phases = [ "unpackPhase" "buildPhase" "installPhase" "fixupPhase" ];
diff --git a/pkgs/servers/atlassian/jira.nix b/pkgs/servers/atlassian/jira.nix
index 1bff3ad379dd..46a78e1c5bd5 100644
--- a/pkgs/servers/atlassian/jira.nix
+++ b/pkgs/servers/atlassian/jira.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   name = "atlassian-jira-${version}";
-  version = "7.12.0";
+  version = "7.12.1";
 
   src = fetchurl {
     url = "https://downloads.atlassian.com/software/jira/downloads/atlassian-jira-software-${version}.tar.gz";
-    sha256 = "0kpsgq54xs43rwhg9zwh869jl64ywhb4fcyp5sq1zd19y5cqfnkn";
+    sha256 = "0qk72dq53kk40m8rz7i3r45cgrka2s1682b8d3kzdmmhclnzbaym";
   };
 
   phases = [ "unpackPhase" "buildPhase" "installPhase" "fixupPhase" ];
diff --git a/pkgs/servers/bird/default.nix b/pkgs/servers/bird/default.nix
index fc7acc35c19a..5683da5e8e3f 100644
--- a/pkgs/servers/bird/default.nix
+++ b/pkgs/servers/bird/default.nix
@@ -17,7 +17,7 @@ let
       buildInputs = [ readline ];
 
       patches = [
-        (./. + (builtins.toPath "/dont-create-sysconfdir-${builtins.substring 0 1 version}.patch"))
+        (./. + "/dont-create-sysconfdir-${builtins.substring 0 1 version}.patch")
       ];
 
       configureFlags = [
diff --git a/pkgs/servers/computing/slurm/default.nix b/pkgs/servers/computing/slurm/default.nix
index a191d7a721d5..ba0e57bb2be8 100644
--- a/pkgs/servers/computing/slurm/default.nix
+++ b/pkgs/servers/computing/slurm/default.nix
@@ -8,7 +8,7 @@
 
 stdenv.mkDerivation rec {
   name = "slurm-${version}";
-  version = "17.11.9-2";
+  version = "18.08.0-1";
 
   # N.B. We use github release tags instead of https://www.schedmd.com/downloads.php
   # because the latter does not keep older releases.
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
     repo = "slurm";
     # The release tags use - instead of .
     rev = "${builtins.replaceStrings ["."] ["-"] name}";
-    sha256 = "1lq4ac6yjai6wh979dciw8v3d99zbd3w36rfh0vpncqm672fg1qy";
+    sha256 = "0mnaynnpz0cyd1lspcln6h6w5d7brcw3yiqsfxqrfhlmygyp21wq";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/servers/dns/knot-dns/default.nix b/pkgs/servers/dns/knot-dns/default.nix
index 047729aa937f..3837f06264b7 100644
--- a/pkgs/servers/dns/knot-dns/default.nix
+++ b/pkgs/servers/dns/knot-dns/default.nix
@@ -7,11 +7,11 @@ let inherit (stdenv.lib) optional optionals; in
 # Note: ATM only the libraries have been tested in nixpkgs.
 stdenv.mkDerivation rec {
   name = "knot-dns-${version}";
-  version = "2.7.1";
+  version = "2.7.2";
 
   src = fetchurl {
     url = "https://secure.nic.cz/files/knot-dns/knot-${version}.tar.xz";
-    sha256 = "7d6ae20ada0f0ee7700d5df17f47f86b49eb21ee34977d0d70de6a0947371381";
+    sha256 = "cb70b2ee1c7ecbaad8774a1e0c449a68c6a6f7c9d60595524f003201d6e38431";
   };
 
   outputs = [ "bin" "out" "dev" ];
diff --git a/pkgs/servers/dns/pdns-recursor/default.nix b/pkgs/servers/dns/pdns-recursor/default.nix
index 286447352fc0..933609ac268a 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.3";
+  version = "4.1.4";
 
   src = fetchurl {
     url = "https://downloads.powerdns.com/releases/pdns-recursor-${version}.tar.bz2";
-    sha256 = "12x8gm6771wh2xaqad3p5y08p5pimp6k9h830s0487mwg9glacy1";
+    sha256 = "0l5mf45r3x1z5mg95zpbyms88zv307hsrrx4h6jm9zm3pr9l77xi";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/servers/emby/default.nix b/pkgs/servers/emby/default.nix
index baeefc7ff9c8..11cb914bfd80 100644
--- a/pkgs/servers/emby/default.nix
+++ b/pkgs/servers/emby/default.nix
@@ -1,23 +1,32 @@
-{ stdenv, fetchurl, pkgs, unzip, sqlite, makeWrapper, mono54, ffmpeg, ... }:
+{ stdenv, fetchurl, unzip, sqlite, makeWrapper, mono54, ffmpeg }:
 
 stdenv.mkDerivation rec {
   name = "emby-${version}";
-  version = "3.4.1.0";
-
+  version = "3.5.2.0";
+
+  # We are fetching a binary here, however, a source build is possible.
+  # See -> https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=emby-server-git#n43
+  # Though in my attempt it failed with this error repeatedly
+  # The type 'Attribute' is defined in an assembly that is not referenced. You must add a reference to assembly 'netstandard, Version=2.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51'.
+  # This may also need msbuild (instead of xbuild) which isn't in nixpkgs
+  # See -> https://github.com/NixOS/nixpkgs/issues/29817
   src = fetchurl {
-    url = "https://github.com/MediaBrowser/Emby/releases/download/${version}/Emby.Mono.zip";
-    sha256 = "08jr6v8xhmiwbby0lfvpjrlma280inwh5qp6v4p93lzd07fjynh5";
+    url = "https://github.com/MediaBrowser/Emby.Releases/releases/download/${version}/embyserver-mono_${version}.zip";
+    sha256 = "12f9skvnr9qxnrvr3q014yggfwvkpjk0ynbgf0fwk56h4kal7fx8";
   };
 
-  buildInputs = with pkgs; [
+  buildInputs = [
     unzip
     makeWrapper
   ];
-  propagatedBuildInputs = with pkgs; [
+
+  propagatedBuildInputs = [
     mono54
     sqlite
   ];
 
+  preferLocalBuild = true;
+
   # Need to set sourceRoot as unpacker will complain about multiple directory output
   sourceRoot = ".";
 
@@ -27,18 +36,18 @@ stdenv.mkDerivation rec {
   '';
 
   installPhase = ''
-    mkdir -p $out/bin
-    cp -r * $out/bin
+    mkdir -p "$out/bin"
+    cp -r * "$out/bin"
 
     makeWrapper "${mono54}/bin/mono" $out/bin/MediaBrowser.Server.Mono \
       --add-flags "$out/bin/MediaBrowser.Server.Mono.exe -ffmpeg ${ffmpeg}/bin/ffmpeg -ffprobe ${ffmpeg}/bin/ffprobe"
   '';
 
-  meta = {
+  meta =  with stdenv.lib; {
     description = "MediaBrowser - Bring together your videos, music, photos, and live television";
     homepage = https://emby.media/;
-    license = stdenv.lib.licenses.gpl2;
-    maintainers = [ stdenv.lib.maintainers.fadenb ];
-    platforms = stdenv.lib.platforms.all;
+    license = licenses.gpl2;
+    maintainers = with maintainers; [ fadenb ];
+    platforms = platforms.all;
   };
 }
diff --git a/pkgs/servers/foundationdb/default.nix b/pkgs/servers/foundationdb/default.nix
index 265255c2f78a..b16287f40d79 100644
--- a/pkgs/servers/foundationdb/default.nix
+++ b/pkgs/servers/foundationdb/default.nix
@@ -165,9 +165,9 @@ in with builtins; {
   };
 
   foundationdb60 = makeFdb rec {
-    version = "6.0.4pre2497_${substring 0 8 rev}";
+    version = "6.0.11pre2716_${substring 0 8 rev}";
     branch  = "release-6.0";
-    rev     = "73d64cb244714c19bcc651122f6e7a9236aa11b5";
-    sha256  = "1jzmrf9kj0brqddlmxvzhj27r6843790jnqwkv1s3ri21fqb3hs7";
+    rev     = "9e8c1941ec2cdbba0c584e1acf00906cffd7a67a";
+    sha256  = "11n5yq68w32hsq5r0g34hg5wvyv9n2lkhw60b9a1vvlw1x41wxld";
   };
 }
diff --git a/pkgs/servers/home-assistant/component-packages.nix b/pkgs/servers/home-assistant/component-packages.nix
index 12b96b3da125..a67de2dab1aa 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.77.2";
+  version = "0.77.3";
   components = {
     "abode" = ps: with ps; [  ];
     "ads" = ps: with ps; [  ];
diff --git a/pkgs/servers/home-assistant/default.nix b/pkgs/servers/home-assistant/default.nix
index ccc9bee51b99..e6bbd4ab259d 100644
--- a/pkgs/servers/home-assistant/default.nix
+++ b/pkgs/servers/home-assistant/default.nix
@@ -75,7 +75,7 @@ let
   extraBuildInputs = extraPackages py.pkgs;
 
   # Don't forget to run parse-requirements.py after updating
-  hassVersion = "0.77.2";
+  hassVersion = "0.77.3";
 
 in with py.pkgs; buildPythonApplication rec {
   pname = "homeassistant";
@@ -90,7 +90,7 @@ in with py.pkgs; buildPythonApplication rec {
     owner = "home-assistant";
     repo = "home-assistant";
     rev = version;
-    sha256 = "0lqm8n54cs4ji9bqp1z70qswgqv8n9vl8jbip7c2f3icqx19zg10";
+    sha256 = "1c459iqbkhs6dv563zld6qb9avpx3h0fnxng476zahj9x9m5rzk6";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/servers/home-assistant/frontend.nix b/pkgs/servers/home-assistant/frontend.nix
index b14d76050f90..e04de7effcd4 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 = "20180831.0";
+  version = "20180903.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "d0f897bed934bc2d557db04f8c76ad143db9514ea71943a0038c5bfb3b2151ec";
+    sha256 = "54ba2ad2d1043952885f432d900025bd3eb11de180ac5147342cff585f44d4f9";
   };
 
   propagatedBuildInputs = [ user-agents ];
diff --git a/pkgs/servers/hylafaxplus/config.site b/pkgs/servers/hylafaxplus/config.site
new file mode 100644
index 000000000000..7c8014449216
--- /dev/null
+++ b/pkgs/servers/hylafaxplus/config.site
@@ -0,0 +1,20 @@
+@config_maxgid@
+DIR_BIN="@out_@/bin"
+DIR_FONTMAP="@out_@/share/ghostscript/@ghostscript_version@"
+DIR_LIB="@out_@/lib"
+DIR_LIBDATA="@out_@/spool/etc"
+DIR_LIBEXEC="@out_@/spool/bin"
+DIR_LOCKS=/var/lock
+DIR_MAN="@out_@/share/man"
+DIR_SBIN="@out_@/spool/bin"
+DIR_SPOOL="@out_@/spool"
+FONTMAP="@ghostscript@/share/ghostscript/@ghostscript_version@"
+PATH_AFM="@ghostscript@/share/ghostscript/fonts"
+PATH_DPSRIP="@out_@/spool/bin/ps2fax"
+PATH_EGETTY="@coreutils@/bin/false"
+PATH_GSRIP="@ghostscript@/bin/gs"
+PATH_IMPRIP="@coreutils@/bin/false"
+PATH_SENDMAIL="@coreutils@/bin/false"
+PATH_VGETTY="@coreutils@/bin/false"
+SYSVINIT=no
+TIFFBIN="@libtiff@/bin"
diff --git a/pkgs/servers/hylafaxplus/default.nix b/pkgs/servers/hylafaxplus/default.nix
new file mode 100644
index 000000000000..410d24974268
--- /dev/null
+++ b/pkgs/servers/hylafaxplus/default.nix
@@ -0,0 +1,95 @@
+{ stdenv
+, lib
+, fakeroot
+, fetchurl
+, libfaketime
+, substituteAll
+## runtime dependencies
+, coreutils
+, file
+, findutils
+, gawk
+, ghostscript
+, gnugrep
+, gnused
+, libtiff
+, psmisc
+, sharutils
+, utillinux
+, zlib
+## optional packages (using `null` disables some functionality)
+, jbigkit ? null
+, lcms2 ? null  # for colored faxes
+, openldap ? null
+, pam ? null
+## system-dependent settings that have to be hardcoded
+, maxgid ? 65534  # null -> try to auto-detect (bad on linux)
+, maxuid ? 65534  # null -> hardcoded value 60002
+}:
+
+let
+
+  name = "hylafaxplus-${version}";
+  version = "5.6.0";
+  sha256 = "128514kw9kb5cvznm87z7gis1mpyx4bcqrxx4xa7cbfj1v3v81fr";
+
+  configSite = substituteAll {
+    name = "hylafaxplus-config.site";
+    src = ./config.site;
+    config_maxgid = lib.optionalString (maxgid!=null) ''CONFIG_MAXGID=${builtins.toString maxgid}'';
+    ghostscript_version = ghostscript.version;
+    out_ = "@out@";  # "out" will be resolved in post-install.sh
+    inherit coreutils ghostscript libtiff;
+  };
+
+  postPatch = substituteAll {
+    name = "hylafaxplus-post-patch.sh";
+    src = ./post-patch.sh;
+    inherit configSite;
+    maxuid = lib.optionalString (maxuid!=null) (builtins.toString maxuid);
+    faxcover_binpath = lib.makeBinPath
+      [stdenv.shellPackage coreutils];
+    faxsetup_binpath = lib.makeBinPath
+      [stdenv.shellPackage coreutils findutils gnused gnugrep gawk];
+  };
+
+  postInstall = substituteAll {
+    name = "hylafaxplus-post-install.sh";
+    src = ./post-install.sh;
+    inherit fakeroot libfaketime;
+  };
+
+in
+
+stdenv.mkDerivation {
+  inherit name version;
+  src = fetchurl {
+    url = "mirror://sourceforge/hylafax/hylafax-${version}.tar.gz";
+    inherit sha256;
+  };
+  # Note that `configure` (and maybe `faxsetup`) are looking
+  # for a couple of standard binaries in the `PATH` and
+  # hardcode their absolute paths in the new package.
+  buildInputs = [
+    file  # for `file` command
+    ghostscript
+    libtiff
+    psmisc  # for `fuser` command
+    sharutils  # for `uuencode` command
+    utillinux  # for `agetty` command
+    zlib
+    jbigkit  # optional
+    lcms2  # optional
+    openldap  # optional
+    pam  # optional
+  ];
+  postPatch = ''. ${postPatch}'';
+  dontAddPrefix = true;
+  postInstall = ''. ${postInstall}'';
+  postInstallCheck = ''. ${./post-install-check.sh}'';
+  meta.description = "enterprise-class system for sending and receiving facsimiles";
+  meta.homepage = http://hylafax.sourceforge.net;
+  meta.license = lib.licenses.bsd3;
+  meta.maintainers = [ lib.maintainers.yarny ];
+  meta.platforms = lib.platforms.linux;
+}
diff --git a/pkgs/servers/hylafaxplus/post-install-check.sh b/pkgs/servers/hylafaxplus/post-install-check.sh
new file mode 100644
index 000000000000..2850738edccc
--- /dev/null
+++ b/pkgs/servers/hylafaxplus/post-install-check.sh
@@ -0,0 +1,7 @@
+# check if the package contains all the files needed
+for x in faxq faxquit hfaxd faxcron faxqclean faxgetty
+do
+  test -x "$out/spool/bin/$x"
+done
+test -d "$out/spool/config"
+test -f "$out/spool/etc/setup.cache"
diff --git a/pkgs/servers/hylafaxplus/post-install.sh b/pkgs/servers/hylafaxplus/post-install.sh
new file mode 100644
index 000000000000..ddc7c3f85eda
--- /dev/null
+++ b/pkgs/servers/hylafaxplus/post-install.sh
@@ -0,0 +1,24 @@
+# Parts of the `install` make target don't
+# dare to set file modes (or owners), but put the
+# needed commands in a new file called `root.sh`.
+# We execute the `chmod` commands of
+# this script to set execute bits.
+sed '/chown/d;/chgrp/d' --in-place root.sh
+. root.sh
+
+# We run `faxsetup` to prepare some config files
+# that the admin would have to create otherwise.
+# Since `faxsetup` is quite picky about its environment,
+# we have to prepare some dummy files.
+# `faxsetup` stores today's date in the output files,
+# so we employ faketime to simulate a deterministic date.
+echo "uucp:x:0" >> "$TMPDIR/passwd.dummy"  # dummy uucp user
+touch "$out/spool/etc/config.dummy"  # dummy modem config
+mkdir "$TMPDIR/lock.dummy"  # dummy lock dir
+"@libfaketime@/bin/faketime" -f "$(date --utc --date=@$SOURCE_DATE_EPOCH '+%F %T')" \
+  "@fakeroot@/bin/fakeroot" -- \
+  "$out/spool/bin/faxsetup" -with-DIR_LOCKS="$TMPDIR/lock.dummy" -with-PASSWD="$TMPDIR/passwd.dummy"
+rm "$out/spool/etc/config.dummy"
+
+# Ensure all binaries are reachable within the spooling area.
+ln --symbolic --target-directory="$out/spool/bin/" "$out/bin/"*
diff --git a/pkgs/servers/hylafaxplus/post-patch.sh b/pkgs/servers/hylafaxplus/post-patch.sh
new file mode 100644
index 000000000000..6ec5937147e2
--- /dev/null
+++ b/pkgs/servers/hylafaxplus/post-patch.sh
@@ -0,0 +1,25 @@
+# `configure` (maybe others) set `POSIXLY_CORRECT`, which
+# breaks the gcc wrapper script of nixpkgs (maybe others).
+# We simply un-export `POSIXLY_CORRECT` after each export so
+# its effects don't apply within nixpkgs wrapper scripts.
+grep -rlF POSIXLY_CORRECT | xargs \
+  sed '/export *POSIXLY_CORRECT/a export -n POSIXLY_CORRECT' -i
+
+# Replace strange default value for the nobody account.
+if test -n "@maxuid@"
+then
+  for f in util/faxadduser.c hfaxd/manifest.h
+  do
+    substituteInPlace "$f" --replace 60002 "@maxuid@"
+  done
+fi
+
+# Replace hardcoded `PATH` variables with proper paths.
+# Note: `findutils` is needed for `faxcron`.
+substituteInPlace faxcover/edit-faxcover.sh.in \
+  --replace 'PATH=/bin' 'PATH="@faxcover_binpath@"'
+substituteInPlace etc/faxsetup.sh.in \
+  --replace 'PATH=/bin' 'PATH="@faxsetup_binpath@"'
+
+# Create `config.site`
+substitute "@configSite@" config.site --subst-var out
diff --git a/pkgs/servers/identd/nullidentdmod/default.nix b/pkgs/servers/identd/nullidentdmod/default.nix
new file mode 100644
index 000000000000..fdad63d67af4
--- /dev/null
+++ b/pkgs/servers/identd/nullidentdmod/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, fetchFromGitHub, ... }: stdenv.mkDerivation rec {
+  name = "nullidentdmod-${version}";
+  version = "1.3";
+
+  src = fetchFromGitHub {
+    owner = "Acidhub";
+    repo = "nullidentdmod";
+    rev = "v${version}";
+    sha256 = "1ahwm5pyidc6m07rh5ls2lc25kafrj233nnbcybprgl7bqdq1b0k";
+  };
+
+  installPhase = ''
+    mkdir -p $out/bin
+
+    install -Dm755 nullidentdmod $out/bin
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Simple identd that just replies with a random string or customized userid";
+    license = licenses.gpl2;
+    homepage = http://acidhub.click/NullidentdMod;
+    maintainers = with maintainers; [ das_j ];
+    platforms = platforms.linux; # Must be run by systemd
+  };
+}
diff --git a/pkgs/servers/jackett/default.nix b/pkgs/servers/jackett/default.nix
index 774f8df94a7d..49f7b59ddc6f 100644
--- a/pkgs/servers/jackett/default.nix
+++ b/pkgs/servers/jackett/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "jackett-${version}";
-  version = "0.9.41";
+  version = "0.10.160";
 
   src = fetchurl {
     url = "https://github.com/Jackett/Jackett/releases/download/v${version}/Jackett.Binaries.Mono.tar.gz";
-    sha256 = "0ndzn1p876rkj56g6vscgkmyzi1k0gmqby4rmrb4ilxzjpskii8m";
+    sha256 = "1msy11s89r63vcan6d8mjn2jic1zwvl2j852mjj06bfb3yldx6vq";
   };
 
   buildInputs = [ makeWrapper ];
diff --git a/pkgs/servers/kippo/default.nix b/pkgs/servers/kippo/default.nix
index a9f5ba6f7b2c..3ebcaf7286b4 100644
--- a/pkgs/servers/kippo/default.nix
+++ b/pkgs/servers/kippo/default.nix
@@ -95,5 +95,6 @@ in stdenv.mkDerivation rec {
       license = licenses.bsd3;
       platforms = platforms.linux;
       maintainers = with maintainers; [ tomberek ];
+      broken = true; # 2018-09-12, failed on hydra since 2017-12-11
     };
 }
diff --git a/pkgs/servers/mail/exim/default.nix b/pkgs/servers/mail/exim/default.nix
index 3acf777999f7..cf68b1bef40d 100644
--- a/pkgs/servers/mail/exim/default.nix
+++ b/pkgs/servers/mail/exim/default.nix
@@ -2,6 +2,7 @@
 , enableLDAP ? false, openldap
 , enableMySQL ? false, mysql, zlib
 , enableAuthDovecot ? false, dovecot
+, enablePAM ? false, pam
 }:
 
 stdenv.mkDerivation rec {
@@ -16,7 +17,8 @@ stdenv.mkDerivation rec {
   buildInputs = [ coreutils db openssl perl pcre ]
     ++ stdenv.lib.optional enableLDAP openldap
     ++ stdenv.lib.optionals enableMySQL [ mysql zlib ]
-    ++ stdenv.lib.optional enableAuthDovecot dovecot;
+    ++ stdenv.lib.optional enableAuthDovecot dovecot
+    ++ stdenv.lib.optional enablePAM pam;
 
   preBuild = ''
     ${stdenv.lib.optionalString enableMySQL "PKG_CONFIG_PATH=$PKG_CONFIG_PATH:${mysql}/share/mysql/pkgconfig/"}
@@ -57,6 +59,11 @@ stdenv.mkDerivation rec {
       ${stdenv.lib.optionalString enableAuthDovecot ''
         s:^# \(AUTH_DOVECOT\)=.*:\1=yes:
       ''}
+      ${stdenv.lib.optionalString enablePAM ''
+        s:^# \(SUPPORT_PAM\)=.*:\1=yes:
+        s:^\(EXTRALIBS_EXIM\)=\(.*\):\1=\2 -lpam:
+        s:^# \(EXTRALIBS_EXIM\)=.*:\1=-lpam:
+      ''}
       #/^\s*#.*/d
       #/^\s*$/d
     ' < src/EDITME > Local/Makefile
diff --git a/pkgs/servers/matrix-synapse/default.nix b/pkgs/servers/matrix-synapse/default.nix
index 74cd233710cd..2aea521611c4 100644
--- a/pkgs/servers/matrix-synapse/default.nix
+++ b/pkgs/servers/matrix-synapse/default.nix
@@ -26,13 +26,13 @@ let
   };
 in python2Packages.buildPythonApplication rec {
   name = "matrix-synapse-${version}";
-  version = "0.33.3";
+  version = "0.33.3.1";
 
   src = fetchFromGitHub {
     owner = "matrix-org";
     repo = "synapse";
     rev = "v${version}";
-    sha256 = "0yxxrs8yrrkp3pffdfab8apdmyhdcl90wgmglryy4q8vsksxn7d4";
+    sha256 = "0q7rjh2qwj1ym5alnv9dvgw07bm7kk7igfai9ix72c6n7qb4z4i3";
   };
 
   patches = [
diff --git a/pkgs/servers/metabase/default.nix b/pkgs/servers/metabase/default.nix
index 5387a93b5e62..ac6dd44a8441 100644
--- a/pkgs/servers/metabase/default.nix
+++ b/pkgs/servers/metabase/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "metabase-${version}";
-  version = "0.30.0";
+  version = "0.30.1";
 
   src = fetchurl {
     url = "http://downloads.metabase.com/v${version}/metabase.jar";
-    sha256 = "1wnzd2g1qxqpqjsqq1kfr0zrvjvqg54dvznbhf3637b0iqq3ahkh";
+    sha256 = "13035yhbhsr4xg48hanbf8qchwyk6j59c90qkbjr914xcyvj6scc";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/servers/monitoring/grafana/default.nix b/pkgs/servers/monitoring/grafana/default.nix
index fb7418551ae6..e795d74fe989 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 = "5.2.3";
+  version = "5.2.4";
   name = "grafana-${version}";
   goPackagePath = "github.com/grafana/grafana";
 
@@ -9,12 +9,12 @@ buildGoPackage rec {
     rev = "v${version}";
     owner = "grafana";
     repo = "grafana";
-    sha256 = "08ws8kpqxl0rihw8xa93285gal6f6c3imymdi9iif13vsn458hiw";
+    sha256 = "15w935i22ddx6ff32ynypjh3q670vnrj74qw0vdkxdmrlwk3q7wc";
   };
 
   srcStatic = fetchurl {
     url = "https://s3-us-west-2.amazonaws.com/grafana-releases/release/grafana-${version}.linux-amd64.tar.gz";
-    sha256 = "098xrzq7wkizww9552bk8cn300336y51qfzf1fkfwrn1fqf9nswl";
+    sha256 = "187dqjahz1z1gkcx9pxnf2hri6g3b5j3ppadwfahz0rwsqj4v2lf";
   };
 
   postPatch = ''
diff --git a/pkgs/servers/monitoring/prometheus/default.nix b/pkgs/servers/monitoring/prometheus/default.nix
index 37d82326cc29..b254b8470c42 100644
--- a/pkgs/servers/monitoring/prometheus/default.nix
+++ b/pkgs/servers/monitoring/prometheus/default.nix
@@ -50,7 +50,7 @@ in rec {
   };
 
   prometheus_2 = generic {
-    version = "2.2.1";
-    sha256 = "1zwxjmj8jh02i4y3i3zrkz7ml66zyhg3ad1npjzf3319mglsp7ch";
+    version = "2.3.2";
+    sha256 = "09q3p3kvgrvgyfkkvpy2mmlr6jxzxad6nzjni3iycs4bahsxl27a";
   };
 }
diff --git a/pkgs/servers/monitoring/prometheus/dovecot-exporter-deps.nix b/pkgs/servers/monitoring/prometheus/dovecot-exporter-deps.nix
index c2dea18ee815..d94aad821485 100644
--- a/pkgs/servers/monitoring/prometheus/dovecot-exporter-deps.nix
+++ b/pkgs/servers/monitoring/prometheus/dovecot-exporter-deps.nix
@@ -23,8 +23,17 @@
     fetch = {
       type = "git";
       url = "https://github.com/beorn7/perks";
-      rev = "4c0e84591b9aa9e6dcfdf3e020114cd81f89d5f9";
-      sha256 = "1hrybsql68xw57brzj805xx2mghydpdiysv3gbhr7f5wlxj2514y";
+      rev = "3a771d992973f24aa725d07868b467d1ddfceafb";
+      sha256 = "1l2lns4f5jabp61201sh88zf3b0q793w4zdgp9nll7mmfcxxjif3";
+    };
+  }
+  {
+    goPackagePath = "github.com/gogo/protobuf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gogo/protobuf";
+      rev = "4aa4cc277ae58d2fab6cfe51dd17df5dceaf457d";
+      sha256 = "009z6rpivyakgsxs0zkm94c9i7l65hcw2ljvah94wq3y6v6j47gs";
     };
   }
   {
@@ -32,8 +41,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/golang/protobuf";
-      rev = "bbd03ef6da3a115852eaf24c8a1c46aeb39aa175";
-      sha256 = "1pyli3dcagi7jzpiazph4fhkz7a3z4bhd25nwbb7g0iy69b8z1g4";
+      rev = "0f2620f554cf5c8e281a2eb655a035f5a0f6dc90";
+      sha256 = "0lxngq1a8cnsy6dlr6gi8pjv3fir2wiw76qh075pa9g02h7ywhv3";
     };
   }
   {
@@ -50,8 +59,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/prometheus/client_golang";
-      rev = "c3324c1198cf3374996e9d3098edd46a6b55afc9";
-      sha256 = "19qcz5bpzj5kqyhmbq5kxr8nrqqlszazzq6w0wldis1yk1wwww00";
+      rev = "b5bfa0eb2c8d46bd91dc58271e973c5f0bbebcfa";
+      sha256 = "1msxzkdgi0ing4ddmp0s4qrf267n6ylafw9mbz5yrr7spb1dgxgk";
     };
   }
   {
@@ -59,8 +68,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/prometheus/client_model";
-      rev = "99fa1f4be8e564e8a6b613da7fa6f46c9edafc6c";
-      sha256 = "19y4ywsivhpxj7ikf2j0gm9k3cmyw37qcbfi78n526jxcc7kw998";
+      rev = "5c3871d89910bfb32f5fcab2aa4b9ec68e65a99f";
+      sha256 = "04psf81l9fjcwascsys428v03fx4fi894h7fhrj2vvcz723q57k0";
     };
   }
   {
@@ -68,8 +77,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/prometheus/common";
-      rev = "e4aa40a9169a88835b849a6efb71e05dc04b88f0";
-      sha256 = "0m1n616d694jca0qjwjn5ci7scfgm2jpi94dhi356arm9lhda4jc";
+      rev = "c7de2306084e37d54b8be01f3541a8464345e9a5";
+      sha256 = "11dqfm2d0m4sjjgyrnayman96g59x2apmvvqby9qmww2qj2k83ig";
     };
   }
   {
@@ -77,8 +86,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/prometheus/procfs";
-      rev = "54d17b57dd7d4a3aa092476596b3f8a933bde349";
-      sha256 = "1b5218hi6k9i637k6xc7ynpll577zbnrhjm9jr2iczy3j0rr4rvr";
+      rev = "05ee40e3a273f7245e8777337fc7b46e533a9a92";
+      sha256 = "0f6fnczxa42b9rys2h3l0m8fy3x5hrhaq707vq0lbx5fcylw8lis";
     };
   }
   {
diff --git a/pkgs/servers/monitoring/prometheus/dovecot-exporter.nix b/pkgs/servers/monitoring/prometheus/dovecot-exporter.nix
index 86f43116f746..5a3fd23ec22e 100644
--- a/pkgs/servers/monitoring/prometheus/dovecot-exporter.nix
+++ b/pkgs/servers/monitoring/prometheus/dovecot-exporter.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   name = "dovecot_exporter-${version}";
-  version = "0.1.1";
+  version = "0.1.3";
 
   goPackagePath = "github.com/kumina/dovecot_exporter";
 
@@ -10,7 +10,7 @@ buildGoPackage rec {
     owner = "kumina";
     repo = "dovecot_exporter";
     rev = version;
-    sha256 = "0i7nfgkb5jqdbgr16i29jdsvh69dx9qgn6nazpw78k0lgy7mpidn";
+    sha256 = "1lnxnnm45fhcyv40arcvpiiibwdnxdwhkf8sbjpifx1wspvphcj9";
   };
 
   goDeps = ./dovecot-exporter-deps.nix;
diff --git a/pkgs/servers/monitoring/prometheus/snmp-exporter.nix b/pkgs/servers/monitoring/prometheus/snmp-exporter.nix
index 29454dd44d2b..be8fbd3d85cb 100644
--- a/pkgs/servers/monitoring/prometheus/snmp-exporter.nix
+++ b/pkgs/servers/monitoring/prometheus/snmp-exporter.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   name = "snmp_exporter-${version}";
-  version = "0.11.0";
+  version = "0.13.0";
 
   goPackagePath = "github.com/prometheus/snmp_exporter";
 
@@ -10,7 +10,7 @@ buildGoPackage rec {
     owner = "prometheus";
     repo = "snmp_exporter";
     rev = "v${version}";
-    sha256 = "027p96jzhq9l7m3s5qxxg3rqp14pai7q66d3ppin19lg7al11c9x";
+    sha256 = "071v9qqhp2hcbgml94dm1l212qi18by88r9755npq9ycrsmawkll";
   };
 
   buildInputs = [ net_snmp ];
diff --git a/pkgs/servers/monitoring/telegraf/default.nix b/pkgs/servers/monitoring/telegraf/default.nix
index 031ba423cc40..99380fbae9cb 100644
--- a/pkgs/servers/monitoring/telegraf/default.nix
+++ b/pkgs/servers/monitoring/telegraf/default.nix
@@ -19,7 +19,7 @@ buildGoPackage rec {
     -X main.version=${version}
   '' ];
 
-  goDeps = ./. + builtins.toPath "/deps-${version}.nix";
+  goDeps = ./. + "/deps-${version}.nix";
 
   meta = with lib; {
     description = "The plugin-driven server agent for collecting & reporting metrics.";
diff --git a/pkgs/servers/nats-streaming-server/default.nix b/pkgs/servers/nats-streaming-server/default.nix
new file mode 100644
index 000000000000..8270fa398214
--- /dev/null
+++ b/pkgs/servers/nats-streaming-server/default.nix
@@ -0,0 +1,26 @@
+{  buildGoPackage, fetchFromGitHub, lib  }:
+
+with lib;
+
+buildGoPackage rec {
+  name = "nats-streaming-server-${version}";
+  version = "0.11.0";
+  rev = "v${version}";
+
+  goPackagePath = "github.com/nats-io/nats-streaming-server";
+
+  src = fetchFromGitHub {
+    inherit rev;
+    owner = "nats-io";
+    repo = "nats-streaming-server";
+	sha256 = "0skkx3f7dpbf6nqpsbsk8ssn8hl55s9k76a5y5ksyqar5bdxvds5";
+  };
+
+  meta = {
+    description = "NATS Streaming System Server";
+    license = licenses.asl20;
+    maintainers = [ maintainers.swdunlop ];
+    homepage = https://nats.io/;
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/servers/nextcloud/default.nix b/pkgs/servers/nextcloud/default.nix
index 3245666d8ec3..8a0a848aa5d6 100644
--- a/pkgs/servers/nextcloud/default.nix
+++ b/pkgs/servers/nextcloud/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name= "nextcloud-${version}";
-  version = "13.0.5";
+  version = "13.0.6";
 
   src = fetchurl {
     url = "https://download.nextcloud.com/server/releases/${name}.tar.bz2";
-    sha256 = "1sl0kvn52m6p7rglwhgfb737y1897897hc5g2fcbg6i594ld6451";
+    sha256 = "1m38k5jafz2lniy6fmq17xffkgaqs6rl4w789sqpniva1fb9xz4h";
   };
 
   installPhase = ''
diff --git a/pkgs/servers/nosql/arangodb/default.nix b/pkgs/servers/nosql/arangodb/default.nix
index 9281bdd0af75..72485d388a15 100644
--- a/pkgs/servers/nosql/arangodb/default.nix
+++ b/pkgs/servers/nosql/arangodb/default.nix
@@ -3,14 +3,14 @@
 
 let
 in stdenv.mkDerivation rec {
-  version = "3.3.14";
+  version = "3.3.15";
   name    = "arangodb-${version}";
 
   src = fetchFromGitHub {
     repo = "arangodb";
     owner = "arangodb";
     rev = "v${version}";
-    sha256 = "00l0mvnyv8y0p13pyxx3hzsnwna9qfq7yjdpisvayipbl7zpvadc";
+    sha256 = "177n2l8k8fswxvz102n6lm0qsn0fvq0s2zx6skrfg4g7gil3wkyb";
   };
 
   buildInputs = [
diff --git a/pkgs/servers/nosql/influxdb/default.nix b/pkgs/servers/nosql/influxdb/default.nix
index 0c549e2b7e9e..e73233bd1447 100644
--- a/pkgs/servers/nosql/influxdb/default.nix
+++ b/pkgs/servers/nosql/influxdb/default.nix
@@ -20,7 +20,7 @@ buildGoPackage rec {
   excludedPackages = "test";
 
   # Generated with the nix2go
-  goDeps = ./. + builtins.toPath "/deps-${version}.nix";
+  goDeps = ./. + "/deps-${version}.nix";
 
   meta = with lib; {
     description = "An open-source distributed time series database";
diff --git a/pkgs/servers/radarr/default.nix b/pkgs/servers/radarr/default.nix
index 5fd23476d7da..8d920af654da 100644
--- a/pkgs/servers/radarr/default.nix
+++ b/pkgs/servers/radarr/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "radarr-${version}";
-  version = "0.2.0.995";
+  version = "0.2.0.1120";
 
   src = fetchurl {
     url = "https://github.com/Radarr/Radarr/releases/download/v${version}/Radarr.develop.${version}.linux.tar.gz";
-    sha256 = "04sgs292qz65fcg5vsps0fk2669xzvyfw1rbc5sbbk3hig5lhlns";
+    sha256 = "0vsjaza0k4djb3vnazl2py4qmbxqfyyr0x9p4flq78yn79hp3439";
   };
 
   buildInputs = [ makeWrapper ];
diff --git a/pkgs/servers/sks/adapt-to-nixos.patch b/pkgs/servers/sks/adapt-to-nixos.patch
new file mode 100644
index 000000000000..b4403e8c7bc7
--- /dev/null
+++ b/pkgs/servers/sks/adapt-to-nixos.patch
@@ -0,0 +1,27 @@
+--- a/version.ml	2018-09-08 15:56:18.919154257 +0200
++++ b/version.ml	2018-09-08 15:56:07.544028575 +0200
+@@ -24,16 +24,6 @@
+ 
+ let run () =
+   let bdb_version = Bdb.version () in
+-  let dbstats_dir =
+-    let split = Str.regexp_string "." in
+-    let major_minor_string major minor =
+-      sprintf "Further details about the BDB environment can be seen by \
+-	  executing\ndb%s.%s_stat -x in the KDB and Ptree directories\n" major minor
+-    in
+-    match Str.split split bdb_version with
+-    | major :: minor :: _ -> major_minor_string major minor
+-    | [] | _ :: []        -> major_minor_string "X"   "Y"
+-  in
+   printf "SKS version %s%s\n"
+     Common.version Common.version_suffix;
+ 	
+@@ -44,5 +34,6 @@
+          requirement for recon of SKS %s\n"
+       Common.compatible_version_string;
+ 	
+-  printf "%s" dbstats_dir
++  printf "Further details about the BDB environment can be seen by executing\n\
++    db_stat -x in the KDB and PTree directories\n"
+ 
diff --git a/pkgs/servers/sks/default.nix b/pkgs/servers/sks/default.nix
index fe4029db1c14..deeeabda7451 100644
--- a/pkgs/servers/sks/default.nix
+++ b/pkgs/servers/sks/default.nix
@@ -11,6 +11,11 @@ stdenv.mkDerivation rec {
     sha256 = "00q5ma5rvl10rkc6cdw8d69bddgrmvy0ckqj3hbisy65l4idj2zm";
   };
 
+  # pkgs.db provides db_stat, not db$major.$minor_stat
+  patches = [ ./adapt-to-nixos.patch ];
+
+  outputs = [ "out" "webSamples" ];
+
   buildInputs = [ ocaml zlib db perl camlp4 ];
 
   makeFlags = [ "PREFIX=$(out)" "MANDIR=$(out)/share/man" ];
@@ -26,6 +31,9 @@ stdenv.mkDerivation rec {
   doCheck = true;
   checkPhase = "./sks unit_test";
 
+  # Copy the web examples for the NixOS module
+  postInstall = "cp -R sampleWeb $webSamples";
+
   meta = with stdenv.lib; {
     description = "An easily deployable & decentralized OpenPGP keyserver";
     longDescription = ''
diff --git a/pkgs/servers/uftp/default.nix b/pkgs/servers/uftp/default.nix
index a484e0382104..768fdf0b46f8 100644
--- a/pkgs/servers/uftp/default.nix
+++ b/pkgs/servers/uftp/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "uftp-${version}";
-  version = "4.9.7";
+  version = "4.9.8";
 
   src = fetchurl {
     url = "mirror://sourceforge/uftp-multicast/source-tar/uftp-${version}.tar.gz";
-    sha256 = "1gh1zpc6dh690xjhfp5x2ajhwjkchyh5wazr8agm6axxwqhd9gn8";
+    sha256 = "16g54372xy5apk485xz9bp1hfci15mssw7m7givls4lpwhc67379";
   };
 
   buildInputs = [ openssl ];
diff --git a/pkgs/servers/web-apps/codimd/CodeMirror/default.nix b/pkgs/servers/web-apps/codimd/CodeMirror/default.nix
new file mode 100644
index 000000000000..e4899597de4f
--- /dev/null
+++ b/pkgs/servers/web-apps/codimd/CodeMirror/default.nix
@@ -0,0 +1,46 @@
+{ stdenv, pkgs, buildEnv, fetchFromGitHub, nodejs-6_x, phantomjs2, which }:
+
+let
+  nodePackages = import ./node.nix {
+    inherit pkgs;
+    system = stdenv.system;
+  };
+
+  phantomjs-prebuilt = nodePackages."phantomjs-prebuilt-^2.1.12".override (oldAttrs: {
+    buildInputs = oldAttrs.buildInputs ++ [ phantomjs2 ];
+  });
+in
+
+stdenv.mkDerivation {
+  name = "codemirror-hackmdio-05-07-2018";
+
+  src = fetchFromGitHub {
+    owner = "hackmdio";
+    repo = "CodeMirror";
+    rev = "df412731ed3923124f9a43f60e84bdf855eb843a";
+    sha256 = "02v2wccv9sjdda9x45ib8d08i1pc4b8kwg3p6qc314wqq89nhniw";
+  };
+
+  nativeBuildInputs = [ which ];
+  buildInputs = [ nodejs-6_x phantomjs-prebuilt ] ++ (stdenv.lib.attrVals [
+    "blint-^1"
+    "node-static-0.6.0"
+    "rollup-^0.41.0"
+    "rollup-plugin-buble-^0.15.0"
+    "rollup-watch-^3.2.0"
+    "uglify-js-^2.8.15"
+  ] nodePackages);
+
+  buildPhase = ''
+    patchShebangs .
+    npm run build
+    node release
+  '';
+
+  installPhase = ''
+    mkdir -p $out/lib/node_modules/codemirror
+    cp -R {codemirror.min.js,addon,bin,keymap,lib,mode,theme} $out/lib/node_modules/codemirror/
+    ln -s ${nodePackages."url-loader-^0.5.7"}/lib/node_modules/url-loader \
+      $out/lib/node_modules
+  '';
+}
diff --git a/pkgs/servers/web-apps/codimd/CodeMirror/deps.json b/pkgs/servers/web-apps/codimd/CodeMirror/deps.json
new file mode 100644
index 000000000000..672e413a4a9e
--- /dev/null
+++ b/pkgs/servers/web-apps/codimd/CodeMirror/deps.json
@@ -0,0 +1,8 @@
+[ { "blint": "^1" }
+, { "node-static": "0.6.0" }
+, { "phantomjs-prebuilt": "^2.1.12" }
+, { "rollup": "^0.41.0" }
+, { "rollup-plugin-buble": "^0.15.0" }
+, { "rollup-watch": "^3.2.0" }
+, { "uglify-js": "^2.8.15" }
+, { "url-loader": "^0.5.7" } ]
diff --git a/pkgs/servers/web-apps/codimd/CodeMirror/generate.sh b/pkgs/servers/web-apps/codimd/CodeMirror/generate.sh
new file mode 100755
index 000000000000..c42da7340c31
--- /dev/null
+++ b/pkgs/servers/web-apps/codimd/CodeMirror/generate.sh
@@ -0,0 +1,7 @@
+#!/usr/bin/env nix-shell
+#! nix-shell -i bash -p nodePackages.node2nix
+
+node2nix -6 -i deps.json \
+  -e ../../../../development/node-packages/node-env.nix \
+  --no-copy-node-env \
+  -c node.nix
diff --git a/pkgs/servers/web-apps/codimd/CodeMirror/node-packages.nix b/pkgs/servers/web-apps/codimd/CodeMirror/node-packages.nix
new file mode 100644
index 000000000000..a2d475d5831a
--- /dev/null
+++ b/pkgs/servers/web-apps/codimd/CodeMirror/node-packages.nix
@@ -0,0 +1,1459 @@
+# This file has been generated by node2nix 1.6.0. Do not edit!
+
+{nodeEnv, fetchurl, fetchgit, globalBuildInputs ? []}:
+
+let
+  sources = {
+    "acorn-3.3.0" = {
+      name = "acorn";
+      packageName = "acorn";
+      version = "3.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz";
+        sha1 = "45e37fb39e8da3f25baee3ff5369e2bb5f22017a";
+      };
+    };
+    "acorn-5.7.1" = {
+      name = "acorn";
+      packageName = "acorn";
+      version = "5.7.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/acorn/-/acorn-5.7.1.tgz";
+        sha512 = "d+nbxBUGKg7Arpsvbnlq61mc12ek3EY8EQldM3GPAhWJ1UVxC6TDGbIvUMNU6obBX3i1+ptCIzV4vq0gFPEGVQ==";
+      };
+    };
+    "acorn-jsx-3.0.1" = {
+      name = "acorn-jsx";
+      packageName = "acorn-jsx";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-3.0.1.tgz";
+        sha1 = "afdf9488fb1ecefc8348f6fb22f464e32a58b36b";
+      };
+    };
+    "acorn-object-spread-1.0.0" = {
+      name = "acorn-object-spread";
+      packageName = "acorn-object-spread";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/acorn-object-spread/-/acorn-object-spread-1.0.0.tgz";
+        sha1 = "48ead0f4a8eb16995a17a0db9ffc6acaada4ba68";
+      };
+    };
+    "ajv-5.5.2" = {
+      name = "ajv";
+      packageName = "ajv";
+      version = "5.5.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz";
+        sha1 = "73b5eeca3fab653e3d3f9422b341ad42205dc965";
+      };
+    };
+    "align-text-0.1.4" = {
+      name = "align-text";
+      packageName = "align-text";
+      version = "0.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz";
+        sha1 = "0cd90a561093f35d0a99256c22b7069433fad117";
+      };
+    };
+    "ansi-regex-2.1.1" = {
+      name = "ansi-regex";
+      packageName = "ansi-regex";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz";
+        sha1 = "c3b33ab5ee360d86e0e628f0468ae7ef27d654df";
+      };
+    };
+    "ansi-styles-1.0.0" = {
+      name = "ansi-styles";
+      packageName = "ansi-styles";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansi-styles/-/ansi-styles-1.0.0.tgz";
+        sha1 = "cb102df1c56f5123eab8b67cd7b98027a0279178";
+      };
+    };
+    "ansi-styles-2.2.1" = {
+      name = "ansi-styles";
+      packageName = "ansi-styles";
+      version = "2.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz";
+        sha1 = "b432dd3358b634cf75e1e4664368240533c1ddbe";
+      };
+    };
+    "asn1-0.2.4" = {
+      name = "asn1";
+      packageName = "asn1";
+      version = "0.2.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz";
+        sha512 = "jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==";
+      };
+    };
+    "assert-plus-1.0.0" = {
+      name = "assert-plus";
+      packageName = "assert-plus";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz";
+        sha1 = "f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525";
+      };
+    };
+    "asynckit-0.4.0" = {
+      name = "asynckit";
+      packageName = "asynckit";
+      version = "0.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz";
+        sha1 = "c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79";
+      };
+    };
+    "aws-sign2-0.7.0" = {
+      name = "aws-sign2";
+      packageName = "aws-sign2";
+      version = "0.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz";
+        sha1 = "b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8";
+      };
+    };
+    "aws4-1.8.0" = {
+      name = "aws4";
+      packageName = "aws4";
+      version = "1.8.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz";
+        sha512 = "ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==";
+      };
+    };
+    "balanced-match-1.0.0" = {
+      name = "balanced-match";
+      packageName = "balanced-match";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz";
+        sha1 = "89b4d199ab2bee49de164ea02b89ce462d71b767";
+      };
+    };
+    "bcrypt-pbkdf-1.0.2" = {
+      name = "bcrypt-pbkdf";
+      packageName = "bcrypt-pbkdf";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz";
+        sha1 = "a4301d389b6a43f9b67ff3ca11a3f6637e360e9e";
+      };
+    };
+    "big.js-3.2.0" = {
+      name = "big.js";
+      packageName = "big.js";
+      version = "3.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/big.js/-/big.js-3.2.0.tgz";
+        sha512 = "+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q==";
+      };
+    };
+    "brace-expansion-1.1.11" = {
+      name = "brace-expansion";
+      packageName = "brace-expansion";
+      version = "1.1.11";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz";
+        sha512 = "iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==";
+      };
+    };
+    "buble-0.15.2" = {
+      name = "buble";
+      packageName = "buble";
+      version = "0.15.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/buble/-/buble-0.15.2.tgz";
+        sha1 = "547fc47483f8e5e8176d82aa5ebccb183b02d613";
+      };
+    };
+    "buffer-from-1.1.1" = {
+      name = "buffer-from";
+      packageName = "buffer-from";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz";
+        sha512 = "MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==";
+      };
+    };
+    "camelcase-1.2.1" = {
+      name = "camelcase";
+      packageName = "camelcase";
+      version = "1.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz";
+        sha1 = "9bb5304d2e0b56698b2c758b08a3eaa9daa58a39";
+      };
+    };
+    "caseless-0.12.0" = {
+      name = "caseless";
+      packageName = "caseless";
+      version = "0.12.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz";
+        sha1 = "1b681c21ff84033c826543090689420d187151dc";
+      };
+    };
+    "center-align-0.1.3" = {
+      name = "center-align";
+      packageName = "center-align";
+      version = "0.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz";
+        sha1 = "aa0d32629b6ee972200411cbd4461c907bc2b7ad";
+      };
+    };
+    "chalk-0.4.0" = {
+      name = "chalk";
+      packageName = "chalk";
+      version = "0.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/chalk/-/chalk-0.4.0.tgz";
+        sha1 = "5199a3ddcd0c1efe23bc08c1b027b06176e0c64f";
+      };
+    };
+    "chalk-1.1.3" = {
+      name = "chalk";
+      packageName = "chalk";
+      version = "1.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz";
+        sha1 = "a8115c55e4a702fe4d150abd3872822a7e09fc98";
+      };
+    };
+    "cliui-2.1.0" = {
+      name = "cliui";
+      packageName = "cliui";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz";
+        sha1 = "4b475760ff80264c762c3a1719032e91c7fea0d1";
+      };
+    };
+    "co-4.6.0" = {
+      name = "co";
+      packageName = "co";
+      version = "4.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/co/-/co-4.6.0.tgz";
+        sha1 = "6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184";
+      };
+    };
+    "combined-stream-1.0.6" = {
+      name = "combined-stream";
+      packageName = "combined-stream";
+      version = "1.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz";
+        sha1 = "723e7df6e801ac5613113a7e445a9b69cb632818";
+      };
+    };
+    "concat-map-0.0.1" = {
+      name = "concat-map";
+      packageName = "concat-map";
+      version = "0.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz";
+        sha1 = "d8a96bd77fd68df7793a73036a3ba0d5405d477b";
+      };
+    };
+    "concat-stream-1.6.2" = {
+      name = "concat-stream";
+      packageName = "concat-stream";
+      version = "1.6.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz";
+        sha512 = "27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==";
+      };
+    };
+    "core-util-is-1.0.2" = {
+      name = "core-util-is";
+      packageName = "core-util-is";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz";
+        sha1 = "b5fd54220aa2bc5ab57aab7140c940754503c1a7";
+      };
+    };
+    "dashdash-1.14.1" = {
+      name = "dashdash";
+      packageName = "dashdash";
+      version = "1.14.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz";
+        sha1 = "853cfa0f7cbe2fed5de20326b8dd581035f6e2f0";
+      };
+    };
+    "debug-2.6.9" = {
+      name = "debug";
+      packageName = "debug";
+      version = "2.6.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz";
+        sha512 = "bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==";
+      };
+    };
+    "decamelize-1.2.0" = {
+      name = "decamelize";
+      packageName = "decamelize";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz";
+        sha1 = "f6534d15148269b20352e7bee26f501f9a191290";
+      };
+    };
+    "delayed-stream-1.0.0" = {
+      name = "delayed-stream";
+      packageName = "delayed-stream";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz";
+        sha1 = "df3ae199acadfb7d440aaae0b29e2272b24ec619";
+      };
+    };
+    "ecc-jsbn-0.1.2" = {
+      name = "ecc-jsbn";
+      packageName = "ecc-jsbn";
+      version = "0.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz";
+        sha1 = "3a83a904e54353287874c564b7549386849a98c9";
+      };
+    };
+    "emojis-list-2.1.0" = {
+      name = "emojis-list";
+      packageName = "emojis-list";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz";
+        sha1 = "4daa4d9db00f9819880c79fa457ae5b09a1fd389";
+      };
+    };
+    "es6-promise-4.2.4" = {
+      name = "es6-promise";
+      packageName = "es6-promise";
+      version = "4.2.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.4.tgz";
+        sha512 = "/NdNZVJg+uZgtm9eS3O6lrOLYmQag2DjdEXuPaHlZ6RuVqgqaVZfgYCepEIKsLqwdQArOPtC3XzRLqGGfT8KQQ==";
+      };
+    };
+    "escape-string-regexp-1.0.5" = {
+      name = "escape-string-regexp";
+      packageName = "escape-string-regexp";
+      version = "1.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz";
+        sha1 = "1b61c0562190a8dff6ae3bb2cf0200ca130b86d4";
+      };
+    };
+    "estree-walker-0.2.1" = {
+      name = "estree-walker";
+      packageName = "estree-walker";
+      version = "0.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/estree-walker/-/estree-walker-0.2.1.tgz";
+        sha1 = "bdafe8095383d8414d5dc2ecf4c9173b6db9412e";
+      };
+    };
+    "extend-3.0.2" = {
+      name = "extend";
+      packageName = "extend";
+      version = "3.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz";
+        sha512 = "fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==";
+      };
+    };
+    "extract-zip-1.6.7" = {
+      name = "extract-zip";
+      packageName = "extract-zip";
+      version = "1.6.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/extract-zip/-/extract-zip-1.6.7.tgz";
+        sha1 = "a840b4b8af6403264c8db57f4f1a74333ef81fe9";
+      };
+    };
+    "extsprintf-1.3.0" = {
+      name = "extsprintf";
+      packageName = "extsprintf";
+      version = "1.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz";
+        sha1 = "96918440e3041a7a414f8c52e3c574eb3c3e1e05";
+      };
+    };
+    "fast-deep-equal-1.1.0" = {
+      name = "fast-deep-equal";
+      packageName = "fast-deep-equal";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz";
+        sha1 = "c053477817c86b51daa853c81e059b733d023614";
+      };
+    };
+    "fast-json-stable-stringify-2.0.0" = {
+      name = "fast-json-stable-stringify";
+      packageName = "fast-json-stable-stringify";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz";
+        sha1 = "d5142c0caee6b1189f87d3a76111064f86c8bbf2";
+      };
+    };
+    "fd-slicer-1.0.1" = {
+      name = "fd-slicer";
+      packageName = "fd-slicer";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.0.1.tgz";
+        sha1 = "8b5bcbd9ec327c5041bf9ab023fd6750f1177e65";
+      };
+    };
+    "forever-agent-0.6.1" = {
+      name = "forever-agent";
+      packageName = "forever-agent";
+      version = "0.6.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz";
+        sha1 = "fbc71f0c41adeb37f96c577ad1ed42d8fdacca91";
+      };
+    };
+    "form-data-2.3.2" = {
+      name = "form-data";
+      packageName = "form-data";
+      version = "2.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/form-data/-/form-data-2.3.2.tgz";
+        sha1 = "4970498be604c20c005d4f5c23aecd21d6b49099";
+      };
+    };
+    "fs-extra-1.0.0" = {
+      name = "fs-extra";
+      packageName = "fs-extra";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fs-extra/-/fs-extra-1.0.0.tgz";
+        sha1 = "cd3ce5f7e7cb6145883fcae3191e9877f8587950";
+      };
+    };
+    "getpass-0.1.7" = {
+      name = "getpass";
+      packageName = "getpass";
+      version = "0.1.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz";
+        sha1 = "5eff8e3e684d569ae4cb2b1282604e8ba62149fa";
+      };
+    };
+    "graceful-fs-4.1.11" = {
+      name = "graceful-fs";
+      packageName = "graceful-fs";
+      version = "4.1.11";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz";
+        sha1 = "0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658";
+      };
+    };
+    "har-schema-2.0.0" = {
+      name = "har-schema";
+      packageName = "har-schema";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz";
+        sha1 = "a94c2224ebcac04782a0d9035521f24735b7ec92";
+      };
+    };
+    "har-validator-5.1.0" = {
+      name = "har-validator";
+      packageName = "har-validator";
+      version = "5.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/har-validator/-/har-validator-5.1.0.tgz";
+        sha512 = "+qnmNjI4OfH2ipQ9VQOw23bBd/ibtfbVdK2fYbY4acTDqKTW/YDp9McimZdDbG8iV9fZizUqQMD5xvriB146TA==";
+      };
+    };
+    "has-ansi-2.0.0" = {
+      name = "has-ansi";
+      packageName = "has-ansi";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz";
+        sha1 = "34f5049ce1ecdf2b0649af3ef24e45ed35416d91";
+      };
+    };
+    "has-color-0.1.7" = {
+      name = "has-color";
+      packageName = "has-color";
+      version = "0.1.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/has-color/-/has-color-0.1.7.tgz";
+        sha1 = "67144a5260c34fc3cca677d041daf52fe7b78b2f";
+      };
+    };
+    "hasha-2.2.0" = {
+      name = "hasha";
+      packageName = "hasha";
+      version = "2.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hasha/-/hasha-2.2.0.tgz";
+        sha1 = "78d7cbfc1e6d66303fe79837365984517b2f6ee1";
+      };
+    };
+    "http-signature-1.2.0" = {
+      name = "http-signature";
+      packageName = "http-signature";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz";
+        sha1 = "9aecd925114772f3d95b65a60abb8f7c18fbace1";
+      };
+    };
+    "inherits-2.0.3" = {
+      name = "inherits";
+      packageName = "inherits";
+      version = "2.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz";
+        sha1 = "633c2c83e3da42a502f52466022480f4208261de";
+      };
+    };
+    "is-buffer-1.1.6" = {
+      name = "is-buffer";
+      packageName = "is-buffer";
+      version = "1.1.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz";
+        sha512 = "NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==";
+      };
+    };
+    "is-stream-1.1.0" = {
+      name = "is-stream";
+      packageName = "is-stream";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz";
+        sha1 = "12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44";
+      };
+    };
+    "is-typedarray-1.0.0" = {
+      name = "is-typedarray";
+      packageName = "is-typedarray";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz";
+        sha1 = "e479c80858df0c1b11ddda6940f96011fcda4a9a";
+      };
+    };
+    "isarray-1.0.0" = {
+      name = "isarray";
+      packageName = "isarray";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz";
+        sha1 = "bb935d48582cba168c06834957a54a3e07124f11";
+      };
+    };
+    "isexe-2.0.0" = {
+      name = "isexe";
+      packageName = "isexe";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz";
+        sha1 = "e8fbf374dc556ff8947a10dcb0572d633f2cfa10";
+      };
+    };
+    "isstream-0.1.2" = {
+      name = "isstream";
+      packageName = "isstream";
+      version = "0.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz";
+        sha1 = "47e63f7af55afa6f92e1500e690eb8b8529c099a";
+      };
+    };
+    "jsbn-0.1.1" = {
+      name = "jsbn";
+      packageName = "jsbn";
+      version = "0.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz";
+        sha1 = "a5e654c2e5a2deb5f201d96cefbca80c0ef2f513";
+      };
+    };
+    "json-schema-0.2.3" = {
+      name = "json-schema";
+      packageName = "json-schema";
+      version = "0.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz";
+        sha1 = "b480c892e59a2f05954ce727bd3f2a4e882f9e13";
+      };
+    };
+    "json-schema-traverse-0.3.1" = {
+      name = "json-schema-traverse";
+      packageName = "json-schema-traverse";
+      version = "0.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz";
+        sha1 = "349a6d44c53a51de89b40805c5d5e59b417d3340";
+      };
+    };
+    "json-stringify-safe-5.0.1" = {
+      name = "json-stringify-safe";
+      packageName = "json-stringify-safe";
+      version = "5.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz";
+        sha1 = "1296a2d58fd45f19a0f6ce01d65701e2c735b6eb";
+      };
+    };
+    "json5-0.5.1" = {
+      name = "json5";
+      packageName = "json5";
+      version = "0.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz";
+        sha1 = "1eade7acc012034ad84e2396767ead9fa5495821";
+      };
+    };
+    "jsonfile-2.4.0" = {
+      name = "jsonfile";
+      packageName = "jsonfile";
+      version = "2.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz";
+        sha1 = "3736a2b428b87bbda0cc83b53fa3d633a35c2ae8";
+      };
+    };
+    "jsprim-1.4.1" = {
+      name = "jsprim";
+      packageName = "jsprim";
+      version = "1.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz";
+        sha1 = "313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2";
+      };
+    };
+    "kew-0.7.0" = {
+      name = "kew";
+      packageName = "kew";
+      version = "0.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/kew/-/kew-0.7.0.tgz";
+        sha1 = "79d93d2d33363d6fdd2970b335d9141ad591d79b";
+      };
+    };
+    "kind-of-3.2.2" = {
+      name = "kind-of";
+      packageName = "kind-of";
+      version = "3.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz";
+        sha1 = "31ea21a734bab9bbb0f32466d893aea51e4a3c64";
+      };
+    };
+    "klaw-1.3.1" = {
+      name = "klaw";
+      packageName = "klaw";
+      version = "1.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/klaw/-/klaw-1.3.1.tgz";
+        sha1 = "4088433b46b3b1ba259d78785d8e96f73ba02439";
+      };
+    };
+    "lazy-cache-1.0.4" = {
+      name = "lazy-cache";
+      packageName = "lazy-cache";
+      version = "1.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz";
+        sha1 = "a1d78fc3a50474cb80845d3b3b6e1da49a446e8e";
+      };
+    };
+    "loader-utils-1.1.0" = {
+      name = "loader-utils";
+      packageName = "loader-utils";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/loader-utils/-/loader-utils-1.1.0.tgz";
+        sha1 = "c98aef488bcceda2ffb5e2de646d6a754429f5cd";
+      };
+    };
+    "longest-1.0.1" = {
+      name = "longest";
+      packageName = "longest";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz";
+        sha1 = "30a0b2da38f73770e8294a0d22e6625ed77d0097";
+      };
+    };
+    "magic-string-0.14.0" = {
+      name = "magic-string";
+      packageName = "magic-string";
+      version = "0.14.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/magic-string/-/magic-string-0.14.0.tgz";
+        sha1 = "57224aef1701caeed273b17a39a956e72b172462";
+      };
+    };
+    "mime-1.3.6" = {
+      name = "mime";
+      packageName = "mime";
+      version = "1.3.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mime/-/mime-1.3.6.tgz";
+        sha1 = "591d84d3653a6b0b4a3b9df8de5aa8108e72e5e0";
+      };
+    };
+    "mime-db-1.35.0" = {
+      name = "mime-db";
+      packageName = "mime-db";
+      version = "1.35.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mime-db/-/mime-db-1.35.0.tgz";
+        sha512 = "JWT/IcCTsB0Io3AhWUMjRqucrHSPsSf2xKLaRldJVULioggvkJvggZ3VXNNSRkCddE6D+BUI4HEIZIA2OjwIvg==";
+      };
+    };
+    "mime-types-2.1.19" = {
+      name = "mime-types";
+      packageName = "mime-types";
+      version = "2.1.19";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.19.tgz";
+        sha512 = "P1tKYHVSZ6uFo26mtnve4HQFE3koh1UWVkp8YUC+ESBHe945xWSoXuHHiGarDqcEZ+whpCDnlNw5LON0kLo+sw==";
+      };
+    };
+    "minimatch-3.0.4" = {
+      name = "minimatch";
+      packageName = "minimatch";
+      version = "3.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz";
+        sha512 = "yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==";
+      };
+    };
+    "minimist-0.0.8" = {
+      name = "minimist";
+      packageName = "minimist";
+      version = "0.0.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz";
+        sha1 = "857fcabfc3397d2625b8228262e86aa7a011b05d";
+      };
+    };
+    "minimist-1.2.0" = {
+      name = "minimist";
+      packageName = "minimist";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz";
+        sha1 = "a35008b20f41383eec1fb914f4cd5df79a264284";
+      };
+    };
+    "mkdirp-0.5.1" = {
+      name = "mkdirp";
+      packageName = "mkdirp";
+      version = "0.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz";
+        sha1 = "30057438eac6cf7f8c4767f38648d6697d75c903";
+      };
+    };
+    "ms-2.0.0" = {
+      name = "ms";
+      packageName = "ms";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz";
+        sha1 = "5608aeadfc00be6c2901df5f9861788de0d597c8";
+      };
+    };
+    "nomnom-1.8.1" = {
+      name = "nomnom";
+      packageName = "nomnom";
+      version = "1.8.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/nomnom/-/nomnom-1.8.1.tgz";
+        sha1 = "2151f722472ba79e50a76fc125bb8c8f2e4dc2a7";
+      };
+    };
+    "oauth-sign-0.9.0" = {
+      name = "oauth-sign";
+      packageName = "oauth-sign";
+      version = "0.9.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz";
+        sha512 = "fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==";
+      };
+    };
+    "os-homedir-1.0.2" = {
+      name = "os-homedir";
+      packageName = "os-homedir";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz";
+        sha1 = "ffbc4988336e0e833de0c168c7ef152121aa7fb3";
+      };
+    };
+    "pend-1.2.0" = {
+      name = "pend";
+      packageName = "pend";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz";
+        sha1 = "7a57eb550a6783f9115331fcf4663d5c8e007a50";
+      };
+    };
+    "performance-now-2.1.0" = {
+      name = "performance-now";
+      packageName = "performance-now";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz";
+        sha1 = "6309f4e0e5fa913ec1c69307ae364b4b377c9e7b";
+      };
+    };
+    "pinkie-2.0.4" = {
+      name = "pinkie";
+      packageName = "pinkie";
+      version = "2.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz";
+        sha1 = "72556b80cfa0d48a974e80e77248e80ed4f7f870";
+      };
+    };
+    "pinkie-promise-2.0.1" = {
+      name = "pinkie-promise";
+      packageName = "pinkie-promise";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz";
+        sha1 = "2135d6dfa7a358c069ac9b178776288228450ffa";
+      };
+    };
+    "process-nextick-args-2.0.0" = {
+      name = "process-nextick-args";
+      packageName = "process-nextick-args";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz";
+        sha512 = "MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==";
+      };
+    };
+    "progress-1.1.8" = {
+      name = "progress";
+      packageName = "progress";
+      version = "1.1.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/progress/-/progress-1.1.8.tgz";
+        sha1 = "e260c78f6161cdd9b0e56cc3e0a85de17c7a57be";
+      };
+    };
+    "psl-1.1.29" = {
+      name = "psl";
+      packageName = "psl";
+      version = "1.1.29";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/psl/-/psl-1.1.29.tgz";
+        sha512 = "AeUmQ0oLN02flVHXWh9sSJF7mcdFq0ppid/JkErufc3hGIV/AMa8Fo9VgDo/cT2jFdOWoFvHp90qqBH54W+gjQ==";
+      };
+    };
+    "punycode-1.4.1" = {
+      name = "punycode";
+      packageName = "punycode";
+      version = "1.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz";
+        sha1 = "c0d5a63b2718800ad8e1eb0fa5269c84dd41845e";
+      };
+    };
+    "qs-6.5.2" = {
+      name = "qs";
+      packageName = "qs";
+      version = "6.5.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz";
+        sha512 = "N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==";
+      };
+    };
+    "readable-stream-2.3.6" = {
+      name = "readable-stream";
+      packageName = "readable-stream";
+      version = "2.3.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz";
+        sha512 = "tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==";
+      };
+    };
+    "repeat-string-1.6.1" = {
+      name = "repeat-string";
+      packageName = "repeat-string";
+      version = "1.6.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz";
+        sha1 = "8dcae470e1c88abc2d600fff4a776286da75e637";
+      };
+    };
+    "request-2.88.0" = {
+      name = "request";
+      packageName = "request";
+      version = "2.88.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/request/-/request-2.88.0.tgz";
+        sha512 = "NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==";
+      };
+    };
+    "request-progress-2.0.1" = {
+      name = "request-progress";
+      packageName = "request-progress";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/request-progress/-/request-progress-2.0.1.tgz";
+        sha1 = "5d36bb57961c673aa5b788dbc8141fdf23b44e08";
+      };
+    };
+    "require-relative-0.8.7" = {
+      name = "require-relative";
+      packageName = "require-relative";
+      version = "0.8.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/require-relative/-/require-relative-0.8.7.tgz";
+        sha1 = "7999539fc9e047a37928fa196f8e1563dabd36de";
+      };
+    };
+    "right-align-0.1.3" = {
+      name = "right-align";
+      packageName = "right-align";
+      version = "0.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz";
+        sha1 = "61339b722fe6a3515689210d24e14c96148613ef";
+      };
+    };
+    "rollup-pluginutils-1.5.2" = {
+      name = "rollup-pluginutils";
+      packageName = "rollup-pluginutils";
+      version = "1.5.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-1.5.2.tgz";
+        sha1 = "1e156e778f94b7255bfa1b3d0178be8f5c552408";
+      };
+    };
+    "safe-buffer-5.1.2" = {
+      name = "safe-buffer";
+      packageName = "safe-buffer";
+      version = "5.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz";
+        sha512 = "Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==";
+      };
+    };
+    "safer-buffer-2.1.2" = {
+      name = "safer-buffer";
+      packageName = "safer-buffer";
+      version = "2.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz";
+        sha512 = "YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==";
+      };
+    };
+    "source-map-0.5.7" = {
+      name = "source-map";
+      packageName = "source-map";
+      version = "0.5.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz";
+        sha1 = "8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc";
+      };
+    };
+    "source-map-support-0.4.18" = {
+      name = "source-map-support";
+      packageName = "source-map-support";
+      version = "0.4.18";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz";
+        sha512 = "try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==";
+      };
+    };
+    "sshpk-1.14.2" = {
+      name = "sshpk";
+      packageName = "sshpk";
+      version = "1.14.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sshpk/-/sshpk-1.14.2.tgz";
+        sha1 = "c6fc61648a3d9c4e764fd3fcdf4ea105e492ba98";
+      };
+    };
+    "string_decoder-1.1.1" = {
+      name = "string_decoder";
+      packageName = "string_decoder";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz";
+        sha512 = "n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==";
+      };
+    };
+    "strip-ansi-0.1.1" = {
+      name = "strip-ansi";
+      packageName = "strip-ansi";
+      version = "0.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/strip-ansi/-/strip-ansi-0.1.1.tgz";
+        sha1 = "39e8a98d044d150660abe4a6808acf70bb7bc991";
+      };
+    };
+    "strip-ansi-3.0.1" = {
+      name = "strip-ansi";
+      packageName = "strip-ansi";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz";
+        sha1 = "6a385fb8853d952d5ff05d0e8aaf94278dc63dcf";
+      };
+    };
+    "supports-color-2.0.0" = {
+      name = "supports-color";
+      packageName = "supports-color";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz";
+        sha1 = "535d045ce6b6363fa40117084629995e9df324c7";
+      };
+    };
+    "throttleit-1.0.0" = {
+      name = "throttleit";
+      packageName = "throttleit";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/throttleit/-/throttleit-1.0.0.tgz";
+        sha1 = "9e785836daf46743145a5984b6268d828528ac6c";
+      };
+    };
+    "tough-cookie-2.4.3" = {
+      name = "tough-cookie";
+      packageName = "tough-cookie";
+      version = "2.4.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz";
+        sha512 = "Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==";
+      };
+    };
+    "tunnel-agent-0.6.0" = {
+      name = "tunnel-agent";
+      packageName = "tunnel-agent";
+      version = "0.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz";
+        sha1 = "27a5dea06b36b04a0a9966774b290868f0fc40fd";
+      };
+    };
+    "tweetnacl-0.14.5" = {
+      name = "tweetnacl";
+      packageName = "tweetnacl";
+      version = "0.14.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz";
+        sha1 = "5ae68177f192d4456269d108afa93ff8743f4f64";
+      };
+    };
+    "typedarray-0.0.6" = {
+      name = "typedarray";
+      packageName = "typedarray";
+      version = "0.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz";
+        sha1 = "867ac74e3864187b1d3d47d996a78ec5c8830777";
+      };
+    };
+    "uglify-to-browserify-1.0.2" = {
+      name = "uglify-to-browserify";
+      packageName = "uglify-to-browserify";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz";
+        sha1 = "6e0924d6bda6b5afe349e39a6d632850a0f882b7";
+      };
+    };
+    "underscore-1.6.0" = {
+      name = "underscore";
+      packageName = "underscore";
+      version = "1.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz";
+        sha1 = "8b38b10cacdef63337b8b24e4ff86d45aea529a8";
+      };
+    };
+    "util-deprecate-1.0.2" = {
+      name = "util-deprecate";
+      packageName = "util-deprecate";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz";
+        sha1 = "450d4dc9fa70de732762fbd2d4a28981419a0ccf";
+      };
+    };
+    "uuid-3.3.2" = {
+      name = "uuid";
+      packageName = "uuid";
+      version = "3.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz";
+        sha512 = "yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==";
+      };
+    };
+    "verror-1.10.0" = {
+      name = "verror";
+      packageName = "verror";
+      version = "1.10.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz";
+        sha1 = "3a105ca17053af55d6e270c1f8288682e18da400";
+      };
+    };
+    "vlq-0.2.3" = {
+      name = "vlq";
+      packageName = "vlq";
+      version = "0.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/vlq/-/vlq-0.2.3.tgz";
+        sha512 = "DRibZL6DsNhIgYQ+wNdWDL2SL3bKPlVrRiBqV5yuMm++op8W4kGFtaQfCs4KEJn0wBZcHVHJ3eoywX8983k1ow==";
+      };
+    };
+    "which-1.3.1" = {
+      name = "which";
+      packageName = "which";
+      version = "1.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/which/-/which-1.3.1.tgz";
+        sha512 = "HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==";
+      };
+    };
+    "window-size-0.1.0" = {
+      name = "window-size";
+      packageName = "window-size";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz";
+        sha1 = "5438cd2ea93b202efa3a19fe8887aee7c94f9c9d";
+      };
+    };
+    "wordwrap-0.0.2" = {
+      name = "wordwrap";
+      packageName = "wordwrap";
+      version = "0.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz";
+        sha1 = "b79669bb42ecb409f83d583cad52ca17eaa1643f";
+      };
+    };
+    "yargs-3.10.0" = {
+      name = "yargs";
+      packageName = "yargs";
+      version = "3.10.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz";
+        sha1 = "f7ee7bd857dd7c1d2d38c0e74efbd681d1431fd1";
+      };
+    };
+    "yauzl-2.4.1" = {
+      name = "yauzl";
+      packageName = "yauzl";
+      version = "2.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/yauzl/-/yauzl-2.4.1.tgz";
+        sha1 = "9528f442dab1b2284e58b4379bb194e22e0c4005";
+      };
+    };
+  };
+in
+{
+  "blint-^1" = nodeEnv.buildNodePackage {
+    name = "blint";
+    packageName = "blint";
+    version = "1.0.3";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/blint/-/blint-1.0.3.tgz";
+      sha512 = "6RwH3oJYMujQNd38WWU+jUSRqWfECrmpfL8o3fn3Q3fE9nn5iAktLZJHGEHqeecownbZZwZneTLbaNbIWwU9/A==";
+    };
+    dependencies = [
+      sources."acorn-5.7.1"
+      sources."ansi-styles-1.0.0"
+      sources."chalk-0.4.0"
+      sources."has-color-0.1.7"
+      sources."nomnom-1.8.1"
+      sources."strip-ansi-0.1.1"
+      sources."underscore-1.6.0"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "No-ceremony linter";
+      homepage = http://github.com/marijnh/blint;
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "node-static-0.6.0" = nodeEnv.buildNodePackage {
+    name = "node-static";
+    packageName = "node-static";
+    version = "0.6.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/node-static/-/node-static-0.6.0.tgz";
+      sha1 = "e8543a897f3c82048220b39569284d44796eb1e2";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "simple, compliant file streaming module for node";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "phantomjs-prebuilt-^2.1.12" = nodeEnv.buildNodePackage {
+    name = "phantomjs-prebuilt";
+    packageName = "phantomjs-prebuilt";
+    version = "2.1.16";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/phantomjs-prebuilt/-/phantomjs-prebuilt-2.1.16.tgz";
+      sha1 = "efd212a4a3966d3647684ea8ba788549be2aefef";
+    };
+    dependencies = [
+      sources."ajv-5.5.2"
+      sources."asn1-0.2.4"
+      sources."assert-plus-1.0.0"
+      sources."asynckit-0.4.0"
+      sources."aws-sign2-0.7.0"
+      sources."aws4-1.8.0"
+      sources."bcrypt-pbkdf-1.0.2"
+      sources."buffer-from-1.1.1"
+      sources."caseless-0.12.0"
+      sources."co-4.6.0"
+      sources."combined-stream-1.0.6"
+      sources."concat-stream-1.6.2"
+      sources."core-util-is-1.0.2"
+      sources."dashdash-1.14.1"
+      sources."debug-2.6.9"
+      sources."delayed-stream-1.0.0"
+      sources."ecc-jsbn-0.1.2"
+      sources."es6-promise-4.2.4"
+      sources."extend-3.0.2"
+      sources."extract-zip-1.6.7"
+      sources."extsprintf-1.3.0"
+      sources."fast-deep-equal-1.1.0"
+      sources."fast-json-stable-stringify-2.0.0"
+      sources."fd-slicer-1.0.1"
+      sources."forever-agent-0.6.1"
+      sources."form-data-2.3.2"
+      sources."fs-extra-1.0.0"
+      sources."getpass-0.1.7"
+      sources."graceful-fs-4.1.11"
+      sources."har-schema-2.0.0"
+      sources."har-validator-5.1.0"
+      sources."hasha-2.2.0"
+      sources."http-signature-1.2.0"
+      sources."inherits-2.0.3"
+      sources."is-stream-1.1.0"
+      sources."is-typedarray-1.0.0"
+      sources."isarray-1.0.0"
+      sources."isexe-2.0.0"
+      sources."isstream-0.1.2"
+      sources."jsbn-0.1.1"
+      sources."json-schema-0.2.3"
+      sources."json-schema-traverse-0.3.1"
+      sources."json-stringify-safe-5.0.1"
+      sources."jsonfile-2.4.0"
+      sources."jsprim-1.4.1"
+      sources."kew-0.7.0"
+      sources."klaw-1.3.1"
+      sources."mime-db-1.35.0"
+      sources."mime-types-2.1.19"
+      sources."minimist-0.0.8"
+      sources."mkdirp-0.5.1"
+      sources."ms-2.0.0"
+      sources."oauth-sign-0.9.0"
+      sources."pend-1.2.0"
+      sources."performance-now-2.1.0"
+      sources."pinkie-2.0.4"
+      sources."pinkie-promise-2.0.1"
+      sources."process-nextick-args-2.0.0"
+      sources."progress-1.1.8"
+      sources."psl-1.1.29"
+      sources."punycode-1.4.1"
+      sources."qs-6.5.2"
+      sources."readable-stream-2.3.6"
+      sources."request-2.88.0"
+      sources."request-progress-2.0.1"
+      sources."safe-buffer-5.1.2"
+      sources."safer-buffer-2.1.2"
+      sources."sshpk-1.14.2"
+      sources."string_decoder-1.1.1"
+      sources."throttleit-1.0.0"
+      sources."tough-cookie-2.4.3"
+      sources."tunnel-agent-0.6.0"
+      sources."tweetnacl-0.14.5"
+      sources."typedarray-0.0.6"
+      sources."util-deprecate-1.0.2"
+      sources."uuid-3.3.2"
+      sources."verror-1.10.0"
+      sources."which-1.3.1"
+      sources."yauzl-2.4.1"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Headless WebKit with JS API";
+      homepage = https://github.com/Medium/phantomjs;
+      license = "Apache-2.0";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "rollup-^0.41.0" = nodeEnv.buildNodePackage {
+    name = "rollup";
+    packageName = "rollup";
+    version = "0.41.6";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/rollup/-/rollup-0.41.6.tgz";
+      sha1 = "e0d05497877a398c104d816d2733a718a7a94e2a";
+    };
+    dependencies = [
+      sources."source-map-0.5.7"
+      sources."source-map-support-0.4.18"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Next-generation ES6 module bundler";
+      homepage = https://github.com/rollup/rollup;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "rollup-plugin-buble-^0.15.0" = nodeEnv.buildNodePackage {
+    name = "rollup-plugin-buble";
+    packageName = "rollup-plugin-buble";
+    version = "0.15.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/rollup-plugin-buble/-/rollup-plugin-buble-0.15.0.tgz";
+      sha1 = "83c3e89c7fd2266c7918f41ba3980313519c7fd0";
+    };
+    dependencies = [
+      sources."acorn-3.3.0"
+      sources."acorn-jsx-3.0.1"
+      sources."acorn-object-spread-1.0.0"
+      sources."ansi-regex-2.1.1"
+      sources."ansi-styles-2.2.1"
+      sources."balanced-match-1.0.0"
+      sources."brace-expansion-1.1.11"
+      sources."buble-0.15.2"
+      sources."chalk-1.1.3"
+      sources."concat-map-0.0.1"
+      sources."escape-string-regexp-1.0.5"
+      sources."estree-walker-0.2.1"
+      sources."has-ansi-2.0.0"
+      sources."magic-string-0.14.0"
+      sources."minimatch-3.0.4"
+      sources."minimist-1.2.0"
+      sources."os-homedir-1.0.2"
+      sources."rollup-pluginutils-1.5.2"
+      sources."strip-ansi-3.0.1"
+      sources."supports-color-2.0.0"
+      sources."vlq-0.2.3"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Compile ES2015 with buble";
+      homepage = "https://gitlab.com/rich-harris/rollup-plugin-buble#README";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "rollup-watch-^3.2.0" = nodeEnv.buildNodePackage {
+    name = "rollup-watch";
+    packageName = "rollup-watch";
+    version = "3.2.2";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/rollup-watch/-/rollup-watch-3.2.2.tgz";
+      sha1 = "5e574232e9ef36da9177f46946d8080cb267354b";
+    };
+    dependencies = [
+      sources."require-relative-0.8.7"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Watch files for changes and perform incremental rebuilds with Rollup";
+      homepage = "https://github.com/rollup/rollup-watch#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "uglify-js-^2.8.15" = nodeEnv.buildNodePackage {
+    name = "uglify-js";
+    packageName = "uglify-js";
+    version = "2.8.29";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz";
+      sha1 = "29c5733148057bb4e1f75df35b7a9cb72e6a59dd";
+    };
+    dependencies = [
+      sources."align-text-0.1.4"
+      sources."camelcase-1.2.1"
+      sources."center-align-0.1.3"
+      sources."cliui-2.1.0"
+      sources."decamelize-1.2.0"
+      sources."is-buffer-1.1.6"
+      sources."kind-of-3.2.2"
+      sources."lazy-cache-1.0.4"
+      sources."longest-1.0.1"
+      sources."repeat-string-1.6.1"
+      sources."right-align-0.1.3"
+      sources."source-map-0.5.7"
+      sources."uglify-to-browserify-1.0.2"
+      sources."window-size-0.1.0"
+      sources."wordwrap-0.0.2"
+      sources."yargs-3.10.0"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "JavaScript parser, mangler/compressor and beautifier toolkit";
+      homepage = http://lisperator.net/uglifyjs;
+      license = "BSD-2-Clause";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "url-loader-^0.5.7" = nodeEnv.buildNodePackage {
+    name = "url-loader";
+    packageName = "url-loader";
+    version = "0.5.9";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/url-loader/-/url-loader-0.5.9.tgz";
+      sha512 = "B7QYFyvv+fOBqBVeefsxv6koWWtjmHaMFT6KZWti4KRw8YUD/hOU+3AECvXuzyVawIBx3z7zQRejXCDSO5kk1Q==";
+    };
+    dependencies = [
+      sources."big.js-3.2.0"
+      sources."emojis-list-2.1.0"
+      sources."json5-0.5.1"
+      sources."loader-utils-1.1.0"
+      sources."mime-1.3.6"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "url loader module for webpack";
+      homepage = "https://github.com/webpack/url-loader#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+}
\ No newline at end of file
diff --git a/pkgs/servers/web-apps/codimd/CodeMirror/node.nix b/pkgs/servers/web-apps/codimd/CodeMirror/node.nix
new file mode 100644
index 000000000000..85aedb8a5a4c
--- /dev/null
+++ b/pkgs/servers/web-apps/codimd/CodeMirror/node.nix
@@ -0,0 +1,17 @@
+# This file has been generated by node2nix 1.6.0. Do not edit!
+
+{pkgs ? import <nixpkgs> {
+    inherit system;
+  }, system ? builtins.currentSystem, nodejs ? pkgs."nodejs-6_x"}:
+
+let
+  nodeEnv = import ../../../../development/node-packages/node-env.nix {
+    inherit (pkgs) stdenv python2 utillinux runCommand writeTextFile;
+    inherit nodejs;
+    libtool = if pkgs.stdenv.isDarwin then pkgs.darwin.cctools else null;
+  };
+in
+import ./node-packages.nix {
+  inherit (pkgs) fetchurl fetchgit;
+  inherit nodeEnv;
+}
\ No newline at end of file
diff --git a/pkgs/servers/web-apps/codimd/default.nix b/pkgs/servers/web-apps/codimd/default.nix
new file mode 100644
index 000000000000..d99542d3ea27
--- /dev/null
+++ b/pkgs/servers/web-apps/codimd/default.nix
@@ -0,0 +1,156 @@
+{ stdenv, pkgs, buildEnv, fetchFromGitHub, makeWrapper
+, fetchpatch, nodejs-6_x, phantomjs2 }:
+let
+  nodePackages = import ./node.nix {
+    inherit pkgs;
+    system = stdenv.system;
+  };
+
+  addPhantomjs = (pkgs:
+    map (pkg: pkg.override ( oldAttrs: {
+      buildInputs = oldAttrs.buildInputs or [] ++ [ phantomjs2 ];
+    })) pkgs);
+
+  drvName = drv: (builtins.parseDrvName drv).name;
+
+  linkNodeDeps = ({ pkg, deps, name ? "" }:
+    nodePackages.${pkg}.override (oldAttrs: {
+      postInstall = stdenv.lib.concatStringsSep "\n" (map (dep: ''
+        ln -s ${nodePackages.${dep}}/lib/node_modules/${drvName dep} \
+          $out/lib/node_modules/${if name != "" then name else drvName pkg}/node_modules
+      '') deps
+      );
+    })
+  );
+
+  filterNodePackagesToList = (filterPkgs: allPkgs:
+    stdenv.lib.mapAttrsToList (_: v: v) (
+      stdenv.lib.filterAttrs (n: _:
+        ! builtins.elem (drvName n) filterPkgs
+      ) allPkgs)
+  );
+
+  # add phantomjs to buildInputs
+  pkgsWithPhantomjs = (addPhantomjs (map (
+    p: nodePackages.${p}
+  ) [
+    "js-url-^2.3.0"
+    "markdown-pdf-^8.0.0"
+  ]));
+
+  # link extra dependencies to lib/node_modules
+  pkgsWithExtraDeps = map (args:
+    linkNodeDeps args ) [
+    { pkg = "select2-^3.5.2-browserify";
+      deps = [ "url-loader-^0.5.7" ]; }
+    { pkg = "js-sequence-diagrams-^1000000.0.6";
+      deps = [ "lodash-^4.17.4" ]; }
+    { pkg = "ionicons-~2.0.1";
+      deps = [ "url-loader-^0.5.7" "file-loader-^0.9.0" ]; }
+    { pkg = "font-awesome-^4.7.0";
+      deps = [ "url-loader-^0.5.7" "file-loader-^0.9.0" ]; }
+    { pkg = "bootstrap-^3.3.7";
+      deps = [ "url-loader-^0.5.7" "file-loader-^0.9.0" ]; }
+    { pkg = "markdown-it-^8.2.2";
+      deps = [ "json-loader-^0.5.4" ]; }
+    { pkg = "markdown-it-emoji-^1.3.0";
+      deps = [ "json-loader-^0.5.4" ]; }
+    { pkg = "raphael-git+https://github.com/dmitrybaranovskiy/raphael";
+      deps = [ "eve-^0.5.4" ];
+      name = "raphael"; }
+  ];
+
+  codemirror = pkgs.callPackage ./CodeMirror { };
+
+  nodeEnv = buildEnv {
+    name = "codimd-env";
+    paths = pkgsWithPhantomjs ++ pkgsWithExtraDeps ++ [
+      codemirror
+   ] ++ filterNodePackagesToList [
+     "bootstrap"
+     "codemirror-git+https://github.com/hackmdio/CodeMirror.git"
+     "font-awesome"
+     "ionicons"
+     "js-sequence-diagrams"
+     "js-url"
+     "markdown-it"
+     "markdown-pdf"
+"node-uuid"
+     "raphael-git+https://github.com/dmitrybaranovskiy/raphael"
+     "select2-browserify"
+   ] nodePackages;
+  };
+
+  name = "codimd-${version}";
+  version = "1.2.0";
+
+  src = stdenv.mkDerivation {
+    name = "${name}-src";
+    inherit version;
+
+    src = fetchFromGitHub {
+      owner = "hackmdio";
+      repo = "codimd";
+      rev = version;
+      sha256 = "003v90g5sxxjv5smxvz6y6bq2ny0xpxhsx2cdgkvj7jla243v48s";
+    };
+
+    dontBuild = true;
+
+    installPhase = ''
+      mkdir $out
+      cp -R . $out
+    '';
+  };
+in
+stdenv.mkDerivation rec {
+  inherit name version src;
+
+  nativeBuildInputs = [ makeWrapper ];
+  buildInputs = [ nodejs-6_x ];
+
+  NODE_PATH = "${nodeEnv}/lib/node_modules";
+
+  patches = [
+    (fetchpatch { # fixes for configurable paths
+      url = "https://patch-diff.githubusercontent.com/raw/hackmdio/codimd/pull/940.patch";
+      sha256 = "0n9lfaxirngywx8m5f0nqzykqdjzc8f3cl10ir1g7s5kq4zc7hhn";
+    })
+  ];
+
+  buildPhase = ''
+    ln -s ${nodeEnv}/lib/node_modules node_modules
+    npm run build
+  '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cat > $out/bin/codimd <<EOF
+      #!${stdenv.shell}/bin/sh
+      ${nodejs-6_x}/bin/node $out/app.js
+    EOF
+    cp -R {app.js,bin,lib,locales,package.json,public} $out/
+  '';
+
+  postFixup = ''
+    chmod +x $out/bin/codimd
+    wrapProgram $out/bin/codimd \
+      --set NODE_PATH "${nodeEnv}/lib/node_modules"
+  '';
+
+  passthru = {
+    sequelize = pkgs.writeScript "codimd-sequelize" ''
+      #!${pkgs.bash}/bin/bash -e
+      export NODE_PATH="${nodeEnv}/lib/node_modules"
+      exec -a "$0" "${nodeEnv}/lib/node_modules/sequelize-cli/bin/sequelize" "$@"
+    '';
+  };
+
+  meta = with stdenv.lib; {
+    description = "Realtime collaborative markdown notes on all platforms";
+    license = licenses.agpl3;
+    homepage = https://github.com/hackmdio/codimd;
+    maintainers = with maintainers; [ willibutz ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/servers/web-apps/codimd/deps.json b/pkgs/servers/web-apps/codimd/deps.json
new file mode 100644
index 000000000000..c7cf790fe58e
--- /dev/null
+++ b/pkgs/servers/web-apps/codimd/deps.json
@@ -0,0 +1,150 @@
+[ { "eve": "^0.5.4" }
+
+, { "babel-cli": "^6.18.0" }
+, { "babel-core": "^6.21.0" }
+, { "babel-loader": "^6.2.10" }
+, { "babel-plugin-transform-runtime": "^6.15.0" }
+, { "babel-polyfill": "^6.22.0" }
+, { "babel-preset-es2015": "^6.18.0" }
+, { "babel-runtime": "^6.20.0" }
+, { "copy-webpack-plugin": "^4.0.1" }
+, { "css-loader": "^0.26.1" }
+, { "doctoc": "^1.3.0" }
+, { "ejs-loader": "^0.3.0" }
+, { "exports-loader": "^0.6.3" }
+, { "expose": "^0.1.4" }
+, { "expose-loader": "^0.7.1" }
+, { "extract-text-webpack-plugin": "^1.0.1" }
+, { "file-loader": "^0.9.0" }
+, { "html-webpack-plugin": "^2.25.0" }
+, { "imports-loader": "^0.7.0" }
+, { "json-loader": "^0.5.4" }
+, { "jsonlint": "^1.6.2" }
+, { "less": "^2.7.1" }
+, { "less-loader": "^2.2.3" }
+, { "optimize-css-assets-webpack-plugin": "^1.3.0" }
+, { "script-loader": "^0.7.0" }
+, { "standard": "^9.0.1" }
+, { "string-loader": "^0.0.1" }
+, { "style-loader": "^0.13.1" }
+, { "url-loader": "^0.5.7" }
+, { "webpack": "^1.14.0" }
+, { "webpack-parallel-uglify-plugin": "^0.2.0" }
+
+, { "Idle.Js": "git+https://github.com/shawnmclean/Idle.js" }
+, { "archiver": "^2.1.1" }
+, { "async": "^2.1.4" }
+, { "aws-sdk": "^2.7.20" }
+, { "base64url": "^3.0.0" }
+, { "azure-storage": "^2.7.0" }
+, { "blueimp-md5": "^2.6.0" }
+, { "body-parser": "^1.15.2" }
+, { "bootstrap": "^3.3.7" }
+, { "bootstrap-validator": "^0.11.8" }
+, { "chance": "^1.0.4" }
+, { "cheerio": "^0.22.0" }
+, { "codemirror": "git+https://github.com/hackmdio/CodeMirror.git" }
+, { "compression": "^1.6.2" }
+, { "connect-flash": "^0.1.1" }
+, { "connect-session-sequelize": "^4.1.0" }
+, { "cookie": "0.3.1" }
+, { "cookie-parser": "1.4.3" }
+, { "deep-freeze": "^0.0.1" }
+, { "diff-match-patch": "git+https://github.com/hackmdio/diff-match-patch.git" }
+, { "ejs": "^2.5.5" }
+, { "emojify.js": "~1.1.0" }
+, { "express": ">=4.14" }
+, { "express-session": "^1.14.2" }
+, { "file-saver": "^1.3.3" }
+, { "flowchart.js": "^1.6.4" }
+, { "font-awesome": "^4.7.0" }
+, { "formidable": "^1.0.17" }
+, { "gist-embed": "~2.6.0" }
+, { "graceful-fs": "^4.1.11" }
+, { "handlebars": "^4.0.6" }
+, { "helmet": "^3.3.0" }
+, { "highlight.js": "~9.12.0" }
+, { "i18n": "^0.8.3" }
+, { "imgur": "git+https://github.com/hackmdio/node-imgur.git" }
+, { "ionicons": "~2.0.1" }
+, { "jquery": "^3.1.1" }
+, { "jquery-mousewheel": "^3.1.13" }
+, { "jquery-ui": "^1.12.1" }
+, { "js-cookie": "^2.1.3" }
+, { "js-sequence-diagrams": "^1000000.0.6" }
+, { "js-url": "^2.3.0" }
+, { "js-yaml": "^3.7.0" }
+, { "jsdom-nogyp": "^0.8.3" }
+, { "keymaster": "^1.6.2" }
+, { "list.js": "^1.5.0" }
+, { "lodash": "^4.17.4" }
+, { "lz-string": "1.4.4" }
+, { "markdown-it": "^8.2.2" }
+, { "markdown-it-abbr": "^1.0.4" }
+, { "markdown-it-container": "^2.0.0" }
+, { "markdown-it-deflist": "^2.0.1" }
+, { "markdown-it-emoji": "^1.3.0" }
+, { "markdown-it-footnote": "^3.0.1" }
+, { "markdown-it-imsize": "^2.0.1" }
+, { "markdown-it-ins": "^2.0.0" }
+, { "markdown-it-mark": "^2.0.0" }
+, { "markdown-it-mathjax": "^2.0.0" }
+, { "markdown-it-regexp": "^0.4.0" }
+, { "markdown-it-sub": "^1.0.0" }
+, { "markdown-it-sup": "^1.0.0" }
+, { "markdown-pdf": "^8.0.0" }
+, { "mathjax": "~2.7.0" }
+, { "mermaid": "~7.1.0" }
+, { "mattermost": "^3.4.0" }
+, { "meta-marked": "^0.4.2" }
+, { "method-override": "^2.3.7" }
+, { "minimist": "^1.2.0" }
+, { "minio": "^6.0.0" }
+, { "moment": "^2.17.1" }
+, { "morgan": "^1.7.0" }
+, { "mysql": "^2.12.0" }
+, { "node-uuid": "^1.4.7" }
+, { "octicons": "~4.4.0" }
+, { "passport": "^0.4.0" }
+, { "passport-dropbox-oauth2": "^1.1.0" }
+, { "passport-facebook": "^2.1.1" }
+, { "passport-github": "^1.1.0" }
+, { "passport-gitlab2": "^4.0.0" }
+, { "passport-google-oauth20": "^1.0.0" }
+, { "passport-ldapauth": "^2.0.0" }
+, { "passport-local": "^1.0.0" }
+, { "passport-oauth2": "^1.4.0" }
+, { "passport-twitter": "^1.0.4" }
+, { "passport-saml": "^0.31.0" }
+, { "passport.socketio": "^3.7.0" }
+, { "pdfobject": "^2.0.201604172" }
+, { "pg": "^6.1.2" }
+, { "pg-hstore": "^2.3.2" }
+, { "prismjs": "^1.6.0" }
+, { "randomcolor": "^0.5.3" }
+, { "raphael": "git+https://github.com/dmitrybaranovskiy/raphael" }
+, { "readline-sync": "^1.4.7" }
+, { "request": "^2.79.0" }
+, { "reveal.js": "~3.6.0" }
+, { "scrypt": "^6.0.3" }
+, { "select2": "^3.5.2-browserify" }
+, { "sequelize": "^3.28.0" }
+, { "sequelize-cli": "^2.5.1" }
+, { "shortid": "2.2.8" }
+, { "socket.io": "~2.0.4" }
+, { "socket.io-client": "~2.0.4" }
+, { "spin.js": "^2.3.2" }
+, { "sqlite3": "^4.0.1" }
+, { "store": "^2.0.12" }
+, { "string": "^3.3.3" }
+, { "tedious": "^1.14.0" }
+, { "to-markdown": "^3.0.3" }
+, { "toobusy-js": "^0.5.1" }
+, { "uuid": "^3.1.0" }
+, { "uws": "~0.14.1" }
+, { "validator": "^10.4.0" }
+, { "velocity-animate": "^1.4.0" }
+, { "visibilityjs": "^1.2.4" }
+, { "viz.js": "^1.7.0" }
+, { "winston": "^2.3.0" }
+, { "xss": "^1.0.3" } ]
diff --git a/pkgs/servers/web-apps/codimd/generate.sh b/pkgs/servers/web-apps/codimd/generate.sh
new file mode 100755
index 000000000000..6d2bf29532e9
--- /dev/null
+++ b/pkgs/servers/web-apps/codimd/generate.sh
@@ -0,0 +1,7 @@
+#!/usr/bin/env nix-shell
+#! nix-shell -i bash -p nodePackages.node2nix
+
+node2nix -6 -i deps.json \
+  -e ../../../development/node-packages/node-env.nix \
+  --no-copy-node-env \
+  -c node.nix
diff --git a/pkgs/servers/web-apps/codimd/node-packages.nix b/pkgs/servers/web-apps/codimd/node-packages.nix
new file mode 100644
index 000000000000..414cf6c31589
--- /dev/null
+++ b/pkgs/servers/web-apps/codimd/node-packages.nix
@@ -0,0 +1,17911 @@
+# This file has been generated by node2nix 1.6.0. Do not edit!
+
+{nodeEnv, fetchurl, fetchgit, globalBuildInputs ? []}:
+
+let
+  sources = {
+    "@types/body-parser-1.17.0" = {
+      name = "_at_types_slash_body-parser";
+      packageName = "@types/body-parser";
+      version = "1.17.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.17.0.tgz";
+        sha512 = "a2+YeUjPkztKJu5aIF2yArYFQQp8d51wZ7DavSHjFuY1mqVgidGyzEQ41JIVNy82fXj8yPgy2vJmfIywgESW6w==";
+      };
+    };
+    "@types/connect-3.4.32" = {
+      name = "_at_types_slash_connect";
+      packageName = "@types/connect";
+      version = "3.4.32";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/connect/-/connect-3.4.32.tgz";
+        sha512 = "4r8qa0quOvh7lGD0pre62CAb1oni1OO6ecJLGCezTmhQ8Fz50Arx9RUszryR8KlgK6avuSXvviL6yWyViQABOg==";
+      };
+    };
+    "@types/events-1.2.0" = {
+      name = "_at_types_slash_events";
+      packageName = "@types/events";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/events/-/events-1.2.0.tgz";
+        sha512 = "KEIlhXnIutzKwRbQkGWb/I4HFqBuUykAdHgDED6xqwXJfONCjF5VoE0cXEiurh3XauygxzeDzgtXUqvLkxFzzA==";
+      };
+    };
+    "@types/express-4.16.0" = {
+      name = "_at_types_slash_express";
+      packageName = "@types/express";
+      version = "4.16.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/express/-/express-4.16.0.tgz";
+        sha512 = "TtPEYumsmSTtTetAPXlJVf3kEqb6wZK0bZojpJQrnD/djV4q1oB6QQ8aKvKqwNPACoe02GNiy5zDzcYivR5Z2w==";
+      };
+    };
+    "@types/express-serve-static-core-4.16.0" = {
+      name = "_at_types_slash_express-serve-static-core";
+      packageName = "@types/express-serve-static-core";
+      version = "4.16.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.16.0.tgz";
+        sha512 = "lTeoCu5NxJU4OD9moCgm0ESZzweAx0YqsAcab6OB0EB3+As1OaHtKnaGJvcngQxYsi9UNv0abn4/DRavrRxt4w==";
+      };
+    };
+    "@types/geojson-1.0.6" = {
+      name = "_at_types_slash_geojson";
+      packageName = "@types/geojson";
+      version = "1.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/geojson/-/geojson-1.0.6.tgz";
+        sha512 = "Xqg/lIZMrUd0VRmSRbCAewtwGZiAk3mEUDvV4op1tGl+LvyPcb/MIOSxTl9z+9+J+R4/vpjiCAT4xeKzH9ji1w==";
+      };
+    };
+    "@types/ldapjs-1.0.3" = {
+      name = "_at_types_slash_ldapjs";
+      packageName = "@types/ldapjs";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/ldapjs/-/ldapjs-1.0.3.tgz";
+        sha512 = "FSj24s1WsFEfOy8taIKp2DokSZfFkjWYZb88AS5eDj3WTocZ+4DnHjhzrXEs048WQ5mfOLJXMOAnc0kSnHh5Lw==";
+      };
+    };
+    "@types/mime-2.0.0" = {
+      name = "_at_types_slash_mime";
+      packageName = "@types/mime";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/mime/-/mime-2.0.0.tgz";
+        sha512 = "A2TAGbTFdBw9azHbpVd+/FkdW2T6msN1uct1O9bH3vTerEHKZhTXJUQXy+hNq1B0RagfU8U+KBdqiZpxjhOUQA==";
+      };
+    };
+    "@types/node-7.0.68" = {
+      name = "_at_types_slash_node";
+      packageName = "@types/node";
+      version = "7.0.68";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/node/-/node-7.0.68.tgz";
+        sha512 = "ym3LNHwJQU0XDyPrTK6NHJTH5YmGKKe0k56in6pg+Wx4HD8fiKrt8xute6/unHvHujCfzmOQTGz1NoEKgFF5Mw==";
+      };
+    };
+    "@types/passport-0.3.5" = {
+      name = "_at_types_slash_passport";
+      packageName = "@types/passport";
+      version = "0.3.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/passport/-/passport-0.3.5.tgz";
+        sha512 = "J7mdY1nnhjdbkXT84S3WsyrTtDf2KqUJ9JW3Y9vxA5GuXlejIuvwHw9A2TdNklAqPG2Q0TWqlsA2a2GIeV1jYA==";
+      };
+    };
+    "@types/range-parser-1.2.2" = {
+      name = "_at_types_slash_range-parser";
+      packageName = "@types/range-parser";
+      version = "1.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.2.tgz";
+        sha512 = "HtKGu+qG1NPvYe1z7ezLsyIaXYyi8SoAVqWDZgDQ8dLrsZvSzUNCwZyfX33uhWxL/SU0ZDQZ3nwZ0nimt507Kw==";
+      };
+    };
+    "@types/serve-static-1.13.2" = {
+      name = "_at_types_slash_serve-static";
+      packageName = "@types/serve-static";
+      version = "1.13.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.13.2.tgz";
+        sha512 = "/BZ4QRLpH/bNYgZgwhKEh+5AsboDBcUdlBYgzoLX0fpj3Y2gp6EApyOlM3bK53wQS/OE1SrdSYBAbux2D1528Q==";
+      };
+    };
+    "JSV-4.0.2" = {
+      name = "JSV";
+      packageName = "JSV";
+      version = "4.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/JSV/-/JSV-4.0.2.tgz";
+        sha1 = "d077f6825571f82132f9dffaed587b4029feff57";
+      };
+    };
+    "abab-1.0.4" = {
+      name = "abab";
+      packageName = "abab";
+      version = "1.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/abab/-/abab-1.0.4.tgz";
+        sha1 = "5faad9c2c07f60dd76770f71cf025b62a63cfd4e";
+      };
+    };
+    "abbrev-1.1.1" = {
+      name = "abbrev";
+      packageName = "abbrev";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz";
+        sha512 = "nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==";
+      };
+    };
+    "accepts-1.3.5" = {
+      name = "accepts";
+      packageName = "accepts";
+      version = "1.3.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/accepts/-/accepts-1.3.5.tgz";
+        sha1 = "eb777df6011723a3b14e8a72c0805c8e86746bd2";
+      };
+    };
+    "acorn-3.3.0" = {
+      name = "acorn";
+      packageName = "acorn";
+      version = "3.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz";
+        sha1 = "45e37fb39e8da3f25baee3ff5369e2bb5f22017a";
+      };
+    };
+    "acorn-4.0.13" = {
+      name = "acorn";
+      packageName = "acorn";
+      version = "4.0.13";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz";
+        sha1 = "105495ae5361d697bd195c825192e1ad7f253787";
+      };
+    };
+    "acorn-5.7.1" = {
+      name = "acorn";
+      packageName = "acorn";
+      version = "5.7.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/acorn/-/acorn-5.7.1.tgz";
+        sha512 = "d+nbxBUGKg7Arpsvbnlq61mc12ek3EY8EQldM3GPAhWJ1UVxC6TDGbIvUMNU6obBX3i1+ptCIzV4vq0gFPEGVQ==";
+      };
+    };
+    "acorn-globals-3.1.0" = {
+      name = "acorn-globals";
+      packageName = "acorn-globals";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/acorn-globals/-/acorn-globals-3.1.0.tgz";
+        sha1 = "fd8270f71fbb4996b004fa880ee5d46573a731bf";
+      };
+    };
+    "acorn-jsx-3.0.1" = {
+      name = "acorn-jsx";
+      packageName = "acorn-jsx";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-3.0.1.tgz";
+        sha1 = "afdf9488fb1ecefc8348f6fb22f464e32a58b36b";
+      };
+    };
+    "acorn-object-spread-1.0.0" = {
+      name = "acorn-object-spread";
+      packageName = "acorn-object-spread";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/acorn-object-spread/-/acorn-object-spread-1.0.0.tgz";
+        sha1 = "48ead0f4a8eb16995a17a0db9ffc6acaada4ba68";
+      };
+    };
+    "after-0.8.2" = {
+      name = "after";
+      packageName = "after";
+      version = "0.8.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/after/-/after-0.8.2.tgz";
+        sha1 = "fedb394f9f0e02aa9768e702bda23b505fae7e1f";
+      };
+    };
+    "ajv-4.11.8" = {
+      name = "ajv";
+      packageName = "ajv";
+      version = "4.11.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz";
+        sha1 = "82ffb02b29e662ae53bdc20af15947706739c536";
+      };
+    };
+    "ajv-5.5.2" = {
+      name = "ajv";
+      packageName = "ajv";
+      version = "5.5.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz";
+        sha1 = "73b5eeca3fab653e3d3f9422b341ad42205dc965";
+      };
+    };
+    "ajv-6.5.2" = {
+      name = "ajv";
+      packageName = "ajv";
+      version = "6.5.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ajv/-/ajv-6.5.2.tgz";
+        sha512 = "hOs7GfvI6tUI1LfZddH82ky6mOMyTuY0mk7kE2pWpmhhUSkumzaTO5vbVwij39MdwPQWCV4Zv57Eo06NtL/GVA==";
+      };
+    };
+    "ajv-keywords-1.5.1" = {
+      name = "ajv-keywords";
+      packageName = "ajv-keywords";
+      version = "1.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-1.5.1.tgz";
+        sha1 = "314dd0a4b3368fad3dfcdc54ede6171b886daf3c";
+      };
+    };
+    "ajv-keywords-3.2.0" = {
+      name = "ajv-keywords";
+      packageName = "ajv-keywords";
+      version = "3.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.2.0.tgz";
+        sha1 = "e86b819c602cf8821ad637413698f1dec021847a";
+      };
+    };
+    "align-text-0.1.4" = {
+      name = "align-text";
+      packageName = "align-text";
+      version = "0.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz";
+        sha1 = "0cd90a561093f35d0a99256c22b7069433fad117";
+      };
+    };
+    "alphanum-sort-1.0.2" = {
+      name = "alphanum-sort";
+      packageName = "alphanum-sort";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/alphanum-sort/-/alphanum-sort-1.0.2.tgz";
+        sha1 = "97a1119649b211ad33691d9f9f486a8ec9fbe0a3";
+      };
+    };
+    "ambi-2.5.0" = {
+      name = "ambi";
+      packageName = "ambi";
+      version = "2.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ambi/-/ambi-2.5.0.tgz";
+        sha1 = "7c8e372be48891157e7cea01cb6f9143d1f74220";
+      };
+    };
+    "amdefine-1.0.1" = {
+      name = "amdefine";
+      packageName = "amdefine";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz";
+        sha1 = "4a5282ac164729e93619bcfd3ad151f817ce91f5";
+      };
+    };
+    "anchor-markdown-header-0.5.7" = {
+      name = "anchor-markdown-header";
+      packageName = "anchor-markdown-header";
+      version = "0.5.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/anchor-markdown-header/-/anchor-markdown-header-0.5.7.tgz";
+        sha1 = "045063d76e6a1f9cd327a57a0126aa0fdec371a7";
+      };
+    };
+    "ansi-escapes-1.4.0" = {
+      name = "ansi-escapes";
+      packageName = "ansi-escapes";
+      version = "1.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz";
+        sha1 = "d3a8a83b319aa67793662b13e761c7911422306e";
+      };
+    };
+    "ansi-gray-0.1.1" = {
+      name = "ansi-gray";
+      packageName = "ansi-gray";
+      version = "0.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansi-gray/-/ansi-gray-0.1.1.tgz";
+        sha1 = "2962cf54ec9792c48510a3deb524436861ef7251";
+      };
+    };
+    "ansi-regex-2.1.1" = {
+      name = "ansi-regex";
+      packageName = "ansi-regex";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz";
+        sha1 = "c3b33ab5ee360d86e0e628f0468ae7ef27d654df";
+      };
+    };
+    "ansi-regex-3.0.0" = {
+      name = "ansi-regex";
+      packageName = "ansi-regex";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz";
+        sha1 = "ed0317c322064f79466c02966bddb605ab37d998";
+      };
+    };
+    "ansi-styles-1.0.0" = {
+      name = "ansi-styles";
+      packageName = "ansi-styles";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansi-styles/-/ansi-styles-1.0.0.tgz";
+        sha1 = "cb102df1c56f5123eab8b67cd7b98027a0279178";
+      };
+    };
+    "ansi-styles-2.2.1" = {
+      name = "ansi-styles";
+      packageName = "ansi-styles";
+      version = "2.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz";
+        sha1 = "b432dd3358b634cf75e1e4664368240533c1ddbe";
+      };
+    };
+    "ansi-styles-3.2.1" = {
+      name = "ansi-styles";
+      packageName = "ansi-styles";
+      version = "3.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz";
+        sha512 = "VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==";
+      };
+    };
+    "ansi-wrap-0.1.0" = {
+      name = "ansi-wrap";
+      packageName = "ansi-wrap";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansi-wrap/-/ansi-wrap-0.1.0.tgz";
+        sha1 = "a82250ddb0015e9a27ca82e82ea603bbfa45efaf";
+      };
+    };
+    "anymatch-1.3.2" = {
+      name = "anymatch";
+      packageName = "anymatch";
+      version = "1.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz";
+        sha512 = "0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==";
+      };
+    };
+    "aproba-1.2.0" = {
+      name = "aproba";
+      packageName = "aproba";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz";
+        sha512 = "Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==";
+      };
+    };
+    "archiver-utils-1.3.0" = {
+      name = "archiver-utils";
+      packageName = "archiver-utils";
+      version = "1.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/archiver-utils/-/archiver-utils-1.3.0.tgz";
+        sha1 = "e50b4c09c70bf3d680e32ff1b7994e9f9d895174";
+      };
+    };
+    "archy-1.0.0" = {
+      name = "archy";
+      packageName = "archy";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz";
+        sha1 = "f9c8c13757cc1dd7bc379ac77b2c62a5c2868c40";
+      };
+    };
+    "are-we-there-yet-1.1.5" = {
+      name = "are-we-there-yet";
+      packageName = "are-we-there-yet";
+      version = "1.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz";
+        sha512 = "5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==";
+      };
+    };
+    "argparse-0.1.16" = {
+      name = "argparse";
+      packageName = "argparse";
+      version = "0.1.16";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/argparse/-/argparse-0.1.16.tgz";
+        sha1 = "cfd01e0fbba3d6caed049fbd758d40f65196f57c";
+      };
+    };
+    "argparse-1.0.10" = {
+      name = "argparse";
+      packageName = "argparse";
+      version = "1.0.10";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz";
+        sha512 = "o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==";
+      };
+    };
+    "arr-diff-2.0.0" = {
+      name = "arr-diff";
+      packageName = "arr-diff";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz";
+        sha1 = "8f3b827f955a8bd669697e4a4256ac3ceae356cf";
+      };
+    };
+    "arr-diff-4.0.0" = {
+      name = "arr-diff";
+      packageName = "arr-diff";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz";
+        sha1 = "d6461074febfec71e7e15235761a329a5dc7c520";
+      };
+    };
+    "arr-flatten-1.1.0" = {
+      name = "arr-flatten";
+      packageName = "arr-flatten";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz";
+        sha512 = "L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==";
+      };
+    };
+    "arr-union-3.1.0" = {
+      name = "arr-union";
+      packageName = "arr-union";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz";
+        sha1 = "e39b09aea9def866a8f206e288af63919bae39c4";
+      };
+    };
+    "array-differ-1.0.0" = {
+      name = "array-differ";
+      packageName = "array-differ";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz";
+        sha1 = "eff52e3758249d33be402b8bb8e564bb2b5d4031";
+      };
+    };
+    "array-each-1.0.1" = {
+      name = "array-each";
+      packageName = "array-each";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/array-each/-/array-each-1.0.1.tgz";
+        sha1 = "a794af0c05ab1752846ee753a1f211a05ba0c44f";
+      };
+    };
+    "array-equal-1.0.0" = {
+      name = "array-equal";
+      packageName = "array-equal";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/array-equal/-/array-equal-1.0.0.tgz";
+        sha1 = "8c2a5ef2472fd9ea742b04c77a75093ba2757c93";
+      };
+    };
+    "array-flatten-1.1.1" = {
+      name = "array-flatten";
+      packageName = "array-flatten";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz";
+        sha1 = "9a5f699051b1e7073328f2a008968b64ea2955d2";
+      };
+    };
+    "array-slice-1.1.0" = {
+      name = "array-slice";
+      packageName = "array-slice";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/array-slice/-/array-slice-1.1.0.tgz";
+        sha512 = "B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w==";
+      };
+    };
+    "array-union-1.0.2" = {
+      name = "array-union";
+      packageName = "array-union";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz";
+        sha1 = "9a34410e4f4e3da23dea375be5be70f24778ec39";
+      };
+    };
+    "array-uniq-1.0.3" = {
+      name = "array-uniq";
+      packageName = "array-uniq";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz";
+        sha1 = "af6ac877a25cc7f74e058894753858dfdb24fdb6";
+      };
+    };
+    "array-unique-0.2.1" = {
+      name = "array-unique";
+      packageName = "array-unique";
+      version = "0.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz";
+        sha1 = "a1d97ccafcbc2625cc70fadceb36a50c58b01a53";
+      };
+    };
+    "array-unique-0.3.2" = {
+      name = "array-unique";
+      packageName = "array-unique";
+      version = "0.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz";
+        sha1 = "a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428";
+      };
+    };
+    "array.prototype.find-2.0.4" = {
+      name = "array.prototype.find";
+      packageName = "array.prototype.find";
+      version = "2.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/array.prototype.find/-/array.prototype.find-2.0.4.tgz";
+        sha1 = "556a5c5362c08648323ddaeb9de9d14bc1864c90";
+      };
+    };
+    "arraybuffer.slice-0.0.7" = {
+      name = "arraybuffer.slice";
+      packageName = "arraybuffer.slice";
+      version = "0.0.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz";
+        sha512 = "wGUIVQXuehL5TCqQun8OW81jGzAWycqzFF8lFp+GOM5BXLYj3bKNsYC4daB7n6XjCqxQA/qgTJ+8ANR3acjrog==";
+      };
+    };
+    "arrify-1.0.1" = {
+      name = "arrify";
+      packageName = "arrify";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz";
+        sha1 = "898508da2226f380df904728456849c1501a4b0d";
+      };
+    };
+    "asap-2.0.6" = {
+      name = "asap";
+      packageName = "asap";
+      version = "2.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz";
+        sha1 = "e50347611d7e690943208bbdafebcbc2fb866d46";
+      };
+    };
+    "asn1-0.2.3" = {
+      name = "asn1";
+      packageName = "asn1";
+      version = "0.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz";
+        sha1 = "dac8787713c9966849fc8180777ebe9c1ddf3b86";
+      };
+    };
+    "asn1-0.2.4" = {
+      name = "asn1";
+      packageName = "asn1";
+      version = "0.2.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz";
+        sha512 = "jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==";
+      };
+    };
+    "assert-1.4.1" = {
+      name = "assert";
+      packageName = "assert";
+      version = "1.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/assert/-/assert-1.4.1.tgz";
+        sha1 = "99912d591836b5a6f5b345c0f07eefc08fc65d91";
+      };
+    };
+    "assert-plus-0.1.5" = {
+      name = "assert-plus";
+      packageName = "assert-plus";
+      version = "0.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/assert-plus/-/assert-plus-0.1.5.tgz";
+        sha1 = "ee74009413002d84cec7219c6ac811812e723160";
+      };
+    };
+    "assert-plus-0.2.0" = {
+      name = "assert-plus";
+      packageName = "assert-plus";
+      version = "0.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz";
+        sha1 = "d74e1b87e7affc0db8aadb7021f3fe48101ab234";
+      };
+    };
+    "assert-plus-1.0.0" = {
+      name = "assert-plus";
+      packageName = "assert-plus";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz";
+        sha1 = "f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525";
+      };
+    };
+    "assign-symbols-1.0.0" = {
+      name = "assign-symbols";
+      packageName = "assign-symbols";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz";
+        sha1 = "59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367";
+      };
+    };
+    "async-0.2.10" = {
+      name = "async";
+      packageName = "async";
+      version = "0.2.10";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/async/-/async-0.2.10.tgz";
+        sha1 = "b6bbe0b0674b9d719708ca38de8c237cb526c3d1";
+      };
+    };
+    "async-0.9.2" = {
+      name = "async";
+      packageName = "async";
+      version = "0.9.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/async/-/async-0.9.2.tgz";
+        sha1 = "aea74d5e61c1f899613bf64bda66d4c78f2fd17d";
+      };
+    };
+    "async-1.0.0" = {
+      name = "async";
+      packageName = "async";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/async/-/async-1.0.0.tgz";
+        sha1 = "f8fc04ca3a13784ade9e1641af98578cfbd647a9";
+      };
+    };
+    "async-1.5.2" = {
+      name = "async";
+      packageName = "async";
+      version = "1.5.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/async/-/async-1.5.2.tgz";
+        sha1 = "ec6a61ae56480c0c3cb241c95618e20892f9672a";
+      };
+    };
+    "async-2.6.1" = {
+      name = "async";
+      packageName = "async";
+      version = "2.6.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/async/-/async-2.6.1.tgz";
+        sha512 = "fNEiL2+AZt6AlAw/29Cr0UDe4sRAHCpEHh54WMz+Bb7QfNcFw4h3loofyJpLeQs4Yx7yuqu/2dLgM5hKOs6HlQ==";
+      };
+    };
+    "async-each-1.0.1" = {
+      name = "async-each";
+      packageName = "async-each";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz";
+        sha1 = "19d386a1d9edc6e7c1c85d388aedbcc56d33602d";
+      };
+    };
+    "async-limiter-1.0.0" = {
+      name = "async-limiter";
+      packageName = "async-limiter";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.0.tgz";
+        sha512 = "jp/uFnooOiO+L211eZOoSyzpOITMXx1rBITauYykG3BRYPu8h0UcxsPNB04RR5vo4Tyz3+ay17tR6JVf9qzYWg==";
+      };
+    };
+    "asynckit-0.4.0" = {
+      name = "asynckit";
+      packageName = "asynckit";
+      version = "0.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz";
+        sha1 = "c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79";
+      };
+    };
+    "atob-2.1.1" = {
+      name = "atob";
+      packageName = "atob";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/atob/-/atob-2.1.1.tgz";
+        sha1 = "ae2d5a729477f289d60dd7f96a6314a22dd6c22a";
+      };
+    };
+    "autolinker-0.15.3" = {
+      name = "autolinker";
+      packageName = "autolinker";
+      version = "0.15.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/autolinker/-/autolinker-0.15.3.tgz";
+        sha1 = "342417d8f2f3461b14cf09088d5edf8791dc9832";
+      };
+    };
+    "autoprefixer-6.7.7" = {
+      name = "autoprefixer";
+      packageName = "autoprefixer";
+      version = "6.7.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/autoprefixer/-/autoprefixer-6.7.7.tgz";
+        sha1 = "1dbd1c835658e35ce3f9984099db00585c782014";
+      };
+    };
+    "aws-sign2-0.6.0" = {
+      name = "aws-sign2";
+      packageName = "aws-sign2";
+      version = "0.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz";
+        sha1 = "14342dd38dbcc94d0e5b87d763cd63612c0e794f";
+      };
+    };
+    "aws-sign2-0.7.0" = {
+      name = "aws-sign2";
+      packageName = "aws-sign2";
+      version = "0.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz";
+        sha1 = "b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8";
+      };
+    };
+    "aws4-1.7.0" = {
+      name = "aws4";
+      packageName = "aws4";
+      version = "1.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/aws4/-/aws4-1.7.0.tgz";
+        sha512 = "32NDda82rhwD9/JBCCkB+MRYDp0oSvlo2IL6rQWA10PQi7tDUM3eqMSltXmY+Oyl/7N3P3qNtAlv7X0d9bI28w==";
+      };
+    };
+    "babel-code-frame-6.26.0" = {
+      name = "babel-code-frame";
+      packageName = "babel-code-frame";
+      version = "6.26.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz";
+        sha1 = "63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b";
+      };
+    };
+    "babel-core-6.26.3" = {
+      name = "babel-core";
+      packageName = "babel-core";
+      version = "6.26.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-core/-/babel-core-6.26.3.tgz";
+        sha512 = "6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA==";
+      };
+    };
+    "babel-generator-6.26.1" = {
+      name = "babel-generator";
+      packageName = "babel-generator";
+      version = "6.26.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz";
+        sha512 = "HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==";
+      };
+    };
+    "babel-helper-call-delegate-6.24.1" = {
+      name = "babel-helper-call-delegate";
+      packageName = "babel-helper-call-delegate";
+      version = "6.24.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz";
+        sha1 = "ece6aacddc76e41c3461f88bfc575bd0daa2df8d";
+      };
+    };
+    "babel-helper-define-map-6.26.0" = {
+      name = "babel-helper-define-map";
+      packageName = "babel-helper-define-map";
+      version = "6.26.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz";
+        sha1 = "a5f56dab41a25f97ecb498c7ebaca9819f95be5f";
+      };
+    };
+    "babel-helper-function-name-6.24.1" = {
+      name = "babel-helper-function-name";
+      packageName = "babel-helper-function-name";
+      version = "6.24.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz";
+        sha1 = "d3475b8c03ed98242a25b48351ab18399d3580a9";
+      };
+    };
+    "babel-helper-get-function-arity-6.24.1" = {
+      name = "babel-helper-get-function-arity";
+      packageName = "babel-helper-get-function-arity";
+      version = "6.24.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz";
+        sha1 = "8f7782aa93407c41d3aa50908f89b031b1b6853d";
+      };
+    };
+    "babel-helper-hoist-variables-6.24.1" = {
+      name = "babel-helper-hoist-variables";
+      packageName = "babel-helper-hoist-variables";
+      version = "6.24.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz";
+        sha1 = "1ecb27689c9d25513eadbc9914a73f5408be7a76";
+      };
+    };
+    "babel-helper-optimise-call-expression-6.24.1" = {
+      name = "babel-helper-optimise-call-expression";
+      packageName = "babel-helper-optimise-call-expression";
+      version = "6.24.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz";
+        sha1 = "f7a13427ba9f73f8f4fa993c54a97882d1244257";
+      };
+    };
+    "babel-helper-regex-6.26.0" = {
+      name = "babel-helper-regex";
+      packageName = "babel-helper-regex";
+      version = "6.26.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz";
+        sha1 = "325c59f902f82f24b74faceed0363954f6495e72";
+      };
+    };
+    "babel-helper-replace-supers-6.24.1" = {
+      name = "babel-helper-replace-supers";
+      packageName = "babel-helper-replace-supers";
+      version = "6.24.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz";
+        sha1 = "bf6dbfe43938d17369a213ca8a8bf74b6a90ab1a";
+      };
+    };
+    "babel-helpers-6.24.1" = {
+      name = "babel-helpers";
+      packageName = "babel-helpers";
+      version = "6.24.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz";
+        sha1 = "3471de9caec388e5c850e597e58a26ddf37602b2";
+      };
+    };
+    "babel-messages-6.23.0" = {
+      name = "babel-messages";
+      packageName = "babel-messages";
+      version = "6.23.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz";
+        sha1 = "f3cdf4703858035b2a2951c6ec5edf6c62f2630e";
+      };
+    };
+    "babel-plugin-check-es2015-constants-6.22.0" = {
+      name = "babel-plugin-check-es2015-constants";
+      packageName = "babel-plugin-check-es2015-constants";
+      version = "6.22.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz";
+        sha1 = "35157b101426fd2ffd3da3f75c7d1e91835bbf8a";
+      };
+    };
+    "babel-plugin-transform-es2015-arrow-functions-6.22.0" = {
+      name = "babel-plugin-transform-es2015-arrow-functions";
+      packageName = "babel-plugin-transform-es2015-arrow-functions";
+      version = "6.22.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz";
+        sha1 = "452692cb711d5f79dc7f85e440ce41b9f244d221";
+      };
+    };
+    "babel-plugin-transform-es2015-block-scoped-functions-6.22.0" = {
+      name = "babel-plugin-transform-es2015-block-scoped-functions";
+      packageName = "babel-plugin-transform-es2015-block-scoped-functions";
+      version = "6.22.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz";
+        sha1 = "bbc51b49f964d70cb8d8e0b94e820246ce3a6141";
+      };
+    };
+    "babel-plugin-transform-es2015-block-scoping-6.26.0" = {
+      name = "babel-plugin-transform-es2015-block-scoping";
+      packageName = "babel-plugin-transform-es2015-block-scoping";
+      version = "6.26.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz";
+        sha1 = "d70f5299c1308d05c12f463813b0a09e73b1895f";
+      };
+    };
+    "babel-plugin-transform-es2015-classes-6.24.1" = {
+      name = "babel-plugin-transform-es2015-classes";
+      packageName = "babel-plugin-transform-es2015-classes";
+      version = "6.24.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz";
+        sha1 = "5a4c58a50c9c9461e564b4b2a3bfabc97a2584db";
+      };
+    };
+    "babel-plugin-transform-es2015-computed-properties-6.24.1" = {
+      name = "babel-plugin-transform-es2015-computed-properties";
+      packageName = "babel-plugin-transform-es2015-computed-properties";
+      version = "6.24.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz";
+        sha1 = "6fe2a8d16895d5634f4cd999b6d3480a308159b3";
+      };
+    };
+    "babel-plugin-transform-es2015-destructuring-6.23.0" = {
+      name = "babel-plugin-transform-es2015-destructuring";
+      packageName = "babel-plugin-transform-es2015-destructuring";
+      version = "6.23.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz";
+        sha1 = "997bb1f1ab967f682d2b0876fe358d60e765c56d";
+      };
+    };
+    "babel-plugin-transform-es2015-duplicate-keys-6.24.1" = {
+      name = "babel-plugin-transform-es2015-duplicate-keys";
+      packageName = "babel-plugin-transform-es2015-duplicate-keys";
+      version = "6.24.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz";
+        sha1 = "73eb3d310ca969e3ef9ec91c53741a6f1576423e";
+      };
+    };
+    "babel-plugin-transform-es2015-for-of-6.23.0" = {
+      name = "babel-plugin-transform-es2015-for-of";
+      packageName = "babel-plugin-transform-es2015-for-of";
+      version = "6.23.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz";
+        sha1 = "f47c95b2b613df1d3ecc2fdb7573623c75248691";
+      };
+    };
+    "babel-plugin-transform-es2015-function-name-6.24.1" = {
+      name = "babel-plugin-transform-es2015-function-name";
+      packageName = "babel-plugin-transform-es2015-function-name";
+      version = "6.24.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz";
+        sha1 = "834c89853bc36b1af0f3a4c5dbaa94fd8eacaa8b";
+      };
+    };
+    "babel-plugin-transform-es2015-literals-6.22.0" = {
+      name = "babel-plugin-transform-es2015-literals";
+      packageName = "babel-plugin-transform-es2015-literals";
+      version = "6.22.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz";
+        sha1 = "4f54a02d6cd66cf915280019a31d31925377ca2e";
+      };
+    };
+    "babel-plugin-transform-es2015-modules-amd-6.24.1" = {
+      name = "babel-plugin-transform-es2015-modules-amd";
+      packageName = "babel-plugin-transform-es2015-modules-amd";
+      version = "6.24.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz";
+        sha1 = "3b3e54017239842d6d19c3011c4bd2f00a00d154";
+      };
+    };
+    "babel-plugin-transform-es2015-modules-commonjs-6.26.2" = {
+      name = "babel-plugin-transform-es2015-modules-commonjs";
+      packageName = "babel-plugin-transform-es2015-modules-commonjs";
+      version = "6.26.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz";
+        sha512 = "CV9ROOHEdrjcwhIaJNBGMBCodN+1cfkwtM1SbUHmvyy35KGT7fohbpOxkE2uLz1o6odKK2Ck/tz47z+VqQfi9Q==";
+      };
+    };
+    "babel-plugin-transform-es2015-modules-systemjs-6.24.1" = {
+      name = "babel-plugin-transform-es2015-modules-systemjs";
+      packageName = "babel-plugin-transform-es2015-modules-systemjs";
+      version = "6.24.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz";
+        sha1 = "ff89a142b9119a906195f5f106ecf305d9407d23";
+      };
+    };
+    "babel-plugin-transform-es2015-modules-umd-6.24.1" = {
+      name = "babel-plugin-transform-es2015-modules-umd";
+      packageName = "babel-plugin-transform-es2015-modules-umd";
+      version = "6.24.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz";
+        sha1 = "ac997e6285cd18ed6176adb607d602344ad38468";
+      };
+    };
+    "babel-plugin-transform-es2015-object-super-6.24.1" = {
+      name = "babel-plugin-transform-es2015-object-super";
+      packageName = "babel-plugin-transform-es2015-object-super";
+      version = "6.24.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz";
+        sha1 = "24cef69ae21cb83a7f8603dad021f572eb278f8d";
+      };
+    };
+    "babel-plugin-transform-es2015-parameters-6.24.1" = {
+      name = "babel-plugin-transform-es2015-parameters";
+      packageName = "babel-plugin-transform-es2015-parameters";
+      version = "6.24.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz";
+        sha1 = "57ac351ab49caf14a97cd13b09f66fdf0a625f2b";
+      };
+    };
+    "babel-plugin-transform-es2015-shorthand-properties-6.24.1" = {
+      name = "babel-plugin-transform-es2015-shorthand-properties";
+      packageName = "babel-plugin-transform-es2015-shorthand-properties";
+      version = "6.24.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz";
+        sha1 = "24f875d6721c87661bbd99a4622e51f14de38aa0";
+      };
+    };
+    "babel-plugin-transform-es2015-spread-6.22.0" = {
+      name = "babel-plugin-transform-es2015-spread";
+      packageName = "babel-plugin-transform-es2015-spread";
+      version = "6.22.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz";
+        sha1 = "d6d68a99f89aedc4536c81a542e8dd9f1746f8d1";
+      };
+    };
+    "babel-plugin-transform-es2015-sticky-regex-6.24.1" = {
+      name = "babel-plugin-transform-es2015-sticky-regex";
+      packageName = "babel-plugin-transform-es2015-sticky-regex";
+      version = "6.24.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz";
+        sha1 = "00c1cdb1aca71112cdf0cf6126c2ed6b457ccdbc";
+      };
+    };
+    "babel-plugin-transform-es2015-template-literals-6.22.0" = {
+      name = "babel-plugin-transform-es2015-template-literals";
+      packageName = "babel-plugin-transform-es2015-template-literals";
+      version = "6.22.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz";
+        sha1 = "a84b3450f7e9f8f1f6839d6d687da84bb1236d8d";
+      };
+    };
+    "babel-plugin-transform-es2015-typeof-symbol-6.23.0" = {
+      name = "babel-plugin-transform-es2015-typeof-symbol";
+      packageName = "babel-plugin-transform-es2015-typeof-symbol";
+      version = "6.23.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz";
+        sha1 = "dec09f1cddff94b52ac73d505c84df59dcceb372";
+      };
+    };
+    "babel-plugin-transform-es2015-unicode-regex-6.24.1" = {
+      name = "babel-plugin-transform-es2015-unicode-regex";
+      packageName = "babel-plugin-transform-es2015-unicode-regex";
+      version = "6.24.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz";
+        sha1 = "d38b12f42ea7323f729387f18a7c5ae1faeb35e9";
+      };
+    };
+    "babel-plugin-transform-regenerator-6.26.0" = {
+      name = "babel-plugin-transform-regenerator";
+      packageName = "babel-plugin-transform-regenerator";
+      version = "6.26.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz";
+        sha1 = "e0703696fbde27f0a3efcacf8b4dca2f7b3a8f2f";
+      };
+    };
+    "babel-plugin-transform-strict-mode-6.24.1" = {
+      name = "babel-plugin-transform-strict-mode";
+      packageName = "babel-plugin-transform-strict-mode";
+      version = "6.24.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz";
+        sha1 = "d5faf7aa578a65bbe591cf5edae04a0c67020758";
+      };
+    };
+    "babel-polyfill-6.26.0" = {
+      name = "babel-polyfill";
+      packageName = "babel-polyfill";
+      version = "6.26.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.26.0.tgz";
+        sha1 = "379937abc67d7895970adc621f284cd966cf2153";
+      };
+    };
+    "babel-register-6.26.0" = {
+      name = "babel-register";
+      packageName = "babel-register";
+      version = "6.26.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz";
+        sha1 = "6ed021173e2fcb486d7acb45c6009a856f647071";
+      };
+    };
+    "babel-runtime-6.26.0" = {
+      name = "babel-runtime";
+      packageName = "babel-runtime";
+      version = "6.26.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz";
+        sha1 = "965c7058668e82b55d7bfe04ff2337bc8b5647fe";
+      };
+    };
+    "babel-template-6.26.0" = {
+      name = "babel-template";
+      packageName = "babel-template";
+      version = "6.26.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz";
+        sha1 = "de03e2d16396b069f46dd9fff8521fb1a0e35e02";
+      };
+    };
+    "babel-traverse-6.26.0" = {
+      name = "babel-traverse";
+      packageName = "babel-traverse";
+      version = "6.26.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz";
+        sha1 = "46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee";
+      };
+    };
+    "babel-types-6.26.0" = {
+      name = "babel-types";
+      packageName = "babel-types";
+      version = "6.26.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz";
+        sha1 = "a3b073f94ab49eb6fa55cd65227a334380632497";
+      };
+    };
+    "babylon-6.18.0" = {
+      name = "babylon";
+      packageName = "babylon";
+      version = "6.18.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz";
+        sha512 = "q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==";
+      };
+    };
+    "backo2-1.0.2" = {
+      name = "backo2";
+      packageName = "backo2";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz";
+        sha1 = "31ab1ac8b129363463e35b3ebb69f4dfcfba7947";
+      };
+    };
+    "backoff-2.5.0" = {
+      name = "backoff";
+      packageName = "backoff";
+      version = "2.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/backoff/-/backoff-2.5.0.tgz";
+        sha1 = "f616eda9d3e4b66b8ca7fca79f695722c5f8e26f";
+      };
+    };
+    "bail-1.0.3" = {
+      name = "bail";
+      packageName = "bail";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/bail/-/bail-1.0.3.tgz";
+        sha512 = "1X8CnjFVQ+a+KW36uBNMTU5s8+v5FzeqrP7hTG5aTb4aPreSbZJlhwPon9VKMuEVgV++JM+SQrALY3kr7eswdg==";
+      };
+    };
+    "balanced-match-0.4.2" = {
+      name = "balanced-match";
+      packageName = "balanced-match";
+      version = "0.4.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/balanced-match/-/balanced-match-0.4.2.tgz";
+        sha1 = "cb3f3e3c732dc0f01ee70b403f302e61d7709838";
+      };
+    };
+    "balanced-match-1.0.0" = {
+      name = "balanced-match";
+      packageName = "balanced-match";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz";
+        sha1 = "89b4d199ab2bee49de164ea02b89ce462d71b767";
+      };
+    };
+    "base-0.11.2" = {
+      name = "base";
+      packageName = "base";
+      version = "0.11.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/base/-/base-0.11.2.tgz";
+        sha512 = "5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==";
+      };
+    };
+    "base64-arraybuffer-0.1.5" = {
+      name = "base64-arraybuffer";
+      packageName = "base64-arraybuffer";
+      version = "0.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.5.tgz";
+        sha1 = "73926771923b5a19747ad666aa5cd4bf9c6e9ce8";
+      };
+    };
+    "base64-js-1.3.0" = {
+      name = "base64-js";
+      packageName = "base64-js";
+      version = "1.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/base64-js/-/base64-js-1.3.0.tgz";
+        sha512 = "ccav/yGvoa80BQDljCxsmmQ3Xvx60/UpBIij5QN21W3wBi/hhIC9OoO+KLpu9IJTS9j4DRVJ3aDDF9cMSoa2lw==";
+      };
+    };
+    "base64id-1.0.0" = {
+      name = "base64id";
+      packageName = "base64id";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/base64id/-/base64id-1.0.0.tgz";
+        sha1 = "47688cb99bb6804f0e06d3e763b1c32e57d8e6b6";
+      };
+    };
+    "basic-auth-2.0.0" = {
+      name = "basic-auth";
+      packageName = "basic-auth";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/basic-auth/-/basic-auth-2.0.0.tgz";
+        sha1 = "015db3f353e02e56377755f962742e8981e7bbba";
+      };
+    };
+    "bcrypt-pbkdf-1.0.2" = {
+      name = "bcrypt-pbkdf";
+      packageName = "bcrypt-pbkdf";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz";
+        sha1 = "a4301d389b6a43f9b67ff3ca11a3f6637e360e9e";
+      };
+    };
+    "bcryptjs-2.4.3" = {
+      name = "bcryptjs";
+      packageName = "bcryptjs";
+      version = "2.4.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/bcryptjs/-/bcryptjs-2.4.3.tgz";
+        sha1 = "9ab5627b93e60621ff7cdac5da9733027df1d0cb";
+      };
+    };
+    "beeper-1.1.1" = {
+      name = "beeper";
+      packageName = "beeper";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/beeper/-/beeper-1.1.1.tgz";
+        sha1 = "e6d5ea8c5dad001304a70b22638447f69cb2f809";
+      };
+    };
+    "better-assert-1.0.2" = {
+      name = "better-assert";
+      packageName = "better-assert";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/better-assert/-/better-assert-1.0.2.tgz";
+        sha1 = "40866b9e1b9e0b55b481894311e68faffaebc522";
+      };
+    };
+    "big-number-0.3.1" = {
+      name = "big-number";
+      packageName = "big-number";
+      version = "0.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/big-number/-/big-number-0.3.1.tgz";
+        sha1 = "ac73020c0a59bb79eb17c2ce2db77f77d974e013";
+      };
+    };
+    "big.js-3.2.0" = {
+      name = "big.js";
+      packageName = "big.js";
+      version = "3.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/big.js/-/big.js-3.2.0.tgz";
+        sha512 = "+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q==";
+      };
+    };
+    "bignumber.js-4.1.0" = {
+      name = "bignumber.js";
+      packageName = "bignumber.js";
+      version = "4.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/bignumber.js/-/bignumber.js-4.1.0.tgz";
+        sha512 = "eJzYkFYy9L4JzXsbymsFn3p54D+llV27oTQ+ziJG7WFRheJcNZilgVXMG0LoZtlQSKBsJdWtLFqOD0u+U0jZKA==";
+      };
+    };
+    "binary-extensions-1.11.0" = {
+      name = "binary-extensions";
+      packageName = "binary-extensions";
+      version = "1.11.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.11.0.tgz";
+        sha1 = "46aa1751fb6a2f93ee5e689bb1087d4b14c6c205";
+      };
+    };
+    "bl-1.2.2" = {
+      name = "bl";
+      packageName = "bl";
+      version = "1.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/bl/-/bl-1.2.2.tgz";
+        sha512 = "e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA==";
+      };
+    };
+    "blint-1.0.3" = {
+      name = "blint";
+      packageName = "blint";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/blint/-/blint-1.0.3.tgz";
+        sha512 = "6RwH3oJYMujQNd38WWU+jUSRqWfECrmpfL8o3fn3Q3fE9nn5iAktLZJHGEHqeecownbZZwZneTLbaNbIWwU9/A==";
+      };
+    };
+    "blob-0.0.4" = {
+      name = "blob";
+      packageName = "blob";
+      version = "0.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/blob/-/blob-0.0.4.tgz";
+        sha1 = "bcf13052ca54463f30f9fc7e95b9a47630a94921";
+      };
+    };
+    "block-elements-1.2.0" = {
+      name = "block-elements";
+      packageName = "block-elements";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/block-elements/-/block-elements-1.2.0.tgz";
+        sha1 = "8e04ccab638c7e2596f5065fb6c1c7518c905a5d";
+      };
+    };
+    "block-stream2-1.1.0" = {
+      name = "block-stream2";
+      packageName = "block-stream2";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/block-stream2/-/block-stream2-1.1.0.tgz";
+        sha1 = "c738e3a91ba977ebb5e1fef431e13ca11d8639e2";
+      };
+    };
+    "bluebird-3.5.1" = {
+      name = "bluebird";
+      packageName = "bluebird";
+      version = "3.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/bluebird/-/bluebird-3.5.1.tgz";
+        sha512 = "MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA==";
+      };
+    };
+    "body-parser-1.18.2" = {
+      name = "body-parser";
+      packageName = "body-parser";
+      version = "1.18.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/body-parser/-/body-parser-1.18.2.tgz";
+        sha1 = "87678a19d84b47d859b83199bd59bce222b10454";
+      };
+    };
+    "boolbase-1.0.0" = {
+      name = "boolbase";
+      packageName = "boolbase";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz";
+        sha1 = "68dff5fbe60c51eb37725ea9e3ed310dcc1e776e";
+      };
+    };
+    "boom-2.10.1" = {
+      name = "boom";
+      packageName = "boom";
+      version = "2.10.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz";
+        sha1 = "39c8918ceff5799f83f9492a848f625add0c766f";
+      };
+    };
+    "boundary-1.0.1" = {
+      name = "boundary";
+      packageName = "boundary";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/boundary/-/boundary-1.0.1.tgz";
+        sha1 = "4d67dc2602c0cc16dd9bce7ebf87e948290f5812";
+      };
+    };
+    "brace-expansion-1.1.11" = {
+      name = "brace-expansion";
+      packageName = "brace-expansion";
+      version = "1.1.11";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz";
+        sha512 = "iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==";
+      };
+    };
+    "braces-1.8.5" = {
+      name = "braces";
+      packageName = "braces";
+      version = "1.8.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz";
+        sha1 = "ba77962e12dff969d6b76711e914b737857bf6a7";
+      };
+    };
+    "braces-2.3.2" = {
+      name = "braces";
+      packageName = "braces";
+      version = "2.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz";
+        sha512 = "aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==";
+      };
+    };
+    "browserify-aes-0.4.0" = {
+      name = "browserify-aes";
+      packageName = "browserify-aes";
+      version = "0.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/browserify-aes/-/browserify-aes-0.4.0.tgz";
+        sha1 = "067149b668df31c4b58533e02d01e806d8608e2c";
+      };
+    };
+    "browserify-mime-1.2.9" = {
+      name = "browserify-mime";
+      packageName = "browserify-mime";
+      version = "1.2.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/browserify-mime/-/browserify-mime-1.2.9.tgz";
+        sha1 = "aeb1af28de6c0d7a6a2ce40adb68ff18422af31f";
+      };
+    };
+    "browserify-zlib-0.1.4" = {
+      name = "browserify-zlib";
+      packageName = "browserify-zlib";
+      version = "0.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.1.4.tgz";
+        sha1 = "bb35f8a519f600e0fa6b8485241c979d0141fb2d";
+      };
+    };
+    "browserslist-1.7.7" = {
+      name = "browserslist";
+      packageName = "browserslist";
+      version = "1.7.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/browserslist/-/browserslist-1.7.7.tgz";
+        sha1 = "0bd76704258be829b2398bb50e4b62d1a166b0b9";
+      };
+    };
+    "buble-0.15.2" = {
+      name = "buble";
+      packageName = "buble";
+      version = "0.15.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/buble/-/buble-0.15.2.tgz";
+        sha1 = "547fc47483f8e5e8176d82aa5ebccb183b02d613";
+      };
+    };
+    "buffer-4.9.1" = {
+      name = "buffer";
+      packageName = "buffer";
+      version = "4.9.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz";
+        sha1 = "6d1bb601b07a4efced97094132093027c95bc298";
+      };
+    };
+    "buffer-5.2.0" = {
+      name = "buffer";
+      packageName = "buffer";
+      version = "5.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/buffer/-/buffer-5.2.0.tgz";
+        sha512 = "nUJyfChH7PMJy75eRDCCKtszSEFokUNXC1hNVSe+o+VdcgvDPLs20k3v8UXI8ruRYAJiYtyRea8mYyqPxoHWDw==";
+      };
+    };
+    "buffer-alloc-1.2.0" = {
+      name = "buffer-alloc";
+      packageName = "buffer-alloc";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz";
+        sha512 = "CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==";
+      };
+    };
+    "buffer-alloc-unsafe-1.1.0" = {
+      name = "buffer-alloc-unsafe";
+      packageName = "buffer-alloc-unsafe";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz";
+        sha512 = "TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==";
+      };
+    };
+    "buffer-crc32-0.2.13" = {
+      name = "buffer-crc32";
+      packageName = "buffer-crc32";
+      version = "0.2.13";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz";
+        sha1 = "0d333e3f00eac50aa1454abd30ef8c2a5d9a7242";
+      };
+    };
+    "buffer-fill-1.0.0" = {
+      name = "buffer-fill";
+      packageName = "buffer-fill";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz";
+        sha1 = "f8f78b76789888ef39f205cd637f68e702122b2c";
+      };
+    };
+    "buffer-from-1.1.1" = {
+      name = "buffer-from";
+      packageName = "buffer-from";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz";
+        sha512 = "MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==";
+      };
+    };
+    "buffer-writer-1.0.1" = {
+      name = "buffer-writer";
+      packageName = "buffer-writer";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/buffer-writer/-/buffer-writer-1.0.1.tgz";
+        sha1 = "22a936901e3029afcd7547eb4487ceb697a3bf08";
+      };
+    };
+    "builtin-modules-1.1.1" = {
+      name = "builtin-modules";
+      packageName = "builtin-modules";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz";
+        sha1 = "270f076c5a72c02f5b65a47df94c5fe3a278892f";
+      };
+    };
+    "builtin-status-codes-3.0.0" = {
+      name = "builtin-status-codes";
+      packageName = "builtin-status-codes";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz";
+        sha1 = "85982878e21b98e1c66425e03d0174788f569ee8";
+      };
+    };
+    "bunyan-1.8.12" = {
+      name = "bunyan";
+      packageName = "bunyan";
+      version = "1.8.12";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/bunyan/-/bunyan-1.8.12.tgz";
+        sha1 = "f150f0f6748abdd72aeae84f04403be2ef113797";
+      };
+    };
+    "bytes-3.0.0" = {
+      name = "bytes";
+      packageName = "bytes";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz";
+        sha1 = "d32815404d689699f85a4ea4fa8755dd13a96048";
+      };
+    };
+    "cacache-10.0.4" = {
+      name = "cacache";
+      packageName = "cacache";
+      version = "10.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cacache/-/cacache-10.0.4.tgz";
+        sha512 = "Dph0MzuH+rTQzGPNT9fAnrPmMmjKfST6trxJeK7NQuHRaVw24VzPRWTmg9MpcwOVQZO0E1FBICUlFeNaKPIfHA==";
+      };
+    };
+    "cache-base-1.0.1" = {
+      name = "cache-base";
+      packageName = "cache-base";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz";
+        sha512 = "AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==";
+      };
+    };
+    "caller-path-0.1.0" = {
+      name = "caller-path";
+      packageName = "caller-path";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/caller-path/-/caller-path-0.1.0.tgz";
+        sha1 = "94085ef63581ecd3daa92444a8fe94e82577751f";
+      };
+    };
+    "callsite-1.0.0" = {
+      name = "callsite";
+      packageName = "callsite";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz";
+        sha1 = "280398e5d664bd74038b6f0905153e6e8af1bc20";
+      };
+    };
+    "callsites-0.2.0" = {
+      name = "callsites";
+      packageName = "callsites";
+      version = "0.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/callsites/-/callsites-0.2.0.tgz";
+        sha1 = "afab96262910a7f33c19a5775825c69f34e350ca";
+      };
+    };
+    "camel-case-3.0.0" = {
+      name = "camel-case";
+      packageName = "camel-case";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/camel-case/-/camel-case-3.0.0.tgz";
+        sha1 = "ca3c3688a4e9cf3a4cda777dc4dcbc713249cf73";
+      };
+    };
+    "camelcase-1.2.1" = {
+      name = "camelcase";
+      packageName = "camelcase";
+      version = "1.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz";
+        sha1 = "9bb5304d2e0b56698b2c758b08a3eaa9daa58a39";
+      };
+    };
+    "camelcase-4.1.0" = {
+      name = "camelcase";
+      packageName = "camelcase";
+      version = "4.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz";
+        sha1 = "d545635be1e33c542649c69173e5de6acfae34dd";
+      };
+    };
+    "camelize-1.0.0" = {
+      name = "camelize";
+      packageName = "camelize";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/camelize/-/camelize-1.0.0.tgz";
+        sha1 = "164a5483e630fa4321e5af07020e531831b2609b";
+      };
+    };
+    "caniuse-api-1.6.1" = {
+      name = "caniuse-api";
+      packageName = "caniuse-api";
+      version = "1.6.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/caniuse-api/-/caniuse-api-1.6.1.tgz";
+        sha1 = "b534e7c734c4f81ec5fbe8aca2ad24354b962c6c";
+      };
+    };
+    "caniuse-db-1.0.30000874" = {
+      name = "caniuse-db";
+      packageName = "caniuse-db";
+      version = "1.0.30000874";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/caniuse-db/-/caniuse-db-1.0.30000874.tgz";
+        sha1 = "49edc0262efdc6c49d4d962bb16d1f0c790fa44e";
+      };
+    };
+    "caseless-0.12.0" = {
+      name = "caseless";
+      packageName = "caseless";
+      version = "0.12.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz";
+        sha1 = "1b681c21ff84033c826543090689420d187151dc";
+      };
+    };
+    "ccount-1.0.3" = {
+      name = "ccount";
+      packageName = "ccount";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ccount/-/ccount-1.0.3.tgz";
+        sha512 = "Jt9tIBkRc9POUof7QA/VwWd+58fKkEEfI+/t1/eOlxKM7ZhrczNzMFefge7Ai+39y1pR/pP6cI19guHy3FSLmw==";
+      };
+    };
+    "center-align-0.1.3" = {
+      name = "center-align";
+      packageName = "center-align";
+      version = "0.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz";
+        sha1 = "aa0d32629b6ee972200411cbd4461c907bc2b7ad";
+      };
+    };
+    "chalk-0.4.0" = {
+      name = "chalk";
+      packageName = "chalk";
+      version = "0.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/chalk/-/chalk-0.4.0.tgz";
+        sha1 = "5199a3ddcd0c1efe23bc08c1b027b06176e0c64f";
+      };
+    };
+    "chalk-1.1.3" = {
+      name = "chalk";
+      packageName = "chalk";
+      version = "1.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz";
+        sha1 = "a8115c55e4a702fe4d150abd3872822a7e09fc98";
+      };
+    };
+    "chalk-2.4.1" = {
+      name = "chalk";
+      packageName = "chalk";
+      version = "2.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz";
+        sha512 = "ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==";
+      };
+    };
+    "character-entities-1.2.2" = {
+      name = "character-entities";
+      packageName = "character-entities";
+      version = "1.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/character-entities/-/character-entities-1.2.2.tgz";
+        sha512 = "sMoHX6/nBiy3KKfC78dnEalnpn0Az0oSNvqUWYTtYrhRI5iUIYsROU48G+E+kMFQzqXaJ8kHJZ85n7y6/PHgwQ==";
+      };
+    };
+    "character-entities-html4-1.1.2" = {
+      name = "character-entities-html4";
+      packageName = "character-entities-html4";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/character-entities-html4/-/character-entities-html4-1.1.2.tgz";
+        sha512 = "sIrXwyna2+5b0eB9W149izTPJk/KkJTg6mEzDGibwBUkyH1SbDa+nf515Ppdi3MaH35lW0JFJDWeq9Luzes1Iw==";
+      };
+    };
+    "character-entities-legacy-1.1.2" = {
+      name = "character-entities-legacy";
+      packageName = "character-entities-legacy";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.2.tgz";
+        sha512 = "9NB2VbXtXYWdXzqrvAHykE/f0QJxzaKIpZ5QzNZrrgQ7Iyxr2vnfS8fCBNVW9nUEZE0lo57nxKRqnzY/dKrwlA==";
+      };
+    };
+    "character-reference-invalid-1.1.2" = {
+      name = "character-reference-invalid";
+      packageName = "character-reference-invalid";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.2.tgz";
+        sha512 = "7I/xceXfKyUJmSAn/jw8ve/9DyOP7XxufNYLI9Px7CmsKgEUaZLUTax6nZxGQtaoiZCjpu6cHPj20xC/vqRReQ==";
+      };
+    };
+    "chokidar-1.7.0" = {
+      name = "chokidar";
+      packageName = "chokidar";
+      version = "1.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz";
+        sha1 = "798e689778151c8076b4b360e5edd28cda2bb468";
+      };
+    };
+    "chownr-1.0.1" = {
+      name = "chownr";
+      packageName = "chownr";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/chownr/-/chownr-1.0.1.tgz";
+        sha1 = "e2a75042a9551908bebd25b8523d5f9769d79181";
+      };
+    };
+    "circular-json-0.3.3" = {
+      name = "circular-json";
+      packageName = "circular-json";
+      version = "0.3.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/circular-json/-/circular-json-0.3.3.tgz";
+        sha512 = "UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A==";
+      };
+    };
+    "clap-1.2.3" = {
+      name = "clap";
+      packageName = "clap";
+      version = "1.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/clap/-/clap-1.2.3.tgz";
+        sha512 = "4CoL/A3hf90V3VIEjeuhSvlGFEHKzOz+Wfc2IVZc+FaUgU0ZQafJTP49fvnULipOPcAfqhyI2duwQyns6xqjYA==";
+      };
+    };
+    "class-utils-0.3.6" = {
+      name = "class-utils";
+      packageName = "class-utils";
+      version = "0.3.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz";
+        sha512 = "qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==";
+      };
+    };
+    "clean-css-4.1.11" = {
+      name = "clean-css";
+      packageName = "clean-css";
+      version = "4.1.11";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/clean-css/-/clean-css-4.1.11.tgz";
+        sha1 = "2ecdf145aba38f54740f26cefd0ff3e03e125d6a";
+      };
+    };
+    "cli-1.0.1" = {
+      name = "cli";
+      packageName = "cli";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cli/-/cli-1.0.1.tgz";
+        sha1 = "22817534f24bfa4950c34d532d48ecbc621b8c14";
+      };
+    };
+    "cli-color-1.2.0" = {
+      name = "cli-color";
+      packageName = "cli-color";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cli-color/-/cli-color-1.2.0.tgz";
+        sha1 = "3a5ae74fd76b6267af666e69e2afbbd01def34d1";
+      };
+    };
+    "cli-cursor-1.0.2" = {
+      name = "cli-cursor";
+      packageName = "cli-cursor";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz";
+        sha1 = "64da3f7d56a54412e59794bd62dc35295e8f2987";
+      };
+    };
+    "cli-width-2.2.0" = {
+      name = "cli-width";
+      packageName = "cli-width";
+      version = "2.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz";
+        sha1 = "ff19ede8a9a5e579324147b0c11f0fbcbabed639";
+      };
+    };
+    "clipboard-2.0.1" = {
+      name = "clipboard";
+      packageName = "clipboard";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/clipboard/-/clipboard-2.0.1.tgz";
+        sha512 = "7yhQBmtN+uYZmfRjjVjKa0dZdWuabzpSKGtyQZN+9C8xlC788SSJjOHWh7tzurfwTqTD5UDYAhIv5fRJg3sHjQ==";
+      };
+    };
+    "cliui-2.1.0" = {
+      name = "cliui";
+      packageName = "cliui";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz";
+        sha1 = "4b475760ff80264c762c3a1719032e91c7fea0d1";
+      };
+    };
+    "cliui-3.2.0" = {
+      name = "cliui";
+      packageName = "cliui";
+      version = "3.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz";
+        sha1 = "120601537a916d29940f934da3b48d585a39213d";
+      };
+    };
+    "clone-0.2.0" = {
+      name = "clone";
+      packageName = "clone";
+      version = "0.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/clone/-/clone-0.2.0.tgz";
+        sha1 = "c6126a90ad4f72dbf5acdb243cc37724fe93fc1f";
+      };
+    };
+    "clone-1.0.4" = {
+      name = "clone";
+      packageName = "clone";
+      version = "1.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz";
+        sha1 = "da309cc263df15994c688ca902179ca3c7cd7c7e";
+      };
+    };
+    "clone-stats-0.0.1" = {
+      name = "clone-stats";
+      packageName = "clone-stats";
+      version = "0.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/clone-stats/-/clone-stats-0.0.1.tgz";
+        sha1 = "b88f94a82cf38b8791d58046ea4029ad88ca99d1";
+      };
+    };
+    "co-4.6.0" = {
+      name = "co";
+      packageName = "co";
+      version = "4.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/co/-/co-4.6.0.tgz";
+        sha1 = "6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184";
+      };
+    };
+    "coa-1.0.4" = {
+      name = "coa";
+      packageName = "coa";
+      version = "1.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/coa/-/coa-1.0.4.tgz";
+        sha1 = "a9ef153660d6a86a8bdec0289a5c684d217432fd";
+      };
+    };
+    "code-point-at-1.1.0" = {
+      name = "code-point-at";
+      packageName = "code-point-at";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz";
+        sha1 = "0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77";
+      };
+    };
+    "collapse-white-space-1.0.4" = {
+      name = "collapse-white-space";
+      packageName = "collapse-white-space";
+      version = "1.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/collapse-white-space/-/collapse-white-space-1.0.4.tgz";
+        sha512 = "YfQ1tAUZm561vpYD+5eyWN8+UsceQbSrqqlc/6zDY2gtAE+uZLSdkkovhnGpmCThsvKBFakq4EdY/FF93E8XIw==";
+      };
+    };
+    "collapse-whitespace-1.1.2" = {
+      name = "collapse-whitespace";
+      packageName = "collapse-whitespace";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/collapse-whitespace/-/collapse-whitespace-1.1.2.tgz";
+        sha1 = "b9b31d79d5594ee3c22c15819c54828e565b3085";
+      };
+    };
+    "collection-visit-1.0.0" = {
+      name = "collection-visit";
+      packageName = "collection-visit";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz";
+        sha1 = "4bc0373c164bc3291b4d368c829cf1a80a59dca0";
+      };
+    };
+    "color-0.11.4" = {
+      name = "color";
+      packageName = "color";
+      version = "0.11.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/color/-/color-0.11.4.tgz";
+        sha1 = "6d7b5c74fb65e841cd48792ad1ed5e07b904d764";
+      };
+    };
+    "color-convert-1.9.2" = {
+      name = "color-convert";
+      packageName = "color-convert";
+      version = "1.9.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/color-convert/-/color-convert-1.9.2.tgz";
+        sha512 = "3NUJZdhMhcdPn8vJ9v2UQJoH0qqoGUkYTgFEPZaPjEtwmmKUfNV46zZmgB2M5M4DCEQHMaCfWHCxiBflLm04Tg==";
+      };
+    };
+    "color-name-1.1.1" = {
+      name = "color-name";
+      packageName = "color-name";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/color-name/-/color-name-1.1.1.tgz";
+        sha1 = "4b1415304cf50028ea81643643bd82ea05803689";
+      };
+    };
+    "color-string-0.3.0" = {
+      name = "color-string";
+      packageName = "color-string";
+      version = "0.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/color-string/-/color-string-0.3.0.tgz";
+        sha1 = "27d46fb67025c5c2fa25993bfbf579e47841b991";
+      };
+    };
+    "color-support-1.1.3" = {
+      name = "color-support";
+      packageName = "color-support";
+      version = "1.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz";
+        sha512 = "qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==";
+      };
+    };
+    "colormin-1.1.2" = {
+      name = "colormin";
+      packageName = "colormin";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/colormin/-/colormin-1.1.2.tgz";
+        sha1 = "ea2f7420a72b96881a38aae59ec124a6f7298133";
+      };
+    };
+    "colors-1.0.3" = {
+      name = "colors";
+      packageName = "colors";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz";
+        sha1 = "0433f44d809680fdeb60ed260f1b0c262e82a40b";
+      };
+    };
+    "colors-1.1.2" = {
+      name = "colors";
+      packageName = "colors";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz";
+        sha1 = "168a4701756b6a7f51a12ce0c97bfa28c084ed63";
+      };
+    };
+    "combined-stream-1.0.6" = {
+      name = "combined-stream";
+      packageName = "combined-stream";
+      version = "1.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz";
+        sha1 = "723e7df6e801ac5613113a7e445a9b69cb632818";
+      };
+    };
+    "commander-2.14.1" = {
+      name = "commander";
+      packageName = "commander";
+      version = "2.14.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/commander/-/commander-2.14.1.tgz";
+        sha512 = "+YR16o3rK53SmWHU3rEM3tPAh2rwb1yPcQX5irVn7mb0gXbwuCCrnkbV5+PBfETdfg1vui07nM6PCG1zndcjQw==";
+      };
+    };
+    "commander-2.16.0" = {
+      name = "commander";
+      packageName = "commander";
+      version = "2.16.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/commander/-/commander-2.16.0.tgz";
+        sha512 = "sVXqklSaotK9at437sFlFpyOcJonxe0yST/AG9DkQKUdIE6IqGIMv4SfAQSKaJbSdVEJYItASCrBiVQHq1HQew==";
+      };
+    };
+    "commondir-1.0.1" = {
+      name = "commondir";
+      packageName = "commondir";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz";
+        sha1 = "ddd800da0c66127393cca5950ea968a3aaf1253b";
+      };
+    };
+    "component-bind-1.0.0" = {
+      name = "component-bind";
+      packageName = "component-bind";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/component-bind/-/component-bind-1.0.0.tgz";
+        sha1 = "00c608ab7dcd93897c0009651b1d3a8e1e73bbd1";
+      };
+    };
+    "component-emitter-1.2.1" = {
+      name = "component-emitter";
+      packageName = "component-emitter";
+      version = "1.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz";
+        sha1 = "137918d6d78283f7df7a6b7c5a63e140e69425e6";
+      };
+    };
+    "component-inherit-0.0.3" = {
+      name = "component-inherit";
+      packageName = "component-inherit";
+      version = "0.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/component-inherit/-/component-inherit-0.0.3.tgz";
+        sha1 = "645fc4adf58b72b649d5cae65135619db26ff143";
+      };
+    };
+    "compress-commons-1.2.2" = {
+      name = "compress-commons";
+      packageName = "compress-commons";
+      version = "1.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/compress-commons/-/compress-commons-1.2.2.tgz";
+        sha1 = "524a9f10903f3a813389b0225d27c48bb751890f";
+      };
+    };
+    "compressible-2.0.14" = {
+      name = "compressible";
+      packageName = "compressible";
+      version = "2.0.14";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/compressible/-/compressible-2.0.14.tgz";
+        sha1 = "326c5f507fbb055f54116782b969a81b67a29da7";
+      };
+    };
+    "concat-map-0.0.1" = {
+      name = "concat-map";
+      packageName = "concat-map";
+      version = "0.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz";
+        sha1 = "d8a96bd77fd68df7793a73036a3ba0d5405d477b";
+      };
+    };
+    "concat-stream-1.6.2" = {
+      name = "concat-stream";
+      packageName = "concat-stream";
+      version = "1.6.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz";
+        sha512 = "27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==";
+      };
+    };
+    "config-chain-1.1.11" = {
+      name = "config-chain";
+      packageName = "config-chain";
+      version = "1.1.11";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/config-chain/-/config-chain-1.1.11.tgz";
+        sha1 = "aba09747dfbe4c3e70e766a6e41586e1859fc6f2";
+      };
+    };
+    "console-browserify-1.1.0" = {
+      name = "console-browserify";
+      packageName = "console-browserify";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz";
+        sha1 = "f0241c45730a9fc6323b206dbf38edc741d0bb10";
+      };
+    };
+    "console-control-strings-1.1.0" = {
+      name = "console-control-strings";
+      packageName = "console-control-strings";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz";
+        sha1 = "3d7cf4464db6446ea644bf4b39507f9851008e8e";
+      };
+    };
+    "constants-browserify-1.0.0" = {
+      name = "constants-browserify";
+      packageName = "constants-browserify";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz";
+        sha1 = "c20b96d8c617748aaf1c16021760cd27fcb8cb75";
+      };
+    };
+    "content-disposition-0.5.2" = {
+      name = "content-disposition";
+      packageName = "content-disposition";
+      version = "0.5.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz";
+        sha1 = "0cf68bb9ddf5f2be7961c3a85178cb85dba78cb4";
+      };
+    };
+    "content-security-policy-builder-2.0.0" = {
+      name = "content-security-policy-builder";
+      packageName = "content-security-policy-builder";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/content-security-policy-builder/-/content-security-policy-builder-2.0.0.tgz";
+        sha512 = "j+Nhmj1yfZAikJLImCvPJFE29x/UuBi+/MWqggGGc515JKaZrjuei2RhULJmy0MsstW3E3htl002bwmBNMKr7w==";
+      };
+    };
+    "content-type-1.0.4" = {
+      name = "content-type";
+      packageName = "content-type";
+      version = "1.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz";
+        sha512 = "hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==";
+      };
+    };
+    "content-type-parser-1.0.2" = {
+      name = "content-type-parser";
+      packageName = "content-type-parser";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/content-type-parser/-/content-type-parser-1.0.2.tgz";
+        sha512 = "lM4l4CnMEwOLHAHr/P6MEZwZFPJFtAAKgL6pogbXmVZggIqXhdB6RbBtPOTsw2FcXwYhehRGERJmRrjOiIB8pQ==";
+      };
+    };
+    "convert-source-map-1.5.1" = {
+      name = "convert-source-map";
+      packageName = "convert-source-map";
+      version = "1.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.5.1.tgz";
+        sha1 = "b8278097b9bc229365de5c62cf5fcaed8b5599e5";
+      };
+    };
+    "cookie-0.3.1" = {
+      name = "cookie";
+      packageName = "cookie";
+      version = "0.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz";
+        sha1 = "e7e0a1f9ef43b4c8ba925c5c5a96e806d16873bb";
+      };
+    };
+    "cookie-signature-1.0.6" = {
+      name = "cookie-signature";
+      packageName = "cookie-signature";
+      version = "1.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz";
+        sha1 = "e303a882b342cc3ee8ca513a79999734dab3ae2c";
+      };
+    };
+    "cookiejar-2.0.6" = {
+      name = "cookiejar";
+      packageName = "cookiejar";
+      version = "2.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cookiejar/-/cookiejar-2.0.6.tgz";
+        sha1 = "0abf356ad00d1c5a219d88d44518046dd026acfe";
+      };
+    };
+    "copy-concurrently-1.0.5" = {
+      name = "copy-concurrently";
+      packageName = "copy-concurrently";
+      version = "1.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz";
+        sha512 = "f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==";
+      };
+    };
+    "copy-descriptor-0.1.1" = {
+      name = "copy-descriptor";
+      packageName = "copy-descriptor";
+      version = "0.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz";
+        sha1 = "676f6eb3c39997c2ee1ac3a924fd6124748f578d";
+      };
+    };
+    "core-js-2.5.7" = {
+      name = "core-js";
+      packageName = "core-js";
+      version = "2.5.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/core-js/-/core-js-2.5.7.tgz";
+        sha512 = "RszJCAxg/PP6uzXVXL6BsxSXx/B05oJAQ2vkJRjyjrEcNVycaqOmNb5OTxZPE3xa5gwZduqza6L9JOCenh/Ecw==";
+      };
+    };
+    "core-util-is-1.0.2" = {
+      name = "core-util-is";
+      packageName = "core-util-is";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz";
+        sha1 = "b5fd54220aa2bc5ab57aab7140c940754503c1a7";
+      };
+    };
+    "crc-3.4.4" = {
+      name = "crc";
+      packageName = "crc";
+      version = "3.4.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/crc/-/crc-3.4.4.tgz";
+        sha1 = "9da1e980e3bd44fc5c93bf5ab3da3378d85e466b";
+      };
+    };
+    "crc-3.8.0" = {
+      name = "crc";
+      packageName = "crc";
+      version = "3.8.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/crc/-/crc-3.8.0.tgz";
+        sha512 = "iX3mfgcTMIq3ZKLIsVFAbv7+Mc10kxabAGQb8HvjA1o3T1PIYprbakQ65d3I+2HGHt6nSKkM9PYjgoJO2KcFBQ==";
+      };
+    };
+    "crc32-stream-2.0.0" = {
+      name = "crc32-stream";
+      packageName = "crc32-stream";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/crc32-stream/-/crc32-stream-2.0.0.tgz";
+        sha1 = "e3cdd3b4df3168dd74e3de3fbbcb7b297fe908f4";
+      };
+    };
+    "cross-spawn-5.1.0" = {
+      name = "cross-spawn";
+      packageName = "cross-spawn";
+      version = "5.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz";
+        sha1 = "e8bd0efee58fcff6f8f94510a0a554bbfa235449";
+      };
+    };
+    "cryptiles-2.0.5" = {
+      name = "cryptiles";
+      packageName = "cryptiles";
+      version = "2.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz";
+        sha1 = "3bdfecdc608147c1c67202fa291e7dca59eaa3b8";
+      };
+    };
+    "crypto-browserify-3.3.0" = {
+      name = "crypto-browserify";
+      packageName = "crypto-browserify";
+      version = "3.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.3.0.tgz";
+        sha1 = "b9fc75bb4a0ed61dcf1cd5dae96eb30c9c3e506c";
+      };
+    };
+    "csextends-1.2.0" = {
+      name = "csextends";
+      packageName = "csextends";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/csextends/-/csextends-1.2.0.tgz";
+        sha512 = "S/8k1bDTJIwuGgQYmsRoE+8P+ohV32WhQ0l4zqrc0XDdxOhjQQD7/wTZwCzoZX53jSX3V/qwjT+OkPTxWQcmjg==";
+      };
+    };
+    "css-color-names-0.0.4" = {
+      name = "css-color-names";
+      packageName = "css-color-names";
+      version = "0.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/css-color-names/-/css-color-names-0.0.4.tgz";
+        sha1 = "808adc2e79cf84738069b646cb20ec27beb629e0";
+      };
+    };
+    "css-select-1.2.0" = {
+      name = "css-select";
+      packageName = "css-select";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz";
+        sha1 = "2b3a110539c5355f1cd8d314623e870b121ec858";
+      };
+    };
+    "css-selector-tokenizer-0.7.0" = {
+      name = "css-selector-tokenizer";
+      packageName = "css-selector-tokenizer";
+      version = "0.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/css-selector-tokenizer/-/css-selector-tokenizer-0.7.0.tgz";
+        sha1 = "e6988474ae8c953477bf5e7efecfceccd9cf4c86";
+      };
+    };
+    "css-what-2.1.0" = {
+      name = "css-what";
+      packageName = "css-what";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/css-what/-/css-what-2.1.0.tgz";
+        sha1 = "9467d032c38cfaefb9f2d79501253062f87fa1bd";
+      };
+    };
+    "cssesc-0.1.0" = {
+      name = "cssesc";
+      packageName = "cssesc";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cssesc/-/cssesc-0.1.0.tgz";
+        sha1 = "c814903e45623371a0477b40109aaafbeeaddbb4";
+      };
+    };
+    "cssfilter-0.0.10" = {
+      name = "cssfilter";
+      packageName = "cssfilter";
+      version = "0.0.10";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cssfilter/-/cssfilter-0.0.10.tgz";
+        sha1 = "c6d2672632a2e5c83e013e6864a42ce8defd20ae";
+      };
+    };
+    "cssnano-3.10.0" = {
+      name = "cssnano";
+      packageName = "cssnano";
+      version = "3.10.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cssnano/-/cssnano-3.10.0.tgz";
+        sha1 = "4f38f6cea2b9b17fa01490f23f1dc68ea65c1c38";
+      };
+    };
+    "csso-2.3.2" = {
+      name = "csso";
+      packageName = "csso";
+      version = "2.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/csso/-/csso-2.3.2.tgz";
+        sha1 = "ddd52c587033f49e94b71fc55569f252e8ff5f85";
+      };
+    };
+    "cssom-0.2.5" = {
+      name = "cssom";
+      packageName = "cssom";
+      version = "0.2.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cssom/-/cssom-0.2.5.tgz";
+        sha1 = "2682709b5902e7212df529116ff788cd5b254894";
+      };
+    };
+    "cssom-0.3.4" = {
+      name = "cssom";
+      packageName = "cssom";
+      version = "0.3.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cssom/-/cssom-0.3.4.tgz";
+        sha512 = "+7prCSORpXNeR4/fUP3rL+TzqtiFfhMvTd7uEqMdgPvLPt4+uzFUeufx5RHjGTACCargg/DiEt/moMQmvnfkog==";
+      };
+    };
+    "cssstyle-0.2.37" = {
+      name = "cssstyle";
+      packageName = "cssstyle";
+      version = "0.2.37";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cssstyle/-/cssstyle-0.2.37.tgz";
+        sha1 = "541097234cb2513c83ceed3acddc27ff27987d54";
+      };
+    };
+    "cycle-1.0.3" = {
+      name = "cycle";
+      packageName = "cycle";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cycle/-/cycle-1.0.3.tgz";
+        sha1 = "21e80b2be8580f98b468f379430662b046c34ad2";
+      };
+    };
+    "cyclist-0.2.2" = {
+      name = "cyclist";
+      packageName = "cyclist";
+      version = "0.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cyclist/-/cyclist-0.2.2.tgz";
+        sha1 = "1b33792e11e914a2fd6d6ed6447464444e5fa640";
+      };
+    };
+    "d-1.0.0" = {
+      name = "d";
+      packageName = "d";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/d/-/d-1.0.0.tgz";
+        sha1 = "754bb5bfe55451da69a58b94d45f4c5b0462d58f";
+      };
+    };
+    "d3-3.5.17" = {
+      name = "d3";
+      packageName = "d3";
+      version = "3.5.17";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/d3/-/d3-3.5.17.tgz";
+        sha1 = "bc46748004378b21a360c9fc7cf5231790762fb8";
+      };
+    };
+    "dagre-d3-renderer-0.4.26" = {
+      name = "dagre-d3-renderer";
+      packageName = "dagre-d3-renderer";
+      version = "0.4.26";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dagre-d3-renderer/-/dagre-d3-renderer-0.4.26.tgz";
+        sha512 = "vOWj1uA4/APTrfDyfHaH/xpfXhPh9rszW+HOaEwPCeA6Afl06Lobfh7OpESuVMQW2QGuY4UQ7pte/p0WhdDs7w==";
+      };
+    };
+    "dagre-layout-0.8.8" = {
+      name = "dagre-layout";
+      packageName = "dagre-layout";
+      version = "0.8.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dagre-layout/-/dagre-layout-0.8.8.tgz";
+        sha512 = "ZNV15T9za7X+fV8Z07IZquUKugCxm5owoiPPxfEx6OJRD331nkiIaF3vSt0JEY5FkrY0KfRQxcpQ3SpXB7pLPQ==";
+      };
+    };
+    "dashdash-1.14.1" = {
+      name = "dashdash";
+      packageName = "dashdash";
+      version = "1.14.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz";
+        sha1 = "853cfa0f7cbe2fed5de20326b8dd581035f6e2f0";
+      };
+    };
+    "dasherize-2.0.0" = {
+      name = "dasherize";
+      packageName = "dasherize";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dasherize/-/dasherize-2.0.0.tgz";
+        sha1 = "6d809c9cd0cf7bb8952d80fc84fa13d47ddb1308";
+      };
+    };
+    "date-now-0.1.4" = {
+      name = "date-now";
+      packageName = "date-now";
+      version = "0.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz";
+        sha1 = "eaf439fd4d4848ad74e5cc7dbef200672b9e345b";
+      };
+    };
+    "dateformat-2.2.0" = {
+      name = "dateformat";
+      packageName = "dateformat";
+      version = "2.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dateformat/-/dateformat-2.2.0.tgz";
+        sha1 = "4065e2013cf9fb916ddfd82efb506ad4c6769062";
+      };
+    };
+    "debug-2.6.9" = {
+      name = "debug";
+      packageName = "debug";
+      version = "2.6.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz";
+        sha512 = "bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==";
+      };
+    };
+    "debug-3.1.0" = {
+      name = "debug";
+      packageName = "debug";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz";
+        sha512 = "OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==";
+      };
+    };
+    "debug-log-1.0.1" = {
+      name = "debug-log";
+      packageName = "debug-log";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/debug-log/-/debug-log-1.0.1.tgz";
+        sha1 = "2307632d4c04382b8df8a32f70b895046d52745f";
+      };
+    };
+    "decamelize-1.2.0" = {
+      name = "decamelize";
+      packageName = "decamelize";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz";
+        sha1 = "f6534d15148269b20352e7bee26f501f9a191290";
+      };
+    };
+    "decode-uri-component-0.2.0" = {
+      name = "decode-uri-component";
+      packageName = "decode-uri-component";
+      version = "0.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz";
+        sha1 = "eb3913333458775cb84cd1a1fae062106bb87545";
+      };
+    };
+    "deep-equal-1.0.1" = {
+      name = "deep-equal";
+      packageName = "deep-equal";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz";
+        sha1 = "f5d260292b660e084eff4cdbc9f08ad3247448b5";
+      };
+    };
+    "deep-extend-0.6.0" = {
+      name = "deep-extend";
+      packageName = "deep-extend";
+      version = "0.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz";
+        sha512 = "LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==";
+      };
+    };
+    "deep-is-0.1.3" = {
+      name = "deep-is";
+      packageName = "deep-is";
+      version = "0.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz";
+        sha1 = "b369d6fb5dbc13eecf524f91b070feedc357cf34";
+      };
+    };
+    "defaults-1.0.3" = {
+      name = "defaults";
+      packageName = "defaults";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz";
+        sha1 = "c656051e9817d9ff08ed881477f3fe4019f3ef7d";
+      };
+    };
+    "define-properties-1.1.2" = {
+      name = "define-properties";
+      packageName = "define-properties";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/define-properties/-/define-properties-1.1.2.tgz";
+        sha1 = "83a73f2fea569898fb737193c8f873caf6d45c94";
+      };
+    };
+    "define-property-0.2.5" = {
+      name = "define-property";
+      packageName = "define-property";
+      version = "0.2.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz";
+        sha1 = "c35b1ef918ec3c990f9a5bc57be04aacec5c8116";
+      };
+    };
+    "define-property-1.0.0" = {
+      name = "define-property";
+      packageName = "define-property";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz";
+        sha1 = "769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6";
+      };
+    };
+    "define-property-2.0.2" = {
+      name = "define-property";
+      packageName = "define-property";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz";
+        sha512 = "jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==";
+      };
+    };
+    "defined-1.0.0" = {
+      name = "defined";
+      packageName = "defined";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz";
+        sha1 = "c98d9bcef75674188e110969151199e39b1fa693";
+      };
+    };
+    "deglob-2.1.1" = {
+      name = "deglob";
+      packageName = "deglob";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/deglob/-/deglob-2.1.1.tgz";
+        sha512 = "2kjwuGGonL7gWE1XU4Fv79+vVzpoQCl0V+boMwWtOQJV2AGDabCwez++nB1Nli/8BabAfZQ/UuHPlp6AymKdWw==";
+      };
+    };
+    "del-2.2.2" = {
+      name = "del";
+      packageName = "del";
+      version = "2.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/del/-/del-2.2.2.tgz";
+        sha1 = "c12c981d067846c84bcaf862cff930d907ffd1a8";
+      };
+    };
+    "delayed-stream-1.0.0" = {
+      name = "delayed-stream";
+      packageName = "delayed-stream";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz";
+        sha1 = "df3ae199acadfb7d440aaae0b29e2272b24ec619";
+      };
+    };
+    "delegate-3.2.0" = {
+      name = "delegate";
+      packageName = "delegate";
+      version = "3.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/delegate/-/delegate-3.2.0.tgz";
+        sha512 = "IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw==";
+      };
+    };
+    "delegates-1.0.0" = {
+      name = "delegates";
+      packageName = "delegates";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz";
+        sha1 = "84c6e159b81904fdca59a0ef44cd870d31250f9a";
+      };
+    };
+    "depd-1.1.1" = {
+      name = "depd";
+      packageName = "depd";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/depd/-/depd-1.1.1.tgz";
+        sha1 = "5783b4e1c459f06fa5ca27f991f3d06e7a310359";
+      };
+    };
+    "depd-1.1.2" = {
+      name = "depd";
+      packageName = "depd";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz";
+        sha1 = "9bcd52e14c097763e749b274c4346ed2e560b5a9";
+      };
+    };
+    "deprecated-0.0.1" = {
+      name = "deprecated";
+      packageName = "deprecated";
+      version = "0.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/deprecated/-/deprecated-0.0.1.tgz";
+        sha1 = "f9c9af5464afa1e7a971458a8bdef2aa94d5bb19";
+      };
+    };
+    "destroy-1.0.4" = {
+      name = "destroy";
+      packageName = "destroy";
+      version = "1.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz";
+        sha1 = "978857442c44749e4206613e37946205826abd80";
+      };
+    };
+    "detect-file-0.1.0" = {
+      name = "detect-file";
+      packageName = "detect-file";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/detect-file/-/detect-file-0.1.0.tgz";
+        sha1 = "4935dedfd9488648e006b0129566e9386711ea63";
+      };
+    };
+    "detect-file-1.0.0" = {
+      name = "detect-file";
+      packageName = "detect-file";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz";
+        sha1 = "f0d66d03672a825cb1b73bdb3fe62310c8e552b7";
+      };
+    };
+    "detect-indent-4.0.0" = {
+      name = "detect-indent";
+      packageName = "detect-indent";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz";
+        sha1 = "f76d064352cdf43a1cb6ce619c4ee3a9475de208";
+      };
+    };
+    "detect-libc-1.0.3" = {
+      name = "detect-libc";
+      packageName = "detect-libc";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz";
+        sha1 = "fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b";
+      };
+    };
+    "dir-glob-2.0.0" = {
+      name = "dir-glob";
+      packageName = "dir-glob";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dir-glob/-/dir-glob-2.0.0.tgz";
+        sha512 = "37qirFDz8cA5fimp9feo43fSuRo2gHwaIn6dXL8Ber1dGwUosDrGZeCCXq57WnIqE4aQ+u3eQZzsk1yOzhdwag==";
+      };
+    };
+    "dns-lookup-all-1.0.2" = {
+      name = "dns-lookup-all";
+      packageName = "dns-lookup-all";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dns-lookup-all/-/dns-lookup-all-1.0.2.tgz";
+        sha1 = "4d8b2b1af69c83a7b262eb5de92485b7b3a215eb";
+      };
+    };
+    "dns-prefetch-control-0.1.0" = {
+      name = "dns-prefetch-control";
+      packageName = "dns-prefetch-control";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dns-prefetch-control/-/dns-prefetch-control-0.1.0.tgz";
+        sha1 = "60ddb457774e178f1f9415f0cabb0e85b0b300b2";
+      };
+    };
+    "doctrine-1.5.0" = {
+      name = "doctrine";
+      packageName = "doctrine";
+      version = "1.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/doctrine/-/doctrine-1.5.0.tgz";
+        sha1 = "379dce730f6166f76cefa4e6707a159b02c5a6fa";
+      };
+    };
+    "doctrine-2.1.0" = {
+      name = "doctrine";
+      packageName = "doctrine";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz";
+        sha512 = "35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==";
+      };
+    };
+    "dom-converter-0.1.4" = {
+      name = "dom-converter";
+      packageName = "dom-converter";
+      version = "0.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dom-converter/-/dom-converter-0.1.4.tgz";
+        sha1 = "a45ef5727b890c9bffe6d7c876e7b19cb0e17f3b";
+      };
+    };
+    "dom-serializer-0.1.0" = {
+      name = "dom-serializer";
+      packageName = "dom-serializer";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.0.tgz";
+        sha1 = "073c697546ce0780ce23be4a28e293e40bc30c82";
+      };
+    };
+    "domain-browser-1.2.0" = {
+      name = "domain-browser";
+      packageName = "domain-browser";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz";
+        sha512 = "jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==";
+      };
+    };
+    "domelementtype-1.1.3" = {
+      name = "domelementtype";
+      packageName = "domelementtype";
+      version = "1.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/domelementtype/-/domelementtype-1.1.3.tgz";
+        sha1 = "bd28773e2642881aec51544924299c5cd822185b";
+      };
+    };
+    "domelementtype-1.3.0" = {
+      name = "domelementtype";
+      packageName = "domelementtype";
+      version = "1.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.0.tgz";
+        sha1 = "b17aed82e8ab59e52dd9c19b1756e0fc187204c2";
+      };
+    };
+    "domhandler-2.1.0" = {
+      name = "domhandler";
+      packageName = "domhandler";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/domhandler/-/domhandler-2.1.0.tgz";
+        sha1 = "d2646f5e57f6c3bab11cf6cb05d3c0acf7412594";
+      };
+    };
+    "domhandler-2.3.0" = {
+      name = "domhandler";
+      packageName = "domhandler";
+      version = "2.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/domhandler/-/domhandler-2.3.0.tgz";
+        sha1 = "2de59a0822d5027fabff6f032c2b25a2a8abe738";
+      };
+    };
+    "domhandler-2.4.2" = {
+      name = "domhandler";
+      packageName = "domhandler";
+      version = "2.4.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz";
+        sha512 = "JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==";
+      };
+    };
+    "domutils-1.1.6" = {
+      name = "domutils";
+      packageName = "domutils";
+      version = "1.1.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/domutils/-/domutils-1.1.6.tgz";
+        sha1 = "bddc3de099b9a2efacc51c623f28f416ecc57485";
+      };
+    };
+    "domutils-1.5.1" = {
+      name = "domutils";
+      packageName = "domutils";
+      version = "1.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz";
+        sha1 = "dcd8488a26f563d61079e48c9f7b7e32373682cf";
+      };
+    };
+    "domutils-1.7.0" = {
+      name = "domutils";
+      packageName = "domutils";
+      version = "1.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz";
+        sha512 = "Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==";
+      };
+    };
+    "dont-sniff-mimetype-1.0.0" = {
+      name = "dont-sniff-mimetype";
+      packageName = "dont-sniff-mimetype";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dont-sniff-mimetype/-/dont-sniff-mimetype-1.0.0.tgz";
+        sha1 = "5932890dc9f4e2f19e5eb02a20026e5e5efc8f58";
+      };
+    };
+    "dottie-1.1.1" = {
+      name = "dottie";
+      packageName = "dottie";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dottie/-/dottie-1.1.1.tgz";
+        sha1 = "45c2a3f48bd6528eeed267a69a848eaaca6faa6a";
+      };
+    };
+    "dtrace-provider-0.8.7" = {
+      name = "dtrace-provider";
+      packageName = "dtrace-provider";
+      version = "0.8.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dtrace-provider/-/dtrace-provider-0.8.7.tgz";
+        sha1 = "dc939b4d3e0620cfe0c1cd803d0d2d7ed04ffd04";
+      };
+    };
+    "duplexer-0.1.1" = {
+      name = "duplexer";
+      packageName = "duplexer";
+      version = "0.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz";
+        sha1 = "ace6ff808c1ce66b57d1ebf97977acb02334cfc1";
+      };
+    };
+    "duplexer2-0.0.2" = {
+      name = "duplexer2";
+      packageName = "duplexer2";
+      version = "0.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/duplexer2/-/duplexer2-0.0.2.tgz";
+        sha1 = "c614dcf67e2fb14995a91711e5a617e8a60a31db";
+      };
+    };
+    "duplexify-3.6.0" = {
+      name = "duplexify";
+      packageName = "duplexify";
+      version = "3.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/duplexify/-/duplexify-3.6.0.tgz";
+        sha512 = "fO3Di4tBKJpYTFHAxTU00BcfWMY9w24r/x21a6rZRbsD/ToUgGxsMbiGRmB7uVAXeGKXD9MwiLZa5E97EVgIRQ==";
+      };
+    };
+    "eachr-2.0.4" = {
+      name = "eachr";
+      packageName = "eachr";
+      version = "2.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eachr/-/eachr-2.0.4.tgz";
+        sha1 = "466f7caa10708f610509e32c807aafe57fc122bf";
+      };
+    };
+    "ecc-jsbn-0.1.2" = {
+      name = "ecc-jsbn";
+      packageName = "ecc-jsbn";
+      version = "0.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz";
+        sha1 = "3a83a904e54353287874c564b7549386849a98c9";
+      };
+    };
+    "editions-1.3.4" = {
+      name = "editions";
+      packageName = "editions";
+      version = "1.3.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/editions/-/editions-1.3.4.tgz";
+        sha512 = "gzao+mxnYDzIysXKMQi/+M1mjy/rjestjg6OPoYTtI+3Izp23oiGZitsl9lPDPiTGXbcSIk1iJWhliSaglxnUg==";
+      };
+    };
+    "editorconfig-0.13.3" = {
+      name = "editorconfig";
+      packageName = "editorconfig";
+      version = "0.13.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/editorconfig/-/editorconfig-0.13.3.tgz";
+        sha512 = "WkjsUNVCu+ITKDj73QDvi0trvpdDWdkDyHybDGSXPfekLCqwmpD7CP7iPbvBgosNuLcI96XTDwNa75JyFl7tEQ==";
+      };
+    };
+    "ee-first-1.1.1" = {
+      name = "ee-first";
+      packageName = "ee-first";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz";
+        sha1 = "590c61156b0ae2f4f0255732a158b266bc56b21d";
+      };
+    };
+    "ejs-2.6.1" = {
+      name = "ejs";
+      packageName = "ejs";
+      version = "2.6.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ejs/-/ejs-2.6.1.tgz";
+        sha512 = "0xy4A/twfrRCnkhfk8ErDi5DqdAsAqeGxht4xkCUrsvhhbQNs7E+4jV0CN7+NKIY0aHE72+XvqtBIXzD31ZbXQ==";
+      };
+    };
+    "electron-to-chromium-1.3.55" = {
+      name = "electron-to-chromium";
+      packageName = "electron-to-chromium";
+      version = "1.3.55";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.55.tgz";
+        sha1 = "f150e10b20b77d9d41afcca312efe0c3b1a7fdce";
+      };
+    };
+    "emoji-regex-6.1.3" = {
+      name = "emoji-regex";
+      packageName = "emoji-regex";
+      version = "6.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/emoji-regex/-/emoji-regex-6.1.3.tgz";
+        sha1 = "ec79a3969b02d2ecf2b72254279bf99bc7a83932";
+      };
+    };
+    "emojis-list-2.1.0" = {
+      name = "emojis-list";
+      packageName = "emojis-list";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz";
+        sha1 = "4daa4d9db00f9819880c79fa457ae5b09a1fd389";
+      };
+    };
+    "encodeurl-1.0.2" = {
+      name = "encodeurl";
+      packageName = "encodeurl";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz";
+        sha1 = "ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59";
+      };
+    };
+    "end-of-stream-0.1.5" = {
+      name = "end-of-stream";
+      packageName = "end-of-stream";
+      version = "0.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/end-of-stream/-/end-of-stream-0.1.5.tgz";
+        sha1 = "8e177206c3c80837d85632e8b9359dfe8b2f6eaf";
+      };
+    };
+    "end-of-stream-1.4.1" = {
+      name = "end-of-stream";
+      packageName = "end-of-stream";
+      version = "1.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz";
+        sha512 = "1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==";
+      };
+    };
+    "engine.io-3.1.5" = {
+      name = "engine.io";
+      packageName = "engine.io";
+      version = "3.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/engine.io/-/engine.io-3.1.5.tgz";
+        sha512 = "D06ivJkYxyRrcEe0bTpNnBQNgP9d3xog+qZlLbui8EsMr/DouQpf5o9FzJnWYHEYE0YsFHllUv2R1dkgYZXHcA==";
+      };
+    };
+    "engine.io-client-3.1.6" = {
+      name = "engine.io-client";
+      packageName = "engine.io-client";
+      version = "3.1.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.1.6.tgz";
+        sha512 = "hnuHsFluXnsKOndS4Hv6SvUrgdYx1pk2NqfaDMW+GWdgfU3+/V25Cj7I8a0x92idSpa5PIhJRKxPvp9mnoLsfg==";
+      };
+    };
+    "engine.io-parser-2.1.2" = {
+      name = "engine.io-parser";
+      packageName = "engine.io-parser";
+      version = "2.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.1.2.tgz";
+        sha512 = "dInLFzr80RijZ1rGpx1+56/uFoH7/7InhH3kZt+Ms6hT8tNx3NGW/WNSA/f8As1WkOfkuyb3tnRyuXGxusclMw==";
+      };
+    };
+    "enhanced-resolve-0.9.1" = {
+      name = "enhanced-resolve";
+      packageName = "enhanced-resolve";
+      version = "0.9.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-0.9.1.tgz";
+        sha1 = "4d6e689b3725f86090927ccc86cd9f1635b89e2e";
+      };
+    };
+    "entities-1.0.0" = {
+      name = "entities";
+      packageName = "entities";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/entities/-/entities-1.0.0.tgz";
+        sha1 = "b2987aa3821347fcde642b24fdfc9e4fb712bf26";
+      };
+    };
+    "entities-1.1.1" = {
+      name = "entities";
+      packageName = "entities";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/entities/-/entities-1.1.1.tgz";
+        sha1 = "6e5c2d0a5621b5dadaecef80b90edfb5cd7772f0";
+      };
+    };
+    "errno-0.1.7" = {
+      name = "errno";
+      packageName = "errno";
+      version = "0.1.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz";
+        sha512 = "MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==";
+      };
+    };
+    "error-ex-1.3.2" = {
+      name = "error-ex";
+      packageName = "error-ex";
+      version = "1.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz";
+        sha512 = "7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==";
+      };
+    };
+    "es-abstract-1.12.0" = {
+      name = "es-abstract";
+      packageName = "es-abstract";
+      version = "1.12.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/es-abstract/-/es-abstract-1.12.0.tgz";
+        sha512 = "C8Fx/0jFmV5IPoMOFPA9P9G5NtqW+4cOPit3MIuvR2t7Ag2K15EJTpxnHAYTzL+aYQJIESYeXZmDBfOBE1HcpA==";
+      };
+    };
+    "es-to-primitive-1.1.1" = {
+      name = "es-to-primitive";
+      packageName = "es-to-primitive";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.1.1.tgz";
+        sha1 = "45355248a88979034b6792e19bb81f2b7975dd0d";
+      };
+    };
+    "es5-ext-0.10.45" = {
+      name = "es5-ext";
+      packageName = "es5-ext";
+      version = "0.10.45";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.45.tgz";
+        sha512 = "FkfM6Vxxfmztilbxxz5UKSD4ICMf5tSpRFtDNtkAhOxZ0EKtX6qwmXNyH/sFyIbX2P/nU5AMiA9jilWsUGJzCQ==";
+      };
+    };
+    "es6-error-2.1.1" = {
+      name = "es6-error";
+      packageName = "es6-error";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/es6-error/-/es6-error-2.1.1.tgz";
+        sha1 = "91384301ec5ed1c9a7247d1128247216f03547cd";
+      };
+    };
+    "es6-iterator-2.0.3" = {
+      name = "es6-iterator";
+      packageName = "es6-iterator";
+      version = "2.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz";
+        sha1 = "a7de889141a05a94b0854403b2d0a0fbfa98f3b7";
+      };
+    };
+    "es6-map-0.1.5" = {
+      name = "es6-map";
+      packageName = "es6-map";
+      version = "0.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/es6-map/-/es6-map-0.1.5.tgz";
+        sha1 = "9136e0503dcc06a301690f0bb14ff4e364e949f0";
+      };
+    };
+    "es6-promise-4.2.4" = {
+      name = "es6-promise";
+      packageName = "es6-promise";
+      version = "4.2.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.4.tgz";
+        sha512 = "/NdNZVJg+uZgtm9eS3O6lrOLYmQag2DjdEXuPaHlZ6RuVqgqaVZfgYCepEIKsLqwdQArOPtC3XzRLqGGfT8KQQ==";
+      };
+    };
+    "es6-set-0.1.5" = {
+      name = "es6-set";
+      packageName = "es6-set";
+      version = "0.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/es6-set/-/es6-set-0.1.5.tgz";
+        sha1 = "d2b3ec5d4d800ced818db538d28974db0a73ccb1";
+      };
+    };
+    "es6-symbol-3.1.1" = {
+      name = "es6-symbol";
+      packageName = "es6-symbol";
+      version = "3.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz";
+        sha1 = "bf00ef4fdab6ba1b46ecb7b629b4c7ed5715cc77";
+      };
+    };
+    "es6-weak-map-2.0.2" = {
+      name = "es6-weak-map";
+      packageName = "es6-weak-map";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.2.tgz";
+        sha1 = "5e3ab32251ffd1538a1f8e5ffa1357772f92d96f";
+      };
+    };
+    "escape-html-1.0.3" = {
+      name = "escape-html";
+      packageName = "escape-html";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz";
+        sha1 = "0258eae4d3d0c0974de1c169188ef0051d1d1988";
+      };
+    };
+    "escape-string-regexp-1.0.5" = {
+      name = "escape-string-regexp";
+      packageName = "escape-string-regexp";
+      version = "1.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz";
+        sha1 = "1b61c0562190a8dff6ae3bb2cf0200ca130b86d4";
+      };
+    };
+    "escodegen-1.11.0" = {
+      name = "escodegen";
+      packageName = "escodegen";
+      version = "1.11.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/escodegen/-/escodegen-1.11.0.tgz";
+        sha512 = "IeMV45ReixHS53K/OmfKAIztN/igDHzTJUhZM3k1jMhIZWjk45SMwAtBsEXiJp3vSPmTcu6CXn7mDvFHRN66fw==";
+      };
+    };
+    "escope-3.6.0" = {
+      name = "escope";
+      packageName = "escope";
+      version = "3.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/escope/-/escope-3.6.0.tgz";
+        sha1 = "e01975e812781a163a6dadfdd80398dc64c889c3";
+      };
+    };
+    "eslint-3.18.0" = {
+      name = "eslint";
+      packageName = "eslint";
+      version = "3.18.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eslint/-/eslint-3.18.0.tgz";
+        sha1 = "647e985c4ae71502d20ac62c109f66d5104c8a4b";
+      };
+    };
+    "eslint-config-standard-7.1.0" = {
+      name = "eslint-config-standard";
+      packageName = "eslint-config-standard";
+      version = "7.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-7.1.0.tgz";
+        sha1 = "47e769ea0739f5b2d5693b1a501c21c9650fafcf";
+      };
+    };
+    "eslint-config-standard-jsx-3.3.0" = {
+      name = "eslint-config-standard-jsx";
+      packageName = "eslint-config-standard-jsx";
+      version = "3.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eslint-config-standard-jsx/-/eslint-config-standard-jsx-3.3.0.tgz";
+        sha1 = "cab0801a15a360bf63facb97ab22fbdd88d8a5e0";
+      };
+    };
+    "eslint-plugin-promise-3.4.2" = {
+      name = "eslint-plugin-promise";
+      packageName = "eslint-plugin-promise";
+      version = "3.4.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-3.4.2.tgz";
+        sha1 = "1be2793eafe2d18b5b123b8136c269f804fe7122";
+      };
+    };
+    "eslint-plugin-react-6.9.0" = {
+      name = "eslint-plugin-react";
+      packageName = "eslint-plugin-react";
+      version = "6.9.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-6.9.0.tgz";
+        sha1 = "54c2e9906b76f9d10142030bdc34e9d6840a0bb2";
+      };
+    };
+    "eslint-plugin-standard-2.0.1" = {
+      name = "eslint-plugin-standard";
+      packageName = "eslint-plugin-standard";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eslint-plugin-standard/-/eslint-plugin-standard-2.0.1.tgz";
+        sha1 = "3589699ff9c917f2c25f76a916687f641c369ff3";
+      };
+    };
+    "espree-3.5.4" = {
+      name = "espree";
+      packageName = "espree";
+      version = "3.5.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/espree/-/espree-3.5.4.tgz";
+        sha512 = "yAcIQxtmMiB/jL32dzEp2enBeidsB7xWPLNiw3IIkpVds1P+h7qF9YwJq1yUNzp2OKXgAprs4F61ih66UsoD1A==";
+      };
+    };
+    "esprima-2.7.3" = {
+      name = "esprima";
+      packageName = "esprima";
+      version = "2.7.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz";
+        sha1 = "96e3b70d5779f6ad49cd032673d1c312767ba581";
+      };
+    };
+    "esprima-3.1.3" = {
+      name = "esprima";
+      packageName = "esprima";
+      version = "3.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz";
+        sha1 = "fdca51cee6133895e3c88d535ce49dbff62a4633";
+      };
+    };
+    "esprima-4.0.1" = {
+      name = "esprima";
+      packageName = "esprima";
+      version = "4.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz";
+        sha512 = "eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==";
+      };
+    };
+    "esquery-1.0.1" = {
+      name = "esquery";
+      packageName = "esquery";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/esquery/-/esquery-1.0.1.tgz";
+        sha512 = "SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA==";
+      };
+    };
+    "esrecurse-4.2.1" = {
+      name = "esrecurse";
+      packageName = "esrecurse";
+      version = "4.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz";
+        sha512 = "64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==";
+      };
+    };
+    "estraverse-4.2.0" = {
+      name = "estraverse";
+      packageName = "estraverse";
+      version = "4.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz";
+        sha1 = "0dee3fed31fcd469618ce7342099fc1afa0bdb13";
+      };
+    };
+    "estree-walker-0.2.1" = {
+      name = "estree-walker";
+      packageName = "estree-walker";
+      version = "0.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/estree-walker/-/estree-walker-0.2.1.tgz";
+        sha1 = "bdafe8095383d8414d5dc2ecf4c9173b6db9412e";
+      };
+    };
+    "esutils-2.0.2" = {
+      name = "esutils";
+      packageName = "esutils";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz";
+        sha1 = "0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b";
+      };
+    };
+    "etag-1.8.1" = {
+      name = "etag";
+      packageName = "etag";
+      version = "1.8.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz";
+        sha1 = "41ae2eeb65efa62268aebfea83ac7d79299b0887";
+      };
+    };
+    "eve-git://github.com/adobe-webplatform/eve.git#eef80ed" = {
+      name = "eve";
+      packageName = "eve";
+      version = "0.4.1";
+      src = fetchgit {
+        url = "git://github.com/adobe-webplatform/eve.git";
+        rev = "eef80ed8d188423c2272746fb8ae5cc8dad84cb1";
+        sha256 = "2b86ece1177813f6ee1eb6b0cc0e85cfdaca208eb46aa911dd802263e2d9b003";
+      };
+    };
+    "eve-raphael-0.5.0" = {
+      name = "eve-raphael";
+      packageName = "eve-raphael";
+      version = "0.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eve-raphael/-/eve-raphael-0.5.0.tgz";
+        sha1 = "17c754b792beef3fa6684d79cf5a47c63c4cda30";
+      };
+    };
+    "event-emitter-0.3.5" = {
+      name = "event-emitter";
+      packageName = "event-emitter";
+      version = "0.3.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz";
+        sha1 = "df8c69eef1647923c7157b9ce83840610b02cc39";
+      };
+    };
+    "eventemitter2-0.4.14" = {
+      name = "eventemitter2";
+      packageName = "eventemitter2";
+      version = "0.4.14";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.14.tgz";
+        sha1 = "8f61b75cde012b2e9eb284d4545583b5643b61ab";
+      };
+    };
+    "events-1.1.1" = {
+      name = "events";
+      packageName = "events";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/events/-/events-1.1.1.tgz";
+        sha1 = "9ebdb7635ad099c70dcc4c2a1f5004288e8bd924";
+      };
+    };
+    "execa-0.7.0" = {
+      name = "execa";
+      packageName = "execa";
+      version = "0.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz";
+        sha1 = "944becd34cc41ee32a63a9faf27ad5a65fc59777";
+      };
+    };
+    "exit-0.1.2" = {
+      name = "exit";
+      packageName = "exit";
+      version = "0.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz";
+        sha1 = "0632638f8d877cc82107d30a0fff1a17cba1cd0c";
+      };
+    };
+    "exit-hook-1.1.1" = {
+      name = "exit-hook";
+      packageName = "exit-hook";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/exit-hook/-/exit-hook-1.1.1.tgz";
+        sha1 = "f05ca233b48c05d54fff07765df8507e95c02ff8";
+      };
+    };
+    "expand-brackets-0.1.5" = {
+      name = "expand-brackets";
+      packageName = "expand-brackets";
+      version = "0.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz";
+        sha1 = "df07284e342a807cd733ac5af72411e581d1177b";
+      };
+    };
+    "expand-brackets-2.1.4" = {
+      name = "expand-brackets";
+      packageName = "expand-brackets";
+      version = "2.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz";
+        sha1 = "b77735e315ce30f6b6eff0f83b04151a22449622";
+      };
+    };
+    "expand-range-1.8.2" = {
+      name = "expand-range";
+      packageName = "expand-range";
+      version = "1.8.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz";
+        sha1 = "a299effd335fe2721ebae8e257ec79644fc85337";
+      };
+    };
+    "expand-tilde-1.2.2" = {
+      name = "expand-tilde";
+      packageName = "expand-tilde";
+      version = "1.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/expand-tilde/-/expand-tilde-1.2.2.tgz";
+        sha1 = "0b81eba897e5a3d31d1c3d102f8f01441e559449";
+      };
+    };
+    "expand-tilde-2.0.2" = {
+      name = "expand-tilde";
+      packageName = "expand-tilde";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz";
+        sha1 = "97e801aa052df02454de46b02bf621642cdc8502";
+      };
+    };
+    "expect-ct-0.1.1" = {
+      name = "expect-ct";
+      packageName = "expect-ct";
+      version = "0.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/expect-ct/-/expect-ct-0.1.1.tgz";
+        sha512 = "ngXzTfoRGG7fYens3/RMb6yYoVLvLMfmsSllP/mZPxNHgFq41TmPSLF/nLY7fwoclI2vElvAmILFWGUYqdjfCg==";
+      };
+    };
+    "extend-1.2.1" = {
+      name = "extend";
+      packageName = "extend";
+      version = "1.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/extend/-/extend-1.2.1.tgz";
+        sha1 = "a0f5fd6cfc83a5fe49ef698d60ec8a624dd4576c";
+      };
+    };
+    "extend-3.0.0" = {
+      name = "extend";
+      packageName = "extend";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/extend/-/extend-3.0.0.tgz";
+        sha1 = "5a474353b9f3353ddd8176dfd37b91c83a46f1d4";
+      };
+    };
+    "extend-3.0.2" = {
+      name = "extend";
+      packageName = "extend";
+      version = "3.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz";
+        sha512 = "fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==";
+      };
+    };
+    "extend-shallow-2.0.1" = {
+      name = "extend-shallow";
+      packageName = "extend-shallow";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz";
+        sha1 = "51af7d614ad9a9f610ea1bafbb989d6b1c56890f";
+      };
+    };
+    "extend-shallow-3.0.2" = {
+      name = "extend-shallow";
+      packageName = "extend-shallow";
+      version = "3.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz";
+        sha1 = "26a71aaf073b39fb2127172746131c2704028db8";
+      };
+    };
+    "extendr-2.1.0" = {
+      name = "extendr";
+      packageName = "extendr";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/extendr/-/extendr-2.1.0.tgz";
+        sha1 = "301aa0bbea565f4d2dc8f570f2a22611a8527b56";
+      };
+    };
+    "extglob-0.3.2" = {
+      name = "extglob";
+      packageName = "extglob";
+      version = "0.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz";
+        sha1 = "2e18ff3d2f49ab2765cec9023f011daa8d8349a1";
+      };
+    };
+    "extglob-2.0.4" = {
+      name = "extglob";
+      packageName = "extglob";
+      version = "2.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz";
+        sha512 = "Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==";
+      };
+    };
+    "extract-opts-2.2.0" = {
+      name = "extract-opts";
+      packageName = "extract-opts";
+      version = "2.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/extract-opts/-/extract-opts-2.2.0.tgz";
+        sha1 = "1fa28eba7352c6db480f885ceb71a46810be6d7d";
+      };
+    };
+    "extract-zip-1.6.7" = {
+      name = "extract-zip";
+      packageName = "extract-zip";
+      version = "1.6.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/extract-zip/-/extract-zip-1.6.7.tgz";
+        sha1 = "a840b4b8af6403264c8db57f4f1a74333ef81fe9";
+      };
+    };
+    "extsprintf-1.2.0" = {
+      name = "extsprintf";
+      packageName = "extsprintf";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/extsprintf/-/extsprintf-1.2.0.tgz";
+        sha1 = "5ad946c22f5b32ba7f8cd7426711c6e8a3fc2529";
+      };
+    };
+    "extsprintf-1.3.0" = {
+      name = "extsprintf";
+      packageName = "extsprintf";
+      version = "1.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz";
+        sha1 = "96918440e3041a7a414f8c52e3c574eb3c3e1e05";
+      };
+    };
+    "eyes-0.1.8" = {
+      name = "eyes";
+      packageName = "eyes";
+      version = "0.1.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eyes/-/eyes-0.1.8.tgz";
+        sha1 = "62cf120234c683785d902348a800ef3e0cc20bc0";
+      };
+    };
+    "fancy-log-1.3.2" = {
+      name = "fancy-log";
+      packageName = "fancy-log";
+      version = "1.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.2.tgz";
+        sha1 = "f41125e3d84f2e7d89a43d06d958c8f78be16be1";
+      };
+    };
+    "fast-deep-equal-1.1.0" = {
+      name = "fast-deep-equal";
+      packageName = "fast-deep-equal";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz";
+        sha1 = "c053477817c86b51daa853c81e059b733d023614";
+      };
+    };
+    "fast-deep-equal-2.0.1" = {
+      name = "fast-deep-equal";
+      packageName = "fast-deep-equal";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz";
+        sha1 = "7b05218ddf9667bf7f370bf7fdb2cb15fdd0aa49";
+      };
+    };
+    "fast-json-stable-stringify-2.0.0" = {
+      name = "fast-json-stable-stringify";
+      packageName = "fast-json-stable-stringify";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz";
+        sha1 = "d5142c0caee6b1189f87d3a76111064f86c8bbf2";
+      };
+    };
+    "fast-levenshtein-2.0.6" = {
+      name = "fast-levenshtein";
+      packageName = "fast-levenshtein";
+      version = "2.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz";
+        sha1 = "3d8a5c66883a16a30ca8643e851f19baa7797917";
+      };
+    };
+    "fastparse-1.1.1" = {
+      name = "fastparse";
+      packageName = "fastparse";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fastparse/-/fastparse-1.1.1.tgz";
+        sha1 = "d1e2643b38a94d7583b479060e6c4affc94071f8";
+      };
+    };
+    "fd-slicer-1.0.1" = {
+      name = "fd-slicer";
+      packageName = "fd-slicer";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.0.1.tgz";
+        sha1 = "8b5bcbd9ec327c5041bf9ab023fd6750f1177e65";
+      };
+    };
+    "figures-1.7.0" = {
+      name = "figures";
+      packageName = "figures";
+      version = "1.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz";
+        sha1 = "cbe1e3affcf1cd44b80cadfed28dc793a9701d2e";
+      };
+    };
+    "file-entry-cache-2.0.0" = {
+      name = "file-entry-cache";
+      packageName = "file-entry-cache";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-2.0.0.tgz";
+        sha1 = "c392990c3e684783d838b8c84a45d8a048458361";
+      };
+    };
+    "filename-regex-2.0.1" = {
+      name = "filename-regex";
+      packageName = "filename-regex";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz";
+        sha1 = "c1c4b9bee3e09725ddb106b75c1e301fe2f18b26";
+      };
+    };
+    "fill-range-2.2.4" = {
+      name = "fill-range";
+      packageName = "fill-range";
+      version = "2.2.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fill-range/-/fill-range-2.2.4.tgz";
+        sha512 = "cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q==";
+      };
+    };
+    "fill-range-4.0.0" = {
+      name = "fill-range";
+      packageName = "fill-range";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz";
+        sha1 = "d544811d428f98eb06a63dc402d2403c328c38f7";
+      };
+    };
+    "finalhandler-1.1.1" = {
+      name = "finalhandler";
+      packageName = "finalhandler";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.1.tgz";
+        sha512 = "Y1GUDo39ez4aHAw7MysnUD5JzYX+WaIj8I57kO3aEPT1fFRL4sr7mjei97FgnwhAyyzRYmQZaTHb2+9uZ1dPtg==";
+      };
+    };
+    "find-cache-dir-0.1.1" = {
+      name = "find-cache-dir";
+      packageName = "find-cache-dir";
+      version = "0.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-0.1.1.tgz";
+        sha1 = "c8defae57c8a52a8a784f9e31c57c742e993a0b9";
+      };
+    };
+    "find-cache-dir-1.0.0" = {
+      name = "find-cache-dir";
+      packageName = "find-cache-dir";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz";
+        sha1 = "9288e3e9e3cc3748717d39eade17cf71fc30ee6f";
+      };
+    };
+    "find-index-0.1.1" = {
+      name = "find-index";
+      packageName = "find-index";
+      version = "0.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/find-index/-/find-index-0.1.1.tgz";
+        sha1 = "675d358b2ca3892d795a1ab47232f8b6e2e0dde4";
+      };
+    };
+    "find-root-1.1.0" = {
+      name = "find-root";
+      packageName = "find-root";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz";
+        sha512 = "NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==";
+      };
+    };
+    "find-up-1.1.2" = {
+      name = "find-up";
+      packageName = "find-up";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz";
+        sha1 = "6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f";
+      };
+    };
+    "find-up-2.1.0" = {
+      name = "find-up";
+      packageName = "find-up";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz";
+        sha1 = "45d1b7e506c717ddd482775a2b77920a3c0c57a7";
+      };
+    };
+    "findup-sync-1.0.0" = {
+      name = "findup-sync";
+      packageName = "findup-sync";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/findup-sync/-/findup-sync-1.0.0.tgz";
+        sha1 = "6f7e4b57b6ee3a4037b4414eaedea3f58f71e0ec";
+      };
+    };
+    "findup-sync-2.0.0" = {
+      name = "findup-sync";
+      packageName = "findup-sync";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/findup-sync/-/findup-sync-2.0.0.tgz";
+        sha1 = "9326b1488c22d1a6088650a86901b2d9a90a2cbc";
+      };
+    };
+    "fined-1.1.0" = {
+      name = "fined";
+      packageName = "fined";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fined/-/fined-1.1.0.tgz";
+        sha1 = "b37dc844b76a2f5e7081e884f7c0ae344f153476";
+      };
+    };
+    "first-chunk-stream-1.0.0" = {
+      name = "first-chunk-stream";
+      packageName = "first-chunk-stream";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/first-chunk-stream/-/first-chunk-stream-1.0.0.tgz";
+        sha1 = "59bfb50cd905f60d7c394cd3d9acaab4e6ad934e";
+      };
+    };
+    "flagged-respawn-1.0.0" = {
+      name = "flagged-respawn";
+      packageName = "flagged-respawn";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/flagged-respawn/-/flagged-respawn-1.0.0.tgz";
+        sha1 = "4e79ae9b2eb38bf86b3bb56bf3e0a56aa5fcabd7";
+      };
+    };
+    "flat-cache-1.3.0" = {
+      name = "flat-cache";
+      packageName = "flat-cache";
+      version = "1.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/flat-cache/-/flat-cache-1.3.0.tgz";
+        sha1 = "d3030b32b38154f4e3b7e9c709f490f7ef97c481";
+      };
+    };
+    "flatten-1.0.2" = {
+      name = "flatten";
+      packageName = "flatten";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/flatten/-/flatten-1.0.2.tgz";
+        sha1 = "dae46a9d78fbe25292258cc1e780a41d95c03782";
+      };
+    };
+    "flush-write-stream-1.0.3" = {
+      name = "flush-write-stream";
+      packageName = "flush-write-stream";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.0.3.tgz";
+        sha512 = "calZMC10u0FMUqoiunI2AiGIIUtUIvifNwkHhNupZH4cbNnW1Itkoh/Nf5HFYmDrwWPjrUxpkZT0KhuCq0jmGw==";
+      };
+    };
+    "for-in-1.0.2" = {
+      name = "for-in";
+      packageName = "for-in";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz";
+        sha1 = "81068d295a8142ec0ac726c6e2200c30fb6d5e80";
+      };
+    };
+    "for-own-0.1.5" = {
+      name = "for-own";
+      packageName = "for-own";
+      version = "0.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz";
+        sha1 = "5265c681a4f294dabbf17c9509b6763aa84510ce";
+      };
+    };
+    "for-own-1.0.0" = {
+      name = "for-own";
+      packageName = "for-own";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz";
+        sha1 = "c63332f415cedc4b04dbfe70cf836494c53cb44b";
+      };
+    };
+    "foreach-2.0.5" = {
+      name = "foreach";
+      packageName = "foreach";
+      version = "2.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz";
+        sha1 = "0bee005018aeb260d0a3af3ae658dd0136ec1b99";
+      };
+    };
+    "forever-agent-0.6.1" = {
+      name = "forever-agent";
+      packageName = "forever-agent";
+      version = "0.6.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz";
+        sha1 = "fbc71f0c41adeb37f96c577ad1ed42d8fdacca91";
+      };
+    };
+    "form-data-1.0.0-rc3" = {
+      name = "form-data";
+      packageName = "form-data";
+      version = "1.0.0-rc3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/form-data/-/form-data-1.0.0-rc3.tgz";
+        sha1 = "d35bc62e7fbc2937ae78f948aaa0d38d90607577";
+      };
+    };
+    "form-data-2.1.4" = {
+      name = "form-data";
+      packageName = "form-data";
+      version = "2.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/form-data/-/form-data-2.1.4.tgz";
+        sha1 = "33c183acf193276ecaa98143a69e94bfee1750d1";
+      };
+    };
+    "form-data-2.3.2" = {
+      name = "form-data";
+      packageName = "form-data";
+      version = "2.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/form-data/-/form-data-2.3.2.tgz";
+        sha1 = "4970498be604c20c005d4f5c23aecd21d6b49099";
+      };
+    };
+    "formidable-1.0.17" = {
+      name = "formidable";
+      packageName = "formidable";
+      version = "1.0.17";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/formidable/-/formidable-1.0.17.tgz";
+        sha1 = "ef5491490f9433b705faa77249c99029ae348559";
+      };
+    };
+    "forwarded-0.1.2" = {
+      name = "forwarded";
+      packageName = "forwarded";
+      version = "0.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz";
+        sha1 = "98c23dab1175657b8c0573e8ceccd91b0ff18c84";
+      };
+    };
+    "fragment-cache-0.2.1" = {
+      name = "fragment-cache";
+      packageName = "fragment-cache";
+      version = "0.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz";
+        sha1 = "4290fad27f13e89be7f33799c6bc5a0abfff0d19";
+      };
+    };
+    "frameguard-3.0.0" = {
+      name = "frameguard";
+      packageName = "frameguard";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/frameguard/-/frameguard-3.0.0.tgz";
+        sha1 = "7bcad469ee7b96e91d12ceb3959c78235a9272e9";
+      };
+    };
+    "fresh-0.5.2" = {
+      name = "fresh";
+      packageName = "fresh";
+      version = "0.5.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz";
+        sha1 = "3d8cadd90d976569fa835ab1f8e4b23a105605a7";
+      };
+    };
+    "from2-2.3.0" = {
+      name = "from2";
+      packageName = "from2";
+      version = "2.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz";
+        sha1 = "8bfb5502bde4a4d36cfdeea007fcca21d7e382af";
+      };
+    };
+    "fs-constants-1.0.0" = {
+      name = "fs-constants";
+      packageName = "fs-constants";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz";
+        sha512 = "y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==";
+      };
+    };
+    "fs-exists-sync-0.1.0" = {
+      name = "fs-exists-sync";
+      packageName = "fs-exists-sync";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fs-exists-sync/-/fs-exists-sync-0.1.0.tgz";
+        sha1 = "982d6893af918e72d08dec9e8673ff2b5a8d6add";
+      };
+    };
+    "fs-extra-1.0.0" = {
+      name = "fs-extra";
+      packageName = "fs-extra";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fs-extra/-/fs-extra-1.0.0.tgz";
+        sha1 = "cd3ce5f7e7cb6145883fcae3191e9877f8587950";
+      };
+    };
+    "fs-extra-4.0.3" = {
+      name = "fs-extra";
+      packageName = "fs-extra";
+      version = "4.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz";
+        sha512 = "q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==";
+      };
+    };
+    "fs-minipass-1.2.5" = {
+      name = "fs-minipass";
+      packageName = "fs-minipass";
+      version = "1.2.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.5.tgz";
+        sha512 = "JhBl0skXjUPCFH7x6x61gQxrKyXsxB5gcgePLZCwfyCGGsTISMoIeObbrvVeP6Xmyaudw4TT43qV2Gz+iyd2oQ==";
+      };
+    };
+    "fs-readdir-recursive-1.1.0" = {
+      name = "fs-readdir-recursive";
+      packageName = "fs-readdir-recursive";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz";
+        sha512 = "GNanXlVr2pf02+sPN40XN8HG+ePaNcvM0q5mZBd668Obwb0yD5GiUbZOFgwn8kGMY6I3mdyDJzieUy3PTYyTRA==";
+      };
+    };
+    "fs-write-stream-atomic-1.0.10" = {
+      name = "fs-write-stream-atomic";
+      packageName = "fs-write-stream-atomic";
+      version = "1.0.10";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz";
+        sha1 = "b47df53493ef911df75731e70a9ded0189db40c9";
+      };
+    };
+    "fs.realpath-1.0.0" = {
+      name = "fs.realpath";
+      packageName = "fs.realpath";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz";
+        sha1 = "1504ad2523158caa40db4a2787cb01411994ea4f";
+      };
+    };
+    "fsevents-1.2.4" = {
+      name = "fsevents";
+      packageName = "fsevents";
+      version = "1.2.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fsevents/-/fsevents-1.2.4.tgz";
+        sha512 = "z8H8/diyk76B7q5wg+Ud0+CqzcAF3mBBI/bA5ne5zrRUUIvNkJY//D3BqyH571KuAC4Nr7Rw7CjWX4r0y9DvNg==";
+      };
+    };
+    "function-bind-1.1.1" = {
+      name = "function-bind";
+      packageName = "function-bind";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz";
+        sha512 = "yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==";
+      };
+    };
+    "gauge-2.7.4" = {
+      name = "gauge";
+      packageName = "gauge";
+      version = "2.7.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz";
+        sha1 = "2c03405c7538c39d7eb37b317022e325fb018bf7";
+      };
+    };
+    "gaze-0.5.2" = {
+      name = "gaze";
+      packageName = "gaze";
+      version = "0.5.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/gaze/-/gaze-0.5.2.tgz";
+        sha1 = "40b709537d24d1d45767db5a908689dfe69ac44f";
+      };
+    };
+    "generate-function-2.0.0" = {
+      name = "generate-function";
+      packageName = "generate-function";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/generate-function/-/generate-function-2.0.0.tgz";
+        sha1 = "6858fe7c0969b7d4e9093337647ac79f60dfbe74";
+      };
+    };
+    "generate-object-property-1.2.0" = {
+      name = "generate-object-property";
+      packageName = "generate-object-property";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz";
+        sha1 = "9c0e1c40308ce804f4783618b937fa88f99d50d0";
+      };
+    };
+    "generic-pool-2.4.2" = {
+      name = "generic-pool";
+      packageName = "generic-pool";
+      version = "2.4.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/generic-pool/-/generic-pool-2.4.2.tgz";
+        sha1 = "886bc5bf0beb7db96e81bcbba078818de5a62683";
+      };
+    };
+    "generic-pool-2.4.3" = {
+      name = "generic-pool";
+      packageName = "generic-pool";
+      version = "2.4.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/generic-pool/-/generic-pool-2.4.3.tgz";
+        sha1 = "780c36f69dfad05a5a045dd37be7adca11a4f6ff";
+      };
+    };
+    "get-caller-file-1.0.3" = {
+      name = "get-caller-file";
+      packageName = "get-caller-file";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz";
+        sha512 = "3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==";
+      };
+    };
+    "get-stdin-5.0.1" = {
+      name = "get-stdin";
+      packageName = "get-stdin";
+      version = "5.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/get-stdin/-/get-stdin-5.0.1.tgz";
+        sha1 = "122e161591e21ff4c52530305693f20e6393a398";
+      };
+    };
+    "get-stream-3.0.0" = {
+      name = "get-stream";
+      packageName = "get-stream";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz";
+        sha1 = "8e943d1358dc37555054ecbe2edb05aa174ede14";
+      };
+    };
+    "get-value-2.0.6" = {
+      name = "get-value";
+      packageName = "get-value";
+      version = "2.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz";
+        sha1 = "dc15ca1c672387ca76bd37ac0a395ba2042a2c28";
+      };
+    };
+    "getpass-0.1.7" = {
+      name = "getpass";
+      packageName = "getpass";
+      version = "0.1.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz";
+        sha1 = "5eff8e3e684d569ae4cb2b1282604e8ba62149fa";
+      };
+    };
+    "glob-3.1.21" = {
+      name = "glob";
+      packageName = "glob";
+      version = "3.1.21";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/glob/-/glob-3.1.21.tgz";
+        sha1 = "d29e0a055dea5138f4d07ed40e8982e83c2066cd";
+      };
+    };
+    "glob-4.5.3" = {
+      name = "glob";
+      packageName = "glob";
+      version = "4.5.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/glob/-/glob-4.5.3.tgz";
+        sha1 = "c6cb73d3226c1efef04de3c56d012f03377ee15f";
+      };
+    };
+    "glob-6.0.4" = {
+      name = "glob";
+      packageName = "glob";
+      version = "6.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/glob/-/glob-6.0.4.tgz";
+        sha1 = "0f08860f6a155127b2fadd4f9ce24b1aab6e4d22";
+      };
+    };
+    "glob-7.1.2" = {
+      name = "glob";
+      packageName = "glob";
+      version = "7.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz";
+        sha512 = "MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==";
+      };
+    };
+    "glob-base-0.3.0" = {
+      name = "glob-base";
+      packageName = "glob-base";
+      version = "0.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz";
+        sha1 = "dbb164f6221b1c0b1ccf82aea328b497df0ea3c4";
+      };
+    };
+    "glob-parent-2.0.0" = {
+      name = "glob-parent";
+      packageName = "glob-parent";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz";
+        sha1 = "81383d72db054fcccf5336daa902f182f6edbb28";
+      };
+    };
+    "glob-stream-3.1.18" = {
+      name = "glob-stream";
+      packageName = "glob-stream";
+      version = "3.1.18";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/glob-stream/-/glob-stream-3.1.18.tgz";
+        sha1 = "9170a5f12b790306fdfe598f313f8f7954fd143b";
+      };
+    };
+    "glob-watcher-0.0.6" = {
+      name = "glob-watcher";
+      packageName = "glob-watcher";
+      version = "0.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/glob-watcher/-/glob-watcher-0.0.6.tgz";
+        sha1 = "b95b4a8df74b39c83298b0c05c978b4d9a3b710b";
+      };
+    };
+    "glob2base-0.0.12" = {
+      name = "glob2base";
+      packageName = "glob2base";
+      version = "0.0.12";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/glob2base/-/glob2base-0.0.12.tgz";
+        sha1 = "9d419b3e28f12e83a362164a277055922c9c0d56";
+      };
+    };
+    "global-modules-0.2.3" = {
+      name = "global-modules";
+      packageName = "global-modules";
+      version = "0.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/global-modules/-/global-modules-0.2.3.tgz";
+        sha1 = "ea5a3bed42c6d6ce995a4f8a1269b5dae223828d";
+      };
+    };
+    "global-modules-1.0.0" = {
+      name = "global-modules";
+      packageName = "global-modules";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz";
+        sha512 = "sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==";
+      };
+    };
+    "global-prefix-0.1.5" = {
+      name = "global-prefix";
+      packageName = "global-prefix";
+      version = "0.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/global-prefix/-/global-prefix-0.1.5.tgz";
+        sha1 = "8d3bc6b8da3ca8112a160d8d496ff0462bfef78f";
+      };
+    };
+    "global-prefix-1.0.2" = {
+      name = "global-prefix";
+      packageName = "global-prefix";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz";
+        sha1 = "dbf743c6c14992593c655568cb66ed32c0122ebe";
+      };
+    };
+    "globals-9.18.0" = {
+      name = "globals";
+      packageName = "globals";
+      version = "9.18.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz";
+        sha512 = "S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==";
+      };
+    };
+    "globby-5.0.0" = {
+      name = "globby";
+      packageName = "globby";
+      version = "5.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz";
+        sha1 = "ebd84667ca0dbb330b99bcfc68eac2bc54370e0d";
+      };
+    };
+    "globby-7.1.1" = {
+      name = "globby";
+      packageName = "globby";
+      version = "7.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/globby/-/globby-7.1.1.tgz";
+        sha1 = "fb2ccff9401f8600945dfada97440cca972b8680";
+      };
+    };
+    "globule-0.1.0" = {
+      name = "globule";
+      packageName = "globule";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/globule/-/globule-0.1.0.tgz";
+        sha1 = "d9c8edde1da79d125a151b79533b978676346ae5";
+      };
+    };
+    "glogg-1.0.1" = {
+      name = "glogg";
+      packageName = "glogg";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/glogg/-/glogg-1.0.1.tgz";
+        sha512 = "ynYqXLoluBKf9XGR1gA59yEJisIL7YHEH4xr3ZziHB5/yl4qWfaK8Js9jGe6gBGCSCKVqiyO30WnRZADvemUNw==";
+      };
+    };
+    "good-listener-1.2.2" = {
+      name = "good-listener";
+      packageName = "good-listener";
+      version = "1.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/good-listener/-/good-listener-1.2.2.tgz";
+        sha1 = "d53b30cdf9313dffb7dc9a0d477096aa6d145c50";
+      };
+    };
+    "graceful-fs-1.2.3" = {
+      name = "graceful-fs";
+      packageName = "graceful-fs";
+      version = "1.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.2.3.tgz";
+        sha1 = "15a4806a57547cb2d2dbf27f42e89a8c3451b364";
+      };
+    };
+    "graceful-fs-3.0.11" = {
+      name = "graceful-fs";
+      packageName = "graceful-fs";
+      version = "3.0.11";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.11.tgz";
+        sha1 = "7613c778a1afea62f25c630a086d7f3acbbdd818";
+      };
+    };
+    "graceful-fs-4.1.11" = {
+      name = "graceful-fs";
+      packageName = "graceful-fs";
+      version = "4.1.11";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz";
+        sha1 = "0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658";
+      };
+    };
+    "graphlib-2.1.5" = {
+      name = "graphlib";
+      packageName = "graphlib";
+      version = "2.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/graphlib/-/graphlib-2.1.5.tgz";
+        sha512 = "XvtbqCcw+EM5SqQrIetIKKD+uZVNQtDPD1goIg7K73RuRZtVI5rYMdcCVSHm/AS1sCBZ7vt0p5WgXouucHQaOA==";
+      };
+    };
+    "graphlibrary-2.2.0" = {
+      name = "graphlibrary";
+      packageName = "graphlibrary";
+      version = "2.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/graphlibrary/-/graphlibrary-2.2.0.tgz";
+        sha512 = "XTcvT55L8u4MBZrM37zXoUxsgxs/7sow7YSygd9CIwfWTVO8RVu7AYXhhCiTuFEf+APKgx6Jk4SuQbYR0vYKmQ==";
+      };
+    };
+    "grunt-contrib-jshint-1.1.0" = {
+      name = "grunt-contrib-jshint";
+      packageName = "grunt-contrib-jshint";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-1.1.0.tgz";
+        sha1 = "369d909b2593c40e8be79940b21340850c7939ac";
+      };
+    };
+    "grunt-contrib-qunit-2.0.0" = {
+      name = "grunt-contrib-qunit";
+      packageName = "grunt-contrib-qunit";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/grunt-contrib-qunit/-/grunt-contrib-qunit-2.0.0.tgz";
+        sha1 = "54a51b4b2c84fee62c3b7e00145c928d1ec2b7ec";
+      };
+    };
+    "grunt-contrib-uglify-3.4.0" = {
+      name = "grunt-contrib-uglify";
+      packageName = "grunt-contrib-uglify";
+      version = "3.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/grunt-contrib-uglify/-/grunt-contrib-uglify-3.4.0.tgz";
+        sha512 = "UXsTpeP0pytpTYlmll3RDndsRXfdwmrf1tI/AtD/PrArQAzGmKMvj83aVt3D8egWlE6KqPjsJBLCCvfC52LI/A==";
+      };
+    };
+    "grunt-lib-phantomjs-1.1.0" = {
+      name = "grunt-lib-phantomjs";
+      packageName = "grunt-lib-phantomjs";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/grunt-lib-phantomjs/-/grunt-lib-phantomjs-1.1.0.tgz";
+        sha1 = "9e9edcdd9fd2dd40e0c181c94371d572aa5eead2";
+      };
+    };
+    "gulp-3.9.1" = {
+      name = "gulp";
+      packageName = "gulp";
+      version = "3.9.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/gulp/-/gulp-3.9.1.tgz";
+        sha1 = "571ce45928dd40af6514fc4011866016c13845b4";
+      };
+    };
+    "gulp-help-1.6.1" = {
+      name = "gulp-help";
+      packageName = "gulp-help";
+      version = "1.6.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/gulp-help/-/gulp-help-1.6.1.tgz";
+        sha1 = "261db186e18397fef3f6a2c22e9c315bfa88ae0c";
+      };
+    };
+    "gulp-util-3.0.8" = {
+      name = "gulp-util";
+      packageName = "gulp-util";
+      version = "3.0.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/gulp-util/-/gulp-util-3.0.8.tgz";
+        sha1 = "0054e1e744502e27c04c187c3ecc505dd54bbb4f";
+      };
+    };
+    "gulplog-1.0.0" = {
+      name = "gulplog";
+      packageName = "gulplog";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/gulplog/-/gulplog-1.0.0.tgz";
+        sha1 = "e28c4d45d05ecbbed818363ce8f9c5926229ffe5";
+      };
+    };
+    "gzip-size-3.0.0" = {
+      name = "gzip-size";
+      packageName = "gzip-size";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/gzip-size/-/gzip-size-3.0.0.tgz";
+        sha1 = "546188e9bdc337f673772f81660464b389dce520";
+      };
+    };
+    "har-schema-1.0.5" = {
+      name = "har-schema";
+      packageName = "har-schema";
+      version = "1.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/har-schema/-/har-schema-1.0.5.tgz";
+        sha1 = "d263135f43307c02c602afc8fe95970c0151369e";
+      };
+    };
+    "har-schema-2.0.0" = {
+      name = "har-schema";
+      packageName = "har-schema";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz";
+        sha1 = "a94c2224ebcac04782a0d9035521f24735b7ec92";
+      };
+    };
+    "har-validator-4.2.1" = {
+      name = "har-validator";
+      packageName = "har-validator";
+      version = "4.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/har-validator/-/har-validator-4.2.1.tgz";
+        sha1 = "33481d0f1bbff600dd203d75812a6a5fba002e2a";
+      };
+    };
+    "har-validator-5.0.3" = {
+      name = "har-validator";
+      packageName = "har-validator";
+      version = "5.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz";
+        sha1 = "ba402c266194f15956ef15e0fcf242993f6a7dfd";
+      };
+    };
+    "has-1.0.3" = {
+      name = "has";
+      packageName = "has";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/has/-/has-1.0.3.tgz";
+        sha512 = "f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==";
+      };
+    };
+    "has-ansi-2.0.0" = {
+      name = "has-ansi";
+      packageName = "has-ansi";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz";
+        sha1 = "34f5049ce1ecdf2b0649af3ef24e45ed35416d91";
+      };
+    };
+    "has-binary2-1.0.3" = {
+      name = "has-binary2";
+      packageName = "has-binary2";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/has-binary2/-/has-binary2-1.0.3.tgz";
+        sha512 = "G1LWKhDSvhGeAQ8mPVQlqNcOB2sJdwATtZKl2pDKKHfpf/rYj24lkinxf69blJbnsvtqqNU+L3SL50vzZhXOnw==";
+      };
+    };
+    "has-color-0.1.7" = {
+      name = "has-color";
+      packageName = "has-color";
+      version = "0.1.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/has-color/-/has-color-0.1.7.tgz";
+        sha1 = "67144a5260c34fc3cca677d041daf52fe7b78b2f";
+      };
+    };
+    "has-cors-1.1.0" = {
+      name = "has-cors";
+      packageName = "has-cors";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/has-cors/-/has-cors-1.1.0.tgz";
+        sha1 = "5e474793f7ea9843d1bb99c23eef49ff126fff39";
+      };
+    };
+    "has-flag-1.0.0" = {
+      name = "has-flag";
+      packageName = "has-flag";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz";
+        sha1 = "9d9e793165ce017a00f00418c43f942a7b1d11fa";
+      };
+    };
+    "has-flag-3.0.0" = {
+      name = "has-flag";
+      packageName = "has-flag";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz";
+        sha1 = "b5d454dc2199ae225699f3467e5a07f3b955bafd";
+      };
+    };
+    "has-gulplog-0.1.0" = {
+      name = "has-gulplog";
+      packageName = "has-gulplog";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/has-gulplog/-/has-gulplog-0.1.0.tgz";
+        sha1 = "6414c82913697da51590397dafb12f22967811ce";
+      };
+    };
+    "has-unicode-2.0.1" = {
+      name = "has-unicode";
+      packageName = "has-unicode";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz";
+        sha1 = "e0e6fe6a28cf51138855e086d1691e771de2a8b9";
+      };
+    };
+    "has-value-0.3.1" = {
+      name = "has-value";
+      packageName = "has-value";
+      version = "0.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz";
+        sha1 = "7b1f58bada62ca827ec0a2078025654845995e1f";
+      };
+    };
+    "has-value-1.0.0" = {
+      name = "has-value";
+      packageName = "has-value";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz";
+        sha1 = "18b281da585b1c5c51def24c930ed29a0be6b177";
+      };
+    };
+    "has-values-0.1.4" = {
+      name = "has-values";
+      packageName = "has-values";
+      version = "0.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz";
+        sha1 = "6d61de95d91dfca9b9a02089ad384bff8f62b771";
+      };
+    };
+    "has-values-1.0.0" = {
+      name = "has-values";
+      packageName = "has-values";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz";
+        sha1 = "95b0b63fec2146619a6fe57fe75628d5a39efe4f";
+      };
+    };
+    "hash-base-3.0.4" = {
+      name = "hash-base";
+      packageName = "hash-base";
+      version = "3.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz";
+        sha1 = "5fc8686847ecd73499403319a6b0a3f3f6ae4918";
+      };
+    };
+    "hasha-2.2.0" = {
+      name = "hasha";
+      packageName = "hasha";
+      version = "2.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hasha/-/hasha-2.2.0.tgz";
+        sha1 = "78d7cbfc1e6d66303fe79837365984517b2f6ee1";
+      };
+    };
+    "hawk-3.1.3" = {
+      name = "hawk";
+      packageName = "hawk";
+      version = "3.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz";
+        sha1 = "078444bd7c1640b0fe540d2c9b73d59678e8e1c4";
+      };
+    };
+    "he-1.1.1" = {
+      name = "he";
+      packageName = "he";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/he/-/he-1.1.1.tgz";
+        sha1 = "93410fd21b009735151f8868c2f271f3427e23fd";
+      };
+    };
+    "helmet-crossdomain-0.3.0" = {
+      name = "helmet-crossdomain";
+      packageName = "helmet-crossdomain";
+      version = "0.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/helmet-crossdomain/-/helmet-crossdomain-0.3.0.tgz";
+        sha512 = "YiXhj0E35nC4Na5EPE4mTfoXMf9JTGpN4OtB4aLqShKuH9d2HNaJX5MQoglO6STVka0uMsHyG5lCut5Kzsy7Lg==";
+      };
+    };
+    "helmet-csp-2.7.1" = {
+      name = "helmet-csp";
+      packageName = "helmet-csp";
+      version = "2.7.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/helmet-csp/-/helmet-csp-2.7.1.tgz";
+        sha512 = "sCHwywg4daQ2mY0YYwXSZRsgcCeerUwxMwNixGA7aMLkVmPTYBl7gJoZDHOZyXkqPrtuDT3s2B1A+RLI7WxSdQ==";
+      };
+    };
+    "hide-powered-by-1.0.0" = {
+      name = "hide-powered-by";
+      packageName = "hide-powered-by";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hide-powered-by/-/hide-powered-by-1.0.0.tgz";
+        sha1 = "4a85ad65881f62857fc70af7174a1184dccce32b";
+      };
+    };
+    "highlight.js-9.12.0" = {
+      name = "highlight.js";
+      packageName = "highlight.js";
+      version = "9.12.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/highlight.js/-/highlight.js-9.12.0.tgz";
+        sha1 = "e6d9dbe57cbefe60751f02af336195870c90c01e";
+      };
+    };
+    "hoek-2.16.3" = {
+      name = "hoek";
+      packageName = "hoek";
+      version = "2.16.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz";
+        sha1 = "20bb7403d3cea398e91dc4710a8ff1b8274a25ed";
+      };
+    };
+    "home-or-tmp-2.0.0" = {
+      name = "home-or-tmp";
+      packageName = "home-or-tmp";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz";
+        sha1 = "e36c3f2d2cae7d746a857e38d18d5f32a7882db8";
+      };
+    };
+    "homedir-polyfill-1.0.1" = {
+      name = "homedir-polyfill";
+      packageName = "homedir-polyfill";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.1.tgz";
+        sha1 = "4c2bbc8a758998feebf5ed68580f76d46768b4bc";
+      };
+    };
+    "hooker-0.2.3" = {
+      name = "hooker";
+      packageName = "hooker";
+      version = "0.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hooker/-/hooker-0.2.3.tgz";
+        sha1 = "b834f723cc4a242aa65963459df6d984c5d3d959";
+      };
+    };
+    "hosted-git-info-2.7.1" = {
+      name = "hosted-git-info";
+      packageName = "hosted-git-info";
+      version = "2.7.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.7.1.tgz";
+        sha512 = "7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w==";
+      };
+    };
+    "hpkp-2.0.0" = {
+      name = "hpkp";
+      packageName = "hpkp";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hpkp/-/hpkp-2.0.0.tgz";
+        sha1 = "10e142264e76215a5d30c44ec43de64dee6d1672";
+      };
+    };
+    "hsts-2.1.0" = {
+      name = "hsts";
+      packageName = "hsts";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hsts/-/hsts-2.1.0.tgz";
+        sha512 = "zXhh/DqgrTXJ7erTN6Fh5k/xjMhDGXCqdYN3wvxUvGUQvnxcFfUd8E+6vLg/nk3ss1TYMb+DhRl25fYABioTvA==";
+      };
+    };
+    "html-comment-regex-1.1.1" = {
+      name = "html-comment-regex";
+      packageName = "html-comment-regex";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/html-comment-regex/-/html-comment-regex-1.1.1.tgz";
+        sha1 = "668b93776eaae55ebde8f3ad464b307a4963625e";
+      };
+    };
+    "html-encoding-sniffer-1.0.2" = {
+      name = "html-encoding-sniffer";
+      packageName = "html-encoding-sniffer";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz";
+        sha512 = "71lZziiDnsuabfdYiUeWdCVyKuqwWi23L8YeIgV9jSSZHCtb6wB1BKWooH7L3tn4/FuZJMVWyNaIDr4RGmaSYw==";
+      };
+    };
+    "html-minifier-3.5.19" = {
+      name = "html-minifier";
+      packageName = "html-minifier";
+      version = "3.5.19";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/html-minifier/-/html-minifier-3.5.19.tgz";
+        sha512 = "Qr2JC9nsjK8oCrEmuB430ZIA8YWbF3D5LSjywD75FTuXmeqacwHgIM8wp3vHYzzPbklSjp53RdmDuzR4ub2HzA==";
+      };
+    };
+    "htmlparser2-3.3.0" = {
+      name = "htmlparser2";
+      packageName = "htmlparser2";
+      version = "3.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.3.0.tgz";
+        sha1 = "cc70d05a59f6542e43f0e685c982e14c924a9efe";
+      };
+    };
+    "htmlparser2-3.8.3" = {
+      name = "htmlparser2";
+      packageName = "htmlparser2";
+      version = "3.8.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.8.3.tgz";
+        sha1 = "996c28b191516a8be86501a7d79757e5c70c1068";
+      };
+    };
+    "htmlparser2-3.9.2" = {
+      name = "htmlparser2";
+      packageName = "htmlparser2";
+      version = "3.9.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.9.2.tgz";
+        sha1 = "1bdf87acca0f3f9e53fa4fcceb0f4b4cbb00b338";
+      };
+    };
+    "http-errors-1.6.2" = {
+      name = "http-errors";
+      packageName = "http-errors";
+      version = "1.6.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/http-errors/-/http-errors-1.6.2.tgz";
+        sha1 = "0a002cc85707192a7e7946ceedc11155f60ec736";
+      };
+    };
+    "http-errors-1.6.3" = {
+      name = "http-errors";
+      packageName = "http-errors";
+      version = "1.6.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz";
+        sha1 = "8b55680bb4be283a0b5bf4ea2e38580be1d9320d";
+      };
+    };
+    "http-signature-1.1.1" = {
+      name = "http-signature";
+      packageName = "http-signature";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz";
+        sha1 = "df72e267066cd0ac67fb76adf8e134a8fbcf91bf";
+      };
+    };
+    "http-signature-1.2.0" = {
+      name = "http-signature";
+      packageName = "http-signature";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz";
+        sha1 = "9aecd925114772f3d95b65a60abb8f7c18fbace1";
+      };
+    };
+    "https-browserify-0.0.1" = {
+      name = "https-browserify";
+      packageName = "https-browserify";
+      version = "0.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/https-browserify/-/https-browserify-0.0.1.tgz";
+        sha1 = "3f91365cabe60b77ed0ebba24b454e3e09d95a82";
+      };
+    };
+    "iconv-lite-0.4.19" = {
+      name = "iconv-lite";
+      packageName = "iconv-lite";
+      version = "0.4.19";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz";
+        sha512 = "oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==";
+      };
+    };
+    "iconv-lite-0.4.23" = {
+      name = "iconv-lite";
+      packageName = "iconv-lite";
+      version = "0.4.23";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.23.tgz";
+        sha512 = "neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA==";
+      };
+    };
+    "icss-replace-symbols-1.1.0" = {
+      name = "icss-replace-symbols";
+      packageName = "icss-replace-symbols";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz";
+        sha1 = "06ea6f83679a7749e386cfe1fe812ae5db223ded";
+      };
+    };
+    "ieee754-1.1.12" = {
+      name = "ieee754";
+      packageName = "ieee754";
+      version = "1.1.12";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ieee754/-/ieee754-1.1.12.tgz";
+        sha512 = "GguP+DRY+pJ3soyIiGPTvdiVXjZ+DbXOxGpXn3eMvNW4x4irjqXm4wHKscC+TfxSJ0yw/S1F24tqdMNsMZTiLA==";
+      };
+    };
+    "ieee754-1.1.8" = {
+      name = "ieee754";
+      packageName = "ieee754";
+      version = "1.1.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ieee754/-/ieee754-1.1.8.tgz";
+        sha1 = "be33d40ac10ef1926701f6f08a2d86fbfd1ad3e4";
+      };
+    };
+    "ienoopen-1.0.0" = {
+      name = "ienoopen";
+      packageName = "ienoopen";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ienoopen/-/ienoopen-1.0.0.tgz";
+        sha1 = "346a428f474aac8f50cf3784ea2d0f16f62bda6b";
+      };
+    };
+    "iferr-0.1.5" = {
+      name = "iferr";
+      packageName = "iferr";
+      version = "0.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz";
+        sha1 = "c60eed69e6d8fdb6b3104a1fcbca1c192dc5b501";
+      };
+    };
+    "ignore-3.3.10" = {
+      name = "ignore";
+      packageName = "ignore";
+      version = "3.3.10";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz";
+        sha512 = "Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==";
+      };
+    };
+    "ignore-walk-3.0.1" = {
+      name = "ignore-walk";
+      packageName = "ignore-walk";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.1.tgz";
+        sha512 = "DTVlMx3IYPe0/JJcYP7Gxg7ttZZu3IInhuEhbchuqneY9wWe5Ojy2mXLBaQFUQmo0AW2r3qG7m1mg86js+gnlQ==";
+      };
+    };
+    "ignorefs-1.2.0" = {
+      name = "ignorefs";
+      packageName = "ignorefs";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ignorefs/-/ignorefs-1.2.0.tgz";
+        sha1 = "da59fb858976e4a5e43702ccd1f282fdbc9e5756";
+      };
+    };
+    "ignorepatterns-1.1.0" = {
+      name = "ignorepatterns";
+      packageName = "ignorepatterns";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ignorepatterns/-/ignorepatterns-1.1.0.tgz";
+        sha1 = "ac8f436f2239b5dfb66d5f0d3a904a87ac67cc5e";
+      };
+    };
+    "image-size-0.5.5" = {
+      name = "image-size";
+      packageName = "image-size";
+      version = "0.5.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz";
+        sha1 = "09dfd4ab9d20e29eb1c3e80b8990378df9e3cb9c";
+      };
+    };
+    "imurmurhash-0.1.4" = {
+      name = "imurmurhash";
+      packageName = "imurmurhash";
+      version = "0.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz";
+        sha1 = "9218b9b2b928a238b13dc4fb6b6d576f231453ea";
+      };
+    };
+    "indexes-of-1.0.1" = {
+      name = "indexes-of";
+      packageName = "indexes-of";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz";
+        sha1 = "f30f716c8e2bd346c7b67d3df3915566a7c05607";
+      };
+    };
+    "indexof-0.0.1" = {
+      name = "indexof";
+      packageName = "indexof";
+      version = "0.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz";
+        sha1 = "82dc336d232b9062179d05ab3293a66059fd435d";
+      };
+    };
+    "inflection-1.12.0" = {
+      name = "inflection";
+      packageName = "inflection";
+      version = "1.12.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/inflection/-/inflection-1.12.0.tgz";
+        sha1 = "a200935656d6f5f6bc4dc7502e1aecb703228416";
+      };
+    };
+    "inflight-1.0.6" = {
+      name = "inflight";
+      packageName = "inflight";
+      version = "1.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz";
+        sha1 = "49bd6331d7d02d0c09bc910a1075ba8165b56df9";
+      };
+    };
+    "inherits-1.0.2" = {
+      name = "inherits";
+      packageName = "inherits";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/inherits/-/inherits-1.0.2.tgz";
+        sha1 = "ca4309dadee6b54cc0b8d247e8d7c7a0975bdc9b";
+      };
+    };
+    "inherits-2.0.1" = {
+      name = "inherits";
+      packageName = "inherits";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz";
+        sha1 = "b17d08d326b4423e568eff719f91b0b1cbdf69f1";
+      };
+    };
+    "inherits-2.0.3" = {
+      name = "inherits";
+      packageName = "inherits";
+      version = "2.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz";
+        sha1 = "633c2c83e3da42a502f52466022480f4208261de";
+      };
+    };
+    "ini-1.3.5" = {
+      name = "ini";
+      packageName = "ini";
+      version = "1.3.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz";
+        sha512 = "RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==";
+      };
+    };
+    "inquirer-0.12.0" = {
+      name = "inquirer";
+      packageName = "inquirer";
+      version = "0.12.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/inquirer/-/inquirer-0.12.0.tgz";
+        sha1 = "1ef2bfd63504df0bc75785fff8c2c41df12f077e";
+      };
+    };
+    "interpret-0.6.6" = {
+      name = "interpret";
+      packageName = "interpret";
+      version = "0.6.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/interpret/-/interpret-0.6.6.tgz";
+        sha1 = "fecd7a18e7ce5ca6abfb953e1f86213a49f1625b";
+      };
+    };
+    "interpret-1.1.0" = {
+      name = "interpret";
+      packageName = "interpret";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/interpret/-/interpret-1.1.0.tgz";
+        sha1 = "7ed1b1410c6a0e0f78cf95d3b8440c63f78b8614";
+      };
+    };
+    "invariant-2.2.4" = {
+      name = "invariant";
+      packageName = "invariant";
+      version = "2.2.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz";
+        sha512 = "phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==";
+      };
+    };
+    "invert-kv-1.0.0" = {
+      name = "invert-kv";
+      packageName = "invert-kv";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz";
+        sha1 = "104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6";
+      };
+    };
+    "ipaddr.js-1.8.0" = {
+      name = "ipaddr.js";
+      packageName = "ipaddr.js";
+      version = "1.8.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.8.0.tgz";
+        sha1 = "eaa33d6ddd7ace8f7f6fe0c9ca0440e706738b1e";
+      };
+    };
+    "is-absolute-1.0.0" = {
+      name = "is-absolute";
+      packageName = "is-absolute";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz";
+        sha512 = "dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==";
+      };
+    };
+    "is-absolute-url-2.1.0" = {
+      name = "is-absolute-url";
+      packageName = "is-absolute-url";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-2.1.0.tgz";
+        sha1 = "50530dfb84fcc9aa7dbe7852e83a37b93b9f2aa6";
+      };
+    };
+    "is-accessor-descriptor-0.1.6" = {
+      name = "is-accessor-descriptor";
+      packageName = "is-accessor-descriptor";
+      version = "0.1.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz";
+        sha1 = "a9e12cb3ae8d876727eeef3843f8a0897b5c98d6";
+      };
+    };
+    "is-accessor-descriptor-1.0.0" = {
+      name = "is-accessor-descriptor";
+      packageName = "is-accessor-descriptor";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz";
+        sha512 = "m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==";
+      };
+    };
+    "is-alphabetical-1.0.2" = {
+      name = "is-alphabetical";
+      packageName = "is-alphabetical";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.2.tgz";
+        sha512 = "V0xN4BYezDHcBSKb1QHUFMlR4as/XEuCZBzMJUU4n7+Cbt33SmUnSol+pnXFvLxSHNq2CemUXNdaXV6Flg7+xg==";
+      };
+    };
+    "is-alphanumerical-1.0.2" = {
+      name = "is-alphanumerical";
+      packageName = "is-alphanumerical";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.2.tgz";
+        sha512 = "pyfU/0kHdISIgslFfZN9nfY1Gk3MquQgUm1mJTjdkEPpkAKNWuBTSqFwewOpR7N351VkErCiyV71zX7mlQQqsg==";
+      };
+    };
+    "is-arrayish-0.2.1" = {
+      name = "is-arrayish";
+      packageName = "is-arrayish";
+      version = "0.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz";
+        sha1 = "77c99840527aa8ecb1a8ba697b80645a7a926a9d";
+      };
+    };
+    "is-binary-path-1.0.1" = {
+      name = "is-binary-path";
+      packageName = "is-binary-path";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz";
+        sha1 = "75f16642b480f187a711c814161fd3a4a7655898";
+      };
+    };
+    "is-buffer-1.1.6" = {
+      name = "is-buffer";
+      packageName = "is-buffer";
+      version = "1.1.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz";
+        sha512 = "NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==";
+      };
+    };
+    "is-builtin-module-1.0.0" = {
+      name = "is-builtin-module";
+      packageName = "is-builtin-module";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz";
+        sha1 = "540572d34f7ac3119f8f76c30cbc1b1e037affbe";
+      };
+    };
+    "is-callable-1.1.4" = {
+      name = "is-callable";
+      packageName = "is-callable";
+      version = "1.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-callable/-/is-callable-1.1.4.tgz";
+        sha512 = "r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==";
+      };
+    };
+    "is-data-descriptor-0.1.4" = {
+      name = "is-data-descriptor";
+      packageName = "is-data-descriptor";
+      version = "0.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz";
+        sha1 = "0b5ee648388e2c860282e793f1856fec3f301b56";
+      };
+    };
+    "is-data-descriptor-1.0.0" = {
+      name = "is-data-descriptor";
+      packageName = "is-data-descriptor";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz";
+        sha512 = "jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==";
+      };
+    };
+    "is-date-object-1.0.1" = {
+      name = "is-date-object";
+      packageName = "is-date-object";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz";
+        sha1 = "9aa20eb6aeebbff77fbd33e74ca01b33581d3a16";
+      };
+    };
+    "is-decimal-1.0.2" = {
+      name = "is-decimal";
+      packageName = "is-decimal";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.2.tgz";
+        sha512 = "TRzl7mOCchnhchN+f3ICUCzYvL9ul7R+TYOsZ8xia++knyZAJfv/uA1FvQXsAnYIl1T3B2X5E/J7Wb1QXiIBXg==";
+      };
+    };
+    "is-descriptor-0.1.6" = {
+      name = "is-descriptor";
+      packageName = "is-descriptor";
+      version = "0.1.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz";
+        sha512 = "avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==";
+      };
+    };
+    "is-descriptor-1.0.2" = {
+      name = "is-descriptor";
+      packageName = "is-descriptor";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz";
+        sha512 = "2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==";
+      };
+    };
+    "is-dotfile-1.0.3" = {
+      name = "is-dotfile";
+      packageName = "is-dotfile";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz";
+        sha1 = "a6a2f32ffd2dfb04f5ca25ecd0f6b83cf798a1e1";
+      };
+    };
+    "is-equal-shallow-0.1.3" = {
+      name = "is-equal-shallow";
+      packageName = "is-equal-shallow";
+      version = "0.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz";
+        sha1 = "2238098fc221de0bcfa5d9eac4c45d638aa1c534";
+      };
+    };
+    "is-extendable-0.1.1" = {
+      name = "is-extendable";
+      packageName = "is-extendable";
+      version = "0.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz";
+        sha1 = "62b110e289a471418e3ec36a617d472e301dfc89";
+      };
+    };
+    "is-extendable-1.0.1" = {
+      name = "is-extendable";
+      packageName = "is-extendable";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz";
+        sha512 = "arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==";
+      };
+    };
+    "is-extglob-1.0.0" = {
+      name = "is-extglob";
+      packageName = "is-extglob";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz";
+        sha1 = "ac468177c4943405a092fc8f29760c6ffc6206c0";
+      };
+    };
+    "is-extglob-2.1.1" = {
+      name = "is-extglob";
+      packageName = "is-extglob";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz";
+        sha1 = "a88c02535791f02ed37c76a1b9ea9773c833f8c2";
+      };
+    };
+    "is-finite-1.0.2" = {
+      name = "is-finite";
+      packageName = "is-finite";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz";
+        sha1 = "cc6677695602be550ef11e8b4aa6305342b6d0aa";
+      };
+    };
+    "is-fullwidth-code-point-1.0.0" = {
+      name = "is-fullwidth-code-point";
+      packageName = "is-fullwidth-code-point";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz";
+        sha1 = "ef9e31386f031a7f0d643af82fde50c457ef00cb";
+      };
+    };
+    "is-fullwidth-code-point-2.0.0" = {
+      name = "is-fullwidth-code-point";
+      packageName = "is-fullwidth-code-point";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz";
+        sha1 = "a3b30a5c4f199183167aaab93beefae3ddfb654f";
+      };
+    };
+    "is-glob-2.0.1" = {
+      name = "is-glob";
+      packageName = "is-glob";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz";
+        sha1 = "d096f926a3ded5600f3fdfd91198cb0888c2d863";
+      };
+    };
+    "is-glob-3.1.0" = {
+      name = "is-glob";
+      packageName = "is-glob";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz";
+        sha1 = "7ba5ae24217804ac70707b96922567486cc3e84a";
+      };
+    };
+    "is-glob-4.0.0" = {
+      name = "is-glob";
+      packageName = "is-glob";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-glob/-/is-glob-4.0.0.tgz";
+        sha1 = "9521c76845cc2610a85203ddf080a958c2ffabc0";
+      };
+    };
+    "is-hexadecimal-1.0.2" = {
+      name = "is-hexadecimal";
+      packageName = "is-hexadecimal";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.2.tgz";
+        sha512 = "but/G3sapV3MNyqiDBLrOi4x8uCIw0RY3o/Vb5GT0sMFHrVV7731wFSVy41T5FO1og7G0gXLJh0MkgPRouko/A==";
+      };
+    };
+    "is-my-ip-valid-1.0.0" = {
+      name = "is-my-ip-valid";
+      packageName = "is-my-ip-valid";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-my-ip-valid/-/is-my-ip-valid-1.0.0.tgz";
+        sha512 = "gmh/eWXROncUzRnIa1Ubrt5b8ep/MGSnfAUI3aRp+sqTCs1tv1Isl8d8F6JmkN3dXKc3ehZMrtiPN9eL03NuaQ==";
+      };
+    };
+    "is-my-json-valid-2.17.2" = {
+      name = "is-my-json-valid";
+      packageName = "is-my-json-valid";
+      version = "2.17.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.17.2.tgz";
+        sha512 = "IBhBslgngMQN8DDSppmgDv7RNrlFotuuDsKcrCP3+HbFaVivIBU7u9oiiErw8sH4ynx3+gOGQ3q2otkgiSi6kg==";
+      };
+    };
+    "is-number-2.1.0" = {
+      name = "is-number";
+      packageName = "is-number";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz";
+        sha1 = "01fcbbb393463a548f2f466cce16dece49db908f";
+      };
+    };
+    "is-number-3.0.0" = {
+      name = "is-number";
+      packageName = "is-number";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz";
+        sha1 = "24fd6201a4782cf50561c810276afc7d12d71195";
+      };
+    };
+    "is-number-4.0.0" = {
+      name = "is-number";
+      packageName = "is-number";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz";
+        sha512 = "rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==";
+      };
+    };
+    "is-path-cwd-1.0.0" = {
+      name = "is-path-cwd";
+      packageName = "is-path-cwd";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz";
+        sha1 = "d225ec23132e89edd38fda767472e62e65f1106d";
+      };
+    };
+    "is-path-in-cwd-1.0.1" = {
+      name = "is-path-in-cwd";
+      packageName = "is-path-in-cwd";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.1.tgz";
+        sha512 = "FjV1RTW48E7CWM7eE/J2NJvAEEVektecDBVBE5Hh3nM1Jd0kvhHtX68Pr3xsDf857xt3Y4AkwVULK1Vku62aaQ==";
+      };
+    };
+    "is-path-inside-1.0.1" = {
+      name = "is-path-inside";
+      packageName = "is-path-inside";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz";
+        sha1 = "8ef5b7de50437a3fdca6b4e865ef7aa55cb48036";
+      };
+    };
+    "is-plain-obj-1.1.0" = {
+      name = "is-plain-obj";
+      packageName = "is-plain-obj";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz";
+        sha1 = "71a50c8429dfca773c92a390a4a03b39fcd51d3e";
+      };
+    };
+    "is-plain-object-2.0.4" = {
+      name = "is-plain-object";
+      packageName = "is-plain-object";
+      version = "2.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz";
+        sha512 = "h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==";
+      };
+    };
+    "is-posix-bracket-0.1.1" = {
+      name = "is-posix-bracket";
+      packageName = "is-posix-bracket";
+      version = "0.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz";
+        sha1 = "3334dc79774368e92f016e6fbc0a88f5cd6e6bc4";
+      };
+    };
+    "is-primitive-2.0.0" = {
+      name = "is-primitive";
+      packageName = "is-primitive";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz";
+        sha1 = "207bab91638499c07b2adf240a41a87210034575";
+      };
+    };
+    "is-promise-2.1.0" = {
+      name = "is-promise";
+      packageName = "is-promise";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz";
+        sha1 = "79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa";
+      };
+    };
+    "is-property-1.0.2" = {
+      name = "is-property";
+      packageName = "is-property";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz";
+        sha1 = "57fe1c4e48474edd65b09911f26b1cd4095dda84";
+      };
+    };
+    "is-regex-1.0.4" = {
+      name = "is-regex";
+      packageName = "is-regex";
+      version = "1.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz";
+        sha1 = "5517489b547091b0930e095654ced25ee97e9491";
+      };
+    };
+    "is-relative-1.0.0" = {
+      name = "is-relative";
+      packageName = "is-relative";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz";
+        sha512 = "Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==";
+      };
+    };
+    "is-resolvable-1.1.0" = {
+      name = "is-resolvable";
+      packageName = "is-resolvable";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.1.0.tgz";
+        sha512 = "qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg==";
+      };
+    };
+    "is-stream-1.1.0" = {
+      name = "is-stream";
+      packageName = "is-stream";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz";
+        sha1 = "12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44";
+      };
+    };
+    "is-svg-2.1.0" = {
+      name = "is-svg";
+      packageName = "is-svg";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-svg/-/is-svg-2.1.0.tgz";
+        sha1 = "cf61090da0d9efbcab8722deba6f032208dbb0e9";
+      };
+    };
+    "is-symbol-1.0.1" = {
+      name = "is-symbol";
+      packageName = "is-symbol";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.1.tgz";
+        sha1 = "3cc59f00025194b6ab2e38dbae6689256b660572";
+      };
+    };
+    "is-typedarray-1.0.0" = {
+      name = "is-typedarray";
+      packageName = "is-typedarray";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz";
+        sha1 = "e479c80858df0c1b11ddda6940f96011fcda4a9a";
+      };
+    };
+    "is-unc-path-1.0.0" = {
+      name = "is-unc-path";
+      packageName = "is-unc-path";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz";
+        sha512 = "mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==";
+      };
+    };
+    "is-utf8-0.2.1" = {
+      name = "is-utf8";
+      packageName = "is-utf8";
+      version = "0.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz";
+        sha1 = "4b0da1442104d1b336340e80797e865cf39f7d72";
+      };
+    };
+    "is-windows-0.2.0" = {
+      name = "is-windows";
+      packageName = "is-windows";
+      version = "0.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-windows/-/is-windows-0.2.0.tgz";
+        sha1 = "de1aa6d63ea29dd248737b69f1ff8b8002d2108c";
+      };
+    };
+    "is-windows-1.0.2" = {
+      name = "is-windows";
+      packageName = "is-windows";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz";
+        sha512 = "eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==";
+      };
+    };
+    "isarray-0.0.1" = {
+      name = "isarray";
+      packageName = "isarray";
+      version = "0.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz";
+        sha1 = "8a18acfca9a8f4177e09abfc6038939b05d1eedf";
+      };
+    };
+    "isarray-1.0.0" = {
+      name = "isarray";
+      packageName = "isarray";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz";
+        sha1 = "bb935d48582cba168c06834957a54a3e07124f11";
+      };
+    };
+    "isarray-2.0.1" = {
+      name = "isarray";
+      packageName = "isarray";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz";
+        sha1 = "a37d94ed9cda2d59865c9f76fe596ee1f338741e";
+      };
+    };
+    "isexe-2.0.0" = {
+      name = "isexe";
+      packageName = "isexe";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz";
+        sha1 = "e8fbf374dc556ff8947a10dcb0572d633f2cfa10";
+      };
+    };
+    "isobject-2.1.0" = {
+      name = "isobject";
+      packageName = "isobject";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz";
+        sha1 = "f065561096a3f1da2ef46272f815c840d87e0c89";
+      };
+    };
+    "isobject-3.0.1" = {
+      name = "isobject";
+      packageName = "isobject";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz";
+        sha1 = "4e431e92b11a9731636aa1f9c8d1ccbcfdab78df";
+      };
+    };
+    "isstream-0.1.2" = {
+      name = "isstream";
+      packageName = "isstream";
+      version = "0.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz";
+        sha1 = "47e63f7af55afa6f92e1500e690eb8b8529c099a";
+      };
+    };
+    "jmespath-0.15.0" = {
+      name = "jmespath";
+      packageName = "jmespath";
+      version = "0.15.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jmespath/-/jmespath-0.15.0.tgz";
+        sha1 = "a3f222a9aae9f966f5d27c796510e28091764217";
+      };
+    };
+    "js-base64-2.4.8" = {
+      name = "js-base64";
+      packageName = "js-base64";
+      version = "2.4.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/js-base64/-/js-base64-2.4.8.tgz";
+        sha512 = "hm2nYpDrwoO/OzBhdcqs/XGT6XjSuSSCVEpia+Kl2J6x4CYt5hISlVL/AYU1khoDXv0AQVgxtdJySb9gjAn56Q==";
+      };
+    };
+    "js-beautify-1.7.5" = {
+      name = "js-beautify";
+      packageName = "js-beautify";
+      version = "1.7.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/js-beautify/-/js-beautify-1.7.5.tgz";
+        sha512 = "9OhfAqGOrD7hoQBLJMTA+BKuKmoEtTJXzZ7WDF/9gvjtey1koVLuZqIY6c51aPDjbNdNtIXAkiWKVhziawE9Og==";
+      };
+    };
+    "js-string-escape-1.0.1" = {
+      name = "js-string-escape";
+      packageName = "js-string-escape";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/js-string-escape/-/js-string-escape-1.0.1.tgz";
+        sha1 = "e2625badbc0d67c7533e9edc1068c587ae4137ef";
+      };
+    };
+    "js-tokens-3.0.2" = {
+      name = "js-tokens";
+      packageName = "js-tokens";
+      version = "3.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz";
+        sha1 = "9866df395102130e38f7f996bceb65443209c25b";
+      };
+    };
+    "js-yaml-3.12.0" = {
+      name = "js-yaml";
+      packageName = "js-yaml";
+      version = "3.12.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/js-yaml/-/js-yaml-3.12.0.tgz";
+        sha512 = "PIt2cnwmPfL4hKNwqeiuz4bKfnzHTBv6HyVgjahA6mPLwPDzjDWrplJBMjHUFxku/N3FlmrbyPclad+I+4mJ3A==";
+      };
+    };
+    "js-yaml-3.5.5" = {
+      name = "js-yaml";
+      packageName = "js-yaml";
+      version = "3.5.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/js-yaml/-/js-yaml-3.5.5.tgz";
+        sha1 = "0377c38017cabc7322b0d1fbcd25a491641f2fbe";
+      };
+    };
+    "js-yaml-3.7.0" = {
+      name = "js-yaml";
+      packageName = "js-yaml";
+      version = "3.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/js-yaml/-/js-yaml-3.7.0.tgz";
+        sha1 = "5c967ddd837a9bfdca5f2de84253abe8a1c03b80";
+      };
+    };
+    "jsbn-0.1.1" = {
+      name = "jsbn";
+      packageName = "jsbn";
+      version = "0.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz";
+        sha1 = "a5e654c2e5a2deb5f201d96cefbca80c0ef2f513";
+      };
+    };
+    "jsdom-9.12.0" = {
+      name = "jsdom";
+      packageName = "jsdom";
+      version = "9.12.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jsdom/-/jsdom-9.12.0.tgz";
+        sha1 = "e8c546fffcb06c00d4833ca84410fed7f8a097d4";
+      };
+    };
+    "jsesc-0.5.0" = {
+      name = "jsesc";
+      packageName = "jsesc";
+      version = "0.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz";
+        sha1 = "e7dee66e35d6fc16f710fe91d5cf69f70f08911d";
+      };
+    };
+    "jsesc-1.3.0" = {
+      name = "jsesc";
+      packageName = "jsesc";
+      version = "1.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz";
+        sha1 = "46c3fec8c1892b12b0833db9bc7622176dbab34b";
+      };
+    };
+    "jshint-2.9.6" = {
+      name = "jshint";
+      packageName = "jshint";
+      version = "2.9.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jshint/-/jshint-2.9.6.tgz";
+        sha512 = "KO9SIAKTlJQOM4lE64GQUtGBRpTOuvbrRrSZw3AhUxMNG266nX9hK2cKA4SBhXOj0irJGyNyGSLT62HGOVDEOA==";
+      };
+    };
+    "json-edm-parser-0.1.2" = {
+      name = "json-edm-parser";
+      packageName = "json-edm-parser";
+      version = "0.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/json-edm-parser/-/json-edm-parser-0.1.2.tgz";
+        sha1 = "1e60b0fef1bc0af67bc0d146dfdde5486cd615b4";
+      };
+    };
+    "json-parse-better-errors-1.0.2" = {
+      name = "json-parse-better-errors";
+      packageName = "json-parse-better-errors";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz";
+        sha512 = "mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==";
+      };
+    };
+    "json-schema-0.2.3" = {
+      name = "json-schema";
+      packageName = "json-schema";
+      version = "0.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz";
+        sha1 = "b480c892e59a2f05954ce727bd3f2a4e882f9e13";
+      };
+    };
+    "json-schema-traverse-0.3.1" = {
+      name = "json-schema-traverse";
+      packageName = "json-schema-traverse";
+      version = "0.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz";
+        sha1 = "349a6d44c53a51de89b40805c5d5e59b417d3340";
+      };
+    };
+    "json-schema-traverse-0.4.1" = {
+      name = "json-schema-traverse";
+      packageName = "json-schema-traverse";
+      version = "0.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz";
+        sha512 = "xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==";
+      };
+    };
+    "json-stable-stringify-1.0.1" = {
+      name = "json-stable-stringify";
+      packageName = "json-stable-stringify";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz";
+        sha1 = "9a759d39c5f2ff503fd5300646ed445f88c4f9af";
+      };
+    };
+    "json-stream-1.0.0" = {
+      name = "json-stream";
+      packageName = "json-stream";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/json-stream/-/json-stream-1.0.0.tgz";
+        sha1 = "1a3854e28d2bbeeab31cc7ddf683d2ddc5652708";
+      };
+    };
+    "json-stringify-safe-5.0.1" = {
+      name = "json-stringify-safe";
+      packageName = "json-stringify-safe";
+      version = "5.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz";
+        sha1 = "1296a2d58fd45f19a0f6ce01d65701e2c735b6eb";
+      };
+    };
+    "json5-0.5.1" = {
+      name = "json5";
+      packageName = "json5";
+      version = "0.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz";
+        sha1 = "1eade7acc012034ad84e2396767ead9fa5495821";
+      };
+    };
+    "jsonfile-2.4.0" = {
+      name = "jsonfile";
+      packageName = "jsonfile";
+      version = "2.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz";
+        sha1 = "3736a2b428b87bbda0cc83b53fa3d633a35c2ae8";
+      };
+    };
+    "jsonfile-4.0.0" = {
+      name = "jsonfile";
+      packageName = "jsonfile";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz";
+        sha1 = "8771aae0799b64076b76640fca058f9c10e33ecb";
+      };
+    };
+    "jsonify-0.0.0" = {
+      name = "jsonify";
+      packageName = "jsonify";
+      version = "0.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz";
+        sha1 = "2c74b6ee41d93ca51b7b5aaee8f503631d252a73";
+      };
+    };
+    "jsonparse-1.2.0" = {
+      name = "jsonparse";
+      packageName = "jsonparse";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jsonparse/-/jsonparse-1.2.0.tgz";
+        sha1 = "5c0c5685107160e72fe7489bddea0b44c2bc67bd";
+      };
+    };
+    "jsonpointer-4.0.1" = {
+      name = "jsonpointer";
+      packageName = "jsonpointer";
+      version = "4.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jsonpointer/-/jsonpointer-4.0.1.tgz";
+        sha1 = "4fd92cb34e0e9db3c89c8622ecf51f9b978c6cb9";
+      };
+    };
+    "jsprim-1.4.1" = {
+      name = "jsprim";
+      packageName = "jsprim";
+      version = "1.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz";
+        sha1 = "313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2";
+      };
+    };
+    "jsx-ast-utils-1.4.1" = {
+      name = "jsx-ast-utils";
+      packageName = "jsx-ast-utils";
+      version = "1.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-1.4.1.tgz";
+        sha1 = "3867213e8dd79bf1e8f2300c0cfc1efb182c0df1";
+      };
+    };
+    "kew-0.7.0" = {
+      name = "kew";
+      packageName = "kew";
+      version = "0.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/kew/-/kew-0.7.0.tgz";
+        sha1 = "79d93d2d33363d6fdd2970b335d9141ad591d79b";
+      };
+    };
+    "kind-of-3.2.2" = {
+      name = "kind-of";
+      packageName = "kind-of";
+      version = "3.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz";
+        sha1 = "31ea21a734bab9bbb0f32466d893aea51e4a3c64";
+      };
+    };
+    "kind-of-4.0.0" = {
+      name = "kind-of";
+      packageName = "kind-of";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz";
+        sha1 = "20813df3d712928b207378691a45066fae72dd57";
+      };
+    };
+    "kind-of-5.1.0" = {
+      name = "kind-of";
+      packageName = "kind-of";
+      version = "5.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz";
+        sha512 = "NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==";
+      };
+    };
+    "kind-of-6.0.2" = {
+      name = "kind-of";
+      packageName = "kind-of";
+      version = "6.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz";
+        sha512 = "s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==";
+      };
+    };
+    "klaw-1.3.1" = {
+      name = "klaw";
+      packageName = "klaw";
+      version = "1.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/klaw/-/klaw-1.3.1.tgz";
+        sha1 = "4088433b46b3b1ba259d78785d8e96f73ba02439";
+      };
+    };
+    "lazy-cache-1.0.4" = {
+      name = "lazy-cache";
+      packageName = "lazy-cache";
+      version = "1.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz";
+        sha1 = "a1d78fc3a50474cb80845d3b3b6e1da49a446e8e";
+      };
+    };
+    "lazystream-1.0.0" = {
+      name = "lazystream";
+      packageName = "lazystream";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lazystream/-/lazystream-1.0.0.tgz";
+        sha1 = "f6995fe0f820392f61396be89462407bb77168e4";
+      };
+    };
+    "lcid-1.0.0" = {
+      name = "lcid";
+      packageName = "lcid";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz";
+        sha1 = "308accafa0bc483a3867b4b6f2b9506251d1b835";
+      };
+    };
+    "ldap-filter-0.2.2" = {
+      name = "ldap-filter";
+      packageName = "ldap-filter";
+      version = "0.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ldap-filter/-/ldap-filter-0.2.2.tgz";
+        sha1 = "f2b842be0b86da3352798505b31ebcae590d77d0";
+      };
+    };
+    "ldapauth-fork-4.0.2" = {
+      name = "ldapauth-fork";
+      packageName = "ldapauth-fork";
+      version = "4.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ldapauth-fork/-/ldapauth-fork-4.0.2.tgz";
+        sha512 = "YoPHsyfV6L/4SO5EMi/Jk1xUMaY+ANlR4Yp+WIsqGkWOLPKkuzRYB4s/IsdKBeb3sdwVCw+q/YN9eoa1dXmQdA==";
+      };
+    };
+    "ldapjs-1.0.2" = {
+      name = "ldapjs";
+      packageName = "ldapjs";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ldapjs/-/ldapjs-1.0.2.tgz";
+        sha1 = "544ff7032b7b83c68f0701328d9297aa694340f9";
+      };
+    };
+    "levn-0.3.0" = {
+      name = "levn";
+      packageName = "levn";
+      version = "0.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz";
+        sha1 = "3b09924edf9f083c0490fdd4c0bc4421e04764ee";
+      };
+    };
+    "liftoff-2.5.0" = {
+      name = "liftoff";
+      packageName = "liftoff";
+      version = "2.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/liftoff/-/liftoff-2.5.0.tgz";
+        sha1 = "2009291bb31cea861bbf10a7c15a28caf75c31ec";
+      };
+    };
+    "linkify-it-2.0.3" = {
+      name = "linkify-it";
+      packageName = "linkify-it";
+      version = "2.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/linkify-it/-/linkify-it-2.0.3.tgz";
+        sha1 = "d94a4648f9b1c179d64fa97291268bdb6ce9434f";
+      };
+    };
+    "load-json-file-2.0.0" = {
+      name = "load-json-file";
+      packageName = "load-json-file";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz";
+        sha1 = "7947e42149af80d696cbf797bcaabcfe1fe29ca8";
+      };
+    };
+    "load-json-file-4.0.0" = {
+      name = "load-json-file";
+      packageName = "load-json-file";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz";
+        sha1 = "2f5f45ab91e33216234fd53adab668eb4ec0993b";
+      };
+    };
+    "loader-utils-0.2.17" = {
+      name = "loader-utils";
+      packageName = "loader-utils";
+      version = "0.2.17";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/loader-utils/-/loader-utils-0.2.17.tgz";
+        sha1 = "f86e6374d43205a6e6c60e9196f17c0299bfb348";
+      };
+    };
+    "loader-utils-1.1.0" = {
+      name = "loader-utils";
+      packageName = "loader-utils";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/loader-utils/-/loader-utils-1.1.0.tgz";
+        sha1 = "c98aef488bcceda2ffb5e2de646d6a754429f5cd";
+      };
+    };
+    "locate-path-2.0.0" = {
+      name = "locate-path";
+      packageName = "locate-path";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz";
+        sha1 = "2b568b265eec944c6d9c0de9c3dbbbca0354cd8e";
+      };
+    };
+    "lodash-1.0.2" = {
+      name = "lodash";
+      packageName = "lodash";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash/-/lodash-1.0.2.tgz";
+        sha1 = "8f57560c83b59fc270bd3d561b690043430e2551";
+      };
+    };
+    "lodash-3.10.1" = {
+      name = "lodash";
+      packageName = "lodash";
+      version = "3.10.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz";
+        sha1 = "5bf45e8e49ba4189e17d482789dfd15bd140b7b6";
+      };
+    };
+    "lodash-4.17.10" = {
+      name = "lodash";
+      packageName = "lodash";
+      version = "4.17.10";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz";
+        sha512 = "UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==";
+      };
+    };
+    "lodash._basecopy-3.0.1" = {
+      name = "lodash._basecopy";
+      packageName = "lodash._basecopy";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz";
+        sha1 = "8da0e6a876cf344c0ad8a54882111dd3c5c7ca36";
+      };
+    };
+    "lodash._basetostring-3.0.1" = {
+      name = "lodash._basetostring";
+      packageName = "lodash._basetostring";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz";
+        sha1 = "d1861d877f824a52f669832dcaf3ee15566a07d5";
+      };
+    };
+    "lodash._basevalues-3.0.0" = {
+      name = "lodash._basevalues";
+      packageName = "lodash._basevalues";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash._basevalues/-/lodash._basevalues-3.0.0.tgz";
+        sha1 = "5b775762802bde3d3297503e26300820fdf661b7";
+      };
+    };
+    "lodash._getnative-3.9.1" = {
+      name = "lodash._getnative";
+      packageName = "lodash._getnative";
+      version = "3.9.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash._getnative/-/lodash._getnative-3.9.1.tgz";
+        sha1 = "570bc7dede46d61cdcde687d65d3eecbaa3aaff5";
+      };
+    };
+    "lodash._isiterateecall-3.0.9" = {
+      name = "lodash._isiterateecall";
+      packageName = "lodash._isiterateecall";
+      version = "3.0.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz";
+        sha1 = "5203ad7ba425fae842460e696db9cf3e6aac057c";
+      };
+    };
+    "lodash._reescape-3.0.0" = {
+      name = "lodash._reescape";
+      packageName = "lodash._reescape";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash._reescape/-/lodash._reescape-3.0.0.tgz";
+        sha1 = "2b1d6f5dfe07c8a355753e5f27fac7f1cde1616a";
+      };
+    };
+    "lodash._reevaluate-3.0.0" = {
+      name = "lodash._reevaluate";
+      packageName = "lodash._reevaluate";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash._reevaluate/-/lodash._reevaluate-3.0.0.tgz";
+        sha1 = "58bc74c40664953ae0b124d806996daca431e2ed";
+      };
+    };
+    "lodash._reinterpolate-3.0.0" = {
+      name = "lodash._reinterpolate";
+      packageName = "lodash._reinterpolate";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz";
+        sha1 = "0ccf2d89166af03b3663c796538b75ac6e114d9d";
+      };
+    };
+    "lodash._root-3.0.1" = {
+      name = "lodash._root";
+      packageName = "lodash._root";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash._root/-/lodash._root-3.0.1.tgz";
+        sha1 = "fba1c4524c19ee9a5f8136b4609f017cf4ded692";
+      };
+    };
+    "lodash.assignin-4.2.0" = {
+      name = "lodash.assignin";
+      packageName = "lodash.assignin";
+      version = "4.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.assignin/-/lodash.assignin-4.2.0.tgz";
+        sha1 = "ba8df5fb841eb0a3e8044232b0e263a8dc6a28a2";
+      };
+    };
+    "lodash.bind-4.2.1" = {
+      name = "lodash.bind";
+      packageName = "lodash.bind";
+      version = "4.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.bind/-/lodash.bind-4.2.1.tgz";
+        sha1 = "7ae3017e939622ac31b7d7d7dcb1b34db1690d35";
+      };
+    };
+    "lodash.camelcase-4.3.0" = {
+      name = "lodash.camelcase";
+      packageName = "lodash.camelcase";
+      version = "4.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz";
+        sha1 = "b28aa6288a2b9fc651035c7711f65ab6190331a6";
+      };
+    };
+    "lodash.defaults-4.2.0" = {
+      name = "lodash.defaults";
+      packageName = "lodash.defaults";
+      version = "4.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz";
+        sha1 = "d09178716ffea4dde9e5fb7b37f6f0802274580c";
+      };
+    };
+    "lodash.escape-3.2.0" = {
+      name = "lodash.escape";
+      packageName = "lodash.escape";
+      version = "3.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.escape/-/lodash.escape-3.2.0.tgz";
+        sha1 = "995ee0dc18c1b48cc92effae71a10aab5b487698";
+      };
+    };
+    "lodash.filter-4.6.0" = {
+      name = "lodash.filter";
+      packageName = "lodash.filter";
+      version = "4.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.filter/-/lodash.filter-4.6.0.tgz";
+        sha1 = "668b1d4981603ae1cc5a6fa760143e480b4c4ace";
+      };
+    };
+    "lodash.flatten-4.4.0" = {
+      name = "lodash.flatten";
+      packageName = "lodash.flatten";
+      version = "4.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz";
+        sha1 = "f31c22225a9632d2bbf8e4addbef240aa765a61f";
+      };
+    };
+    "lodash.foreach-4.5.0" = {
+      name = "lodash.foreach";
+      packageName = "lodash.foreach";
+      version = "4.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.foreach/-/lodash.foreach-4.5.0.tgz";
+        sha1 = "1a6a35eace401280c7f06dddec35165ab27e3e53";
+      };
+    };
+    "lodash.isarguments-3.1.0" = {
+      name = "lodash.isarguments";
+      packageName = "lodash.isarguments";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz";
+        sha1 = "2f573d85c6a24289ff00663b491c1d338ff3458a";
+      };
+    };
+    "lodash.isarray-3.0.4" = {
+      name = "lodash.isarray";
+      packageName = "lodash.isarray";
+      version = "3.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.isarray/-/lodash.isarray-3.0.4.tgz";
+        sha1 = "79e4eb88c36a8122af86f844aa9bcd851b5fbb55";
+      };
+    };
+    "lodash.keys-3.1.2" = {
+      name = "lodash.keys";
+      packageName = "lodash.keys";
+      version = "3.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.keys/-/lodash.keys-3.1.2.tgz";
+        sha1 = "4dbc0472b156be50a0b286855d1bd0b0c656098a";
+      };
+    };
+    "lodash.map-4.6.0" = {
+      name = "lodash.map";
+      packageName = "lodash.map";
+      version = "4.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.map/-/lodash.map-4.6.0.tgz";
+        sha1 = "771ec7839e3473d9c4cde28b19394c3562f4f6d3";
+      };
+    };
+    "lodash.memoize-4.1.2" = {
+      name = "lodash.memoize";
+      packageName = "lodash.memoize";
+      version = "4.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz";
+        sha1 = "bcc6c49a42a2840ed997f323eada5ecd182e0bfe";
+      };
+    };
+    "lodash.merge-4.6.1" = {
+      name = "lodash.merge";
+      packageName = "lodash.merge";
+      version = "4.6.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.1.tgz";
+        sha512 = "AOYza4+Hf5z1/0Hztxpm2/xiPZgi/cjMqdnKTUWTBSKchJlxXXuUSxCCl8rJlf4g6yww/j6mA8nC8Hw/EZWxKQ==";
+      };
+    };
+    "lodash.pick-4.4.0" = {
+      name = "lodash.pick";
+      packageName = "lodash.pick";
+      version = "4.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz";
+        sha1 = "52f05610fff9ded422611441ed1fc123a03001b3";
+      };
+    };
+    "lodash.reduce-4.6.0" = {
+      name = "lodash.reduce";
+      packageName = "lodash.reduce";
+      version = "4.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.reduce/-/lodash.reduce-4.6.0.tgz";
+        sha1 = "f1ab6b839299ad48f784abbf476596f03b914d3b";
+      };
+    };
+    "lodash.reject-4.6.0" = {
+      name = "lodash.reject";
+      packageName = "lodash.reject";
+      version = "4.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.reject/-/lodash.reject-4.6.0.tgz";
+        sha1 = "80d6492dc1470864bbf583533b651f42a9f52415";
+      };
+    };
+    "lodash.restparam-3.6.1" = {
+      name = "lodash.restparam";
+      packageName = "lodash.restparam";
+      version = "3.6.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.restparam/-/lodash.restparam-3.6.1.tgz";
+        sha1 = "936a4e309ef330a7645ed4145986c85ae5b20805";
+      };
+    };
+    "lodash.some-4.6.0" = {
+      name = "lodash.some";
+      packageName = "lodash.some";
+      version = "4.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.some/-/lodash.some-4.6.0.tgz";
+        sha1 = "1bb9f314ef6b8baded13b549169b2a945eb68e4d";
+      };
+    };
+    "lodash.template-3.6.2" = {
+      name = "lodash.template";
+      packageName = "lodash.template";
+      version = "3.6.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.template/-/lodash.template-3.6.2.tgz";
+        sha1 = "f8cdecc6169a255be9098ae8b0c53d378931d14f";
+      };
+    };
+    "lodash.templatesettings-3.1.1" = {
+      name = "lodash.templatesettings";
+      packageName = "lodash.templatesettings";
+      version = "3.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-3.1.1.tgz";
+        sha1 = "fb307844753b66b9f1afa54e262c745307dba8e5";
+      };
+    };
+    "lodash.uniq-4.5.0" = {
+      name = "lodash.uniq";
+      packageName = "lodash.uniq";
+      version = "4.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz";
+        sha1 = "d0225373aeb652adc1bc82e4945339a842754773";
+      };
+    };
+    "longest-1.0.1" = {
+      name = "longest";
+      packageName = "longest";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz";
+        sha1 = "30a0b2da38f73770e8294a0d22e6625ed77d0097";
+      };
+    };
+    "longest-streak-1.0.0" = {
+      name = "longest-streak";
+      packageName = "longest-streak";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/longest-streak/-/longest-streak-1.0.0.tgz";
+        sha1 = "d06597c4d4c31b52ccb1f5d8f8fe7148eafd6965";
+      };
+    };
+    "loose-envify-1.4.0" = {
+      name = "loose-envify";
+      packageName = "loose-envify";
+      version = "1.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz";
+        sha512 = "lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==";
+      };
+    };
+    "lower-case-1.1.4" = {
+      name = "lower-case";
+      packageName = "lower-case";
+      version = "1.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lower-case/-/lower-case-1.1.4.tgz";
+        sha1 = "9a2cabd1b9e8e0ae993a4bf7d5875c39c42e8eac";
+      };
+    };
+    "lru-cache-2.7.3" = {
+      name = "lru-cache";
+      packageName = "lru-cache";
+      version = "2.7.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lru-cache/-/lru-cache-2.7.3.tgz";
+        sha1 = "6d4524e8b955f95d4f5b58851ce21dd72fb4e952";
+      };
+    };
+    "lru-cache-3.2.0" = {
+      name = "lru-cache";
+      packageName = "lru-cache";
+      version = "3.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lru-cache/-/lru-cache-3.2.0.tgz";
+        sha1 = "71789b3b7f5399bec8565dda38aa30d2a097efee";
+      };
+    };
+    "lru-cache-4.1.3" = {
+      name = "lru-cache";
+      packageName = "lru-cache";
+      version = "4.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.3.tgz";
+        sha512 = "fFEhvcgzuIoJVUF8fYr5KR0YqxD238zgObTps31YdADwPPAp82a4M8TrckkWyx7ekNlf9aBcVn81cFwwXngrJA==";
+      };
+    };
+    "lru-queue-0.1.0" = {
+      name = "lru-queue";
+      packageName = "lru-queue";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lru-queue/-/lru-queue-0.1.0.tgz";
+        sha1 = "2738bd9f0d3cf4f84490c5736c48699ac632cda3";
+      };
+    };
+    "magic-string-0.14.0" = {
+      name = "magic-string";
+      packageName = "magic-string";
+      version = "0.14.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/magic-string/-/magic-string-0.14.0.tgz";
+        sha1 = "57224aef1701caeed273b17a39a956e72b172462";
+      };
+    };
+    "make-dir-1.3.0" = {
+      name = "make-dir";
+      packageName = "make-dir";
+      version = "1.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz";
+        sha512 = "2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==";
+      };
+    };
+    "make-iterator-1.0.1" = {
+      name = "make-iterator";
+      packageName = "make-iterator";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/make-iterator/-/make-iterator-1.0.1.tgz";
+        sha512 = "pxiuXh0iVEq7VM7KMIhs5gxsfxCux2URptUQaXo4iZZJxBAzTPOLE2BumO5dbfVYq/hBJFBR/a1mFDmOx5AGmw==";
+      };
+    };
+    "make-plural-3.0.6" = {
+      name = "make-plural";
+      packageName = "make-plural";
+      version = "3.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/make-plural/-/make-plural-3.0.6.tgz";
+        sha1 = "2033a03bac290b8f3bb91258f65b9df7e8b01ca7";
+      };
+    };
+    "map-cache-0.2.2" = {
+      name = "map-cache";
+      packageName = "map-cache";
+      version = "0.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz";
+        sha1 = "c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf";
+      };
+    };
+    "map-visit-1.0.0" = {
+      name = "map-visit";
+      packageName = "map-visit";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz";
+        sha1 = "ecdca8f13144e660f1b5bd41f12f3479d98dfb8f";
+      };
+    };
+    "markdown-table-0.4.0" = {
+      name = "markdown-table";
+      packageName = "markdown-table";
+      version = "0.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/markdown-table/-/markdown-table-0.4.0.tgz";
+        sha1 = "890c2c1b3bfe83fb00e4129b8e4cfe645270f9d1";
+      };
+    };
+    "markdown-to-ast-3.4.0" = {
+      name = "markdown-to-ast";
+      packageName = "markdown-to-ast";
+      version = "3.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/markdown-to-ast/-/markdown-to-ast-3.4.0.tgz";
+        sha1 = "0e2cba81390b0549a9153ec3b0d915b61c164be7";
+      };
+    };
+    "marked-0.3.19" = {
+      name = "marked";
+      packageName = "marked";
+      version = "0.3.19";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/marked/-/marked-0.3.19.tgz";
+        sha512 = "ea2eGWOqNxPcXv8dyERdSr/6FmzvWwzjMxpfGB/sbMccXoct+xY+YukPD+QTUZwyvK7BZwcr4m21WBOW41pAkg==";
+      };
+    };
+    "math-expression-evaluator-1.2.17" = {
+      name = "math-expression-evaluator";
+      packageName = "math-expression-evaluator";
+      version = "1.2.17";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/math-expression-evaluator/-/math-expression-evaluator-1.2.17.tgz";
+        sha1 = "de819fdbcd84dccd8fae59c6aeb79615b9d266ac";
+      };
+    };
+    "math-interval-parser-1.1.0" = {
+      name = "math-interval-parser";
+      packageName = "math-interval-parser";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/math-interval-parser/-/math-interval-parser-1.1.0.tgz";
+        sha1 = "dbeda5b06b3249973c6df6170fde2386f0afd893";
+      };
+    };
+    "math-random-1.0.1" = {
+      name = "math-random";
+      packageName = "math-random";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/math-random/-/math-random-1.0.1.tgz";
+        sha1 = "8b3aac588b8a66e4975e3cdea67f7bb329601fac";
+      };
+    };
+    "maxmin-2.1.0" = {
+      name = "maxmin";
+      packageName = "maxmin";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/maxmin/-/maxmin-2.1.0.tgz";
+        sha1 = "4d3b220903d95eee7eb7ac7fa864e72dc09a3166";
+      };
+    };
+    "md5.js-1.3.4" = {
+      name = "md5.js";
+      packageName = "md5.js";
+      version = "1.3.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/md5.js/-/md5.js-1.3.4.tgz";
+        sha1 = "e9bdbde94a20a5ac18b04340fc5764d5b09d901d";
+      };
+    };
+    "mdurl-1.0.1" = {
+      name = "mdurl";
+      packageName = "mdurl";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz";
+        sha1 = "fe85b2ec75a59037f2adfec100fd6c601761152e";
+      };
+    };
+    "media-typer-0.3.0" = {
+      name = "media-typer";
+      packageName = "media-typer";
+      version = "0.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz";
+        sha1 = "8710d7af0aa626f8fffa1ce00168545263255748";
+      };
+    };
+    "mem-1.1.0" = {
+      name = "mem";
+      packageName = "mem";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mem/-/mem-1.1.0.tgz";
+        sha1 = "5edd52b485ca1d900fe64895505399a0dfa45f76";
+      };
+    };
+    "memoizee-0.4.12" = {
+      name = "memoizee";
+      packageName = "memoizee";
+      version = "0.4.12";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/memoizee/-/memoizee-0.4.12.tgz";
+        sha512 = "sprBu6nwxBWBvBOh5v2jcsGqiGLlL2xr2dLub3vR8dnE8YB17omwtm/0NSHl8jjNbcsJd5GMWJAnTSVe/O0Wfg==";
+      };
+    };
+    "memory-fs-0.2.0" = {
+      name = "memory-fs";
+      packageName = "memory-fs";
+      version = "0.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/memory-fs/-/memory-fs-0.2.0.tgz";
+        sha1 = "f2bb25368bc121e391c2520de92969caee0a0290";
+      };
+    };
+    "memory-fs-0.3.0" = {
+      name = "memory-fs";
+      packageName = "memory-fs";
+      version = "0.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/memory-fs/-/memory-fs-0.3.0.tgz";
+        sha1 = "7bcc6b629e3a43e871d7e29aca6ae8a7f15cbb20";
+      };
+    };
+    "merge-descriptors-1.0.1" = {
+      name = "merge-descriptors";
+      packageName = "merge-descriptors";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz";
+        sha1 = "b00aaa556dd8b44568150ec9d1b953f3f90cbb61";
+      };
+    };
+    "messageformat-0.3.1" = {
+      name = "messageformat";
+      packageName = "messageformat";
+      version = "0.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/messageformat/-/messageformat-0.3.1.tgz";
+        sha1 = "e58fff8245e9b3971799e5b43db58b3e9417f5a2";
+      };
+    };
+    "methods-1.1.2" = {
+      name = "methods";
+      packageName = "methods";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz";
+        sha1 = "5529a4d67654134edcc5266656835b0f851afcee";
+      };
+    };
+    "micromatch-2.3.11" = {
+      name = "micromatch";
+      packageName = "micromatch";
+      version = "2.3.11";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz";
+        sha1 = "86677c97d1720b363431d04d0d15293bd38c1565";
+      };
+    };
+    "micromatch-3.1.10" = {
+      name = "micromatch";
+      packageName = "micromatch";
+      version = "3.1.10";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz";
+        sha512 = "MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==";
+      };
+    };
+    "mime-1.3.4" = {
+      name = "mime";
+      packageName = "mime";
+      version = "1.3.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mime/-/mime-1.3.4.tgz";
+        sha1 = "115f9e3b6b3daf2959983cb38f149a2d40eb5d53";
+      };
+    };
+    "mime-1.3.6" = {
+      name = "mime";
+      packageName = "mime";
+      version = "1.3.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mime/-/mime-1.3.6.tgz";
+        sha1 = "591d84d3653a6b0b4a3b9df8de5aa8108e72e5e0";
+      };
+    };
+    "mime-1.4.1" = {
+      name = "mime";
+      packageName = "mime";
+      version = "1.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz";
+        sha512 = "KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==";
+      };
+    };
+    "mime-1.6.0" = {
+      name = "mime";
+      packageName = "mime";
+      version = "1.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz";
+        sha512 = "x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==";
+      };
+    };
+    "mime-db-1.35.0" = {
+      name = "mime-db";
+      packageName = "mime-db";
+      version = "1.35.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mime-db/-/mime-db-1.35.0.tgz";
+        sha512 = "JWT/IcCTsB0Io3AhWUMjRqucrHSPsSf2xKLaRldJVULioggvkJvggZ3VXNNSRkCddE6D+BUI4HEIZIA2OjwIvg==";
+      };
+    };
+    "mime-types-2.1.19" = {
+      name = "mime-types";
+      packageName = "mime-types";
+      version = "2.1.19";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.19.tgz";
+        sha512 = "P1tKYHVSZ6uFo26mtnve4HQFE3koh1UWVkp8YUC+ESBHe945xWSoXuHHiGarDqcEZ+whpCDnlNw5LON0kLo+sw==";
+      };
+    };
+    "mimic-fn-1.2.0" = {
+      name = "mimic-fn";
+      packageName = "mimic-fn";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz";
+        sha512 = "jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==";
+      };
+    };
+    "minimatch-0.2.14" = {
+      name = "minimatch";
+      packageName = "minimatch";
+      version = "0.2.14";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/minimatch/-/minimatch-0.2.14.tgz";
+        sha1 = "c74e780574f63c6f9a090e90efbe6ef53a6a756a";
+      };
+    };
+    "minimatch-2.0.10" = {
+      name = "minimatch";
+      packageName = "minimatch";
+      version = "2.0.10";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/minimatch/-/minimatch-2.0.10.tgz";
+        sha1 = "8d087c39c6b38c001b97fca7ce6d0e1e80afbac7";
+      };
+    };
+    "minimatch-3.0.4" = {
+      name = "minimatch";
+      packageName = "minimatch";
+      version = "3.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz";
+        sha512 = "yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==";
+      };
+    };
+    "minimist-0.0.10" = {
+      name = "minimist";
+      packageName = "minimist";
+      version = "0.0.10";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz";
+        sha1 = "de3f98543dbf96082be48ad1a0c7cda836301dcf";
+      };
+    };
+    "minimist-0.0.8" = {
+      name = "minimist";
+      packageName = "minimist";
+      version = "0.0.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz";
+        sha1 = "857fcabfc3397d2625b8228262e86aa7a011b05d";
+      };
+    };
+    "minimist-1.2.0" = {
+      name = "minimist";
+      packageName = "minimist";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz";
+        sha1 = "a35008b20f41383eec1fb914f4cd5df79a264284";
+      };
+    };
+    "minipass-2.3.3" = {
+      name = "minipass";
+      packageName = "minipass";
+      version = "2.3.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/minipass/-/minipass-2.3.3.tgz";
+        sha512 = "/jAn9/tEX4gnpyRATxgHEOV6xbcyxgT7iUnxo9Y3+OB0zX00TgKIv/2FZCf5brBbICcwbLqVv2ImjvWWrQMSYw==";
+      };
+    };
+    "minizlib-1.1.0" = {
+      name = "minizlib";
+      packageName = "minizlib";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/minizlib/-/minizlib-1.1.0.tgz";
+        sha512 = "4T6Ur/GctZ27nHfpt9THOdRZNgyJ9FZchYO1ceg5S8Q3DNLCKYy44nCZzgCJgcvx2UM8czmqak5BCxJMrq37lA==";
+      };
+    };
+    "mississippi-2.0.0" = {
+      name = "mississippi";
+      packageName = "mississippi";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mississippi/-/mississippi-2.0.0.tgz";
+        sha512 = "zHo8v+otD1J10j/tC+VNoGK9keCuByhKovAvdn74dmxJl9+mWHnx6EMsDN4lgRoMI/eYo2nchAxniIbUPb5onw==";
+      };
+    };
+    "mixin-deep-1.3.1" = {
+      name = "mixin-deep";
+      packageName = "mixin-deep";
+      version = "1.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.1.tgz";
+        sha512 = "8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ==";
+      };
+    };
+    "mkdirp-0.5.1" = {
+      name = "mkdirp";
+      packageName = "mkdirp";
+      version = "0.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz";
+        sha1 = "30057438eac6cf7f8c4767f38648d6697d75c903";
+      };
+    };
+    "moment-2.22.2" = {
+      name = "moment";
+      packageName = "moment";
+      version = "2.22.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/moment/-/moment-2.22.2.tgz";
+        sha1 = "3c257f9839fc0e93ff53149632239eb90783ff66";
+      };
+    };
+    "moment-timezone-0.5.21" = {
+      name = "moment-timezone";
+      packageName = "moment-timezone";
+      version = "0.5.21";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.21.tgz";
+        sha512 = "j96bAh4otsgj3lKydm3K7kdtA3iKf2m6MY2iSYCzCm5a1zmHo1g+aK3068dDEeocLZQIS9kU8bsdQHLqEvgW0A==";
+      };
+    };
+    "move-concurrently-1.0.1" = {
+      name = "move-concurrently";
+      packageName = "move-concurrently";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz";
+        sha1 = "be2c005fda32e0b29af1f05d7c4b33214c701f92";
+      };
+    };
+    "ms-2.0.0" = {
+      name = "ms";
+      packageName = "ms";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz";
+        sha1 = "5608aeadfc00be6c2901df5f9861788de0d597c8";
+      };
+    };
+    "multipipe-0.1.2" = {
+      name = "multipipe";
+      packageName = "multipipe";
+      version = "0.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/multipipe/-/multipipe-0.1.2.tgz";
+        sha1 = "2a8f2ddf70eed564dff2d57f1e1a137d9f05078b";
+      };
+    };
+    "mustache-2.3.0" = {
+      name = "mustache";
+      packageName = "mustache";
+      version = "2.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mustache/-/mustache-2.3.0.tgz";
+        sha1 = "4028f7778b17708a489930a6e52ac3bca0da41d0";
+      };
+    };
+    "mute-stream-0.0.5" = {
+      name = "mute-stream";
+      packageName = "mute-stream";
+      version = "0.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.5.tgz";
+        sha1 = "8fbfabb0a98a253d3184331f9e8deb7372fac6c0";
+      };
+    };
+    "mv-2.1.1" = {
+      name = "mv";
+      packageName = "mv";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mv/-/mv-2.1.1.tgz";
+        sha1 = "ae6ce0d6f6d5e0a4f7d893798d03c1ea9559b6a2";
+      };
+    };
+    "nan-2.10.0" = {
+      name = "nan";
+      packageName = "nan";
+      version = "2.10.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/nan/-/nan-2.10.0.tgz";
+        sha512 = "bAdJv7fBLhWC+/Bls0Oza+mvTaNQtP+1RyhhhvD95pgUJz6XM5IzgmxOkItJ9tkoCiplvAnXI1tNmmUD/eScyA==";
+      };
+    };
+    "nanomatch-1.2.13" = {
+      name = "nanomatch";
+      packageName = "nanomatch";
+      version = "1.2.13";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz";
+        sha512 = "fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==";
+      };
+    };
+    "natives-1.1.4" = {
+      name = "natives";
+      packageName = "natives";
+      version = "1.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/natives/-/natives-1.1.4.tgz";
+        sha512 = "Q29yeg9aFKwhLVdkTAejM/HvYG0Y1Am1+HUkFQGn5k2j8GS+v60TVmZh6nujpEAj/qql+wGUrlryO8bF+b1jEg==";
+      };
+    };
+    "natural-compare-1.4.0" = {
+      name = "natural-compare";
+      packageName = "natural-compare";
+      version = "1.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz";
+        sha1 = "4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7";
+      };
+    };
+    "ncp-2.0.0" = {
+      name = "ncp";
+      packageName = "ncp";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ncp/-/ncp-2.0.0.tgz";
+        sha1 = "195a21d6c46e361d2fb1281ba38b91e9df7bdbb3";
+      };
+    };
+    "needle-2.2.1" = {
+      name = "needle";
+      packageName = "needle";
+      version = "2.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/needle/-/needle-2.2.1.tgz";
+        sha512 = "t/ZswCM9JTWjAdXS9VpvqhI2Ct2sL2MdY4fUXqGJaGBk13ge99ObqRksRTbBE56K+wxUXwwfZYOuZHifFW9q+Q==";
+      };
+    };
+    "negotiator-0.6.1" = {
+      name = "negotiator";
+      packageName = "negotiator";
+      version = "0.6.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz";
+        sha1 = "2b327184e8992101177b28563fb5e7102acd0ca9";
+      };
+    };
+    "next-tick-1.0.0" = {
+      name = "next-tick";
+      packageName = "next-tick";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz";
+        sha1 = "ca86d1fe8828169b0120208e3dc8424b9db8342c";
+      };
+    };
+    "no-case-2.3.2" = {
+      name = "no-case";
+      packageName = "no-case";
+      version = "2.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/no-case/-/no-case-2.3.2.tgz";
+        sha512 = "rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ==";
+      };
+    };
+    "nocache-2.0.0" = {
+      name = "nocache";
+      packageName = "nocache";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/nocache/-/nocache-2.0.0.tgz";
+        sha1 = "202b48021a0c4cbde2df80de15a17443c8b43980";
+      };
+    };
+    "node-forge-0.7.5" = {
+      name = "node-forge";
+      packageName = "node-forge";
+      version = "0.7.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/node-forge/-/node-forge-0.7.5.tgz";
+        sha512 = "MmbQJ2MTESTjt3Gi/3yG1wGpIMhUfcIypUCGtTizFR9IiccFwxSpfp0vtIZlkFclEqERemxfnSdZEMR9VqqEFQ==";
+      };
+    };
+    "node-libs-browser-0.7.0" = {
+      name = "node-libs-browser";
+      packageName = "node-libs-browser";
+      version = "0.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-0.7.0.tgz";
+        sha1 = "3e272c0819e308935e26674408d7af0e1491b83b";
+      };
+    };
+    "node-pre-gyp-0.10.3" = {
+      name = "node-pre-gyp";
+      packageName = "node-pre-gyp";
+      version = "0.10.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/node-pre-gyp/-/node-pre-gyp-0.10.3.tgz";
+        sha512 = "d1xFs+C/IPS8Id0qPTZ4bUT8wWryfR/OzzAFxweG+uLN85oPzyo2Iw6bVlLQ/JOdgNonXLCoRyqDzDWq4iw72A==";
+      };
+    };
+    "node-static-0.6.0" = {
+      name = "node-static";
+      packageName = "node-static";
+      version = "0.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/node-static/-/node-static-0.6.0.tgz";
+        sha1 = "e8543a897f3c82048220b39569284d44796eb1e2";
+      };
+    };
+    "nomnom-1.8.1" = {
+      name = "nomnom";
+      packageName = "nomnom";
+      version = "1.8.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/nomnom/-/nomnom-1.8.1.tgz";
+        sha1 = "2151f722472ba79e50a76fc125bb8c8f2e4dc2a7";
+      };
+    };
+    "nopt-3.0.6" = {
+      name = "nopt";
+      packageName = "nopt";
+      version = "3.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz";
+        sha1 = "c6465dbf08abcd4db359317f79ac68a646b28ff9";
+      };
+    };
+    "nopt-4.0.1" = {
+      name = "nopt";
+      packageName = "nopt";
+      version = "4.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/nopt/-/nopt-4.0.1.tgz";
+        sha1 = "d0d4685afd5415193c8c7505602d0d17cd64474d";
+      };
+    };
+    "normalize-package-data-2.4.0" = {
+      name = "normalize-package-data";
+      packageName = "normalize-package-data";
+      version = "2.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz";
+        sha512 = "9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==";
+      };
+    };
+    "normalize-path-2.1.1" = {
+      name = "normalize-path";
+      packageName = "normalize-path";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz";
+        sha1 = "1ab28b556e198363a8c1a6f7e6fa20137fe6aed9";
+      };
+    };
+    "normalize-range-0.1.2" = {
+      name = "normalize-range";
+      packageName = "normalize-range";
+      version = "0.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz";
+        sha1 = "2d10c06bdfd312ea9777695a4d28439456b75942";
+      };
+    };
+    "normalize-url-1.9.1" = {
+      name = "normalize-url";
+      packageName = "normalize-url";
+      version = "1.9.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/normalize-url/-/normalize-url-1.9.1.tgz";
+        sha1 = "2cc0d66b31ea23036458436e3620d85954c66c3c";
+      };
+    };
+    "npm-bundled-1.0.3" = {
+      name = "npm-bundled";
+      packageName = "npm-bundled";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.0.3.tgz";
+        sha512 = "ByQ3oJ/5ETLyglU2+8dBObvhfWXX8dtPZDMePCahptliFX2iIuhyEszyFk401PZUNQH20vvdW5MLjJxkwU80Ow==";
+      };
+    };
+    "npm-packlist-1.1.11" = {
+      name = "npm-packlist";
+      packageName = "npm-packlist";
+      version = "1.1.11";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/npm-packlist/-/npm-packlist-1.1.11.tgz";
+        sha512 = "CxKlZ24urLkJk+9kCm48RTQ7L4hsmgSVzEk0TLGPzzyuFxD7VNgy5Sl24tOLMzQv773a/NeJ1ce1DKeacqffEA==";
+      };
+    };
+    "npm-run-path-2.0.2" = {
+      name = "npm-run-path";
+      packageName = "npm-run-path";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz";
+        sha1 = "35a9232dfa35d7067b4cb2ddf2357b1871536c5f";
+      };
+    };
+    "npmlog-4.1.2" = {
+      name = "npmlog";
+      packageName = "npmlog";
+      version = "4.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz";
+        sha512 = "2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==";
+      };
+    };
+    "nth-check-1.0.1" = {
+      name = "nth-check";
+      packageName = "nth-check";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/nth-check/-/nth-check-1.0.1.tgz";
+        sha1 = "9929acdf628fc2c41098deab82ac580cf149aae4";
+      };
+    };
+    "num2fraction-1.2.2" = {
+      name = "num2fraction";
+      packageName = "num2fraction";
+      version = "1.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz";
+        sha1 = "6f682b6a027a4e9ddfa4564cd2589d1d4e669ede";
+      };
+    };
+    "number-is-nan-1.0.1" = {
+      name = "number-is-nan";
+      packageName = "number-is-nan";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz";
+        sha1 = "097b602b53422a522c1afb8790318336941a011d";
+      };
+    };
+    "nwmatcher-1.3.9" = {
+      name = "nwmatcher";
+      packageName = "nwmatcher";
+      version = "1.3.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/nwmatcher/-/nwmatcher-1.3.9.tgz";
+        sha1 = "8bab486ff7fa3dfd086656bbe8b17116d3692d2a";
+      };
+    };
+    "nwmatcher-1.4.4" = {
+      name = "nwmatcher";
+      packageName = "nwmatcher";
+      version = "1.4.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/nwmatcher/-/nwmatcher-1.4.4.tgz";
+        sha512 = "3iuY4N5dhgMpCUrOVnuAdGrgxVqV2cJpM+XNccjR2DKOB1RUP0aA+wGXEiNziG/UKboFyGBIoKOaNlJxx8bciQ==";
+      };
+    };
+    "oauth-0.9.15" = {
+      name = "oauth";
+      packageName = "oauth";
+      version = "0.9.15";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/oauth/-/oauth-0.9.15.tgz";
+        sha1 = "bd1fefaf686c96b75475aed5196412ff60cfb9c1";
+      };
+    };
+    "oauth-sign-0.8.2" = {
+      name = "oauth-sign";
+      packageName = "oauth-sign";
+      version = "0.8.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz";
+        sha1 = "46a6ab7f0aead8deae9ec0565780b7d4efeb9d43";
+      };
+    };
+    "object-assign-3.0.0" = {
+      name = "object-assign";
+      packageName = "object-assign";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/object-assign/-/object-assign-3.0.0.tgz";
+        sha1 = "9bedd5ca0897949bca47e7ff408062d549f587f2";
+      };
+    };
+    "object-assign-4.1.0" = {
+      name = "object-assign";
+      packageName = "object-assign";
+      version = "4.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/object-assign/-/object-assign-4.1.0.tgz";
+        sha1 = "7a3b3d0e98063d43f4c03f2e8ae6cd51a86883a0";
+      };
+    };
+    "object-assign-4.1.1" = {
+      name = "object-assign";
+      packageName = "object-assign";
+      version = "4.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz";
+        sha1 = "2109adc7965887cfc05cbbd442cac8bfbb360863";
+      };
+    };
+    "object-component-0.0.3" = {
+      name = "object-component";
+      packageName = "object-component";
+      version = "0.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/object-component/-/object-component-0.0.3.tgz";
+        sha1 = "f0c69aa50efc95b866c186f400a33769cb2f1291";
+      };
+    };
+    "object-copy-0.1.0" = {
+      name = "object-copy";
+      packageName = "object-copy";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz";
+        sha1 = "7e7d858b781bd7c991a41ba975ed3812754e998c";
+      };
+    };
+    "object-keys-1.0.12" = {
+      name = "object-keys";
+      packageName = "object-keys";
+      version = "1.0.12";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/object-keys/-/object-keys-1.0.12.tgz";
+        sha512 = "FTMyFUm2wBcGHnH2eXmz7tC6IwlqQZ6mVZ+6dm6vZ4IQIHjs6FdNsQBuKGPuUUUY6NfJw2PshC08Tn6LzLDOag==";
+      };
+    };
+    "object-visit-1.0.1" = {
+      name = "object-visit";
+      packageName = "object-visit";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz";
+        sha1 = "f79c4493af0c5377b59fe39d395e41042dd045bb";
+      };
+    };
+    "object.defaults-1.1.0" = {
+      name = "object.defaults";
+      packageName = "object.defaults";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/object.defaults/-/object.defaults-1.1.0.tgz";
+        sha1 = "3a7f868334b407dea06da16d88d5cd29e435fecf";
+      };
+    };
+    "object.map-1.0.1" = {
+      name = "object.map";
+      packageName = "object.map";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/object.map/-/object.map-1.0.1.tgz";
+        sha1 = "cf83e59dc8fcc0ad5f4250e1f78b3b81bd801d37";
+      };
+    };
+    "object.omit-2.0.1" = {
+      name = "object.omit";
+      packageName = "object.omit";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz";
+        sha1 = "1a9c744829f39dbb858c76ca3579ae2a54ebd1fa";
+      };
+    };
+    "object.pick-1.3.0" = {
+      name = "object.pick";
+      packageName = "object.pick";
+      version = "1.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz";
+        sha1 = "87a10ac4c1694bd2e1cbf53591a66141fb5dd747";
+      };
+    };
+    "on-finished-2.3.0" = {
+      name = "on-finished";
+      packageName = "on-finished";
+      version = "2.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz";
+        sha1 = "20f1336481b083cd75337992a16971aa2d906947";
+      };
+    };
+    "on-headers-1.0.1" = {
+      name = "on-headers";
+      packageName = "on-headers";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/on-headers/-/on-headers-1.0.1.tgz";
+        sha1 = "928f5d0f470d49342651ea6794b0857c100693f7";
+      };
+    };
+    "once-1.3.3" = {
+      name = "once";
+      packageName = "once";
+      version = "1.3.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/once/-/once-1.3.3.tgz";
+        sha1 = "b2e261557ce4c314ec8304f3fa82663e4297ca20";
+      };
+    };
+    "once-1.4.0" = {
+      name = "once";
+      packageName = "once";
+      version = "1.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/once/-/once-1.4.0.tgz";
+        sha1 = "583b1aa775961d4b113ac17d9c50baef9dd76bd1";
+      };
+    };
+    "onetime-1.1.0" = {
+      name = "onetime";
+      packageName = "onetime";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "http://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz";
+        sha1 = "a1f7838f8314c516f05ecefcbc4ccfe04b4ed789";
+      };
+    };
+    "optimist-0.6.1" = {
+      name = "optimist";
+      packageName = "optimist";
+      version = "0.6.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz";
+        sha1 = "da3ea74686fa21a19a111c326e90eb15a0196686";
+      };
+    };
+    "optionator-0.8.2" = {
+      name = "optionator";
+      packageName = "optionator";
+      version = "0.8.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz";
+        sha1 = "364c5e409d3f4d6301d6c0b4c05bba50180aeb64";
+      };
+    };
+    "orchestrator-0.3.8" = {
+      name = "orchestrator";
+      packageName = "orchestrator";
+      version = "0.3.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/orchestrator/-/orchestrator-0.3.8.tgz";
+        sha1 = "14e7e9e2764f7315fbac184e506c7aa6df94ad7e";
+      };
+    };
+    "ordered-read-streams-0.1.0" = {
+      name = "ordered-read-streams";
+      packageName = "ordered-read-streams";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ordered-read-streams/-/ordered-read-streams-0.1.0.tgz";
+        sha1 = "fd565a9af8eb4473ba69b6ed8a34352cb552f126";
+      };
+    };
+    "os-browserify-0.2.1" = {
+      name = "os-browserify";
+      packageName = "os-browserify";
+      version = "0.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/os-browserify/-/os-browserify-0.2.1.tgz";
+        sha1 = "63fc4ccee5d2d7763d26bbf8601078e6c2e0044f";
+      };
+    };
+    "os-homedir-1.0.2" = {
+      name = "os-homedir";
+      packageName = "os-homedir";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz";
+        sha1 = "ffbc4988336e0e833de0c168c7ef152121aa7fb3";
+      };
+    };
+    "os-locale-2.1.0" = {
+      name = "os-locale";
+      packageName = "os-locale";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/os-locale/-/os-locale-2.1.0.tgz";
+        sha512 = "3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA==";
+      };
+    };
+    "os-tmpdir-1.0.2" = {
+      name = "os-tmpdir";
+      packageName = "os-tmpdir";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz";
+        sha1 = "bbe67406c79aa85c5cfec766fe5734555dfa1274";
+      };
+    };
+    "osenv-0.1.5" = {
+      name = "osenv";
+      packageName = "osenv";
+      version = "0.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz";
+        sha512 = "0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==";
+      };
+    };
+    "output-file-sync-1.1.2" = {
+      name = "output-file-sync";
+      packageName = "output-file-sync";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/output-file-sync/-/output-file-sync-1.1.2.tgz";
+        sha1 = "d0a33eefe61a205facb90092e826598d5245ce76";
+      };
+    };
+    "p-finally-1.0.0" = {
+      name = "p-finally";
+      packageName = "p-finally";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz";
+        sha1 = "3fbcfb15b899a44123b34b6dcc18b724336a2cae";
+      };
+    };
+    "p-limit-1.3.0" = {
+      name = "p-limit";
+      packageName = "p-limit";
+      version = "1.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz";
+        sha512 = "vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==";
+      };
+    };
+    "p-locate-2.0.0" = {
+      name = "p-locate";
+      packageName = "p-locate";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz";
+        sha1 = "20a0103b222a70c8fd39cc2e580680f3dde5ec43";
+      };
+    };
+    "p-try-1.0.0" = {
+      name = "p-try";
+      packageName = "p-try";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz";
+        sha1 = "cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3";
+      };
+    };
+    "package-1.0.1" = {
+      name = "package";
+      packageName = "package";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/package/-/package-1.0.1.tgz";
+        sha1 = "d25a1f99e2506dcb27d6704b83dca8a312e4edcc";
+      };
+    };
+    "packet-reader-0.3.1" = {
+      name = "packet-reader";
+      packageName = "packet-reader";
+      version = "0.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/packet-reader/-/packet-reader-0.3.1.tgz";
+        sha1 = "cd62e60af8d7fea8a705ec4ff990871c46871f27";
+      };
+    };
+    "pako-0.2.9" = {
+      name = "pako";
+      packageName = "pako";
+      version = "0.2.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pako/-/pako-0.2.9.tgz";
+        sha1 = "f3f7522f4ef782348da8161bad9ecfd51bf83a75";
+      };
+    };
+    "parallel-transform-1.1.0" = {
+      name = "parallel-transform";
+      packageName = "parallel-transform";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.1.0.tgz";
+        sha1 = "d410f065b05da23081fcd10f28854c29bda33b06";
+      };
+    };
+    "param-case-2.1.1" = {
+      name = "param-case";
+      packageName = "param-case";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/param-case/-/param-case-2.1.1.tgz";
+        sha1 = "df94fd8cf6531ecf75e6bef9a0858fbc72be2247";
+      };
+    };
+    "parse-entities-1.1.2" = {
+      name = "parse-entities";
+      packageName = "parse-entities";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/parse-entities/-/parse-entities-1.1.2.tgz";
+        sha512 = "5N9lmQ7tmxfXf+hO3X6KRG6w7uYO/HL9fHalSySTdyn63C3WNvTM/1R8tn1u1larNcEbo3Slcy2bsVDQqvEpUg==";
+      };
+    };
+    "parse-filepath-1.0.2" = {
+      name = "parse-filepath";
+      packageName = "parse-filepath";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz";
+        sha1 = "a632127f53aaf3d15876f5872f3ffac763d6c891";
+      };
+    };
+    "parse-glob-3.0.4" = {
+      name = "parse-glob";
+      packageName = "parse-glob";
+      version = "3.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz";
+        sha1 = "b2c376cfb11f35513badd173ef0bb6e3a388391c";
+      };
+    };
+    "parse-json-2.2.0" = {
+      name = "parse-json";
+      packageName = "parse-json";
+      version = "2.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz";
+        sha1 = "f480f40434ef80741f8469099f8dea18f55a4dc9";
+      };
+    };
+    "parse-json-4.0.0" = {
+      name = "parse-json";
+      packageName = "parse-json";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz";
+        sha1 = "be35f5425be1f7f6c747184f98a788cb99477ee0";
+      };
+    };
+    "parse-passwd-1.0.0" = {
+      name = "parse-passwd";
+      packageName = "parse-passwd";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz";
+        sha1 = "6d5b934a456993b23d37f40a382d6f1666a8e5c6";
+      };
+    };
+    "parse5-1.5.1" = {
+      name = "parse5";
+      packageName = "parse5";
+      version = "1.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/parse5/-/parse5-1.5.1.tgz";
+        sha1 = "9b7f3b0de32be78dc2401b17573ccaf0f6f59d94";
+      };
+    };
+    "parseqs-0.0.5" = {
+      name = "parseqs";
+      packageName = "parseqs";
+      version = "0.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/parseqs/-/parseqs-0.0.5.tgz";
+        sha1 = "d5208a3738e46766e291ba2ea173684921a8b89d";
+      };
+    };
+    "parseuri-0.0.5" = {
+      name = "parseuri";
+      packageName = "parseuri";
+      version = "0.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/parseuri/-/parseuri-0.0.5.tgz";
+        sha1 = "80204a50d4dbb779bfdc6ebe2778d90e4bce320a";
+      };
+    };
+    "parseurl-1.3.2" = {
+      name = "parseurl";
+      packageName = "parseurl";
+      version = "1.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz";
+        sha1 = "fc289d4ed8993119460c156253262cdc8de65bf3";
+      };
+    };
+    "pascalcase-0.1.1" = {
+      name = "pascalcase";
+      packageName = "pascalcase";
+      version = "0.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz";
+        sha1 = "b363e55e8006ca6fe21784d2db22bd15d7917f14";
+      };
+    };
+    "passport-oauth-1.0.0" = {
+      name = "passport-oauth";
+      packageName = "passport-oauth";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/passport-oauth/-/passport-oauth-1.0.0.tgz";
+        sha1 = "90aff63387540f02089af28cdad39ea7f80d77df";
+      };
+    };
+    "passport-oauth1-1.1.0" = {
+      name = "passport-oauth1";
+      packageName = "passport-oauth1";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/passport-oauth1/-/passport-oauth1-1.1.0.tgz";
+        sha1 = "a7de988a211f9cf4687377130ea74df32730c918";
+      };
+    };
+    "passport-oauth2-1.4.0" = {
+      name = "passport-oauth2";
+      packageName = "passport-oauth2";
+      version = "1.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/passport-oauth2/-/passport-oauth2-1.4.0.tgz";
+        sha1 = "f62f81583cbe12609be7ce6f160b9395a27b86ad";
+      };
+    };
+    "passport-strategy-1.0.0" = {
+      name = "passport-strategy";
+      packageName = "passport-strategy";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/passport-strategy/-/passport-strategy-1.0.0.tgz";
+        sha1 = "b5539aa8fc225a3d1ad179476ddf236b440f52e4";
+      };
+    };
+    "path-browserify-0.0.0" = {
+      name = "path-browserify";
+      packageName = "path-browserify";
+      version = "0.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.0.tgz";
+        sha1 = "a0b870729aae214005b7d5032ec2cbbb0fb4451a";
+      };
+    };
+    "path-exists-2.1.0" = {
+      name = "path-exists";
+      packageName = "path-exists";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz";
+        sha1 = "0feb6c64f0fc518d9a754dd5efb62c7022761f4b";
+      };
+    };
+    "path-exists-3.0.0" = {
+      name = "path-exists";
+      packageName = "path-exists";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz";
+        sha1 = "ce0ebeaa5f78cb18925ea7d810d7b59b010fd515";
+      };
+    };
+    "path-is-absolute-1.0.1" = {
+      name = "path-is-absolute";
+      packageName = "path-is-absolute";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz";
+        sha1 = "174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f";
+      };
+    };
+    "path-is-inside-1.0.2" = {
+      name = "path-is-inside";
+      packageName = "path-is-inside";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz";
+        sha1 = "365417dede44430d1c11af61027facf074bdfc53";
+      };
+    };
+    "path-key-2.0.1" = {
+      name = "path-key";
+      packageName = "path-key";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz";
+        sha1 = "411cadb574c5a140d3a4b1910d40d80cc9f40b40";
+      };
+    };
+    "path-parse-1.0.5" = {
+      name = "path-parse";
+      packageName = "path-parse";
+      version = "1.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/path-parse/-/path-parse-1.0.5.tgz";
+        sha1 = "3c1adf871ea9cd6c9431b6ea2bd74a0ff055c4c1";
+      };
+    };
+    "path-root-0.1.1" = {
+      name = "path-root";
+      packageName = "path-root";
+      version = "0.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/path-root/-/path-root-0.1.1.tgz";
+        sha1 = "9a4a6814cac1c0cd73360a95f32083c8ea4745b7";
+      };
+    };
+    "path-root-regex-0.1.2" = {
+      name = "path-root-regex";
+      packageName = "path-root-regex";
+      version = "0.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/path-root-regex/-/path-root-regex-0.1.2.tgz";
+        sha1 = "bfccdc8df5b12dc52c8b43ec38d18d72c04ba96d";
+      };
+    };
+    "path-to-regexp-0.1.7" = {
+      name = "path-to-regexp";
+      packageName = "path-to-regexp";
+      version = "0.1.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz";
+        sha1 = "df604178005f522f15eb4490e7247a1bfaa67f8c";
+      };
+    };
+    "path-type-2.0.0" = {
+      name = "path-type";
+      packageName = "path-type";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz";
+        sha1 = "f012ccb8415b7096fc2daa1054c3d72389594c73";
+      };
+    };
+    "path-type-3.0.0" = {
+      name = "path-type";
+      packageName = "path-type";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz";
+        sha512 = "T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==";
+      };
+    };
+    "pause-0.0.1" = {
+      name = "pause";
+      packageName = "pause";
+      version = "0.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pause/-/pause-0.0.1.tgz";
+        sha1 = "1d408b3fdb76923b9543d96fb4c9dfd535d9cb5d";
+      };
+    };
+    "pbkdf2-compat-2.0.1" = {
+      name = "pbkdf2-compat";
+      packageName = "pbkdf2-compat";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pbkdf2-compat/-/pbkdf2-compat-2.0.1.tgz";
+        sha1 = "b6e0c8fa99494d94e0511575802a59a5c142f288";
+      };
+    };
+    "pend-1.2.0" = {
+      name = "pend";
+      packageName = "pend";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz";
+        sha1 = "7a57eb550a6783f9115331fcf4663d5c8e007a50";
+      };
+    };
+    "performance-now-0.2.0" = {
+      name = "performance-now";
+      packageName = "performance-now";
+      version = "0.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/performance-now/-/performance-now-0.2.0.tgz";
+        sha1 = "33ef30c5c77d4ea21c5a53869d91b56d8f2555e5";
+      };
+    };
+    "performance-now-2.1.0" = {
+      name = "performance-now";
+      packageName = "performance-now";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz";
+        sha1 = "6309f4e0e5fa913ec1c69307ae364b4b377c9e7b";
+      };
+    };
+    "pg-connection-string-0.1.3" = {
+      name = "pg-connection-string";
+      packageName = "pg-connection-string";
+      version = "0.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pg-connection-string/-/pg-connection-string-0.1.3.tgz";
+        sha1 = "da1847b20940e42ee1492beaf65d49d91b245df7";
+      };
+    };
+    "pg-int8-1.0.1" = {
+      name = "pg-int8";
+      packageName = "pg-int8";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pg-int8/-/pg-int8-1.0.1.tgz";
+        sha512 = "WCtabS6t3c8SkpDBUlb1kjOs7l66xsGdKpIPZsg4wR+B3+u9UAum2odSsF9tnvxg80h4ZxLWMy4pRjOsFIqQpw==";
+      };
+    };
+    "pg-pool-1.8.0" = {
+      name = "pg-pool";
+      packageName = "pg-pool";
+      version = "1.8.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pg-pool/-/pg-pool-1.8.0.tgz";
+        sha1 = "f7ec73824c37a03f076f51bfdf70e340147c4f37";
+      };
+    };
+    "pg-types-1.13.0" = {
+      name = "pg-types";
+      packageName = "pg-types";
+      version = "1.13.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pg-types/-/pg-types-1.13.0.tgz";
+        sha512 = "lfKli0Gkl/+za/+b6lzENajczwZHc7D5kiUCZfgm914jipD2kIOIvEkAhZ8GrW3/TUoP9w8FHjwpPObBye5KQQ==";
+      };
+    };
+    "pgpass-1.0.2" = {
+      name = "pgpass";
+      packageName = "pgpass";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pgpass/-/pgpass-1.0.2.tgz";
+        sha1 = "2a7bb41b6065b67907e91da1b07c1847c877b306";
+      };
+    };
+    "phantom-4.0.12" = {
+      name = "phantom";
+      packageName = "phantom";
+      version = "4.0.12";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/phantom/-/phantom-4.0.12.tgz";
+        sha512 = "Tz82XhtPmwCk1FFPmecy7yRGZG2btpzY2KI9fcoPT7zT9det0CcMyfBFPp1S8DqzsnQnm8ZYEfdy528mwVtksA==";
+      };
+    };
+    "phantomjs-prebuilt-2.1.16" = {
+      name = "phantomjs-prebuilt";
+      packageName = "phantomjs-prebuilt";
+      version = "2.1.16";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/phantomjs-prebuilt/-/phantomjs-prebuilt-2.1.16.tgz";
+        sha1 = "efd212a4a3966d3647684ea8ba788549be2aefef";
+      };
+    };
+    "pify-2.3.0" = {
+      name = "pify";
+      packageName = "pify";
+      version = "2.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz";
+        sha1 = "ed141a6ac043a849ea588498e7dca8b15330e90c";
+      };
+    };
+    "pify-3.0.0" = {
+      name = "pify";
+      packageName = "pify";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz";
+        sha1 = "e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176";
+      };
+    };
+    "pinkie-2.0.4" = {
+      name = "pinkie";
+      packageName = "pinkie";
+      version = "2.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz";
+        sha1 = "72556b80cfa0d48a974e80e77248e80ed4f7f870";
+      };
+    };
+    "pinkie-promise-2.0.1" = {
+      name = "pinkie-promise";
+      packageName = "pinkie-promise";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz";
+        sha1 = "2135d6dfa7a358c069ac9b178776288228450ffa";
+      };
+    };
+    "pkg-conf-2.1.0" = {
+      name = "pkg-conf";
+      packageName = "pkg-conf";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pkg-conf/-/pkg-conf-2.1.0.tgz";
+        sha1 = "2126514ca6f2abfebd168596df18ba57867f0058";
+      };
+    };
+    "pkg-config-1.1.1" = {
+      name = "pkg-config";
+      packageName = "pkg-config";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pkg-config/-/pkg-config-1.1.1.tgz";
+        sha1 = "557ef22d73da3c8837107766c52eadabde298fe4";
+      };
+    };
+    "pkg-dir-1.0.0" = {
+      name = "pkg-dir";
+      packageName = "pkg-dir";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pkg-dir/-/pkg-dir-1.0.0.tgz";
+        sha1 = "7a4b508a8d5bb2d629d447056ff4e9c9314cf3d4";
+      };
+    };
+    "pkg-dir-2.0.0" = {
+      name = "pkg-dir";
+      packageName = "pkg-dir";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz";
+        sha1 = "f6d5d1109e19d63edf428e0bd57e12777615334b";
+      };
+    };
+    "pkginfo-0.2.3" = {
+      name = "pkginfo";
+      packageName = "pkginfo";
+      version = "0.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pkginfo/-/pkginfo-0.2.3.tgz";
+        sha1 = "7239c42a5ef6c30b8f328439d9b9ff71042490f8";
+      };
+    };
+    "platform-1.3.5" = {
+      name = "platform";
+      packageName = "platform";
+      version = "1.3.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/platform/-/platform-1.3.5.tgz";
+        sha512 = "TuvHS8AOIZNAlE77WUDiR4rySV/VMptyMfcfeoMgs4P8apaZM3JrnbzBiixKUv+XR6i+BXrQh8WAnjaSPFO65Q==";
+      };
+    };
+    "pluralize-1.2.1" = {
+      name = "pluralize";
+      packageName = "pluralize";
+      version = "1.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pluralize/-/pluralize-1.2.1.tgz";
+        sha1 = "d1a21483fd22bb41e58a12fa3421823140897c45";
+      };
+    };
+    "posix-character-classes-0.1.1" = {
+      name = "posix-character-classes";
+      packageName = "posix-character-classes";
+      version = "0.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz";
+        sha1 = "01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab";
+      };
+    };
+    "postcss-5.2.18" = {
+      name = "postcss";
+      packageName = "postcss";
+      version = "5.2.18";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz";
+        sha512 = "zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==";
+      };
+    };
+    "postcss-6.0.23" = {
+      name = "postcss";
+      packageName = "postcss";
+      version = "6.0.23";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz";
+        sha512 = "soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==";
+      };
+    };
+    "postcss-calc-5.3.1" = {
+      name = "postcss-calc";
+      packageName = "postcss-calc";
+      version = "5.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-calc/-/postcss-calc-5.3.1.tgz";
+        sha1 = "77bae7ca928ad85716e2fda42f261bf7c1d65b5e";
+      };
+    };
+    "postcss-colormin-2.2.2" = {
+      name = "postcss-colormin";
+      packageName = "postcss-colormin";
+      version = "2.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-2.2.2.tgz";
+        sha1 = "6631417d5f0e909a3d7ec26b24c8a8d1e4f96e4b";
+      };
+    };
+    "postcss-convert-values-2.6.1" = {
+      name = "postcss-convert-values";
+      packageName = "postcss-convert-values";
+      version = "2.6.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-2.6.1.tgz";
+        sha1 = "bbd8593c5c1fd2e3d1c322bb925dcae8dae4d62d";
+      };
+    };
+    "postcss-discard-comments-2.0.4" = {
+      name = "postcss-discard-comments";
+      packageName = "postcss-discard-comments";
+      version = "2.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-2.0.4.tgz";
+        sha1 = "befe89fafd5b3dace5ccce51b76b81514be00e3d";
+      };
+    };
+    "postcss-discard-duplicates-2.1.0" = {
+      name = "postcss-discard-duplicates";
+      packageName = "postcss-discard-duplicates";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-2.1.0.tgz";
+        sha1 = "b9abf27b88ac188158a5eb12abcae20263b91932";
+      };
+    };
+    "postcss-discard-empty-2.1.0" = {
+      name = "postcss-discard-empty";
+      packageName = "postcss-discard-empty";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-2.1.0.tgz";
+        sha1 = "d2b4bd9d5ced5ebd8dcade7640c7d7cd7f4f92b5";
+      };
+    };
+    "postcss-discard-overridden-0.1.1" = {
+      name = "postcss-discard-overridden";
+      packageName = "postcss-discard-overridden";
+      version = "0.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-0.1.1.tgz";
+        sha1 = "8b1eaf554f686fb288cd874c55667b0aa3668d58";
+      };
+    };
+    "postcss-discard-unused-2.2.3" = {
+      name = "postcss-discard-unused";
+      packageName = "postcss-discard-unused";
+      version = "2.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-discard-unused/-/postcss-discard-unused-2.2.3.tgz";
+        sha1 = "bce30b2cc591ffc634322b5fb3464b6d934f4433";
+      };
+    };
+    "postcss-filter-plugins-2.0.3" = {
+      name = "postcss-filter-plugins";
+      packageName = "postcss-filter-plugins";
+      version = "2.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-filter-plugins/-/postcss-filter-plugins-2.0.3.tgz";
+        sha512 = "T53GVFsdinJhgwm7rg1BzbeBRomOg9y5MBVhGcsV0CxurUdVj1UlPdKtn7aqYA/c/QVkzKMjq2bSV5dKG5+AwQ==";
+      };
+    };
+    "postcss-merge-idents-2.1.7" = {
+      name = "postcss-merge-idents";
+      packageName = "postcss-merge-idents";
+      version = "2.1.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-merge-idents/-/postcss-merge-idents-2.1.7.tgz";
+        sha1 = "4c5530313c08e1d5b3bbf3d2bbc747e278eea270";
+      };
+    };
+    "postcss-merge-longhand-2.0.2" = {
+      name = "postcss-merge-longhand";
+      packageName = "postcss-merge-longhand";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-2.0.2.tgz";
+        sha1 = "23d90cd127b0a77994915332739034a1a4f3d658";
+      };
+    };
+    "postcss-merge-rules-2.1.2" = {
+      name = "postcss-merge-rules";
+      packageName = "postcss-merge-rules";
+      version = "2.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-2.1.2.tgz";
+        sha1 = "d1df5dfaa7b1acc3be553f0e9e10e87c61b5f721";
+      };
+    };
+    "postcss-message-helpers-2.0.0" = {
+      name = "postcss-message-helpers";
+      packageName = "postcss-message-helpers";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-message-helpers/-/postcss-message-helpers-2.0.0.tgz";
+        sha1 = "a4f2f4fab6e4fe002f0aed000478cdf52f9ba60e";
+      };
+    };
+    "postcss-minify-font-values-1.0.5" = {
+      name = "postcss-minify-font-values";
+      packageName = "postcss-minify-font-values";
+      version = "1.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-1.0.5.tgz";
+        sha1 = "4b58edb56641eba7c8474ab3526cafd7bbdecb69";
+      };
+    };
+    "postcss-minify-gradients-1.0.5" = {
+      name = "postcss-minify-gradients";
+      packageName = "postcss-minify-gradients";
+      version = "1.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-1.0.5.tgz";
+        sha1 = "5dbda11373703f83cfb4a3ea3881d8d75ff5e6e1";
+      };
+    };
+    "postcss-minify-params-1.2.2" = {
+      name = "postcss-minify-params";
+      packageName = "postcss-minify-params";
+      version = "1.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-1.2.2.tgz";
+        sha1 = "ad2ce071373b943b3d930a3fa59a358c28d6f1f3";
+      };
+    };
+    "postcss-minify-selectors-2.1.1" = {
+      name = "postcss-minify-selectors";
+      packageName = "postcss-minify-selectors";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-2.1.1.tgz";
+        sha1 = "b2c6a98c0072cf91b932d1a496508114311735bf";
+      };
+    };
+    "postcss-modules-extract-imports-1.2.0" = {
+      name = "postcss-modules-extract-imports";
+      packageName = "postcss-modules-extract-imports";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-1.2.0.tgz";
+        sha1 = "66140ecece38ef06bf0d3e355d69bf59d141ea85";
+      };
+    };
+    "postcss-modules-local-by-default-1.2.0" = {
+      name = "postcss-modules-local-by-default";
+      packageName = "postcss-modules-local-by-default";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-1.2.0.tgz";
+        sha1 = "f7d80c398c5a393fa7964466bd19500a7d61c069";
+      };
+    };
+    "postcss-modules-scope-1.1.0" = {
+      name = "postcss-modules-scope";
+      packageName = "postcss-modules-scope";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-1.1.0.tgz";
+        sha1 = "d6ea64994c79f97b62a72b426fbe6056a194bb90";
+      };
+    };
+    "postcss-modules-values-1.3.0" = {
+      name = "postcss-modules-values";
+      packageName = "postcss-modules-values";
+      version = "1.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-1.3.0.tgz";
+        sha1 = "ecffa9d7e192518389f42ad0e83f72aec456ea20";
+      };
+    };
+    "postcss-normalize-charset-1.1.1" = {
+      name = "postcss-normalize-charset";
+      packageName = "postcss-normalize-charset";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-1.1.1.tgz";
+        sha1 = "ef9ee71212d7fe759c78ed162f61ed62b5cb93f1";
+      };
+    };
+    "postcss-normalize-url-3.0.8" = {
+      name = "postcss-normalize-url";
+      packageName = "postcss-normalize-url";
+      version = "3.0.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-3.0.8.tgz";
+        sha1 = "108f74b3f2fcdaf891a2ffa3ea4592279fc78222";
+      };
+    };
+    "postcss-ordered-values-2.2.3" = {
+      name = "postcss-ordered-values";
+      packageName = "postcss-ordered-values";
+      version = "2.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-2.2.3.tgz";
+        sha1 = "eec6c2a67b6c412a8db2042e77fe8da43f95c11d";
+      };
+    };
+    "postcss-reduce-idents-2.4.0" = {
+      name = "postcss-reduce-idents";
+      packageName = "postcss-reduce-idents";
+      version = "2.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-reduce-idents/-/postcss-reduce-idents-2.4.0.tgz";
+        sha1 = "c2c6d20cc958284f6abfbe63f7609bf409059ad3";
+      };
+    };
+    "postcss-reduce-initial-1.0.1" = {
+      name = "postcss-reduce-initial";
+      packageName = "postcss-reduce-initial";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-1.0.1.tgz";
+        sha1 = "68f80695f045d08263a879ad240df8dd64f644ea";
+      };
+    };
+    "postcss-reduce-transforms-1.0.4" = {
+      name = "postcss-reduce-transforms";
+      packageName = "postcss-reduce-transforms";
+      version = "1.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-1.0.4.tgz";
+        sha1 = "ff76f4d8212437b31c298a42d2e1444025771ae1";
+      };
+    };
+    "postcss-selector-parser-2.2.3" = {
+      name = "postcss-selector-parser";
+      packageName = "postcss-selector-parser";
+      version = "2.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-2.2.3.tgz";
+        sha1 = "f9437788606c3c9acee16ffe8d8b16297f27bb90";
+      };
+    };
+    "postcss-svgo-2.1.6" = {
+      name = "postcss-svgo";
+      packageName = "postcss-svgo";
+      version = "2.1.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-2.1.6.tgz";
+        sha1 = "b6df18aa613b666e133f08adb5219c2684ac108d";
+      };
+    };
+    "postcss-unique-selectors-2.0.2" = {
+      name = "postcss-unique-selectors";
+      packageName = "postcss-unique-selectors";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-2.0.2.tgz";
+        sha1 = "981d57d29ddcb33e7b1dfe1fd43b8649f933ca1d";
+      };
+    };
+    "postcss-value-parser-3.3.0" = {
+      name = "postcss-value-parser";
+      packageName = "postcss-value-parser";
+      version = "3.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.0.tgz";
+        sha1 = "87f38f9f18f774a4ab4c8a232f5c5ce8872a9d15";
+      };
+    };
+    "postcss-zindex-2.2.0" = {
+      name = "postcss-zindex";
+      packageName = "postcss-zindex";
+      version = "2.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-zindex/-/postcss-zindex-2.2.0.tgz";
+        sha1 = "d2109ddc055b91af67fc4cb3b025946639d2af22";
+      };
+    };
+    "postgres-array-1.0.2" = {
+      name = "postgres-array";
+      packageName = "postgres-array";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postgres-array/-/postgres-array-1.0.2.tgz";
+        sha1 = "8e0b32eb03bf77a5c0a7851e0441c169a256a238";
+      };
+    };
+    "postgres-bytea-1.0.0" = {
+      name = "postgres-bytea";
+      packageName = "postgres-bytea";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postgres-bytea/-/postgres-bytea-1.0.0.tgz";
+        sha1 = "027b533c0aa890e26d172d47cf9ccecc521acd35";
+      };
+    };
+    "postgres-date-1.0.3" = {
+      name = "postgres-date";
+      packageName = "postgres-date";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postgres-date/-/postgres-date-1.0.3.tgz";
+        sha1 = "e2d89702efdb258ff9d9cee0fe91bd06975257a8";
+      };
+    };
+    "postgres-interval-1.1.2" = {
+      name = "postgres-interval";
+      packageName = "postgres-interval";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postgres-interval/-/postgres-interval-1.1.2.tgz";
+        sha512 = "fC3xNHeTskCxL1dC8KOtxXt7YeFmlbTYtn7ul8MkVERuTmf7pI4DrkAxcw3kh1fQ9uz4wQmd03a1mRiXUZChfQ==";
+      };
+    };
+    "precond-0.2.3" = {
+      name = "precond";
+      packageName = "precond";
+      version = "0.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/precond/-/precond-0.2.3.tgz";
+        sha1 = "aa9591bcaa24923f1e0f4849d240f47efc1075ac";
+      };
+    };
+    "prelude-ls-1.1.2" = {
+      name = "prelude-ls";
+      packageName = "prelude-ls";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz";
+        sha1 = "21932a549f5e52ffd9a827f570e04be62a97da54";
+      };
+    };
+    "prepend-http-1.0.4" = {
+      name = "prepend-http";
+      packageName = "prepend-http";
+      version = "1.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz";
+        sha1 = "d4f4562b0ce3696e41ac52d0e002e57a635dc6dc";
+      };
+    };
+    "preserve-0.2.0" = {
+      name = "preserve";
+      packageName = "preserve";
+      version = "0.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz";
+        sha1 = "815ed1f6ebc65926f865b310c0713bcb3315ce4b";
+      };
+    };
+    "pretty-bytes-3.0.1" = {
+      name = "pretty-bytes";
+      packageName = "pretty-bytes";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-3.0.1.tgz";
+        sha1 = "27d0008d778063a0b4811bb35c79f1bd5d5fbccf";
+      };
+    };
+    "pretty-error-2.1.1" = {
+      name = "pretty-error";
+      packageName = "pretty-error";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pretty-error/-/pretty-error-2.1.1.tgz";
+        sha1 = "5f4f87c8f91e5ae3f3ba87ab4cf5e03b1a17f1a3";
+      };
+    };
+    "pretty-hrtime-1.0.3" = {
+      name = "pretty-hrtime";
+      packageName = "pretty-hrtime";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz";
+        sha1 = "b7e3ea42435a4c9b2759d99e0f201eb195802ee1";
+      };
+    };
+    "private-0.1.8" = {
+      name = "private";
+      packageName = "private";
+      version = "0.1.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/private/-/private-0.1.8.tgz";
+        sha512 = "VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==";
+      };
+    };
+    "process-0.11.10" = {
+      name = "process";
+      packageName = "process";
+      version = "0.11.10";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/process/-/process-0.11.10.tgz";
+        sha1 = "7332300e840161bda3e69a1d1d91a7d4bc16f182";
+      };
+    };
+    "process-nextick-args-1.0.7" = {
+      name = "process-nextick-args";
+      packageName = "process-nextick-args";
+      version = "1.0.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz";
+        sha1 = "150e20b756590ad3f91093f25a4f2ad8bff30ba3";
+      };
+    };
+    "process-nextick-args-2.0.0" = {
+      name = "process-nextick-args";
+      packageName = "process-nextick-args";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz";
+        sha512 = "MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==";
+      };
+    };
+    "progress-1.1.8" = {
+      name = "progress";
+      packageName = "progress";
+      version = "1.1.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/progress/-/progress-1.1.8.tgz";
+        sha1 = "e260c78f6161cdd9b0e56cc3e0a85de17c7a57be";
+      };
+    };
+    "promise-7.3.1" = {
+      name = "promise";
+      packageName = "promise";
+      version = "7.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz";
+        sha512 = "nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==";
+      };
+    };
+    "promise-inflight-1.0.1" = {
+      name = "promise-inflight";
+      packageName = "promise-inflight";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz";
+        sha1 = "98472870bf228132fcbdd868129bad12c3c029e3";
+      };
+    };
+    "proto-list-1.2.4" = {
+      name = "proto-list";
+      packageName = "proto-list";
+      version = "1.2.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz";
+        sha1 = "212d5bfe1318306a420f6402b8e26ff39647a849";
+      };
+    };
+    "proxy-addr-2.0.4" = {
+      name = "proxy-addr";
+      packageName = "proxy-addr";
+      version = "2.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.4.tgz";
+        sha512 = "5erio2h9jp5CHGwcybmxmVqHmnCBZeewlfJ0pex+UW7Qny7OOZXTtH56TGNyBizkgiOwhJtMKrVzDTeKcySZwA==";
+      };
+    };
+    "prr-1.0.1" = {
+      name = "prr";
+      packageName = "prr";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz";
+        sha1 = "d3fc114ba06995a45ec6893f484ceb1d78f5f476";
+      };
+    };
+    "pseudomap-1.0.2" = {
+      name = "pseudomap";
+      packageName = "pseudomap";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz";
+        sha1 = "f052a28da70e618917ef0a8ac34c1ae5a68286b3";
+      };
+    };
+    "psl-1.1.29" = {
+      name = "psl";
+      packageName = "psl";
+      version = "1.1.29";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/psl/-/psl-1.1.29.tgz";
+        sha512 = "AeUmQ0oLN02flVHXWh9sSJF7mcdFq0ppid/JkErufc3hGIV/AMa8Fo9VgDo/cT2jFdOWoFvHp90qqBH54W+gjQ==";
+      };
+    };
+    "pump-2.0.1" = {
+      name = "pump";
+      packageName = "pump";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz";
+        sha512 = "ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==";
+      };
+    };
+    "pumpify-1.5.1" = {
+      name = "pumpify";
+      packageName = "pumpify";
+      version = "1.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz";
+        sha512 = "oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==";
+      };
+    };
+    "punycode-1.3.2" = {
+      name = "punycode";
+      packageName = "punycode";
+      version = "1.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz";
+        sha1 = "9653a036fb7c1ee42342f2325cceefea3926c48d";
+      };
+    };
+    "punycode-1.4.1" = {
+      name = "punycode";
+      packageName = "punycode";
+      version = "1.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz";
+        sha1 = "c0d5a63b2718800ad8e1eb0fa5269c84dd41845e";
+      };
+    };
+    "punycode-2.1.1" = {
+      name = "punycode";
+      packageName = "punycode";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz";
+        sha512 = "XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==";
+      };
+    };
+    "q-1.5.1" = {
+      name = "q";
+      packageName = "q";
+      version = "1.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/q/-/q-1.5.1.tgz";
+        sha1 = "7e32f75b41381291d04611f1bf14109ac00651d7";
+      };
+    };
+    "qs-2.3.3" = {
+      name = "qs";
+      packageName = "qs";
+      version = "2.3.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/qs/-/qs-2.3.3.tgz";
+        sha1 = "e9e85adbe75da0bbe4c8e0476a086290f863b404";
+      };
+    };
+    "qs-6.4.0" = {
+      name = "qs";
+      packageName = "qs";
+      version = "6.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/qs/-/qs-6.4.0.tgz";
+        sha1 = "13e26d28ad6b0ffaa91312cd3bf708ed351e7233";
+      };
+    };
+    "qs-6.5.1" = {
+      name = "qs";
+      packageName = "qs";
+      version = "6.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz";
+        sha512 = "eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==";
+      };
+    };
+    "qs-6.5.2" = {
+      name = "qs";
+      packageName = "qs";
+      version = "6.5.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz";
+        sha512 = "N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==";
+      };
+    };
+    "query-string-4.3.4" = {
+      name = "query-string";
+      packageName = "query-string";
+      version = "4.3.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/query-string/-/query-string-4.3.4.tgz";
+        sha1 = "bbb693b9ca915c232515b228b1a02b609043dbeb";
+      };
+    };
+    "querystring-0.2.0" = {
+      name = "querystring";
+      packageName = "querystring";
+      version = "0.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz";
+        sha1 = "b209849203bb25df820da756e747005878521620";
+      };
+    };
+    "querystring-es3-0.2.1" = {
+      name = "querystring-es3";
+      packageName = "querystring-es3";
+      version = "0.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz";
+        sha1 = "9ec61f79049875707d69414596fd907a4d711e73";
+      };
+    };
+    "random-bytes-1.0.0" = {
+      name = "random-bytes";
+      packageName = "random-bytes";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/random-bytes/-/random-bytes-1.0.0.tgz";
+        sha1 = "4f68a1dc0ae58bd3fb95848c30324db75d64360b";
+      };
+    };
+    "randomatic-3.0.0" = {
+      name = "randomatic";
+      packageName = "randomatic";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/randomatic/-/randomatic-3.0.0.tgz";
+        sha512 = "VdxFOIEY3mNO5PtSRkkle/hPJDHvQhK21oa73K4yAc9qmp6N429gAyF1gZMOTMeS0/AYzaV/2Trcef+NaIonSA==";
+      };
+    };
+    "range-parser-1.2.0" = {
+      name = "range-parser";
+      packageName = "range-parser";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz";
+        sha1 = "f49be6b487894ddc40dcc94a322f611092e00d5e";
+      };
+    };
+    "raphael-2.1.4" = {
+      name = "raphael";
+      packageName = "raphael";
+      version = "2.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/raphael/-/raphael-2.1.4.tgz";
+        sha1 = "b09ca664ad048b814bb2ff5d4d1e75838cab9c97";
+      };
+    };
+    "raphael-2.2.7" = {
+      name = "raphael";
+      packageName = "raphael";
+      version = "2.2.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/raphael/-/raphael-2.2.7.tgz";
+        sha1 = "231b19141f8d086986d8faceb66f8b562ee2c810";
+      };
+    };
+    "raw-body-2.3.2" = {
+      name = "raw-body";
+      packageName = "raw-body";
+      version = "2.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/raw-body/-/raw-body-2.3.2.tgz";
+        sha1 = "bcd60c77d3eb93cde0050295c3f379389bc88f89";
+      };
+    };
+    "raw-body-2.3.3" = {
+      name = "raw-body";
+      packageName = "raw-body";
+      version = "2.3.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/raw-body/-/raw-body-2.3.3.tgz";
+        sha512 = "9esiElv1BrZoI3rCDuOuKCBRbuApGGaDPQfjSflGxdy4oyzqghxu6klEkkVIvBje+FF0BX9coEv8KqW6X/7njw==";
+      };
+    };
+    "raw-loader-0.5.1" = {
+      name = "raw-loader";
+      packageName = "raw-loader";
+      version = "0.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/raw-loader/-/raw-loader-0.5.1.tgz";
+        sha1 = "0c3d0beaed8a01c966d9787bf778281252a979aa";
+      };
+    };
+    "rc-1.2.8" = {
+      name = "rc";
+      packageName = "rc";
+      version = "1.2.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz";
+        sha512 = "y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==";
+      };
+    };
+    "read-pkg-2.0.0" = {
+      name = "read-pkg";
+      packageName = "read-pkg";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz";
+        sha1 = "8ef1c0623c6a6db0dc6713c4bfac46332b2368f8";
+      };
+    };
+    "read-pkg-up-2.0.0" = {
+      name = "read-pkg-up";
+      packageName = "read-pkg-up";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz";
+        sha1 = "6b72a8048984e0c41e79510fd5e9fa99b3b549be";
+      };
+    };
+    "readable-stream-1.0.27-1" = {
+      name = "readable-stream";
+      packageName = "readable-stream";
+      version = "1.0.27-1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.27-1.tgz";
+        sha1 = "6b67983c20357cefd07f0165001a16d710d91078";
+      };
+    };
+    "readable-stream-1.0.34" = {
+      name = "readable-stream";
+      packageName = "readable-stream";
+      version = "1.0.34";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz";
+        sha1 = "125820e34bc842d2f2aaafafe4c2916ee32c157c";
+      };
+    };
+    "readable-stream-1.1.14" = {
+      name = "readable-stream";
+      packageName = "readable-stream";
+      version = "1.1.14";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz";
+        sha1 = "7cf4c54ef648e3813084c636dd2079e166c081d9";
+      };
+    };
+    "readable-stream-2.0.6" = {
+      name = "readable-stream";
+      packageName = "readable-stream";
+      version = "2.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz";
+        sha1 = "8f90341e68a53ccc928788dacfcd11b36eb9b78e";
+      };
+    };
+    "readable-stream-2.3.6" = {
+      name = "readable-stream";
+      packageName = "readable-stream";
+      version = "2.3.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz";
+        sha512 = "tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==";
+      };
+    };
+    "readdirp-2.1.0" = {
+      name = "readdirp";
+      packageName = "readdirp";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/readdirp/-/readdirp-2.1.0.tgz";
+        sha1 = "4ed0ad060df3073300c48440373f72d1cc642d78";
+      };
+    };
+    "readline2-1.0.1" = {
+      name = "readline2";
+      packageName = "readline2";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/readline2/-/readline2-1.0.1.tgz";
+        sha1 = "41059608ffc154757b715d9989d199ffbf372e35";
+      };
+    };
+    "rechoir-0.6.2" = {
+      name = "rechoir";
+      packageName = "rechoir";
+      version = "0.6.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz";
+        sha1 = "85204b54dba82d5742e28c96756ef43af50e3384";
+      };
+    };
+    "redefine-0.2.1" = {
+      name = "redefine";
+      packageName = "redefine";
+      version = "0.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/redefine/-/redefine-0.2.1.tgz";
+        sha1 = "e89ee7a6f24d19fff62590569332dc60380a89a3";
+      };
+    };
+    "reduce-component-1.0.1" = {
+      name = "reduce-component";
+      packageName = "reduce-component";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/reduce-component/-/reduce-component-1.0.1.tgz";
+        sha1 = "e0c93542c574521bea13df0f9488ed82ab77c5da";
+      };
+    };
+    "reduce-css-calc-1.3.0" = {
+      name = "reduce-css-calc";
+      packageName = "reduce-css-calc";
+      version = "1.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/reduce-css-calc/-/reduce-css-calc-1.3.0.tgz";
+        sha1 = "747c914e049614a4c9cfbba629871ad1d2927716";
+      };
+    };
+    "reduce-function-call-1.0.2" = {
+      name = "reduce-function-call";
+      packageName = "reduce-function-call";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/reduce-function-call/-/reduce-function-call-1.0.2.tgz";
+        sha1 = "5a200bf92e0e37751752fe45b0ab330fd4b6be99";
+      };
+    };
+    "referrer-policy-1.1.0" = {
+      name = "referrer-policy";
+      packageName = "referrer-policy";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/referrer-policy/-/referrer-policy-1.1.0.tgz";
+        sha1 = "35774eb735bf50fb6c078e83334b472350207d79";
+      };
+    };
+    "regenerate-1.4.0" = {
+      name = "regenerate";
+      packageName = "regenerate";
+      version = "1.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz";
+        sha512 = "1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==";
+      };
+    };
+    "regenerator-runtime-0.10.5" = {
+      name = "regenerator-runtime";
+      packageName = "regenerator-runtime";
+      version = "0.10.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz";
+        sha1 = "336c3efc1220adcedda2c9fab67b5a7955a33658";
+      };
+    };
+    "regenerator-runtime-0.11.1" = {
+      name = "regenerator-runtime";
+      packageName = "regenerator-runtime";
+      version = "0.11.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz";
+        sha512 = "MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==";
+      };
+    };
+    "regenerator-transform-0.10.1" = {
+      name = "regenerator-transform";
+      packageName = "regenerator-transform";
+      version = "0.10.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.10.1.tgz";
+        sha512 = "PJepbvDbuK1xgIgnau7Y90cwaAmO/LCLMI2mPvaXq2heGMR3aWW5/BQvYrhJ8jgmQjXewXvBjzfqKcVOmhjZ6Q==";
+      };
+    };
+    "regex-cache-0.4.4" = {
+      name = "regex-cache";
+      packageName = "regex-cache";
+      version = "0.4.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz";
+        sha512 = "nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==";
+      };
+    };
+    "regex-not-1.0.2" = {
+      name = "regex-not";
+      packageName = "regex-not";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz";
+        sha512 = "J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==";
+      };
+    };
+    "regexpu-core-1.0.0" = {
+      name = "regexpu-core";
+      packageName = "regexpu-core";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/regexpu-core/-/regexpu-core-1.0.0.tgz";
+        sha1 = "86a763f58ee4d7c2f6b102e4764050de7ed90c6b";
+      };
+    };
+    "regexpu-core-2.0.0" = {
+      name = "regexpu-core";
+      packageName = "regexpu-core";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz";
+        sha1 = "49d038837b8dcf8bfa5b9a42139938e6ea2ae240";
+      };
+    };
+    "regjsgen-0.2.0" = {
+      name = "regjsgen";
+      packageName = "regjsgen";
+      version = "0.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz";
+        sha1 = "6c016adeac554f75823fe37ac05b92d5a4edb1f7";
+      };
+    };
+    "regjsparser-0.1.5" = {
+      name = "regjsparser";
+      packageName = "regjsparser";
+      version = "0.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz";
+        sha1 = "7ee8f84dc6fa792d3fd0ae228d24bd949ead205c";
+      };
+    };
+    "relateurl-0.2.7" = {
+      name = "relateurl";
+      packageName = "relateurl";
+      version = "0.2.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz";
+        sha1 = "54dbf377e51440aca90a4cd274600d3ff2d888a9";
+      };
+    };
+    "remark-5.1.0" = {
+      name = "remark";
+      packageName = "remark";
+      version = "5.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/remark/-/remark-5.1.0.tgz";
+        sha1 = "cb463bd3dbcb4b99794935eee1cf71d7a8e3068c";
+      };
+    };
+    "remark-parse-1.1.0" = {
+      name = "remark-parse";
+      packageName = "remark-parse";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/remark-parse/-/remark-parse-1.1.0.tgz";
+        sha1 = "c3ca10f9a8da04615c28f09aa4e304510526ec21";
+      };
+    };
+    "remark-stringify-1.1.0" = {
+      name = "remark-stringify";
+      packageName = "remark-stringify";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/remark-stringify/-/remark-stringify-1.1.0.tgz";
+        sha1 = "a7105e25b9ee2bf9a49b75d2c423f11b06ae2092";
+      };
+    };
+    "remarkable-1.7.1" = {
+      name = "remarkable";
+      packageName = "remarkable";
+      version = "1.7.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/remarkable/-/remarkable-1.7.1.tgz";
+        sha1 = "aaca4972100b66a642a63a1021ca4bac1be3bff6";
+      };
+    };
+    "remove-trailing-separator-1.1.0" = {
+      name = "remove-trailing-separator";
+      packageName = "remove-trailing-separator";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz";
+        sha1 = "c24bce2a283adad5bc3f58e0d48249b92379d8ef";
+      };
+    };
+    "renderkid-2.0.1" = {
+      name = "renderkid";
+      packageName = "renderkid";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/renderkid/-/renderkid-2.0.1.tgz";
+        sha1 = "898cabfc8bede4b7b91135a3ffd323e58c0db319";
+      };
+    };
+    "repeat-element-1.1.2" = {
+      name = "repeat-element";
+      packageName = "repeat-element";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.2.tgz";
+        sha1 = "ef089a178d1483baae4d93eb98b4f9e4e11d990a";
+      };
+    };
+    "repeat-string-1.6.1" = {
+      name = "repeat-string";
+      packageName = "repeat-string";
+      version = "1.6.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz";
+        sha1 = "8dcae470e1c88abc2d600fff4a776286da75e637";
+      };
+    };
+    "repeating-2.0.1" = {
+      name = "repeating";
+      packageName = "repeating";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz";
+        sha1 = "5214c53a926d3552707527fbab415dbc08d06dda";
+      };
+    };
+    "replace-ext-0.0.1" = {
+      name = "replace-ext";
+      packageName = "replace-ext";
+      version = "0.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/replace-ext/-/replace-ext-0.0.1.tgz";
+        sha1 = "29bbd92078a739f0bcce2b4ee41e837953522924";
+      };
+    };
+    "request-2.81.0" = {
+      name = "request";
+      packageName = "request";
+      version = "2.81.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/request/-/request-2.81.0.tgz";
+        sha1 = "c6928946a0e06c5f8d6f8a9333469ffda46298a0";
+      };
+    };
+    "request-2.87.0" = {
+      name = "request";
+      packageName = "request";
+      version = "2.87.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/request/-/request-2.87.0.tgz";
+        sha512 = "fcogkm7Az5bsS6Sl0sibkbhcKsnyon/jV1kF3ajGmF0c8HrttdKTPRT9hieOaQHA5HEq6r8OyWOo/o781C1tNw==";
+      };
+    };
+    "request-progress-2.0.1" = {
+      name = "request-progress";
+      packageName = "request-progress";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/request-progress/-/request-progress-2.0.1.tgz";
+        sha1 = "5d36bb57961c673aa5b788dbc8141fdf23b44e08";
+      };
+    };
+    "require-directory-2.1.1" = {
+      name = "require-directory";
+      packageName = "require-directory";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz";
+        sha1 = "8c64ad5fd30dab1c976e2344ffe7f792a6a6df42";
+      };
+    };
+    "require-main-filename-1.0.1" = {
+      name = "require-main-filename";
+      packageName = "require-main-filename";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz";
+        sha1 = "97f717b69d48784f5f526a6c5aa8ffdda055a4d1";
+      };
+    };
+    "require-relative-0.8.7" = {
+      name = "require-relative";
+      packageName = "require-relative";
+      version = "0.8.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/require-relative/-/require-relative-0.8.7.tgz";
+        sha1 = "7999539fc9e047a37928fa196f8e1563dabd36de";
+      };
+    };
+    "require-uncached-1.0.3" = {
+      name = "require-uncached";
+      packageName = "require-uncached";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/require-uncached/-/require-uncached-1.0.3.tgz";
+        sha1 = "4e0d56d6c9662fd31e43011c4b95aa49955421d3";
+      };
+    };
+    "resolve-1.8.1" = {
+      name = "resolve";
+      packageName = "resolve";
+      version = "1.8.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/resolve/-/resolve-1.8.1.tgz";
+        sha512 = "AicPrAC7Qu1JxPCZ9ZgCZlY35QgFnNqc+0LtbRNxnVw4TXvjQ72wnuL9JQcEBgXkI9JM8MsT9kaQoHcpCRJOYA==";
+      };
+    };
+    "resolve-dir-0.1.1" = {
+      name = "resolve-dir";
+      packageName = "resolve-dir";
+      version = "0.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/resolve-dir/-/resolve-dir-0.1.1.tgz";
+        sha1 = "b219259a5602fac5c5c496ad894a6e8cc430261e";
+      };
+    };
+    "resolve-dir-1.0.1" = {
+      name = "resolve-dir";
+      packageName = "resolve-dir";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz";
+        sha1 = "79a40644c362be82f26effe739c9bb5382046f43";
+      };
+    };
+    "resolve-from-1.0.1" = {
+      name = "resolve-from";
+      packageName = "resolve-from";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/resolve-from/-/resolve-from-1.0.1.tgz";
+        sha1 = "26cbfe935d1aeeeabb29bc3fe5aeb01e93d44226";
+      };
+    };
+    "resolve-url-0.2.1" = {
+      name = "resolve-url";
+      packageName = "resolve-url";
+      version = "0.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz";
+        sha1 = "2c637fe77c893afd2a663fe21aa9080068e2052a";
+      };
+    };
+    "restore-cursor-1.0.1" = {
+      name = "restore-cursor";
+      packageName = "restore-cursor";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz";
+        sha1 = "34661f46886327fed2991479152252df92daa541";
+      };
+    };
+    "ret-0.1.15" = {
+      name = "ret";
+      packageName = "ret";
+      version = "0.1.15";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz";
+        sha512 = "TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==";
+      };
+    };
+    "retry-as-promised-2.3.2" = {
+      name = "retry-as-promised";
+      packageName = "retry-as-promised";
+      version = "2.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/retry-as-promised/-/retry-as-promised-2.3.2.tgz";
+        sha1 = "cd974ee4fd9b5fe03cbf31871ee48221c07737b7";
+      };
+    };
+    "right-align-0.1.3" = {
+      name = "right-align";
+      packageName = "right-align";
+      version = "0.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz";
+        sha1 = "61339b722fe6a3515689210d24e14c96148613ef";
+      };
+    };
+    "rimraf-2.4.5" = {
+      name = "rimraf";
+      packageName = "rimraf";
+      version = "2.4.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/rimraf/-/rimraf-2.4.5.tgz";
+        sha1 = "ee710ce5d93a8fdb856fb5ea8ff0e2d75934b2da";
+      };
+    };
+    "rimraf-2.6.2" = {
+      name = "rimraf";
+      packageName = "rimraf";
+      version = "2.6.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz";
+        sha512 = "lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==";
+      };
+    };
+    "ripemd160-0.2.0" = {
+      name = "ripemd160";
+      packageName = "ripemd160";
+      version = "0.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ripemd160/-/ripemd160-0.2.0.tgz";
+        sha1 = "2bf198bde167cacfa51c0a928e84b68bbe171fce";
+      };
+    };
+    "rollup-0.41.6" = {
+      name = "rollup";
+      packageName = "rollup";
+      version = "0.41.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/rollup/-/rollup-0.41.6.tgz";
+        sha1 = "e0d05497877a398c104d816d2733a718a7a94e2a";
+      };
+    };
+    "rollup-plugin-buble-0.15.0" = {
+      name = "rollup-plugin-buble";
+      packageName = "rollup-plugin-buble";
+      version = "0.15.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/rollup-plugin-buble/-/rollup-plugin-buble-0.15.0.tgz";
+        sha1 = "83c3e89c7fd2266c7918f41ba3980313519c7fd0";
+      };
+    };
+    "rollup-pluginutils-1.5.2" = {
+      name = "rollup-pluginutils";
+      packageName = "rollup-pluginutils";
+      version = "1.5.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-1.5.2.tgz";
+        sha1 = "1e156e778f94b7255bfa1b3d0178be8f5c552408";
+      };
+    };
+    "rollup-watch-3.2.2" = {
+      name = "rollup-watch";
+      packageName = "rollup-watch";
+      version = "3.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/rollup-watch/-/rollup-watch-3.2.2.tgz";
+        sha1 = "5e574232e9ef36da9177f46946d8080cb267354b";
+      };
+    };
+    "run-async-0.1.0" = {
+      name = "run-async";
+      packageName = "run-async";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/run-async/-/run-async-0.1.0.tgz";
+        sha1 = "c8ad4a5e110661e402a7d21b530e009f25f8e389";
+      };
+    };
+    "run-parallel-1.1.9" = {
+      name = "run-parallel";
+      packageName = "run-parallel";
+      version = "1.1.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.9.tgz";
+        sha512 = "DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q==";
+      };
+    };
+    "run-queue-1.0.3" = {
+      name = "run-queue";
+      packageName = "run-queue";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz";
+        sha1 = "e848396f057d223f24386924618e25694161ec47";
+      };
+    };
+    "rx-lite-3.1.2" = {
+      name = "rx-lite";
+      packageName = "rx-lite";
+      version = "3.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/rx-lite/-/rx-lite-3.1.2.tgz";
+        sha1 = "19ce502ca572665f3b647b10939f97fd1615f102";
+      };
+    };
+    "safe-buffer-5.1.1" = {
+      name = "safe-buffer";
+      packageName = "safe-buffer";
+      version = "5.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz";
+        sha512 = "kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==";
+      };
+    };
+    "safe-buffer-5.1.2" = {
+      name = "safe-buffer";
+      packageName = "safe-buffer";
+      version = "5.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz";
+        sha512 = "Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==";
+      };
+    };
+    "safe-json-stringify-1.2.0" = {
+      name = "safe-json-stringify";
+      packageName = "safe-json-stringify";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/safe-json-stringify/-/safe-json-stringify-1.2.0.tgz";
+        sha512 = "gH8eh2nZudPQO6TytOvbxnuhYBOvDBBLW52tz5q6X58lJcd/tkmqFR+5Z9adS8aJtURSXWThWy/xJtJwixErvg==";
+      };
+    };
+    "safe-regex-1.1.0" = {
+      name = "safe-regex";
+      packageName = "safe-regex";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz";
+        sha1 = "40a3669f3b077d1e943d44629e157dd48023bf2e";
+      };
+    };
+    "safefs-3.2.2" = {
+      name = "safefs";
+      packageName = "safefs";
+      version = "3.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/safefs/-/safefs-3.2.2.tgz";
+        sha1 = "8170c1444d7038e08caea05a374fae2fa349e15c";
+      };
+    };
+    "safer-buffer-2.1.2" = {
+      name = "safer-buffer";
+      packageName = "safer-buffer";
+      version = "2.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz";
+        sha512 = "YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==";
+      };
+    };
+    "sax-0.5.8" = {
+      name = "sax";
+      packageName = "sax";
+      version = "0.5.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sax/-/sax-0.5.8.tgz";
+        sha1 = "d472db228eb331c2506b0e8c15524adb939d12c1";
+      };
+    };
+    "sax-1.2.1" = {
+      name = "sax";
+      packageName = "sax";
+      version = "1.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sax/-/sax-1.2.1.tgz";
+        sha1 = "7b8e656190b228e81a66aea748480d828cd2d37a";
+      };
+    };
+    "sax-1.2.4" = {
+      name = "sax";
+      packageName = "sax";
+      version = "1.2.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz";
+        sha512 = "NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==";
+      };
+    };
+    "scandirectory-2.5.0" = {
+      name = "scandirectory";
+      packageName = "scandirectory";
+      version = "2.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/scandirectory/-/scandirectory-2.5.0.tgz";
+        sha1 = "6ce03f54a090b668e3cbedbf20edf9e310593e72";
+      };
+    };
+    "schema-utils-0.4.5" = {
+      name = "schema-utils";
+      packageName = "schema-utils";
+      version = "0.4.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/schema-utils/-/schema-utils-0.4.5.tgz";
+        sha512 = "yYrjb9TX2k/J1Y5UNy3KYdZq10xhYcF8nMpAW6o3hy6Q8WSIEf9lJHG/ePnOBfziPM3fvQwfOwa13U/Fh8qTfA==";
+      };
+    };
+    "select-1.1.2" = {
+      name = "select";
+      packageName = "select";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/select/-/select-1.1.2.tgz";
+        sha1 = "0e7350acdec80b1108528786ec1d4418d11b396d";
+      };
+    };
+    "semver-4.3.2" = {
+      name = "semver";
+      packageName = "semver";
+      version = "4.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/semver/-/semver-4.3.2.tgz";
+        sha1 = "c7a07158a80bedd052355b770d82d6640f803be7";
+      };
+    };
+    "semver-4.3.6" = {
+      name = "semver";
+      packageName = "semver";
+      version = "4.3.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/semver/-/semver-4.3.6.tgz";
+        sha1 = "300bc6e0e86374f7ba61068b5b1ecd57fc6532da";
+      };
+    };
+    "semver-5.5.0" = {
+      name = "semver";
+      packageName = "semver";
+      version = "5.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/semver/-/semver-5.5.0.tgz";
+        sha512 = "4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA==";
+      };
+    };
+    "send-0.16.2" = {
+      name = "send";
+      packageName = "send";
+      version = "0.16.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/send/-/send-0.16.2.tgz";
+        sha512 = "E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw==";
+      };
+    };
+    "sequencify-0.0.7" = {
+      name = "sequencify";
+      packageName = "sequencify";
+      version = "0.0.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sequencify/-/sequencify-0.0.7.tgz";
+        sha1 = "90cff19d02e07027fd767f5ead3e7b95d1e7380c";
+      };
+    };
+    "serialize-javascript-1.5.0" = {
+      name = "serialize-javascript";
+      packageName = "serialize-javascript";
+      version = "1.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-1.5.0.tgz";
+        sha512 = "Ga8c8NjAAp46Br4+0oZ2WxJCwIzwP60Gq1YPgU+39PiTVxyed/iKE/zyZI6+UlVYH5Q4PaQdHhcegIFPZTUfoQ==";
+      };
+    };
+    "series-stream-1.0.1" = {
+      name = "series-stream";
+      packageName = "series-stream";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/series-stream/-/series-stream-1.0.1.tgz";
+        sha1 = "311a09c5c1d5a091440832e1a480a47400f1005d";
+      };
+    };
+    "serve-static-1.13.2" = {
+      name = "serve-static";
+      packageName = "serve-static";
+      version = "1.13.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/serve-static/-/serve-static-1.13.2.tgz";
+        sha512 = "p/tdJrO4U387R9oMjb1oj7qSMaMfmOyd4j9hOFoxZe2baQszgHcSWjuya/CiT5kgZZKRudHNOA0pYXOl8rQ5nw==";
+      };
+    };
+    "set-blocking-2.0.0" = {
+      name = "set-blocking";
+      packageName = "set-blocking";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz";
+        sha1 = "045f9782d011ae9a6803ddd382b24392b3d890f7";
+      };
+    };
+    "set-immediate-shim-1.0.1" = {
+      name = "set-immediate-shim";
+      packageName = "set-immediate-shim";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz";
+        sha1 = "4b2b1b27eb808a9f8dcc481a58e5e56f599f3f61";
+      };
+    };
+    "set-value-0.4.3" = {
+      name = "set-value";
+      packageName = "set-value";
+      version = "0.4.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/set-value/-/set-value-0.4.3.tgz";
+        sha1 = "7db08f9d3d22dc7f78e53af3c3bf4666ecdfccf1";
+      };
+    };
+    "set-value-2.0.0" = {
+      name = "set-value";
+      packageName = "set-value";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/set-value/-/set-value-2.0.0.tgz";
+        sha512 = "hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg==";
+      };
+    };
+    "setimmediate-1.0.5" = {
+      name = "setimmediate";
+      packageName = "setimmediate";
+      version = "1.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz";
+        sha1 = "290cbb232e306942d7d7ea9b83732ab7856f8285";
+      };
+    };
+    "setprototypeof-1.0.3" = {
+      name = "setprototypeof";
+      packageName = "setprototypeof";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz";
+        sha1 = "66567e37043eeb4f04d91bd658c0cbefb55b8e04";
+      };
+    };
+    "setprototypeof-1.1.0" = {
+      name = "setprototypeof";
+      packageName = "setprototypeof";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz";
+        sha512 = "BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==";
+      };
+    };
+    "sha.js-2.2.6" = {
+      name = "sha.js";
+      packageName = "sha.js";
+      version = "2.2.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sha.js/-/sha.js-2.2.6.tgz";
+        sha1 = "17ddeddc5f722fb66501658895461977867315ba";
+      };
+    };
+    "shebang-command-1.2.0" = {
+      name = "shebang-command";
+      packageName = "shebang-command";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz";
+        sha1 = "44aac65b695b03398968c39f363fee5deafdf1ea";
+      };
+    };
+    "shebang-regex-1.0.0" = {
+      name = "shebang-regex";
+      packageName = "shebang-regex";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz";
+        sha1 = "da42f49740c0b42db2ca9728571cb190c98efea3";
+      };
+    };
+    "shelljs-0.3.0" = {
+      name = "shelljs";
+      packageName = "shelljs";
+      version = "0.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/shelljs/-/shelljs-0.3.0.tgz";
+        sha1 = "3596e6307a781544f591f37da618360f31db57b1";
+      };
+    };
+    "shelljs-0.7.8" = {
+      name = "shelljs";
+      packageName = "shelljs";
+      version = "0.7.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/shelljs/-/shelljs-0.7.8.tgz";
+        sha1 = "decbcf874b0d1e5fb72e14b164a9683048e9acb3";
+      };
+    };
+    "shimmer-1.1.0" = {
+      name = "shimmer";
+      packageName = "shimmer";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/shimmer/-/shimmer-1.1.0.tgz";
+        sha1 = "97d7377137ffbbab425522e429fe0aa89a488b35";
+      };
+    };
+    "sigmund-1.0.1" = {
+      name = "sigmund";
+      packageName = "sigmund";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz";
+        sha1 = "3ff21f198cad2175f9f3b781853fd94d0d19b590";
+      };
+    };
+    "signal-exit-3.0.2" = {
+      name = "signal-exit";
+      packageName = "signal-exit";
+      version = "3.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz";
+        sha1 = "b5fdc08f1287ea1178628e415e25132b73646c6d";
+      };
+    };
+    "slash-1.0.0" = {
+      name = "slash";
+      packageName = "slash";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz";
+        sha1 = "c41f2f6c39fc16d1cd17ad4b5d896114ae470d55";
+      };
+    };
+    "slice-ansi-0.0.4" = {
+      name = "slice-ansi";
+      packageName = "slice-ansi";
+      version = "0.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/slice-ansi/-/slice-ansi-0.0.4.tgz";
+        sha1 = "edbf8903f66f7ce2f8eafd6ceed65e264c831b35";
+      };
+    };
+    "snapdragon-0.8.2" = {
+      name = "snapdragon";
+      packageName = "snapdragon";
+      version = "0.8.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz";
+        sha512 = "FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==";
+      };
+    };
+    "snapdragon-node-2.1.1" = {
+      name = "snapdragon-node";
+      packageName = "snapdragon-node";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz";
+        sha512 = "O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==";
+      };
+    };
+    "snapdragon-util-3.0.1" = {
+      name = "snapdragon-util";
+      packageName = "snapdragon-util";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz";
+        sha512 = "mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==";
+      };
+    };
+    "sntp-1.0.9" = {
+      name = "sntp";
+      packageName = "sntp";
+      version = "1.0.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz";
+        sha1 = "6541184cc90aeea6c6e7b35e2659082443c66198";
+      };
+    };
+    "socket.io-adapter-1.1.1" = {
+      name = "socket.io-adapter";
+      packageName = "socket.io-adapter";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-1.1.1.tgz";
+        sha1 = "2a805e8a14d6372124dd9159ad4502f8cb07f06b";
+      };
+    };
+    "socket.io-client-2.0.4" = {
+      name = "socket.io-client";
+      packageName = "socket.io-client";
+      version = "2.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/socket.io-client/-/socket.io-client-2.0.4.tgz";
+        sha1 = "0918a552406dc5e540b380dcd97afc4a64332f8e";
+      };
+    };
+    "socket.io-parser-3.1.3" = {
+      name = "socket.io-parser";
+      packageName = "socket.io-parser";
+      version = "3.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.1.3.tgz";
+        sha512 = "g0a2HPqLguqAczs3dMECuA1RgoGFPyvDqcbaDEdCWY9g59kdUAz3YRmaJBNKXflrHNwB7Q12Gkf/0CZXfdHR7g==";
+      };
+    };
+    "sort-keys-1.1.2" = {
+      name = "sort-keys";
+      packageName = "sort-keys";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sort-keys/-/sort-keys-1.1.2.tgz";
+        sha1 = "441b6d4d346798f1b4e49e8920adfba0e543f9ad";
+      };
+    };
+    "source-list-map-0.1.8" = {
+      name = "source-list-map";
+      packageName = "source-list-map";
+      version = "0.1.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/source-list-map/-/source-list-map-0.1.8.tgz";
+        sha1 = "c550b2ab5427f6b3f21f5afead88c4f5587b2106";
+      };
+    };
+    "source-list-map-2.0.0" = {
+      name = "source-list-map";
+      packageName = "source-list-map";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.0.tgz";
+        sha512 = "I2UmuJSRr/T8jisiROLU3A3ltr+swpniSmNPI4Ml3ZCX6tVnDsuZzK7F2hl5jTqbZBWCEKlj5HRQiPExXLgE8A==";
+      };
+    };
+    "source-map-0.4.4" = {
+      name = "source-map";
+      packageName = "source-map";
+      version = "0.4.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz";
+        sha1 = "eba4f5da9c0dc999de68032d8b4f76173652036b";
+      };
+    };
+    "source-map-0.5.7" = {
+      name = "source-map";
+      packageName = "source-map";
+      version = "0.5.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz";
+        sha1 = "8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc";
+      };
+    };
+    "source-map-0.6.1" = {
+      name = "source-map";
+      packageName = "source-map";
+      version = "0.6.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz";
+        sha512 = "UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==";
+      };
+    };
+    "source-map-resolve-0.5.2" = {
+      name = "source-map-resolve";
+      packageName = "source-map-resolve";
+      version = "0.5.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz";
+        sha512 = "MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==";
+      };
+    };
+    "source-map-support-0.4.18" = {
+      name = "source-map-support";
+      packageName = "source-map-support";
+      version = "0.4.18";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz";
+        sha512 = "try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==";
+      };
+    };
+    "source-map-url-0.4.0" = {
+      name = "source-map-url";
+      packageName = "source-map-url";
+      version = "0.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz";
+        sha1 = "3e935d7ddd73631b97659956d55128e87b5084a3";
+      };
+    };
+    "sparkles-1.0.1" = {
+      name = "sparkles";
+      packageName = "sparkles";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sparkles/-/sparkles-1.0.1.tgz";
+        sha512 = "dSO0DDYUahUt/0/pD/Is3VIm5TGJjludZ0HVymmhYF6eNA53PVLhnUk0znSYbH8IYBuJdCE+1luR22jNLMaQdw==";
+      };
+    };
+    "spdx-correct-3.0.0" = {
+      name = "spdx-correct";
+      packageName = "spdx-correct";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.0.0.tgz";
+        sha512 = "N19o9z5cEyc8yQQPukRCZ9EUmb4HUpnrmaL/fxS2pBo2jbfcFRVuFZ/oFC+vZz0MNNk0h80iMn5/S6qGZOL5+g==";
+      };
+    };
+    "spdx-exceptions-2.1.0" = {
+      name = "spdx-exceptions";
+      packageName = "spdx-exceptions";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.1.0.tgz";
+        sha512 = "4K1NsmrlCU1JJgUrtgEeTVyfx8VaYea9J9LvARxhbHtVtohPs/gFGG5yy49beySjlIMhhXZ4QqujIZEfS4l6Cg==";
+      };
+    };
+    "spdx-expression-parse-3.0.0" = {
+      name = "spdx-expression-parse";
+      packageName = "spdx-expression-parse";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz";
+        sha512 = "Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==";
+      };
+    };
+    "spdx-license-ids-3.0.0" = {
+      name = "spdx-license-ids";
+      packageName = "spdx-license-ids";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.0.tgz";
+        sha512 = "2+EPwgbnmOIl8HjGBXXMd9NAu02vLjOO1nWw4kmeRDFyHn+M/ETfHxQUK0oXg8ctgVnl9t3rosNVsZ1jG61nDA==";
+      };
+    };
+    "split-1.0.1" = {
+      name = "split";
+      packageName = "split";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/split/-/split-1.0.1.tgz";
+        sha512 = "mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==";
+      };
+    };
+    "split-string-3.1.0" = {
+      name = "split-string";
+      packageName = "split-string";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz";
+        sha512 = "NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==";
+      };
+    };
+    "sprintf-0.1.5" = {
+      name = "sprintf";
+      packageName = "sprintf";
+      version = "0.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sprintf/-/sprintf-0.1.5.tgz";
+        sha1 = "8f83e39a9317c1a502cb7db8050e51c679f6edcf";
+      };
+    };
+    "sprintf-js-1.0.3" = {
+      name = "sprintf-js";
+      packageName = "sprintf-js";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz";
+        sha1 = "04e6926f662895354f3dd015203633b857297e2c";
+      };
+    };
+    "sprintf-js-1.1.1" = {
+      name = "sprintf-js";
+      packageName = "sprintf-js";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.1.tgz";
+        sha1 = "36be78320afe5801f6cea3ee78b6e5aab940ea0c";
+      };
+    };
+    "sqlstring-2.3.1" = {
+      name = "sqlstring";
+      packageName = "sqlstring";
+      version = "2.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sqlstring/-/sqlstring-2.3.1.tgz";
+        sha1 = "475393ff9e91479aea62dcaf0ca3d14983a7fb40";
+      };
+    };
+    "sshpk-1.14.2" = {
+      name = "sshpk";
+      packageName = "sshpk";
+      version = "1.14.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sshpk/-/sshpk-1.14.2.tgz";
+        sha1 = "c6fc61648a3d9c4e764fd3fcdf4ea105e492ba98";
+      };
+    };
+    "ssri-5.3.0" = {
+      name = "ssri";
+      packageName = "ssri";
+      version = "5.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ssri/-/ssri-5.3.0.tgz";
+        sha512 = "XRSIPqLij52MtgoQavH/x/dU1qVKtWUAAZeOHsR9c2Ddi4XerFy3mc1alf+dLJKl9EUIm/Ht+EowFkTUOA6GAQ==";
+      };
+    };
+    "stack-trace-0.0.10" = {
+      name = "stack-trace";
+      packageName = "stack-trace";
+      version = "0.0.10";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz";
+        sha1 = "547c70b347e8d32b4e108ea1a2a159e5fdde19c0";
+      };
+    };
+    "standard-engine-5.4.0" = {
+      name = "standard-engine";
+      packageName = "standard-engine";
+      version = "5.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/standard-engine/-/standard-engine-5.4.0.tgz";
+        sha1 = "e0e86959ea0786425d3383e40c1bf70d2f985579";
+      };
+    };
+    "static-extend-0.1.2" = {
+      name = "static-extend";
+      packageName = "static-extend";
+      version = "0.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz";
+        sha1 = "60809c39cbff55337226fd5e0b520f341f1fb5c6";
+      };
+    };
+    "statuses-1.4.0" = {
+      name = "statuses";
+      packageName = "statuses";
+      version = "1.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz";
+        sha512 = "zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==";
+      };
+    };
+    "statuses-1.5.0" = {
+      name = "statuses";
+      packageName = "statuses";
+      version = "1.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz";
+        sha1 = "161c7dac177659fd9811f43771fa99381478628c";
+      };
+    };
+    "stream-browserify-2.0.1" = {
+      name = "stream-browserify";
+      packageName = "stream-browserify";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.1.tgz";
+        sha1 = "66266ee5f9bdb9940a4e4514cafb43bb71e5c9db";
+      };
+    };
+    "stream-consume-0.1.1" = {
+      name = "stream-consume";
+      packageName = "stream-consume";
+      version = "0.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/stream-consume/-/stream-consume-0.1.1.tgz";
+        sha512 = "tNa3hzgkjEP7XbCkbRXe1jpg+ievoa0O4SCFlMOYEscGSS4JJsckGL8swUyAa/ApGU3Ae4t6Honor4HhL+tRyg==";
+      };
+    };
+    "stream-each-1.2.3" = {
+      name = "stream-each";
+      packageName = "stream-each";
+      version = "1.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz";
+        sha512 = "vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==";
+      };
+    };
+    "stream-from-to-1.4.3" = {
+      name = "stream-from-to";
+      packageName = "stream-from-to";
+      version = "1.4.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/stream-from-to/-/stream-from-to-1.4.3.tgz";
+        sha1 = "b270473ebc514e73615727c5d2f76b229941df94";
+      };
+    };
+    "stream-http-2.8.3" = {
+      name = "stream-http";
+      packageName = "stream-http";
+      version = "2.8.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz";
+        sha512 = "+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==";
+      };
+    };
+    "stream-shift-1.0.0" = {
+      name = "stream-shift";
+      packageName = "stream-shift";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.0.tgz";
+        sha1 = "d5c752825e5367e786f78e18e445ea223a155952";
+      };
+    };
+    "strict-uri-encode-1.1.0" = {
+      name = "strict-uri-encode";
+      packageName = "strict-uri-encode";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz";
+        sha1 = "279b225df1d582b1f54e65addd4352e18faa0713";
+      };
+    };
+    "string-natural-compare-2.0.2" = {
+      name = "string-natural-compare";
+      packageName = "string-natural-compare";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/string-natural-compare/-/string-natural-compare-2.0.2.tgz";
+        sha1 = "c5ce4e278ab5d1265ae6fc55435aeb7b76fcb001";
+      };
+    };
+    "string-width-1.0.2" = {
+      name = "string-width";
+      packageName = "string-width";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz";
+        sha1 = "118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3";
+      };
+    };
+    "string-width-2.1.1" = {
+      name = "string-width";
+      packageName = "string-width";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz";
+        sha512 = "nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==";
+      };
+    };
+    "string_decoder-0.10.31" = {
+      name = "string_decoder";
+      packageName = "string_decoder";
+      version = "0.10.31";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz";
+        sha1 = "62e203bc41766c6c28c9fc84301dab1c5310fa94";
+      };
+    };
+    "string_decoder-1.1.1" = {
+      name = "string_decoder";
+      packageName = "string_decoder";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz";
+        sha512 = "n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==";
+      };
+    };
+    "stringify-entities-1.3.2" = {
+      name = "stringify-entities";
+      packageName = "stringify-entities";
+      version = "1.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/stringify-entities/-/stringify-entities-1.3.2.tgz";
+        sha512 = "nrBAQClJAPN2p+uGCVJRPIPakKeKWZ9GtBCmormE7pWOSlHat7+x5A8gx85M7HM5Dt0BP3pP5RhVW77WdbJJ3A==";
+      };
+    };
+    "stringstream-0.0.6" = {
+      name = "stringstream";
+      packageName = "stringstream";
+      version = "0.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/stringstream/-/stringstream-0.0.6.tgz";
+        sha512 = "87GEBAkegbBcweToUrdzf3eLhWNg06FJTebl4BVJz/JgWy8CvEr9dRtX5qWphiynMSQlxxi+QqN0z5T32SLlhA==";
+      };
+    };
+    "strip-ansi-0.1.1" = {
+      name = "strip-ansi";
+      packageName = "strip-ansi";
+      version = "0.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/strip-ansi/-/strip-ansi-0.1.1.tgz";
+        sha1 = "39e8a98d044d150660abe4a6808acf70bb7bc991";
+      };
+    };
+    "strip-ansi-3.0.1" = {
+      name = "strip-ansi";
+      packageName = "strip-ansi";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz";
+        sha1 = "6a385fb8853d952d5ff05d0e8aaf94278dc63dcf";
+      };
+    };
+    "strip-ansi-4.0.0" = {
+      name = "strip-ansi";
+      packageName = "strip-ansi";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz";
+        sha1 = "a8479022eb1ac368a871389b635262c505ee368f";
+      };
+    };
+    "strip-bom-1.0.0" = {
+      name = "strip-bom";
+      packageName = "strip-bom";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/strip-bom/-/strip-bom-1.0.0.tgz";
+        sha1 = "85b8862f3844b5a6d5ec8467a93598173a36f794";
+      };
+    };
+    "strip-bom-3.0.0" = {
+      name = "strip-bom";
+      packageName = "strip-bom";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz";
+        sha1 = "2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3";
+      };
+    };
+    "strip-eof-1.0.0" = {
+      name = "strip-eof";
+      packageName = "strip-eof";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz";
+        sha1 = "bb43ff5598a6eb05d89b59fcd129c983313606bf";
+      };
+    };
+    "strip-json-comments-1.0.4" = {
+      name = "strip-json-comments";
+      packageName = "strip-json-comments";
+      version = "1.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-1.0.4.tgz";
+        sha1 = "1e15fbcac97d3ee99bf2d73b4c656b082bbafb91";
+      };
+    };
+    "strip-json-comments-2.0.1" = {
+      name = "strip-json-comments";
+      packageName = "strip-json-comments";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz";
+        sha1 = "3c531942e908c2697c0ec344858c286c7ca0a60a";
+      };
+    };
+    "structured-source-3.0.2" = {
+      name = "structured-source";
+      packageName = "structured-source";
+      version = "3.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/structured-source/-/structured-source-3.0.2.tgz";
+        sha1 = "dd802425e0f53dc4a6e7aca3752901a1ccda7af5";
+      };
+    };
+    "superagent-1.8.3" = {
+      name = "superagent";
+      packageName = "superagent";
+      version = "1.8.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/superagent/-/superagent-1.8.3.tgz";
+        sha1 = "2b7d70fcc870eda4f2a61e619dd54009b86547c3";
+      };
+    };
+    "supports-color-2.0.0" = {
+      name = "supports-color";
+      packageName = "supports-color";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz";
+        sha1 = "535d045ce6b6363fa40117084629995e9df324c7";
+      };
+    };
+    "supports-color-3.2.3" = {
+      name = "supports-color";
+      packageName = "supports-color";
+      version = "3.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz";
+        sha1 = "65ac0504b3954171d8a64946b2ae3cbb8a5f54f6";
+      };
+    };
+    "supports-color-5.4.0" = {
+      name = "supports-color";
+      packageName = "supports-color";
+      version = "5.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz";
+        sha512 = "zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==";
+      };
+    };
+    "svgo-0.7.2" = {
+      name = "svgo";
+      packageName = "svgo";
+      version = "0.7.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/svgo/-/svgo-0.7.2.tgz";
+        sha1 = "9f5772413952135c6fefbf40afe6a4faa88b4bb5";
+      };
+    };
+    "symbol-tree-3.2.2" = {
+      name = "symbol-tree";
+      packageName = "symbol-tree";
+      version = "3.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.2.tgz";
+        sha1 = "ae27db38f660a7ae2e1c3b7d1bc290819b8519e6";
+      };
+    };
+    "table-3.8.3" = {
+      name = "table";
+      packageName = "table";
+      version = "3.8.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/table/-/table-3.8.3.tgz";
+        sha1 = "2bbc542f0fda9861a755d3947fefd8b3f513855f";
+      };
+    };
+    "tapable-0.1.10" = {
+      name = "tapable";
+      packageName = "tapable";
+      version = "0.1.10";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tapable/-/tapable-0.1.10.tgz";
+        sha1 = "29c35707c2b70e50d07482b5d202e8ed446dafd4";
+      };
+    };
+    "tar-4.4.6" = {
+      name = "tar";
+      packageName = "tar";
+      version = "4.4.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tar/-/tar-4.4.6.tgz";
+        sha512 = "tMkTnh9EdzxyfW+6GK6fCahagXsnYk6kE6S9Gr9pjVdys769+laCTbodXDhPAjzVtEBazRgP0gYqOjnk9dQzLg==";
+      };
+    };
+    "tar-stream-1.6.1" = {
+      name = "tar-stream";
+      packageName = "tar-stream";
+      version = "1.6.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tar-stream/-/tar-stream-1.6.1.tgz";
+        sha512 = "IFLM5wp3QrJODQFPm6/to3LJZrONdBY/otxcvDIQzu217zKye6yVR3hhi9lAjrC2Z+m/j5oDxMPb1qcd8cIvpA==";
+      };
+    };
+    "taskgroup-4.3.1" = {
+      name = "taskgroup";
+      packageName = "taskgroup";
+      version = "4.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/taskgroup/-/taskgroup-4.3.1.tgz";
+        sha1 = "7de193febd768273c457730497024d512c27915a";
+      };
+    };
+    "temporary-0.0.8" = {
+      name = "temporary";
+      packageName = "temporary";
+      version = "0.0.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/temporary/-/temporary-0.0.8.tgz";
+        sha1 = "a18a981d28ba8ca36027fb3c30538c3ecb740ac0";
+      };
+    };
+    "terraformer-1.0.9" = {
+      name = "terraformer";
+      packageName = "terraformer";
+      version = "1.0.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/terraformer/-/terraformer-1.0.9.tgz";
+        sha512 = "YlmQ1fsMWTkKGDGibCRWgmLzrpDRUr63Q025LJ/taYQ6j1Yb8q9McKF7NBi6ACAyUXO6F/bl9w6v4MY307y5Ag==";
+      };
+    };
+    "terraformer-wkt-parser-1.2.0" = {
+      name = "terraformer-wkt-parser";
+      packageName = "terraformer-wkt-parser";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/terraformer-wkt-parser/-/terraformer-wkt-parser-1.2.0.tgz";
+        sha512 = "QU3iA54St5lF8Za1jg1oj4NYc8sn5tCZ08aNSWDeGzrsaV48eZk1iAVWasxhNspYBoCqdHuoot1pUTUrE1AJ4w==";
+      };
+    };
+    "text-table-0.2.0" = {
+      name = "text-table";
+      packageName = "text-table";
+      version = "0.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz";
+        sha1 = "7f5ee823ae805207c00af2df4a84ec3fcfa570b4";
+      };
+    };
+    "throttleit-1.0.0" = {
+      name = "throttleit";
+      packageName = "throttleit";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/throttleit/-/throttleit-1.0.0.tgz";
+        sha1 = "9e785836daf46743145a5984b6268d828528ac6c";
+      };
+    };
+    "through-2.3.8" = {
+      name = "through";
+      packageName = "through";
+      version = "2.3.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/through/-/through-2.3.8.tgz";
+        sha1 = "0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5";
+      };
+    };
+    "through2-0.6.5" = {
+      name = "through2";
+      packageName = "through2";
+      version = "0.6.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz";
+        sha1 = "41ab9c67b29d57209071410e1d7a7a968cd3ad48";
+      };
+    };
+    "through2-2.0.3" = {
+      name = "through2";
+      packageName = "through2";
+      version = "2.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz";
+        sha1 = "0004569b37c7c74ba39c43f3ced78d1ad94140be";
+      };
+    };
+    "tildify-1.2.0" = {
+      name = "tildify";
+      packageName = "tildify";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tildify/-/tildify-1.2.0.tgz";
+        sha1 = "dcec03f55dca9b7aa3e5b04f21817eb56e63588a";
+      };
+    };
+    "time-stamp-1.1.0" = {
+      name = "time-stamp";
+      packageName = "time-stamp";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/time-stamp/-/time-stamp-1.1.0.tgz";
+        sha1 = "764a5a11af50561921b133f3b44e618687e0f5c3";
+      };
+    };
+    "timers-browserify-2.0.10" = {
+      name = "timers-browserify";
+      packageName = "timers-browserify";
+      version = "2.0.10";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.10.tgz";
+        sha512 = "YvC1SV1XdOUaL6gx5CoGroT3Gu49pK9+TZ38ErPldOWW4j49GI1HKs9DV+KGq/w6y+LZ72W1c8cKz2vzY+qpzg==";
+      };
+    };
+    "timers-ext-0.1.5" = {
+      name = "timers-ext";
+      packageName = "timers-ext";
+      version = "0.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/timers-ext/-/timers-ext-0.1.5.tgz";
+        sha512 = "tsEStd7kmACHENhsUPaxb8Jf8/+GZZxyNFQbZD07HQOyooOa6At1rQqjffgvg7n+dxscQa9cjjMdWhJtsP2sxg==";
+      };
+    };
+    "tiny-emitter-2.0.2" = {
+      name = "tiny-emitter";
+      packageName = "tiny-emitter";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tiny-emitter/-/tiny-emitter-2.0.2.tgz";
+        sha512 = "2NM0auVBGft5tee/OxP4PI3d8WItkDM+fPnaRAVo6xTDI2knbz9eC5ArWGqtGlYqiH3RU5yMpdyTTO7MguC4ow==";
+      };
+    };
+    "tmp-0.0.29" = {
+      name = "tmp";
+      packageName = "tmp";
+      version = "0.0.29";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tmp/-/tmp-0.0.29.tgz";
+        sha1 = "f25125ff0dd9da3ccb0c2dd371ee1288bb9128c0";
+      };
+    };
+    "tmp-0.0.33" = {
+      name = "tmp";
+      packageName = "tmp";
+      version = "0.0.33";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz";
+        sha512 = "jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==";
+      };
+    };
+    "to-array-0.1.4" = {
+      name = "to-array";
+      packageName = "to-array";
+      version = "0.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/to-array/-/to-array-0.1.4.tgz";
+        sha1 = "17e6c11f73dd4f3d74cda7a4ff3238e9ad9bf890";
+      };
+    };
+    "to-arraybuffer-1.0.1" = {
+      name = "to-arraybuffer";
+      packageName = "to-arraybuffer";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz";
+        sha1 = "7d229b1fcc637e466ca081180836a7aabff83f43";
+      };
+    };
+    "to-buffer-1.1.1" = {
+      name = "to-buffer";
+      packageName = "to-buffer";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/to-buffer/-/to-buffer-1.1.1.tgz";
+        sha512 = "lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg==";
+      };
+    };
+    "to-fast-properties-1.0.3" = {
+      name = "to-fast-properties";
+      packageName = "to-fast-properties";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz";
+        sha1 = "b83571fa4d8c25b82e231b06e3a3055de4ca1a47";
+      };
+    };
+    "to-object-path-0.3.0" = {
+      name = "to-object-path";
+      packageName = "to-object-path";
+      version = "0.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz";
+        sha1 = "297588b7b0e7e0ac08e04e672f85c1f4999e17af";
+      };
+    };
+    "to-regex-3.0.2" = {
+      name = "to-regex";
+      packageName = "to-regex";
+      version = "3.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz";
+        sha512 = "FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==";
+      };
+    };
+    "to-regex-range-2.1.1" = {
+      name = "to-regex-range";
+      packageName = "to-regex-range";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz";
+        sha1 = "7c80c17b9dfebe599e27367e0d4dd5590141db38";
+      };
+    };
+    "toposort-1.0.7" = {
+      name = "toposort";
+      packageName = "toposort";
+      version = "1.0.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/toposort/-/toposort-1.0.7.tgz";
+        sha1 = "2e68442d9f64ec720b8cc89e6443ac6caa950029";
+      };
+    };
+    "toposort-class-1.0.1" = {
+      name = "toposort-class";
+      packageName = "toposort-class";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/toposort-class/-/toposort-class-1.0.1.tgz";
+        sha1 = "7ffd1f78c8be28c3ba45cd4e1a3f5ee193bd9988";
+      };
+    };
+    "tough-cookie-2.3.4" = {
+      name = "tough-cookie";
+      packageName = "tough-cookie";
+      version = "2.3.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.4.tgz";
+        sha512 = "TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA==";
+      };
+    };
+    "tough-cookie-2.4.3" = {
+      name = "tough-cookie";
+      packageName = "tough-cookie";
+      version = "2.4.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz";
+        sha512 = "Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==";
+      };
+    };
+    "tr46-0.0.3" = {
+      name = "tr46";
+      packageName = "tr46";
+      version = "0.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz";
+        sha1 = "8184fd347dac9cdc185992f3a6622e14b9d9ab6a";
+      };
+    };
+    "traverse-0.6.6" = {
+      name = "traverse";
+      packageName = "traverse";
+      version = "0.6.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/traverse/-/traverse-0.6.6.tgz";
+        sha1 = "cbdf560fd7b9af632502fed40f918c157ea97137";
+      };
+    };
+    "trim-0.0.1" = {
+      name = "trim";
+      packageName = "trim";
+      version = "0.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/trim/-/trim-0.0.1.tgz";
+        sha1 = "5858547f6b290757ee95cccc666fb50084c460dd";
+      };
+    };
+    "trim-right-1.0.1" = {
+      name = "trim-right";
+      packageName = "trim-right";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz";
+        sha1 = "cb2e1203067e0c8de1f614094b9fe45704ea6003";
+      };
+    };
+    "trim-trailing-lines-1.1.1" = {
+      name = "trim-trailing-lines";
+      packageName = "trim-trailing-lines";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/trim-trailing-lines/-/trim-trailing-lines-1.1.1.tgz";
+        sha512 = "bWLv9BbWbbd7mlqqs2oQYnLD/U/ZqeJeJwbO0FG2zA1aTq+HTvxfHNKFa/HGCVyJpDiioUYaBhfiT6rgk+l4mg==";
+      };
+    };
+    "trough-1.0.2" = {
+      name = "trough";
+      packageName = "trough";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/trough/-/trough-1.0.2.tgz";
+        sha512 = "FHkoUZvG6Egrv9XZAyYGKEyb1JMsFphgPjoczkZC2y6W93U1jswcVURB8MUvtsahEPEVACyxD47JAL63vF4JsQ==";
+      };
+    };
+    "tty-browserify-0.0.0" = {
+      name = "tty-browserify";
+      packageName = "tty-browserify";
+      version = "0.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz";
+        sha1 = "a157ba402da24e9bf957f9aa69d524eed42901a6";
+      };
+    };
+    "tunnel-agent-0.6.0" = {
+      name = "tunnel-agent";
+      packageName = "tunnel-agent";
+      version = "0.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz";
+        sha1 = "27a5dea06b36b04a0a9966774b290868f0fc40fd";
+      };
+    };
+    "tweetnacl-0.14.5" = {
+      name = "tweetnacl";
+      packageName = "tweetnacl";
+      version = "0.14.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz";
+        sha1 = "5ae68177f192d4456269d108afa93ff8743f4f64";
+      };
+    };
+    "type-check-0.3.2" = {
+      name = "type-check";
+      packageName = "type-check";
+      version = "0.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz";
+        sha1 = "5884cab512cf1d355e3fb784f30804b2b520db72";
+      };
+    };
+    "type-is-1.6.16" = {
+      name = "type-is";
+      packageName = "type-is";
+      version = "1.6.16";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/type-is/-/type-is-1.6.16.tgz";
+        sha512 = "HRkVv/5qY2G6I8iab9cI7v1bOIdhm94dVjQCPFElW9W+3GeDOSHmy2EBYe4VTApuzolPcmgFTN3ftVJRKR2J9Q==";
+      };
+    };
+    "typechecker-2.0.8" = {
+      name = "typechecker";
+      packageName = "typechecker";
+      version = "2.0.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/typechecker/-/typechecker-2.0.8.tgz";
+        sha1 = "e83da84bb64c584ccb345838576c40b0337db82e";
+      };
+    };
+    "typechecker-2.1.0" = {
+      name = "typechecker";
+      packageName = "typechecker";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/typechecker/-/typechecker-2.1.0.tgz";
+        sha1 = "d1c2093a54ff8a19f58cff877eeaa54f2242d383";
+      };
+    };
+    "typechecker-4.5.0" = {
+      name = "typechecker";
+      packageName = "typechecker";
+      version = "4.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/typechecker/-/typechecker-4.5.0.tgz";
+        sha512 = "bqPE/ck3bVIaXP7gMKTKSHrypT32lpYTpiqzPYeYzdSQnmaGvaGhy7TnN/M/+5R+2rs/kKcp9ZLPRp/Q9Yj+4w==";
+      };
+    };
+    "typedarray-0.0.6" = {
+      name = "typedarray";
+      packageName = "typedarray";
+      version = "0.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz";
+        sha1 = "867ac74e3864187b1d3d47d996a78ec5c8830777";
+      };
+    };
+    "uc.micro-1.0.5" = {
+      name = "uc.micro";
+      packageName = "uc.micro";
+      version = "1.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.5.tgz";
+        sha512 = "JoLI4g5zv5qNyT09f4YAvEZIIV1oOjqnewYg5D38dkQljIzpPT296dbIGvKro3digYI1bkb7W6EP1y4uDlmzLg==";
+      };
+    };
+    "uglify-es-3.3.10" = {
+      name = "uglify-es";
+      packageName = "uglify-es";
+      version = "3.3.10";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/uglify-es/-/uglify-es-3.3.10.tgz";
+        sha512 = "rPzPisCzW68Okj1zNrfa2dR9uEm43SevDmpR6FChoZABFk9dANGnzzBMgHYUXI3609//63fnVkyQ1SQmAMyjww==";
+      };
+    };
+    "uglify-js-2.7.5" = {
+      name = "uglify-js";
+      packageName = "uglify-js";
+      version = "2.7.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/uglify-js/-/uglify-js-2.7.5.tgz";
+        sha1 = "4612c0c7baaee2ba7c487de4904ae122079f2ca8";
+      };
+    };
+    "uglify-js-2.8.29" = {
+      name = "uglify-js";
+      packageName = "uglify-js";
+      version = "2.8.29";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz";
+        sha1 = "29c5733148057bb4e1f75df35b7a9cb72e6a59dd";
+      };
+    };
+    "uglify-js-3.4.6" = {
+      name = "uglify-js";
+      packageName = "uglify-js";
+      version = "3.4.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/uglify-js/-/uglify-js-3.4.6.tgz";
+        sha512 = "O1D7L6WcOzS1qW2ehopEm4cWm5yA6bQBozlks8jO8ODxYCy4zv+bR/la4Lwp01tpkYGNonnpXvUpYtrvSu8Yzg==";
+      };
+    };
+    "uglify-to-browserify-1.0.2" = {
+      name = "uglify-to-browserify";
+      packageName = "uglify-to-browserify";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz";
+        sha1 = "6e0924d6bda6b5afe349e39a6d632850a0f882b7";
+      };
+    };
+    "uid-safe-2.1.5" = {
+      name = "uid-safe";
+      packageName = "uid-safe";
+      version = "2.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/uid-safe/-/uid-safe-2.1.5.tgz";
+        sha512 = "KPHm4VL5dDXKz01UuEd88Df+KzynaohSL9fBh096KWAxSKZQDI2uBrVqtvRM4rwrIrRRKsdLNML/lnaaVSRioA==";
+      };
+    };
+    "uid2-0.0.3" = {
+      name = "uid2";
+      packageName = "uid2";
+      version = "0.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/uid2/-/uid2-0.0.3.tgz";
+        sha1 = "483126e11774df2f71b8b639dcd799c376162b82";
+      };
+    };
+    "ultron-1.1.1" = {
+      name = "ultron";
+      packageName = "ultron";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz";
+        sha512 = "UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==";
+      };
+    };
+    "umzug-1.12.0" = {
+      name = "umzug";
+      packageName = "umzug";
+      version = "1.12.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/umzug/-/umzug-1.12.0.tgz";
+        sha1 = "a79c91f2862eee3130c6c347f2b90ad68a66e8b8";
+      };
+    };
+    "unc-path-regex-0.1.2" = {
+      name = "unc-path-regex";
+      packageName = "unc-path-regex";
+      version = "0.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz";
+        sha1 = "e73dd3d7b0d7c5ed86fbac6b0ae7d8c6a69d50fa";
+      };
+    };
+    "underscore-1.4.4" = {
+      name = "underscore";
+      packageName = "underscore";
+      version = "1.4.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/underscore/-/underscore-1.4.4.tgz";
+        sha1 = "61a6a32010622afa07963bf325203cf12239d604";
+      };
+    };
+    "underscore-1.6.0" = {
+      name = "underscore";
+      packageName = "underscore";
+      version = "1.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz";
+        sha1 = "8b38b10cacdef63337b8b24e4ff86d45aea529a8";
+      };
+    };
+    "underscore-1.7.0" = {
+      name = "underscore";
+      packageName = "underscore";
+      version = "1.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/underscore/-/underscore-1.7.0.tgz";
+        sha1 = "6bbaf0877500d36be34ecaa584e0db9fef035209";
+      };
+    };
+    "underscore-1.8.3" = {
+      name = "underscore";
+      packageName = "underscore";
+      version = "1.8.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz";
+        sha1 = "4f3fb53b106e6097fcf9cb4109f2a5e9bdfa5022";
+      };
+    };
+    "underscore-1.9.1" = {
+      name = "underscore";
+      packageName = "underscore";
+      version = "1.9.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz";
+        sha512 = "5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==";
+      };
+    };
+    "underscore.string-2.4.0" = {
+      name = "underscore.string";
+      packageName = "underscore.string";
+      version = "2.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/underscore.string/-/underscore.string-2.4.0.tgz";
+        sha1 = "8cdd8fbac4e2d2ea1e7e2e8097c42f442280f85b";
+      };
+    };
+    "unherit-1.1.1" = {
+      name = "unherit";
+      packageName = "unherit";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/unherit/-/unherit-1.1.1.tgz";
+        sha512 = "+XZuV691Cn4zHsK0vkKYwBEwB74T3IZIcxrgn2E4rKwTfFyI1zCh7X7grwh9Re08fdPlarIdyWgI8aVB3F5A5g==";
+      };
+    };
+    "unicode-5.2.0-0.7.5" = {
+      name = "unicode-5.2.0";
+      packageName = "unicode-5.2.0";
+      version = "0.7.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/unicode-5.2.0/-/unicode-5.2.0-0.7.5.tgz";
+        sha512 = "KVGLW1Bri30x00yv4HNM8kBxoqFXr0Sbo55735nvrlsx4PYBZol3UtoWgO492fSwmsetzPEZzy73rbU8OGXJcA==";
+      };
+    };
+    "unified-4.2.1" = {
+      name = "unified";
+      packageName = "unified";
+      version = "4.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/unified/-/unified-4.2.1.tgz";
+        sha1 = "76ff43aa8da430f6e7e4a55c84ebac2ad2cfcd2e";
+      };
+    };
+    "union-value-1.0.0" = {
+      name = "union-value";
+      packageName = "union-value";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz";
+        sha1 = "5c71c34cb5bad5dcebe3ea0cd08207ba5aa1aea4";
+      };
+    };
+    "uniq-1.0.1" = {
+      name = "uniq";
+      packageName = "uniq";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz";
+        sha1 = "b31c5ae8254844a3a8281541ce2b04b865a734ff";
+      };
+    };
+    "uniqs-2.0.0" = {
+      name = "uniqs";
+      packageName = "uniqs";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/uniqs/-/uniqs-2.0.0.tgz";
+        sha1 = "ffede4b36b25290696e6e165d4a59edb998e6b02";
+      };
+    };
+    "unique-filename-1.1.0" = {
+      name = "unique-filename";
+      packageName = "unique-filename";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.0.tgz";
+        sha1 = "d05f2fe4032560871f30e93cbe735eea201514f3";
+      };
+    };
+    "unique-slug-2.0.0" = {
+      name = "unique-slug";
+      packageName = "unique-slug";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.0.tgz";
+        sha1 = "db6676e7c7cc0629878ff196097c78855ae9f4ab";
+      };
+    };
+    "unique-stream-1.0.0" = {
+      name = "unique-stream";
+      packageName = "unique-stream";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/unique-stream/-/unique-stream-1.0.0.tgz";
+        sha1 = "d59a4a75427447d9aa6c91e70263f8d26a4b104b";
+      };
+    };
+    "unist-util-is-2.1.2" = {
+      name = "unist-util-is";
+      packageName = "unist-util-is";
+      version = "2.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/unist-util-is/-/unist-util-is-2.1.2.tgz";
+        sha512 = "YkXBK/H9raAmG7KXck+UUpnKiNmUdB+aBGrknfQ4EreE1banuzrKABx3jP6Z5Z3fMSPMQQmeXBlKpCbMwBkxVw==";
+      };
+    };
+    "unist-util-remove-position-1.1.2" = {
+      name = "unist-util-remove-position";
+      packageName = "unist-util-remove-position";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-1.1.2.tgz";
+        sha512 = "XxoNOBvq1WXRKXxgnSYbtCF76TJrRoe5++pD4cCBsssSiWSnPEktyFrFLE8LTk3JW5mt9hB0Sk5zn4x/JeWY7Q==";
+      };
+    };
+    "unist-util-visit-1.4.0" = {
+      name = "unist-util-visit";
+      packageName = "unist-util-visit";
+      version = "1.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-1.4.0.tgz";
+        sha512 = "FiGu34ziNsZA3ZUteZxSFaczIjGmksfSgdKqBfOejrrfzyUy5b7YrlzT1Bcvi+djkYDituJDy2XB7tGTeBieKw==";
+      };
+    };
+    "unist-util-visit-parents-2.0.1" = {
+      name = "unist-util-visit-parents";
+      packageName = "unist-util-visit-parents";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-2.0.1.tgz";
+        sha512 = "6B0UTiMfdWql4cQ03gDTCSns+64Zkfo2OCbK31Ov0uMizEz+CJeAp0cgZVb5Fhmcd7Bct2iRNywejT0orpbqUA==";
+      };
+    };
+    "universalify-0.1.2" = {
+      name = "universalify";
+      packageName = "universalify";
+      version = "0.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz";
+        sha512 = "rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==";
+      };
+    };
+    "unpipe-1.0.0" = {
+      name = "unpipe";
+      packageName = "unpipe";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz";
+        sha1 = "b2bf4ee8514aae6165b4817829d21b2ef49904ec";
+      };
+    };
+    "unset-value-1.0.0" = {
+      name = "unset-value";
+      packageName = "unset-value";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz";
+        sha1 = "8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559";
+      };
+    };
+    "update-section-0.3.3" = {
+      name = "update-section";
+      packageName = "update-section";
+      version = "0.3.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/update-section/-/update-section-0.3.3.tgz";
+        sha1 = "458f17820d37820dc60e20b86d94391b00123158";
+      };
+    };
+    "upper-case-1.1.3" = {
+      name = "upper-case";
+      packageName = "upper-case";
+      version = "1.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/upper-case/-/upper-case-1.1.3.tgz";
+        sha1 = "f6b4501c2ec4cdd26ba78be7222961de77621598";
+      };
+    };
+    "uri-js-4.2.2" = {
+      name = "uri-js";
+      packageName = "uri-js";
+      version = "4.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz";
+        sha512 = "KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==";
+      };
+    };
+    "uri-path-1.0.0" = {
+      name = "uri-path";
+      packageName = "uri-path";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/uri-path/-/uri-path-1.0.0.tgz";
+        sha1 = "9747f018358933c31de0fccfd82d138e67262e32";
+      };
+    };
+    "urix-0.1.0" = {
+      name = "urix";
+      packageName = "urix";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz";
+        sha1 = "da937f7a62e21fec1fd18d49b35c2935067a6c72";
+      };
+    };
+    "url-0.10.3" = {
+      name = "url";
+      packageName = "url";
+      version = "0.10.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/url/-/url-0.10.3.tgz";
+        sha1 = "021e4d9c7705f21bbf37d03ceb58767402774c64";
+      };
+    };
+    "url-0.11.0" = {
+      name = "url";
+      packageName = "url";
+      version = "0.11.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/url/-/url-0.11.0.tgz";
+        sha1 = "3838e97cfc60521eb73c525a8e55bfdd9e2e28f1";
+      };
+    };
+    "use-3.1.1" = {
+      name = "use";
+      packageName = "use";
+      version = "3.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/use/-/use-3.1.1.tgz";
+        sha512 = "cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==";
+      };
+    };
+    "user-home-1.1.1" = {
+      name = "user-home";
+      packageName = "user-home";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/user-home/-/user-home-1.1.1.tgz";
+        sha1 = "2b5be23a32b63a7c9deb8d0f28d485724a3df190";
+      };
+    };
+    "user-home-2.0.0" = {
+      name = "user-home";
+      packageName = "user-home";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/user-home/-/user-home-2.0.0.tgz";
+        sha1 = "9c70bfd8169bc1dcbf48604e0f04b8b49cde9e9f";
+      };
+    };
+    "util-0.10.3" = {
+      name = "util";
+      packageName = "util";
+      version = "0.10.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/util/-/util-0.10.3.tgz";
+        sha1 = "7afb1afe50805246489e3db7fe0ed379336ac0f9";
+      };
+    };
+    "util-0.10.4" = {
+      name = "util";
+      packageName = "util";
+      version = "0.10.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/util/-/util-0.10.4.tgz";
+        sha512 = "0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A==";
+      };
+    };
+    "util-deprecate-1.0.2" = {
+      name = "util-deprecate";
+      packageName = "util-deprecate";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz";
+        sha1 = "450d4dc9fa70de732762fbd2d4a28981419a0ccf";
+      };
+    };
+    "utila-0.3.3" = {
+      name = "utila";
+      packageName = "utila";
+      version = "0.3.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/utila/-/utila-0.3.3.tgz";
+        sha1 = "d7e8e7d7e309107092b05f8d9688824d633a4226";
+      };
+    };
+    "utila-0.4.0" = {
+      name = "utila";
+      packageName = "utila";
+      version = "0.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz";
+        sha1 = "8a16a05d445657a3aea5eecc5b12a4fa5379772c";
+      };
+    };
+    "utils-merge-1.0.1" = {
+      name = "utils-merge";
+      packageName = "utils-merge";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz";
+        sha1 = "9f95710f50a267947b2ccc124741c1028427e713";
+      };
+    };
+    "uuid-3.1.0" = {
+      name = "uuid";
+      packageName = "uuid";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/uuid/-/uuid-3.1.0.tgz";
+        sha512 = "DIWtzUkw04M4k3bf1IcpS2tngXEL26YUD2M0tMDUpnUrz2hgzUBlD55a4FjdLGPvfHxS6uluGWvaVEqgBcVa+g==";
+      };
+    };
+    "uuid-3.3.2" = {
+      name = "uuid";
+      packageName = "uuid";
+      version = "3.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz";
+        sha512 = "yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==";
+      };
+    };
+    "uws-9.14.0" = {
+      name = "uws";
+      packageName = "uws";
+      version = "9.14.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/uws/-/uws-9.14.0.tgz";
+        sha512 = "HNMztPP5A1sKuVFmdZ6BPVpBQd5bUjNC8EFMFiICK+oho/OQsAJy5hnIx4btMHiOk8j04f/DbIlqnEZ9d72dqg==";
+      };
+    };
+    "v8flags-2.1.1" = {
+      name = "v8flags";
+      packageName = "v8flags";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/v8flags/-/v8flags-2.1.1.tgz";
+        sha1 = "aab1a1fa30d45f88dd321148875ac02c0b55e5b4";
+      };
+    };
+    "validate-npm-package-license-3.0.3" = {
+      name = "validate-npm-package-license";
+      packageName = "validate-npm-package-license";
+      version = "3.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.3.tgz";
+        sha512 = "63ZOUnL4SIXj4L0NixR3L1lcjO38crAbgrTpl28t8jjrfuiOBL5Iygm+60qPs/KsZGzPNg6Smnc/oY16QTjF0g==";
+      };
+    };
+    "validator-5.7.0" = {
+      name = "validator";
+      packageName = "validator";
+      version = "5.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/validator/-/validator-5.7.0.tgz";
+        sha1 = "7a87a58146b695ac486071141c0c49d67da05e5c";
+      };
+    };
+    "validator-9.4.1" = {
+      name = "validator";
+      packageName = "validator";
+      version = "9.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/validator/-/validator-9.4.1.tgz";
+        sha512 = "YV5KjzvRmSyJ1ee/Dm5UED0G+1L4GZnLN3w6/T+zZm8scVua4sOhYKWTUrKa0H/tMiJyO9QLHMPN+9mB/aMunA==";
+      };
+    };
+    "vary-1.1.2" = {
+      name = "vary";
+      packageName = "vary";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz";
+        sha1 = "2299f02c6ded30d4a5961b0b9f74524a18f634fc";
+      };
+    };
+    "vasync-1.6.4" = {
+      name = "vasync";
+      packageName = "vasync";
+      version = "1.6.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/vasync/-/vasync-1.6.4.tgz";
+        sha1 = "dfe93616ad0e7ae801b332a9d88bfc5cdc8e1d1f";
+      };
+    };
+    "vendors-1.0.2" = {
+      name = "vendors";
+      packageName = "vendors";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/vendors/-/vendors-1.0.2.tgz";
+        sha512 = "w/hry/368nO21AN9QljsaIhb9ZiZtZARoVH5f3CsFbawdLdayCgKRPup7CggujvySMxx0I91NOyxdVENohprLQ==";
+      };
+    };
+    "verror-1.10.0" = {
+      name = "verror";
+      packageName = "verror";
+      version = "1.10.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz";
+        sha1 = "3a105ca17053af55d6e270c1f8288682e18da400";
+      };
+    };
+    "verror-1.6.0" = {
+      name = "verror";
+      packageName = "verror";
+      version = "1.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/verror/-/verror-1.6.0.tgz";
+        sha1 = "7d13b27b1facc2e2da90405eb5ea6e5bdd252ea5";
+      };
+    };
+    "vfile-1.4.0" = {
+      name = "vfile";
+      packageName = "vfile";
+      version = "1.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/vfile/-/vfile-1.4.0.tgz";
+        sha1 = "c0fd6fa484f8debdb771f68c31ed75d88da97fe7";
+      };
+    };
+    "vfile-location-2.0.3" = {
+      name = "vfile-location";
+      packageName = "vfile-location";
+      version = "2.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/vfile-location/-/vfile-location-2.0.3.tgz";
+        sha512 = "zM5/l4lfw1CBoPx3Jimxoc5RNDAHHpk6AM6LM0pTIkm5SUSsx8ZekZ0PVdf0WEZ7kjlhSt7ZlqbRL6Cd6dBs6A==";
+      };
+    };
+    "vinyl-0.4.6" = {
+      name = "vinyl";
+      packageName = "vinyl";
+      version = "0.4.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/vinyl/-/vinyl-0.4.6.tgz";
+        sha1 = "2f356c87a550a255461f36bbeb2a5ba8bf784847";
+      };
+    };
+    "vinyl-0.5.3" = {
+      name = "vinyl";
+      packageName = "vinyl";
+      version = "0.5.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/vinyl/-/vinyl-0.5.3.tgz";
+        sha1 = "b0455b38fc5e0cf30d4325132e461970c2091cde";
+      };
+    };
+    "vinyl-fs-0.3.14" = {
+      name = "vinyl-fs";
+      packageName = "vinyl-fs";
+      version = "0.3.14";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/vinyl-fs/-/vinyl-fs-0.3.14.tgz";
+        sha1 = "9a6851ce1cac1c1cea5fe86c0931d620c2cfa9e6";
+      };
+    };
+    "vlq-0.2.3" = {
+      name = "vlq";
+      packageName = "vlq";
+      version = "0.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/vlq/-/vlq-0.2.3.tgz";
+        sha512 = "DRibZL6DsNhIgYQ+wNdWDL2SL3bKPlVrRiBqV5yuMm++op8W4kGFtaQfCs4KEJn0wBZcHVHJ3eoywX8983k1ow==";
+      };
+    };
+    "vm-browserify-0.0.4" = {
+      name = "vm-browserify";
+      packageName = "vm-browserify";
+      version = "0.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.4.tgz";
+        sha1 = "5d7ea45bbef9e4a6ff65f95438e0a87c357d5a73";
+      };
+    };
+    "void-elements-2.0.1" = {
+      name = "void-elements";
+      packageName = "void-elements";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz";
+        sha1 = "c066afb582bb1cb4128d60ea92392e94d5e9dbec";
+      };
+    };
+    "watchpack-0.2.9" = {
+      name = "watchpack";
+      packageName = "watchpack";
+      version = "0.2.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/watchpack/-/watchpack-0.2.9.tgz";
+        sha1 = "62eaa4ab5e5ba35fdfc018275626e3c0f5e3fb0b";
+      };
+    };
+    "watchr-2.4.13" = {
+      name = "watchr";
+      packageName = "watchr";
+      version = "2.4.13";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/watchr/-/watchr-2.4.13.tgz";
+        sha1 = "d74847bb4d6f90f61fe2c74f9f68662aa0e07601";
+      };
+    };
+    "webidl-conversions-3.0.1" = {
+      name = "webidl-conversions";
+      packageName = "webidl-conversions";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz";
+        sha1 = "24534275e2a7bc6be7bc86611cc16ae0a5654871";
+      };
+    };
+    "webidl-conversions-4.0.2" = {
+      name = "webidl-conversions";
+      packageName = "webidl-conversions";
+      version = "4.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz";
+        sha512 = "YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==";
+      };
+    };
+    "webpack-core-0.6.9" = {
+      name = "webpack-core";
+      packageName = "webpack-core";
+      version = "0.6.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/webpack-core/-/webpack-core-0.6.9.tgz";
+        sha1 = "fc571588c8558da77be9efb6debdc5a3b172bdc2";
+      };
+    };
+    "webpack-sources-0.1.5" = {
+      name = "webpack-sources";
+      packageName = "webpack-sources";
+      version = "0.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/webpack-sources/-/webpack-sources-0.1.5.tgz";
+        sha1 = "aa1f3abf0f0d74db7111c40e500b84f966640750";
+      };
+    };
+    "webpack-sources-1.1.0" = {
+      name = "webpack-sources";
+      packageName = "webpack-sources";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.1.0.tgz";
+        sha512 = "aqYp18kPphgoO5c/+NaUvEeACtZjMESmDChuD3NBciVpah3XpMEU9VAAtIaB1BsfJWWTSdv8Vv1m3T0aRk2dUw==";
+      };
+    };
+    "whatwg-encoding-1.0.3" = {
+      name = "whatwg-encoding";
+      packageName = "whatwg-encoding";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.3.tgz";
+        sha512 = "jLBwwKUhi8WtBfsMQlL4bUUcT8sMkAtQinscJAe/M4KHCkHuUJAF6vuB0tueNIw4c8ziO6AkRmgY+jL3a0iiPw==";
+      };
+    };
+    "whatwg-url-4.8.0" = {
+      name = "whatwg-url";
+      packageName = "whatwg-url";
+      version = "4.8.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/whatwg-url/-/whatwg-url-4.8.0.tgz";
+        sha1 = "d2981aa9148c1e00a41c5a6131166ab4683bbcc0";
+      };
+    };
+    "whet.extend-0.9.9" = {
+      name = "whet.extend";
+      packageName = "whet.extend";
+      version = "0.9.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/whet.extend/-/whet.extend-0.9.9.tgz";
+        sha1 = "f877d5bf648c97e5aa542fadc16d6a259b9c11a1";
+      };
+    };
+    "which-1.3.1" = {
+      name = "which";
+      packageName = "which";
+      version = "1.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/which/-/which-1.3.1.tgz";
+        sha512 = "HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==";
+      };
+    };
+    "which-module-2.0.0" = {
+      name = "which-module";
+      packageName = "which-module";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz";
+        sha1 = "d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a";
+      };
+    };
+    "wide-align-1.1.3" = {
+      name = "wide-align";
+      packageName = "wide-align";
+      version = "1.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz";
+        sha512 = "QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==";
+      };
+    };
+    "window-size-0.1.0" = {
+      name = "window-size";
+      packageName = "window-size";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz";
+        sha1 = "5438cd2ea93b202efa3a19fe8887aee7c94f9c9d";
+      };
+    };
+    "winston-2.4.3" = {
+      name = "winston";
+      packageName = "winston";
+      version = "2.4.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/winston/-/winston-2.4.3.tgz";
+        sha512 = "GYKuysPz2pxYAVJD2NPsDLP5Z79SDEzPm9/j4tCjkF/n89iBNGBMJcR+dMUqxgPNgoSs6fVygPi+Vl2oxIpBuw==";
+      };
+    };
+    "wkx-0.2.0" = {
+      name = "wkx";
+      packageName = "wkx";
+      version = "0.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/wkx/-/wkx-0.2.0.tgz";
+        sha1 = "76c24f16acd0cd8f93cd34aa331e0f7961256e84";
+      };
+    };
+    "wordwrap-0.0.2" = {
+      name = "wordwrap";
+      packageName = "wordwrap";
+      version = "0.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz";
+        sha1 = "b79669bb42ecb409f83d583cad52ca17eaa1643f";
+      };
+    };
+    "wordwrap-0.0.3" = {
+      name = "wordwrap";
+      packageName = "wordwrap";
+      version = "0.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz";
+        sha1 = "a3d5da6cd5c0bc0008d37234bbaf1bed63059107";
+      };
+    };
+    "wordwrap-1.0.0" = {
+      name = "wordwrap";
+      packageName = "wordwrap";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz";
+        sha1 = "27584810891456a4171c8d0226441ade90cbcaeb";
+      };
+    };
+    "worker-farm-1.6.0" = {
+      name = "worker-farm";
+      packageName = "worker-farm";
+      version = "1.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/worker-farm/-/worker-farm-1.6.0.tgz";
+        sha512 = "6w+3tHbM87WnSWnENBUvA2pxJPLhQUg5LKwUQHq3r+XPhIM+Gh2R5ycbwPCyuGbNg+lPgdcnQUhuC02kJCvffQ==";
+      };
+    };
+    "wrap-ansi-2.1.0" = {
+      name = "wrap-ansi";
+      packageName = "wrap-ansi";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz";
+        sha1 = "d8fc3d284dd05794fe84973caecdd1cf824fdd85";
+      };
+    };
+    "wrappy-1.0.2" = {
+      name = "wrappy";
+      packageName = "wrappy";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz";
+        sha1 = "b5243d8f3ec1aa35f1364605bc0d1036e30ab69f";
+      };
+    };
+    "write-0.2.1" = {
+      name = "write";
+      packageName = "write";
+      version = "0.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/write/-/write-0.2.1.tgz";
+        sha1 = "5fc03828e264cea3fe91455476f7a3c566cb0757";
+      };
+    };
+    "ws-3.3.3" = {
+      name = "ws";
+      packageName = "ws";
+      version = "3.3.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ws/-/ws-3.3.3.tgz";
+        sha512 = "nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==";
+      };
+    };
+    "x-xss-protection-1.1.0" = {
+      name = "x-xss-protection";
+      packageName = "x-xss-protection";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/x-xss-protection/-/x-xss-protection-1.1.0.tgz";
+        sha512 = "rx3GzJlgEeZ08MIcDsU2vY2B1QEriUKJTSiNHHUIem6eg9pzVOr2TL3Y4Pd6TMAM5D5azGjcxqI62piITBDHVg==";
+      };
+    };
+    "xml-1.0.1" = {
+      name = "xml";
+      packageName = "xml";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/xml/-/xml-1.0.1.tgz";
+        sha1 = "78ba72020029c5bc87b8a81a3cfcd74b4a2fc1e5";
+      };
+    };
+    "xml-crypto-0.10.1" = {
+      name = "xml-crypto";
+      packageName = "xml-crypto";
+      version = "0.10.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/xml-crypto/-/xml-crypto-0.10.1.tgz";
+        sha1 = "f832f74ccf56f24afcae1163a1fcab44d96774a8";
+      };
+    };
+    "xml-encryption-0.11.2" = {
+      name = "xml-encryption";
+      packageName = "xml-encryption";
+      version = "0.11.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/xml-encryption/-/xml-encryption-0.11.2.tgz";
+        sha512 = "jVvES7i5ovdO7N+NjgncA326xYKjhqeAnnvIgRnY7ROLCfFqEDLwP0Sxp/30SHG0AXQV1048T5yinOFyvwGFzg==";
+      };
+    };
+    "xml-name-validator-2.0.1" = {
+      name = "xml-name-validator";
+      packageName = "xml-name-validator";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-2.0.1.tgz";
+        sha1 = "4d8b8f1eccd3419aa362061becef515e1e559635";
+      };
+    };
+    "xml2js-0.2.8" = {
+      name = "xml2js";
+      packageName = "xml2js";
+      version = "0.2.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/xml2js/-/xml2js-0.2.8.tgz";
+        sha1 = "9b81690931631ff09d1957549faf54f4f980b3c2";
+      };
+    };
+    "xml2js-0.4.19" = {
+      name = "xml2js";
+      packageName = "xml2js";
+      version = "0.4.19";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/xml2js/-/xml2js-0.4.19.tgz";
+        sha512 = "esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q==";
+      };
+    };
+    "xmlbuilder-0.4.3" = {
+      name = "xmlbuilder";
+      packageName = "xmlbuilder";
+      version = "0.4.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-0.4.3.tgz";
+        sha1 = "c4614ba74e0ad196e609c9272cd9e1ddb28a8a58";
+      };
+    };
+    "xmlbuilder-9.0.7" = {
+      name = "xmlbuilder";
+      packageName = "xmlbuilder";
+      version = "9.0.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz";
+        sha1 = "132ee63d2ec5565c557e20f4c22df9aca686b10d";
+      };
+    };
+    "xmldom-0.1.19" = {
+      name = "xmldom";
+      packageName = "xmldom";
+      version = "0.1.19";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/xmldom/-/xmldom-0.1.19.tgz";
+        sha1 = "631fc07776efd84118bf25171b37ed4d075a0abc";
+      };
+    };
+    "xmldom-0.1.27" = {
+      name = "xmldom";
+      packageName = "xmldom";
+      version = "0.1.27";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/xmldom/-/xmldom-0.1.27.tgz";
+        sha1 = "d501f97b3bdb403af8ef9ecc20573187aadac0e9";
+      };
+    };
+    "xmlhttprequest-1.8.0" = {
+      name = "xmlhttprequest";
+      packageName = "xmlhttprequest";
+      version = "1.8.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/xmlhttprequest/-/xmlhttprequest-1.8.0.tgz";
+        sha1 = "67fe075c5c24fef39f9d65f5f7b7fe75171968fc";
+      };
+    };
+    "xmlhttprequest-ssl-1.5.5" = {
+      name = "xmlhttprequest-ssl";
+      packageName = "xmlhttprequest-ssl";
+      version = "1.5.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.5.tgz";
+        sha1 = "c2876b06168aadc40e57d97e81191ac8f4398b3e";
+      };
+    };
+    "xpath-0.0.27" = {
+      name = "xpath";
+      packageName = "xpath";
+      version = "0.0.27";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/xpath/-/xpath-0.0.27.tgz";
+        sha512 = "fg03WRxtkCV6ohClePNAECYsmpKKTv5L8y/X3Dn1hQrec3POx2jHZ/0P2qQ6HvsrU1BmeqXcof3NGGueG6LxwQ==";
+      };
+    };
+    "xpath.js-1.1.0" = {
+      name = "xpath.js";
+      packageName = "xpath.js";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/xpath.js/-/xpath.js-1.1.0.tgz";
+        sha512 = "jg+qkfS4K8E7965sqaUl8mRngXiKb3WZGfONgE18pr03FUQiuSV6G+Ej4tS55B+rIQSFEIw3phdVAQ4pPqNWfQ==";
+      };
+    };
+    "xregexp-2.0.0" = {
+      name = "xregexp";
+      packageName = "xregexp";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/xregexp/-/xregexp-2.0.0.tgz";
+        sha1 = "52a63e56ca0b84a7f3a5f3d61872f126ad7a5943";
+      };
+    };
+    "xtend-4.0.1" = {
+      name = "xtend";
+      packageName = "xtend";
+      version = "4.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz";
+        sha1 = "a5c6d532be656e23db820efb943a1f04998d63af";
+      };
+    };
+    "xtraverse-0.1.0" = {
+      name = "xtraverse";
+      packageName = "xtraverse";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/xtraverse/-/xtraverse-0.1.0.tgz";
+        sha1 = "b741bad018ef78d8a9d2e83ade007b3f7959c732";
+      };
+    };
+    "y18n-3.2.1" = {
+      name = "y18n";
+      packageName = "y18n";
+      version = "3.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz";
+        sha1 = "6d15fba884c08679c0d77e88e7759e811e07fa41";
+      };
+    };
+    "y18n-4.0.0" = {
+      name = "y18n";
+      packageName = "y18n";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz";
+        sha512 = "r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==";
+      };
+    };
+    "yallist-2.1.2" = {
+      name = "yallist";
+      packageName = "yallist";
+      version = "2.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz";
+        sha1 = "1c11f9218f076089a47dd512f93c6699a6a81d52";
+      };
+    };
+    "yallist-3.0.2" = {
+      name = "yallist";
+      packageName = "yallist";
+      version = "3.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/yallist/-/yallist-3.0.2.tgz";
+        sha1 = "8452b4bb7e83c7c188d8041c1a837c773d6d8bb9";
+      };
+    };
+    "yargs-3.10.0" = {
+      name = "yargs";
+      packageName = "yargs";
+      version = "3.10.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz";
+        sha1 = "f7ee7bd857dd7c1d2d38c0e74efbd681d1431fd1";
+      };
+    };
+    "yargs-8.0.2" = {
+      name = "yargs";
+      packageName = "yargs";
+      version = "8.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/yargs/-/yargs-8.0.2.tgz";
+        sha1 = "6299a9055b1cefc969ff7e79c1d918dceb22c360";
+      };
+    };
+    "yargs-parser-7.0.0" = {
+      name = "yargs-parser";
+      packageName = "yargs-parser";
+      version = "7.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/yargs-parser/-/yargs-parser-7.0.0.tgz";
+        sha1 = "8d0ac42f16ea55debd332caf4c4038b3e3f5dfd9";
+      };
+    };
+    "yauzl-2.4.1" = {
+      name = "yauzl";
+      packageName = "yauzl";
+      version = "2.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/yauzl/-/yauzl-2.4.1.tgz";
+        sha1 = "9528f442dab1b2284e58b4379bb194e22e0c4005";
+      };
+    };
+    "yeast-0.1.2" = {
+      name = "yeast";
+      packageName = "yeast";
+      version = "0.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/yeast/-/yeast-0.1.2.tgz";
+        sha1 = "008e06d8094320c372dbc2f8ed76a0ca6c8ac419";
+      };
+    };
+    "zip-stream-1.2.0" = {
+      name = "zip-stream";
+      packageName = "zip-stream";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/zip-stream/-/zip-stream-1.2.0.tgz";
+        sha1 = "a8bc45f4c1b49699c6b90198baacaacdbcd4ba04";
+      };
+    };
+  };
+in
+{
+  "uglifyjs-webpack-plugin-^1.2.7" = nodeEnv.buildNodePackage {
+    name = "uglifyjs-webpack-plugin";
+    packageName = "uglifyjs-webpack-plugin";
+    version = "1.2.7";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.2.7.tgz";
+      sha512 = "1VicfKhCYHLS8m1DCApqBhoulnASsEoJ/BvpUpP4zoNAPpKzdH+ghk0olGJMmwX2/jprK2j3hAHdUbczBSy2FA==";
+    };
+    dependencies = [
+      sources."ajv-6.5.2"
+      sources."ajv-keywords-3.2.0"
+      sources."aproba-1.2.0"
+      sources."balanced-match-1.0.0"
+      sources."bluebird-3.5.1"
+      sources."brace-expansion-1.1.11"
+      sources."buffer-from-1.1.1"
+      sources."cacache-10.0.4"
+      sources."chownr-1.0.1"
+      sources."commander-2.14.1"
+      sources."commondir-1.0.1"
+      sources."concat-map-0.0.1"
+      sources."concat-stream-1.6.2"
+      sources."copy-concurrently-1.0.5"
+      sources."core-util-is-1.0.2"
+      sources."cyclist-0.2.2"
+      sources."duplexify-3.6.0"
+      sources."end-of-stream-1.4.1"
+      sources."errno-0.1.7"
+      sources."fast-deep-equal-2.0.1"
+      sources."fast-json-stable-stringify-2.0.0"
+      sources."find-cache-dir-1.0.0"
+      sources."find-up-2.1.0"
+      sources."flush-write-stream-1.0.3"
+      sources."from2-2.3.0"
+      sources."fs-write-stream-atomic-1.0.10"
+      sources."fs.realpath-1.0.0"
+      sources."glob-7.1.2"
+      sources."graceful-fs-4.1.11"
+      sources."iferr-0.1.5"
+      sources."imurmurhash-0.1.4"
+      sources."inflight-1.0.6"
+      sources."inherits-2.0.3"
+      sources."isarray-1.0.0"
+      sources."json-schema-traverse-0.4.1"
+      sources."locate-path-2.0.0"
+      sources."lru-cache-4.1.3"
+      sources."make-dir-1.3.0"
+      sources."minimatch-3.0.4"
+      sources."minimist-0.0.8"
+      sources."mississippi-2.0.0"
+      sources."mkdirp-0.5.1"
+      sources."move-concurrently-1.0.1"
+      sources."once-1.4.0"
+      sources."p-limit-1.3.0"
+      sources."p-locate-2.0.0"
+      sources."p-try-1.0.0"
+      sources."parallel-transform-1.1.0"
+      sources."path-exists-3.0.0"
+      sources."path-is-absolute-1.0.1"
+      sources."pify-3.0.0"
+      sources."pkg-dir-2.0.0"
+      sources."process-nextick-args-2.0.0"
+      sources."promise-inflight-1.0.1"
+      sources."prr-1.0.1"
+      sources."pseudomap-1.0.2"
+      sources."pump-2.0.1"
+      sources."pumpify-1.5.1"
+      sources."punycode-2.1.1"
+      sources."readable-stream-2.3.6"
+      sources."rimraf-2.6.2"
+      sources."run-queue-1.0.3"
+      sources."safe-buffer-5.1.2"
+      sources."schema-utils-0.4.5"
+      sources."serialize-javascript-1.5.0"
+      sources."source-list-map-2.0.0"
+      sources."source-map-0.6.1"
+      sources."ssri-5.3.0"
+      sources."stream-each-1.2.3"
+      sources."stream-shift-1.0.0"
+      sources."string_decoder-1.1.1"
+      sources."through2-2.0.3"
+      sources."typedarray-0.0.6"
+      sources."uglify-es-3.3.10"
+      sources."unique-filename-1.1.0"
+      sources."unique-slug-2.0.0"
+      sources."uri-js-4.2.2"
+      sources."util-deprecate-1.0.2"
+      sources."webpack-sources-1.1.0"
+      sources."worker-farm-1.6.0"
+      sources."wrappy-1.0.2"
+      sources."xtend-4.0.1"
+      sources."y18n-4.0.0"
+      sources."yallist-2.1.2"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "UglifyJS plugin for webpack";
+      homepage = https://github.com/webpack-contrib/uglifyjs-webpack-plugin;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "babel-cli-^6.18.0" = nodeEnv.buildNodePackage {
+    name = "babel-cli";
+    packageName = "babel-cli";
+    version = "6.26.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/babel-cli/-/babel-cli-6.26.0.tgz";
+      sha1 = "502ab54874d7db88ad00b887a06383ce03d002f1";
+    };
+    dependencies = [
+      sources."ansi-regex-2.1.1"
+      sources."ansi-styles-2.2.1"
+      sources."anymatch-1.3.2"
+      sources."arr-diff-2.0.0"
+      sources."arr-flatten-1.1.0"
+      sources."array-unique-0.2.1"
+      sources."async-each-1.0.1"
+      sources."babel-code-frame-6.26.0"
+      sources."babel-core-6.26.3"
+      sources."babel-generator-6.26.1"
+      sources."babel-helpers-6.24.1"
+      sources."babel-messages-6.23.0"
+      sources."babel-polyfill-6.26.0"
+      sources."babel-register-6.26.0"
+      (sources."babel-runtime-6.26.0" // {
+        dependencies = [
+          sources."regenerator-runtime-0.11.1"
+        ];
+      })
+      sources."babel-template-6.26.0"
+      sources."babel-traverse-6.26.0"
+      sources."babel-types-6.26.0"
+      sources."babylon-6.18.0"
+      sources."balanced-match-1.0.0"
+      sources."binary-extensions-1.11.0"
+      sources."brace-expansion-1.1.11"
+      sources."braces-1.8.5"
+      sources."chalk-1.1.3"
+      sources."chokidar-1.7.0"
+      sources."commander-2.16.0"
+      sources."concat-map-0.0.1"
+      sources."convert-source-map-1.5.1"
+      sources."core-js-2.5.7"
+      sources."core-util-is-1.0.2"
+      sources."debug-2.6.9"
+      sources."detect-indent-4.0.0"
+      sources."escape-string-regexp-1.0.5"
+      sources."esutils-2.0.2"
+      sources."expand-brackets-0.1.5"
+      sources."expand-range-1.8.2"
+      sources."extglob-0.3.2"
+      sources."filename-regex-2.0.1"
+      sources."fill-range-2.2.4"
+      sources."for-in-1.0.2"
+      sources."for-own-0.1.5"
+      sources."fs-readdir-recursive-1.1.0"
+      sources."fs.realpath-1.0.0"
+      sources."fsevents-1.2.4"
+      sources."glob-7.1.2"
+      sources."glob-base-0.3.0"
+      sources."glob-parent-2.0.0"
+      sources."globals-9.18.0"
+      sources."graceful-fs-4.1.11"
+      sources."has-ansi-2.0.0"
+      sources."home-or-tmp-2.0.0"
+      sources."inflight-1.0.6"
+      sources."inherits-2.0.3"
+      sources."invariant-2.2.4"
+      sources."is-binary-path-1.0.1"
+      sources."is-buffer-1.1.6"
+      sources."is-dotfile-1.0.3"
+      sources."is-equal-shallow-0.1.3"
+      sources."is-extendable-0.1.1"
+      sources."is-extglob-1.0.0"
+      sources."is-finite-1.0.2"
+      sources."is-glob-2.0.1"
+      sources."is-number-2.1.0"
+      sources."is-posix-bracket-0.1.1"
+      sources."is-primitive-2.0.0"
+      sources."isarray-1.0.0"
+      sources."isobject-2.1.0"
+      sources."js-tokens-3.0.2"
+      sources."jsesc-1.3.0"
+      sources."json5-0.5.1"
+      sources."kind-of-3.2.2"
+      sources."lodash-4.17.10"
+      sources."loose-envify-1.4.0"
+      sources."math-random-1.0.1"
+      sources."micromatch-2.3.11"
+      sources."minimatch-3.0.4"
+      sources."minimist-0.0.8"
+      sources."mkdirp-0.5.1"
+      sources."ms-2.0.0"
+      sources."nan-2.10.0"
+      sources."normalize-path-2.1.1"
+      sources."number-is-nan-1.0.1"
+      sources."object-assign-4.1.1"
+      sources."object.omit-2.0.1"
+      sources."once-1.4.0"
+      sources."os-homedir-1.0.2"
+      sources."os-tmpdir-1.0.2"
+      sources."output-file-sync-1.1.2"
+      sources."parse-glob-3.0.4"
+      sources."path-is-absolute-1.0.1"
+      sources."preserve-0.2.0"
+      sources."private-0.1.8"
+      sources."process-nextick-args-2.0.0"
+      (sources."randomatic-3.0.0" // {
+        dependencies = [
+          sources."is-number-4.0.0"
+          sources."kind-of-6.0.2"
+        ];
+      })
+      sources."readable-stream-2.3.6"
+      sources."readdirp-2.1.0"
+      sources."regenerator-runtime-0.10.5"
+      sources."regex-cache-0.4.4"
+      sources."remove-trailing-separator-1.1.0"
+      sources."repeat-element-1.1.2"
+      sources."repeat-string-1.6.1"
+      sources."repeating-2.0.1"
+      sources."safe-buffer-5.1.2"
+      sources."set-immediate-shim-1.0.1"
+      sources."slash-1.0.0"
+      sources."source-map-0.5.7"
+      sources."source-map-support-0.4.18"
+      sources."string_decoder-1.1.1"
+      sources."strip-ansi-3.0.1"
+      sources."supports-color-2.0.0"
+      sources."to-fast-properties-1.0.3"
+      sources."trim-right-1.0.1"
+      sources."user-home-1.1.1"
+      sources."util-deprecate-1.0.2"
+      sources."v8flags-2.1.1"
+      sources."wrappy-1.0.2"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Babel command line.";
+      homepage = https://babeljs.io/;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "babel-core-^6.21.0" = nodeEnv.buildNodePackage {
+    name = "babel-core";
+    packageName = "babel-core";
+    version = "6.26.3";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/babel-core/-/babel-core-6.26.3.tgz";
+      sha512 = "6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA==";
+    };
+    dependencies = [
+      sources."ansi-regex-2.1.1"
+      sources."ansi-styles-2.2.1"
+      sources."babel-code-frame-6.26.0"
+      sources."babel-core-6.26.3"
+      sources."babel-generator-6.26.1"
+      sources."babel-helpers-6.24.1"
+      sources."babel-messages-6.23.0"
+      sources."babel-register-6.26.0"
+      sources."babel-runtime-6.26.0"
+      sources."babel-template-6.26.0"
+      sources."babel-traverse-6.26.0"
+      sources."babel-types-6.26.0"
+      sources."babylon-6.18.0"
+      sources."balanced-match-1.0.0"
+      sources."brace-expansion-1.1.11"
+      sources."chalk-1.1.3"
+      sources."concat-map-0.0.1"
+      sources."convert-source-map-1.5.1"
+      sources."core-js-2.5.7"
+      sources."debug-2.6.9"
+      sources."detect-indent-4.0.0"
+      sources."escape-string-regexp-1.0.5"
+      sources."esutils-2.0.2"
+      sources."globals-9.18.0"
+      sources."has-ansi-2.0.0"
+      sources."home-or-tmp-2.0.0"
+      sources."invariant-2.2.4"
+      sources."is-finite-1.0.2"
+      sources."js-tokens-3.0.2"
+      sources."jsesc-1.3.0"
+      sources."json5-0.5.1"
+      sources."lodash-4.17.10"
+      sources."loose-envify-1.4.0"
+      sources."minimatch-3.0.4"
+      sources."minimist-0.0.8"
+      sources."mkdirp-0.5.1"
+      sources."ms-2.0.0"
+      sources."number-is-nan-1.0.1"
+      sources."os-homedir-1.0.2"
+      sources."os-tmpdir-1.0.2"
+      sources."path-is-absolute-1.0.1"
+      sources."private-0.1.8"
+      sources."regenerator-runtime-0.11.1"
+      sources."repeating-2.0.1"
+      sources."slash-1.0.0"
+      sources."source-map-0.5.7"
+      sources."source-map-support-0.4.18"
+      sources."strip-ansi-3.0.1"
+      sources."supports-color-2.0.0"
+      sources."to-fast-properties-1.0.3"
+      sources."trim-right-1.0.1"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Babel compiler core.";
+      homepage = https://babeljs.io/;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "babel-loader-^6.2.10" = nodeEnv.buildNodePackage {
+    name = "babel-loader";
+    packageName = "babel-loader";
+    version = "6.4.1";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/babel-loader/-/babel-loader-6.4.1.tgz";
+      sha1 = "0b34112d5b0748a8dcdbf51acf6f9bd42d50b8ca";
+    };
+    dependencies = [
+      sources."big.js-3.2.0"
+      sources."commondir-1.0.1"
+      sources."emojis-list-2.1.0"
+      sources."find-cache-dir-0.1.1"
+      sources."find-up-1.1.2"
+      sources."json5-0.5.1"
+      sources."loader-utils-0.2.17"
+      sources."minimist-0.0.8"
+      sources."mkdirp-0.5.1"
+      sources."object-assign-4.1.1"
+      sources."path-exists-2.1.0"
+      sources."pinkie-2.0.4"
+      sources."pinkie-promise-2.0.1"
+      sources."pkg-dir-1.0.0"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "babel module loader for webpack";
+      homepage = https://github.com/babel/babel-loader;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "babel-plugin-transform-runtime-^6.15.0" = nodeEnv.buildNodePackage {
+    name = "babel-plugin-transform-runtime";
+    packageName = "babel-plugin-transform-runtime";
+    version = "6.23.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/babel-plugin-transform-runtime/-/babel-plugin-transform-runtime-6.23.0.tgz";
+      sha1 = "88490d446502ea9b8e7efb0fe09ec4d99479b1ee";
+    };
+    dependencies = [
+      sources."babel-runtime-6.26.0"
+      sources."core-js-2.5.7"
+      sources."regenerator-runtime-0.11.1"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Externalise references to helpers and builtins, automatically polyfilling your code without polluting globals";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "babel-polyfill-^6.22.0" = nodeEnv.buildNodePackage {
+    name = "babel-polyfill";
+    packageName = "babel-polyfill";
+    version = "6.26.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.26.0.tgz";
+      sha1 = "379937abc67d7895970adc621f284cd966cf2153";
+    };
+    dependencies = [
+      (sources."babel-runtime-6.26.0" // {
+        dependencies = [
+          sources."regenerator-runtime-0.11.1"
+        ];
+      })
+      sources."core-js-2.5.7"
+      sources."regenerator-runtime-0.10.5"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Provides polyfills necessary for a full ES2015+ environment";
+      homepage = https://babeljs.io/;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "babel-preset-es2015-^6.18.0" = nodeEnv.buildNodePackage {
+    name = "babel-preset-es2015";
+    packageName = "babel-preset-es2015";
+    version = "6.24.1";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/babel-preset-es2015/-/babel-preset-es2015-6.24.1.tgz";
+      sha1 = "d44050d6bc2c9feea702aaf38d727a0210538939";
+    };
+    dependencies = [
+      sources."ansi-regex-2.1.1"
+      sources."ansi-styles-2.2.1"
+      sources."babel-code-frame-6.26.0"
+      sources."babel-helper-call-delegate-6.24.1"
+      sources."babel-helper-define-map-6.26.0"
+      sources."babel-helper-function-name-6.24.1"
+      sources."babel-helper-get-function-arity-6.24.1"
+      sources."babel-helper-hoist-variables-6.24.1"
+      sources."babel-helper-optimise-call-expression-6.24.1"
+      sources."babel-helper-regex-6.26.0"
+      sources."babel-helper-replace-supers-6.24.1"
+      sources."babel-messages-6.23.0"
+      sources."babel-plugin-check-es2015-constants-6.22.0"
+      sources."babel-plugin-transform-es2015-arrow-functions-6.22.0"
+      sources."babel-plugin-transform-es2015-block-scoped-functions-6.22.0"
+      sources."babel-plugin-transform-es2015-block-scoping-6.26.0"
+      sources."babel-plugin-transform-es2015-classes-6.24.1"
+      sources."babel-plugin-transform-es2015-computed-properties-6.24.1"
+      sources."babel-plugin-transform-es2015-destructuring-6.23.0"
+      sources."babel-plugin-transform-es2015-duplicate-keys-6.24.1"
+      sources."babel-plugin-transform-es2015-for-of-6.23.0"
+      sources."babel-plugin-transform-es2015-function-name-6.24.1"
+      sources."babel-plugin-transform-es2015-literals-6.22.0"
+      sources."babel-plugin-transform-es2015-modules-amd-6.24.1"
+      sources."babel-plugin-transform-es2015-modules-commonjs-6.26.2"
+      sources."babel-plugin-transform-es2015-modules-systemjs-6.24.1"
+      sources."babel-plugin-transform-es2015-modules-umd-6.24.1"
+      sources."babel-plugin-transform-es2015-object-super-6.24.1"
+      sources."babel-plugin-transform-es2015-parameters-6.24.1"
+      sources."babel-plugin-transform-es2015-shorthand-properties-6.24.1"
+      sources."babel-plugin-transform-es2015-spread-6.22.0"
+      sources."babel-plugin-transform-es2015-sticky-regex-6.24.1"
+      sources."babel-plugin-transform-es2015-template-literals-6.22.0"
+      sources."babel-plugin-transform-es2015-typeof-symbol-6.23.0"
+      sources."babel-plugin-transform-es2015-unicode-regex-6.24.1"
+      sources."babel-plugin-transform-regenerator-6.26.0"
+      sources."babel-plugin-transform-strict-mode-6.24.1"
+      sources."babel-runtime-6.26.0"
+      sources."babel-template-6.26.0"
+      sources."babel-traverse-6.26.0"
+      sources."babel-types-6.26.0"
+      sources."babylon-6.18.0"
+      sources."chalk-1.1.3"
+      sources."core-js-2.5.7"
+      sources."debug-2.6.9"
+      sources."escape-string-regexp-1.0.5"
+      sources."esutils-2.0.2"
+      sources."globals-9.18.0"
+      sources."has-ansi-2.0.0"
+      sources."invariant-2.2.4"
+      sources."js-tokens-3.0.2"
+      sources."jsesc-0.5.0"
+      sources."lodash-4.17.10"
+      sources."loose-envify-1.4.0"
+      sources."ms-2.0.0"
+      sources."private-0.1.8"
+      sources."regenerate-1.4.0"
+      sources."regenerator-runtime-0.11.1"
+      sources."regenerator-transform-0.10.1"
+      sources."regexpu-core-2.0.0"
+      sources."regjsgen-0.2.0"
+      sources."regjsparser-0.1.5"
+      sources."strip-ansi-3.0.1"
+      sources."supports-color-2.0.0"
+      sources."to-fast-properties-1.0.3"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Babel preset for all es2015 plugins.";
+      homepage = https://babeljs.io/;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "babel-runtime-^6.20.0" = nodeEnv.buildNodePackage {
+    name = "babel-runtime";
+    packageName = "babel-runtime";
+    version = "6.26.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz";
+      sha1 = "965c7058668e82b55d7bfe04ff2337bc8b5647fe";
+    };
+    dependencies = [
+      sources."core-js-2.5.7"
+      sources."regenerator-runtime-0.11.1"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "babel selfContained runtime";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "copy-webpack-plugin-^4.0.1" = nodeEnv.buildNodePackage {
+    name = "copy-webpack-plugin";
+    packageName = "copy-webpack-plugin";
+    version = "4.5.2";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-4.5.2.tgz";
+      sha512 = "zmC33E8FFSq3AbflTvqvPvBo621H36Afsxlui91d+QyZxPIuXghfnTsa1CuqiAaCPgJoSUWfTFbKJnadZpKEbQ==";
+    };
+    dependencies = [
+      sources."aproba-1.2.0"
+      sources."array-union-1.0.2"
+      sources."array-uniq-1.0.3"
+      sources."arrify-1.0.1"
+      sources."balanced-match-1.0.0"
+      sources."big.js-3.2.0"
+      sources."bluebird-3.5.1"
+      sources."brace-expansion-1.1.11"
+      sources."buffer-from-1.1.1"
+      sources."cacache-10.0.4"
+      sources."chownr-1.0.1"
+      sources."commondir-1.0.1"
+      sources."concat-map-0.0.1"
+      sources."concat-stream-1.6.2"
+      sources."copy-concurrently-1.0.5"
+      sources."core-util-is-1.0.2"
+      sources."cyclist-0.2.2"
+      sources."dir-glob-2.0.0"
+      sources."duplexify-3.6.0"
+      sources."emojis-list-2.1.0"
+      sources."end-of-stream-1.4.1"
+      sources."find-cache-dir-1.0.0"
+      sources."find-up-2.1.0"
+      sources."flush-write-stream-1.0.3"
+      sources."from2-2.3.0"
+      sources."fs-write-stream-atomic-1.0.10"
+      sources."fs.realpath-1.0.0"
+      sources."glob-7.1.2"
+      sources."globby-7.1.1"
+      sources."graceful-fs-4.1.11"
+      sources."iferr-0.1.5"
+      sources."ignore-3.3.10"
+      sources."imurmurhash-0.1.4"
+      sources."inflight-1.0.6"
+      sources."inherits-2.0.3"
+      sources."is-extglob-2.1.1"
+      sources."is-glob-4.0.0"
+      sources."isarray-1.0.0"
+      sources."json5-0.5.1"
+      sources."loader-utils-1.1.0"
+      sources."locate-path-2.0.0"
+      sources."lru-cache-4.1.3"
+      sources."make-dir-1.3.0"
+      sources."minimatch-3.0.4"
+      sources."minimist-0.0.8"
+      sources."mississippi-2.0.0"
+      sources."mkdirp-0.5.1"
+      sources."move-concurrently-1.0.1"
+      sources."once-1.4.0"
+      sources."p-limit-1.3.0"
+      sources."p-locate-2.0.0"
+      sources."p-try-1.0.0"
+      sources."parallel-transform-1.1.0"
+      sources."path-exists-3.0.0"
+      sources."path-is-absolute-1.0.1"
+      sources."path-type-3.0.0"
+      sources."pify-3.0.0"
+      sources."pkg-dir-2.0.0"
+      sources."process-nextick-args-2.0.0"
+      sources."promise-inflight-1.0.1"
+      sources."pseudomap-1.0.2"
+      sources."pump-2.0.1"
+      sources."pumpify-1.5.1"
+      sources."readable-stream-2.3.6"
+      sources."rimraf-2.6.2"
+      sources."run-queue-1.0.3"
+      sources."safe-buffer-5.1.2"
+      sources."serialize-javascript-1.5.0"
+      sources."slash-1.0.0"
+      sources."ssri-5.3.0"
+      sources."stream-each-1.2.3"
+      sources."stream-shift-1.0.0"
+      sources."string_decoder-1.1.1"
+      sources."through2-2.0.3"
+      sources."typedarray-0.0.6"
+      sources."unique-filename-1.1.0"
+      sources."unique-slug-2.0.0"
+      sources."util-deprecate-1.0.2"
+      sources."wrappy-1.0.2"
+      sources."xtend-4.0.1"
+      sources."y18n-4.0.0"
+      sources."yallist-2.1.2"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Copy files && directories with webpack";
+      homepage = https://github.com/webpack-contrib/copy-webpack-plugin;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "css-loader-^0.26.1" = nodeEnv.buildNodePackage {
+    name = "css-loader";
+    packageName = "css-loader";
+    version = "0.26.4";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/css-loader/-/css-loader-0.26.4.tgz";
+      sha1 = "b61e9e30db94303e6ffc892f10ecd09ad025a1fd";
+    };
+    dependencies = [
+      sources."alphanum-sort-1.0.2"
+      sources."ansi-regex-2.1.1"
+      sources."ansi-styles-2.2.1"
+      sources."argparse-1.0.10"
+      sources."autoprefixer-6.7.7"
+      sources."babel-code-frame-6.26.0"
+      sources."balanced-match-0.4.2"
+      sources."big.js-3.2.0"
+      sources."browserslist-1.7.7"
+      sources."caniuse-api-1.6.1"
+      sources."caniuse-db-1.0.30000874"
+      sources."chalk-1.1.3"
+      sources."clap-1.2.3"
+      sources."clone-1.0.4"
+      sources."coa-1.0.4"
+      sources."color-0.11.4"
+      sources."color-convert-1.9.2"
+      sources."color-name-1.1.1"
+      sources."color-string-0.3.0"
+      sources."colormin-1.1.2"
+      sources."colors-1.1.2"
+      sources."css-color-names-0.0.4"
+      sources."css-selector-tokenizer-0.7.0"
+      sources."cssesc-0.1.0"
+      sources."cssnano-3.10.0"
+      sources."csso-2.3.2"
+      sources."decamelize-1.2.0"
+      sources."defined-1.0.0"
+      sources."electron-to-chromium-1.3.55"
+      sources."emojis-list-2.1.0"
+      sources."escape-string-regexp-1.0.5"
+      sources."esprima-2.7.3"
+      sources."esutils-2.0.2"
+      sources."fastparse-1.1.1"
+      sources."flatten-1.0.2"
+      sources."function-bind-1.1.1"
+      sources."has-1.0.3"
+      sources."has-ansi-2.0.0"
+      sources."has-flag-1.0.0"
+      sources."html-comment-regex-1.1.1"
+      sources."icss-replace-symbols-1.1.0"
+      sources."indexes-of-1.0.1"
+      sources."is-absolute-url-2.1.0"
+      sources."is-plain-obj-1.1.0"
+      sources."is-svg-2.1.0"
+      sources."js-base64-2.4.8"
+      sources."js-tokens-3.0.2"
+      sources."js-yaml-3.7.0"
+      sources."jsesc-0.5.0"
+      sources."json5-0.5.1"
+      sources."loader-utils-1.1.0"
+      sources."lodash.camelcase-4.3.0"
+      sources."lodash.memoize-4.1.2"
+      sources."lodash.uniq-4.5.0"
+      sources."math-expression-evaluator-1.2.17"
+      sources."minimist-0.0.8"
+      sources."mkdirp-0.5.1"
+      sources."normalize-range-0.1.2"
+      sources."normalize-url-1.9.1"
+      sources."num2fraction-1.2.2"
+      sources."object-assign-4.1.1"
+      (sources."postcss-5.2.18" // {
+        dependencies = [
+          sources."supports-color-3.2.3"
+        ];
+      })
+      sources."postcss-calc-5.3.1"
+      sources."postcss-colormin-2.2.2"
+      sources."postcss-convert-values-2.6.1"
+      sources."postcss-discard-comments-2.0.4"
+      sources."postcss-discard-duplicates-2.1.0"
+      sources."postcss-discard-empty-2.1.0"
+      sources."postcss-discard-overridden-0.1.1"
+      sources."postcss-discard-unused-2.2.3"
+      sources."postcss-filter-plugins-2.0.3"
+      sources."postcss-merge-idents-2.1.7"
+      sources."postcss-merge-longhand-2.0.2"
+      sources."postcss-merge-rules-2.1.2"
+      sources."postcss-message-helpers-2.0.0"
+      sources."postcss-minify-font-values-1.0.5"
+      sources."postcss-minify-gradients-1.0.5"
+      sources."postcss-minify-params-1.2.2"
+      sources."postcss-minify-selectors-2.1.1"
+      (sources."postcss-modules-extract-imports-1.2.0" // {
+        dependencies = [
+          sources."ansi-styles-3.2.1"
+          sources."chalk-2.4.1"
+          sources."has-flag-3.0.0"
+          sources."postcss-6.0.23"
+          sources."source-map-0.6.1"
+          sources."supports-color-5.4.0"
+        ];
+      })
+      (sources."postcss-modules-local-by-default-1.2.0" // {
+        dependencies = [
+          sources."ansi-styles-3.2.1"
+          sources."chalk-2.4.1"
+          sources."has-flag-3.0.0"
+          sources."postcss-6.0.23"
+          sources."source-map-0.6.1"
+          sources."supports-color-5.4.0"
+        ];
+      })
+      (sources."postcss-modules-scope-1.1.0" // {
+        dependencies = [
+          sources."ansi-styles-3.2.1"
+          sources."chalk-2.4.1"
+          sources."has-flag-3.0.0"
+          sources."postcss-6.0.23"
+          sources."source-map-0.6.1"
+          sources."supports-color-5.4.0"
+        ];
+      })
+      (sources."postcss-modules-values-1.3.0" // {
+        dependencies = [
+          sources."ansi-styles-3.2.1"
+          sources."chalk-2.4.1"
+          sources."has-flag-3.0.0"
+          sources."postcss-6.0.23"
+          sources."source-map-0.6.1"
+          sources."supports-color-5.4.0"
+        ];
+      })
+      sources."postcss-normalize-charset-1.1.1"
+      sources."postcss-normalize-url-3.0.8"
+      sources."postcss-ordered-values-2.2.3"
+      sources."postcss-reduce-idents-2.4.0"
+      sources."postcss-reduce-initial-1.0.1"
+      sources."postcss-reduce-transforms-1.0.4"
+      sources."postcss-selector-parser-2.2.3"
+      sources."postcss-svgo-2.1.6"
+      sources."postcss-unique-selectors-2.0.2"
+      sources."postcss-value-parser-3.3.0"
+      sources."postcss-zindex-2.2.0"
+      sources."prepend-http-1.0.4"
+      sources."q-1.5.1"
+      sources."query-string-4.3.4"
+      sources."reduce-css-calc-1.3.0"
+      sources."reduce-function-call-1.0.2"
+      sources."regenerate-1.4.0"
+      sources."regexpu-core-1.0.0"
+      sources."regjsgen-0.2.0"
+      sources."regjsparser-0.1.5"
+      sources."sax-1.2.4"
+      sources."sort-keys-1.1.2"
+      sources."source-list-map-0.1.8"
+      sources."source-map-0.5.7"
+      sources."sprintf-js-1.0.3"
+      sources."strict-uri-encode-1.1.0"
+      sources."strip-ansi-3.0.1"
+      sources."supports-color-2.0.0"
+      sources."svgo-0.7.2"
+      sources."uniq-1.0.1"
+      sources."uniqs-2.0.0"
+      sources."vendors-1.0.2"
+      sources."whet.extend-0.9.9"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "css loader module for webpack";
+      homepage = "https://github.com/webpack/css-loader#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "doctoc-^1.3.0" = nodeEnv.buildNodePackage {
+    name = "doctoc";
+    packageName = "doctoc";
+    version = "1.3.1";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/doctoc/-/doctoc-1.3.1.tgz";
+      sha1 = "f012e3603e3156254c2ef22ac88c7190f55426ba";
+    };
+    dependencies = [
+      sources."anchor-markdown-header-0.5.7"
+      sources."bail-1.0.3"
+      sources."boundary-1.0.1"
+      sources."ccount-1.0.3"
+      sources."character-entities-1.2.2"
+      sources."character-entities-html4-1.1.2"
+      sources."character-entities-legacy-1.1.2"
+      sources."character-reference-invalid-1.1.2"
+      sources."collapse-white-space-1.0.4"
+      sources."core-util-is-1.0.2"
+      sources."debug-2.6.9"
+      (sources."dom-serializer-0.1.0" // {
+        dependencies = [
+          sources."domelementtype-1.1.3"
+        ];
+      })
+      sources."domelementtype-1.3.0"
+      sources."domhandler-2.4.2"
+      sources."domutils-1.7.0"
+      sources."emoji-regex-6.1.3"
+      sources."entities-1.1.1"
+      sources."extend-3.0.2"
+      sources."function-bind-1.1.1"
+      sources."has-1.0.3"
+      sources."htmlparser2-3.9.2"
+      sources."inherits-2.0.3"
+      sources."is-alphabetical-1.0.2"
+      sources."is-alphanumerical-1.0.2"
+      sources."is-decimal-1.0.2"
+      sources."is-hexadecimal-1.0.2"
+      sources."isarray-1.0.0"
+      sources."longest-streak-1.0.0"
+      sources."markdown-table-0.4.0"
+      sources."markdown-to-ast-3.4.0"
+      sources."minimist-1.2.0"
+      sources."ms-2.0.0"
+      sources."once-1.4.0"
+      sources."parse-entities-1.1.2"
+      sources."process-nextick-args-2.0.0"
+      sources."readable-stream-2.3.6"
+      sources."remark-5.1.0"
+      sources."remark-parse-1.1.0"
+      sources."remark-stringify-1.1.0"
+      sources."repeat-string-1.6.1"
+      sources."safe-buffer-5.1.2"
+      sources."string_decoder-1.1.1"
+      sources."stringify-entities-1.3.2"
+      sources."structured-source-3.0.2"
+      sources."traverse-0.6.6"
+      sources."trim-0.0.1"
+      sources."trim-trailing-lines-1.1.1"
+      sources."trough-1.0.2"
+      sources."underscore-1.8.3"
+      sources."unherit-1.1.1"
+      sources."unified-4.2.1"
+      sources."unist-util-is-2.1.2"
+      sources."unist-util-remove-position-1.1.2"
+      sources."unist-util-visit-1.4.0"
+      sources."unist-util-visit-parents-2.0.1"
+      sources."update-section-0.3.3"
+      sources."util-deprecate-1.0.2"
+      sources."vfile-1.4.0"
+      sources."vfile-location-2.0.3"
+      sources."wrappy-1.0.2"
+      sources."xtend-4.0.1"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Generates TOC for markdown files of local git repo.";
+      homepage = "https://github.com/thlorenz/doctoc#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "ejs-loader-^0.3.0" = nodeEnv.buildNodePackage {
+    name = "ejs-loader";
+    packageName = "ejs-loader";
+    version = "0.3.1";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/ejs-loader/-/ejs-loader-0.3.1.tgz";
+      sha512 = "bdJHTxBY3uqZ6L5V1WRohf1gr7ousgESpArPVseEQCWCATs+M8BRqxyJWqnFo+h815gTA++g5LyAyqS5OTIfdQ==";
+    };
+    dependencies = [
+      sources."big.js-3.2.0"
+      sources."emojis-list-2.1.0"
+      sources."json5-0.5.1"
+      sources."loader-utils-0.2.17"
+      sources."lodash-3.10.1"
+      sources."object-assign-4.1.1"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "EJS (Underscore/LoDash Templates) loader for webpack";
+      homepage = https://github.com/okonet/ejs-loader;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "exports-loader-^0.6.3" = nodeEnv.buildNodePackage {
+    name = "exports-loader";
+    packageName = "exports-loader";
+    version = "0.6.4";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/exports-loader/-/exports-loader-0.6.4.tgz";
+      sha1 = "d70fc6121975b35fc12830cf52754be2740fc886";
+    };
+    dependencies = [
+      sources."big.js-3.2.0"
+      sources."emojis-list-2.1.0"
+      sources."json5-0.5.1"
+      sources."loader-utils-1.1.0"
+      sources."source-map-0.5.7"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "exports loader module for webpack";
+      homepage = "https://github.com/webpack/exports-loader#readme";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "expose-^0.1.4" = nodeEnv.buildNodePackage {
+    name = "expose";
+    packageName = "expose";
+    version = "0.1.4";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/expose/-/expose-0.1.4.tgz";
+      sha1 = "197aa807200f5114d01520a8ce6a4f42b7f9ba29";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Search modules and expose exports onto a given namespace.";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "expose-loader-^0.7.1" = nodeEnv.buildNodePackage {
+    name = "expose-loader";
+    packageName = "expose-loader";
+    version = "0.7.5";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/expose-loader/-/expose-loader-0.7.5.tgz";
+      sha512 = "iPowgKUZkTPX5PznYsmifVj9Bob0w2wTHVkt/eYNPSzyebkUgIedmskf/kcfEIWpiWjg3JRjnW+a17XypySMuw==";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "expose loader module for webpack";
+      homepage = https://github.com/webpack-contrib/expose-loader;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "extract-text-webpack-plugin-^1.0.1" = nodeEnv.buildNodePackage {
+    name = "extract-text-webpack-plugin";
+    packageName = "extract-text-webpack-plugin";
+    version = "1.0.1";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/extract-text-webpack-plugin/-/extract-text-webpack-plugin-1.0.1.tgz";
+      sha1 = "c95bf3cbaac49dc96f1dc6e072549fbb654ccd2c";
+    };
+    dependencies = [
+      sources."async-1.5.2"
+      sources."big.js-3.2.0"
+      sources."emojis-list-2.1.0"
+      sources."json5-0.5.1"
+      sources."loader-utils-0.2.17"
+      sources."object-assign-4.1.1"
+      sources."source-list-map-0.1.8"
+      sources."source-map-0.5.7"
+      sources."webpack-sources-0.1.5"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Extract text from bundle into a file.";
+      homepage = http://github.com/webpack/extract-text-webpack-plugin;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "file-loader-^0.9.0" = nodeEnv.buildNodePackage {
+    name = "file-loader";
+    packageName = "file-loader";
+    version = "0.9.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/file-loader/-/file-loader-0.9.0.tgz";
+      sha1 = "1d2daddd424ce6d1b07cfe3f79731bed3617ab42";
+    };
+    dependencies = [
+      sources."big.js-3.2.0"
+      sources."emojis-list-2.1.0"
+      sources."json5-0.5.1"
+      sources."loader-utils-0.2.17"
+      sources."object-assign-4.1.1"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "file loader module for webpack";
+      homepage = https://github.com/webpack/file-loader;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "html-webpack-plugin-^2.25.0" = nodeEnv.buildNodePackage {
+    name = "html-webpack-plugin";
+    packageName = "html-webpack-plugin";
+    version = "2.30.1";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-2.30.1.tgz";
+      sha1 = "7f9c421b7ea91ec460f56527d78df484ee7537d5";
+    };
+    dependencies = [
+      sources."ansi-regex-2.1.1"
+      sources."big.js-3.2.0"
+      sources."bluebird-3.5.1"
+      sources."boolbase-1.0.0"
+      sources."camel-case-3.0.0"
+      sources."clean-css-4.1.11"
+      sources."commander-2.16.0"
+      sources."core-util-is-1.0.2"
+      sources."css-select-1.2.0"
+      sources."css-what-2.1.0"
+      (sources."dom-converter-0.1.4" // {
+        dependencies = [
+          sources."utila-0.3.3"
+        ];
+      })
+      (sources."dom-serializer-0.1.0" // {
+        dependencies = [
+          sources."domelementtype-1.1.3"
+        ];
+      })
+      sources."domelementtype-1.3.0"
+      sources."domhandler-2.1.0"
+      sources."domutils-1.5.1"
+      sources."emojis-list-2.1.0"
+      sources."entities-1.1.1"
+      sources."he-1.1.1"
+      sources."html-minifier-3.5.19"
+      (sources."htmlparser2-3.3.0" // {
+        dependencies = [
+          sources."domutils-1.1.6"
+        ];
+      })
+      sources."inherits-2.0.3"
+      sources."isarray-0.0.1"
+      sources."json5-0.5.1"
+      sources."loader-utils-0.2.17"
+      sources."lodash-4.17.10"
+      sources."lower-case-1.1.4"
+      sources."no-case-2.3.2"
+      sources."nth-check-1.0.1"
+      sources."object-assign-4.1.1"
+      sources."param-case-2.1.1"
+      sources."pretty-error-2.1.1"
+      sources."readable-stream-1.0.34"
+      sources."relateurl-0.2.7"
+      (sources."renderkid-2.0.1" // {
+        dependencies = [
+          sources."utila-0.3.3"
+        ];
+      })
+      sources."source-map-0.5.7"
+      sources."string_decoder-0.10.31"
+      sources."strip-ansi-3.0.1"
+      sources."toposort-1.0.7"
+      (sources."uglify-js-3.4.6" // {
+        dependencies = [
+          sources."source-map-0.6.1"
+        ];
+      })
+      sources."upper-case-1.1.3"
+      sources."utila-0.4.0"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Simplifies creation of HTML files to serve your webpack bundles";
+      homepage = https://github.com/jantimon/html-webpack-plugin;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "imports-loader-^0.7.0" = nodeEnv.buildNodePackage {
+    name = "imports-loader";
+    packageName = "imports-loader";
+    version = "0.7.1";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/imports-loader/-/imports-loader-0.7.1.tgz";
+      sha1 = "f204b5f34702a32c1db7d48d89d5e867a0441253";
+    };
+    dependencies = [
+      sources."big.js-3.2.0"
+      sources."emojis-list-2.1.0"
+      sources."json5-0.5.1"
+      sources."loader-utils-1.1.0"
+      sources."source-map-0.5.7"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "imports loader module for webpack";
+      homepage = "https://github.com/webpack/imports-loader#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "json-loader-^0.5.4" = nodeEnv.buildNodePackage {
+    name = "json-loader";
+    packageName = "json-loader";
+    version = "0.5.7";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/json-loader/-/json-loader-0.5.7.tgz";
+      sha512 = "QLPs8Dj7lnf3e3QYS1zkCo+4ZwqOiF9d/nZnYozTISxXWCfNs9yuky5rJw4/W34s7POaNlbZmQGaB5NiXCbP4w==";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "json loader module for webpack";
+      homepage = "https://github.com/webpack/json-loader#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "jsonlint-^1.6.2" = nodeEnv.buildNodePackage {
+    name = "jsonlint";
+    packageName = "jsonlint";
+    version = "1.6.3";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/jsonlint/-/jsonlint-1.6.3.tgz";
+      sha512 = "jMVTMzP+7gU/IyC6hvKyWpUU8tmTkK5b3BPNuMI9U8Sit+YAWLlZwB6Y6YrdCxfg2kNz05p3XY3Bmm4m26Nv3A==";
+    };
+    dependencies = [
+      sources."JSV-4.0.2"
+      sources."ansi-styles-1.0.0"
+      sources."chalk-0.4.0"
+      sources."has-color-0.1.7"
+      sources."nomnom-1.8.1"
+      sources."strip-ansi-0.1.1"
+      sources."underscore-1.6.0"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Validate JSON";
+      homepage = http://zaach.github.com/jsonlint/;
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "less-^2.7.1" = nodeEnv.buildNodePackage {
+    name = "less";
+    packageName = "less";
+    version = "2.7.3";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/less/-/less-2.7.3.tgz";
+      sha512 = "KPdIJKWcEAb02TuJtaLrhue0krtRLoRoo7x6BNJIBelO00t/CCdJQUnHW5V34OnHMWzIktSalJxRO+FvytQlCQ==";
+    };
+    dependencies = [
+      sources."ajv-4.11.8"
+      sources."asap-2.0.6"
+      sources."asn1-0.2.4"
+      sources."assert-plus-0.2.0"
+      sources."asynckit-0.4.0"
+      sources."aws-sign2-0.6.0"
+      sources."aws4-1.7.0"
+      sources."bcrypt-pbkdf-1.0.2"
+      sources."boom-2.10.1"
+      sources."caseless-0.12.0"
+      sources."co-4.6.0"
+      sources."combined-stream-1.0.6"
+      sources."core-util-is-1.0.2"
+      sources."cryptiles-2.0.5"
+      (sources."dashdash-1.14.1" // {
+        dependencies = [
+          sources."assert-plus-1.0.0"
+        ];
+      })
+      sources."delayed-stream-1.0.0"
+      sources."ecc-jsbn-0.1.2"
+      sources."errno-0.1.7"
+      sources."extend-3.0.2"
+      sources."extsprintf-1.3.0"
+      sources."forever-agent-0.6.1"
+      sources."form-data-2.1.4"
+      (sources."getpass-0.1.7" // {
+        dependencies = [
+          sources."assert-plus-1.0.0"
+        ];
+      })
+      sources."graceful-fs-4.1.11"
+      sources."har-schema-1.0.5"
+      sources."har-validator-4.2.1"
+      sources."hawk-3.1.3"
+      sources."hoek-2.16.3"
+      sources."http-signature-1.1.1"
+      sources."image-size-0.5.5"
+      sources."is-typedarray-1.0.0"
+      sources."isstream-0.1.2"
+      sources."jsbn-0.1.1"
+      sources."json-schema-0.2.3"
+      sources."json-stable-stringify-1.0.1"
+      sources."json-stringify-safe-5.0.1"
+      sources."jsonify-0.0.0"
+      (sources."jsprim-1.4.1" // {
+        dependencies = [
+          sources."assert-plus-1.0.0"
+        ];
+      })
+      sources."mime-1.6.0"
+      sources."mime-db-1.35.0"
+      sources."mime-types-2.1.19"
+      sources."minimist-0.0.8"
+      sources."mkdirp-0.5.1"
+      sources."oauth-sign-0.8.2"
+      sources."performance-now-0.2.0"
+      sources."promise-7.3.1"
+      sources."prr-1.0.1"
+      sources."punycode-1.4.1"
+      sources."qs-6.4.0"
+      sources."request-2.81.0"
+      sources."safe-buffer-5.1.2"
+      sources."safer-buffer-2.1.2"
+      sources."sntp-1.0.9"
+      sources."source-map-0.5.7"
+      (sources."sshpk-1.14.2" // {
+        dependencies = [
+          sources."assert-plus-1.0.0"
+        ];
+      })
+      sources."stringstream-0.0.6"
+      sources."tough-cookie-2.3.4"
+      sources."tunnel-agent-0.6.0"
+      sources."tweetnacl-0.14.5"
+      sources."uuid-3.3.2"
+      (sources."verror-1.10.0" // {
+        dependencies = [
+          sources."assert-plus-1.0.0"
+        ];
+      })
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Leaner CSS";
+      homepage = http://lesscss.org/;
+      license = "Apache-2.0";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "less-loader-^2.2.3" = nodeEnv.buildNodePackage {
+    name = "less-loader";
+    packageName = "less-loader";
+    version = "2.2.3";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/less-loader/-/less-loader-2.2.3.tgz";
+      sha1 = "b6d8f8139c8493df09d992a93a00734b08f84528";
+    };
+    dependencies = [
+      sources."big.js-3.2.0"
+      sources."emojis-list-2.1.0"
+      sources."json5-0.5.1"
+      sources."loader-utils-0.2.17"
+      sources."object-assign-4.1.1"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "less loader module for webpack";
+      homepage = "https://github.com/webpack/less-loader#readme";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "optimize-css-assets-webpack-plugin-^1.3.0" = nodeEnv.buildNodePackage {
+    name = "optimize-css-assets-webpack-plugin";
+    packageName = "optimize-css-assets-webpack-plugin";
+    version = "1.3.2";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/optimize-css-assets-webpack-plugin/-/optimize-css-assets-webpack-plugin-1.3.2.tgz";
+      sha1 = "eb27456e21eefbd8080f31e8368c59684e585a2c";
+    };
+    dependencies = [
+      sources."alphanum-sort-1.0.2"
+      sources."ansi-regex-2.1.1"
+      sources."ansi-styles-2.2.1"
+      sources."argparse-1.0.10"
+      sources."autoprefixer-6.7.7"
+      sources."balanced-match-0.4.2"
+      sources."browserslist-1.7.7"
+      sources."caniuse-api-1.6.1"
+      sources."caniuse-db-1.0.30000874"
+      (sources."chalk-1.1.3" // {
+        dependencies = [
+          sources."supports-color-2.0.0"
+        ];
+      })
+      sources."clap-1.2.3"
+      sources."clone-1.0.4"
+      sources."coa-1.0.4"
+      sources."color-0.11.4"
+      sources."color-convert-1.9.2"
+      sources."color-name-1.1.1"
+      sources."color-string-0.3.0"
+      sources."colormin-1.1.2"
+      sources."colors-1.1.2"
+      sources."css-color-names-0.0.4"
+      sources."cssnano-3.10.0"
+      sources."csso-2.3.2"
+      sources."decamelize-1.2.0"
+      sources."defined-1.0.0"
+      sources."electron-to-chromium-1.3.55"
+      sources."escape-string-regexp-1.0.5"
+      sources."esprima-2.7.3"
+      sources."flatten-1.0.2"
+      sources."function-bind-1.1.1"
+      sources."has-1.0.3"
+      sources."has-ansi-2.0.0"
+      sources."has-flag-1.0.0"
+      sources."html-comment-regex-1.1.1"
+      sources."indexes-of-1.0.1"
+      sources."is-absolute-url-2.1.0"
+      sources."is-plain-obj-1.1.0"
+      sources."is-svg-2.1.0"
+      sources."js-base64-2.4.8"
+      sources."js-yaml-3.7.0"
+      sources."lodash.memoize-4.1.2"
+      sources."lodash.uniq-4.5.0"
+      sources."math-expression-evaluator-1.2.17"
+      sources."minimist-0.0.8"
+      sources."mkdirp-0.5.1"
+      sources."normalize-range-0.1.2"
+      sources."normalize-url-1.9.1"
+      sources."num2fraction-1.2.2"
+      sources."object-assign-4.1.1"
+      sources."postcss-5.2.18"
+      sources."postcss-calc-5.3.1"
+      sources."postcss-colormin-2.2.2"
+      sources."postcss-convert-values-2.6.1"
+      sources."postcss-discard-comments-2.0.4"
+      sources."postcss-discard-duplicates-2.1.0"
+      sources."postcss-discard-empty-2.1.0"
+      sources."postcss-discard-overridden-0.1.1"
+      sources."postcss-discard-unused-2.2.3"
+      sources."postcss-filter-plugins-2.0.3"
+      sources."postcss-merge-idents-2.1.7"
+      sources."postcss-merge-longhand-2.0.2"
+      sources."postcss-merge-rules-2.1.2"
+      sources."postcss-message-helpers-2.0.0"
+      sources."postcss-minify-font-values-1.0.5"
+      sources."postcss-minify-gradients-1.0.5"
+      sources."postcss-minify-params-1.2.2"
+      sources."postcss-minify-selectors-2.1.1"
+      sources."postcss-normalize-charset-1.1.1"
+      sources."postcss-normalize-url-3.0.8"
+      sources."postcss-ordered-values-2.2.3"
+      sources."postcss-reduce-idents-2.4.0"
+      sources."postcss-reduce-initial-1.0.1"
+      sources."postcss-reduce-transforms-1.0.4"
+      sources."postcss-selector-parser-2.2.3"
+      sources."postcss-svgo-2.1.6"
+      sources."postcss-unique-selectors-2.0.2"
+      sources."postcss-value-parser-3.3.0"
+      sources."postcss-zindex-2.2.0"
+      sources."prepend-http-1.0.4"
+      sources."q-1.5.1"
+      sources."query-string-4.3.4"
+      sources."reduce-css-calc-1.3.0"
+      sources."reduce-function-call-1.0.2"
+      sources."sax-1.2.4"
+      sources."sort-keys-1.1.2"
+      sources."source-list-map-0.1.8"
+      sources."source-map-0.5.7"
+      sources."sprintf-js-1.0.3"
+      sources."strict-uri-encode-1.1.0"
+      sources."strip-ansi-3.0.1"
+      sources."supports-color-3.2.3"
+      sources."svgo-0.7.2"
+      sources."underscore-1.9.1"
+      sources."uniq-1.0.1"
+      sources."uniqs-2.0.0"
+      sources."vendors-1.0.2"
+      sources."webpack-sources-0.1.5"
+      sources."whet.extend-0.9.9"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "A Webpack plugin to optimize \\ minimize CSS assets.";
+      homepage = http://github.com/NMFR/optimize-css-assets-webpack-plugin;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "script-loader-^0.7.0" = nodeEnv.buildNodePackage {
+    name = "script-loader";
+    packageName = "script-loader";
+    version = "0.7.2";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/script-loader/-/script-loader-0.7.2.tgz";
+      sha512 = "UMNLEvgOAQuzK8ji8qIscM3GIrRCWN6MmMXGD4SD5l6cSycgGsCo0tX5xRnfQcoghqct0tjHjcykgI1PyBE2aA==";
+    };
+    dependencies = [
+      sources."raw-loader-0.5.1"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "script loader module for webpack";
+      homepage = https://github.com/webpack/script-loader;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "standard-^9.0.1" = nodeEnv.buildNodePackage {
+    name = "standard";
+    packageName = "standard";
+    version = "9.0.2";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/standard/-/standard-9.0.2.tgz";
+      sha1 = "9bd3b9467492e212b1914d78553943ff9b48fd99";
+    };
+    dependencies = [
+      sources."acorn-5.7.1"
+      (sources."acorn-jsx-3.0.1" // {
+        dependencies = [
+          sources."acorn-3.3.0"
+        ];
+      })
+      sources."ajv-4.11.8"
+      sources."ajv-keywords-1.5.1"
+      sources."ansi-escapes-1.4.0"
+      sources."ansi-regex-2.1.1"
+      sources."ansi-styles-2.2.1"
+      sources."argparse-1.0.10"
+      sources."array-union-1.0.2"
+      sources."array-uniq-1.0.3"
+      sources."array.prototype.find-2.0.4"
+      sources."arrify-1.0.1"
+      sources."babel-code-frame-6.26.0"
+      sources."balanced-match-1.0.0"
+      sources."brace-expansion-1.1.11"
+      sources."buffer-from-1.1.1"
+      sources."caller-path-0.1.0"
+      sources."callsites-0.2.0"
+      sources."chalk-1.1.3"
+      sources."circular-json-0.3.3"
+      sources."cli-cursor-1.0.2"
+      sources."cli-width-2.2.0"
+      sources."co-4.6.0"
+      sources."code-point-at-1.1.0"
+      sources."concat-map-0.0.1"
+      sources."concat-stream-1.6.2"
+      sources."core-util-is-1.0.2"
+      sources."d-1.0.0"
+      sources."debug-2.6.9"
+      sources."debug-log-1.0.1"
+      sources."deep-is-0.1.3"
+      sources."define-properties-1.1.2"
+      sources."deglob-2.1.1"
+      sources."del-2.2.2"
+      sources."doctrine-2.1.0"
+      sources."error-ex-1.3.2"
+      sources."es-abstract-1.12.0"
+      sources."es-to-primitive-1.1.1"
+      sources."es5-ext-0.10.45"
+      sources."es6-iterator-2.0.3"
+      sources."es6-map-0.1.5"
+      sources."es6-set-0.1.5"
+      sources."es6-symbol-3.1.1"
+      sources."es6-weak-map-2.0.2"
+      sources."escape-string-regexp-1.0.5"
+      sources."escope-3.6.0"
+      sources."eslint-3.18.0"
+      sources."eslint-config-standard-7.1.0"
+      sources."eslint-config-standard-jsx-3.3.0"
+      sources."eslint-plugin-promise-3.4.2"
+      (sources."eslint-plugin-react-6.9.0" // {
+        dependencies = [
+          sources."doctrine-1.5.0"
+        ];
+      })
+      sources."eslint-plugin-standard-2.0.1"
+      sources."espree-3.5.4"
+      sources."esprima-4.0.1"
+      sources."esquery-1.0.1"
+      sources."esrecurse-4.2.1"
+      sources."estraverse-4.2.0"
+      sources."esutils-2.0.2"
+      sources."event-emitter-0.3.5"
+      sources."exit-hook-1.1.1"
+      sources."fast-levenshtein-2.0.6"
+      sources."figures-1.7.0"
+      sources."file-entry-cache-2.0.0"
+      sources."find-root-1.1.0"
+      sources."find-up-2.1.0"
+      sources."flat-cache-1.3.0"
+      sources."foreach-2.0.5"
+      sources."fs.realpath-1.0.0"
+      sources."function-bind-1.1.1"
+      sources."generate-function-2.0.0"
+      sources."generate-object-property-1.2.0"
+      sources."get-stdin-5.0.1"
+      sources."glob-7.1.2"
+      sources."globals-9.18.0"
+      sources."globby-5.0.0"
+      sources."graceful-fs-4.1.11"
+      sources."has-1.0.3"
+      sources."has-ansi-2.0.0"
+      sources."home-or-tmp-2.0.0"
+      sources."ignore-3.3.10"
+      sources."imurmurhash-0.1.4"
+      sources."inflight-1.0.6"
+      sources."inherits-2.0.3"
+      sources."inquirer-0.12.0"
+      sources."interpret-1.1.0"
+      sources."is-arrayish-0.2.1"
+      sources."is-callable-1.1.4"
+      sources."is-date-object-1.0.1"
+      sources."is-fullwidth-code-point-1.0.0"
+      sources."is-my-ip-valid-1.0.0"
+      sources."is-my-json-valid-2.17.2"
+      sources."is-path-cwd-1.0.0"
+      sources."is-path-in-cwd-1.0.1"
+      sources."is-path-inside-1.0.1"
+      sources."is-property-1.0.2"
+      sources."is-regex-1.0.4"
+      sources."is-resolvable-1.1.0"
+      sources."is-symbol-1.0.1"
+      sources."isarray-1.0.0"
+      sources."js-tokens-3.0.2"
+      sources."js-yaml-3.12.0"
+      sources."json-parse-better-errors-1.0.2"
+      sources."json-stable-stringify-1.0.1"
+      sources."jsonify-0.0.0"
+      sources."jsonpointer-4.0.1"
+      sources."jsx-ast-utils-1.4.1"
+      sources."levn-0.3.0"
+      (sources."load-json-file-4.0.0" // {
+        dependencies = [
+          sources."pify-3.0.0"
+        ];
+      })
+      sources."locate-path-2.0.0"
+      sources."lodash-4.17.10"
+      sources."minimatch-3.0.4"
+      sources."minimist-0.0.8"
+      sources."mkdirp-0.5.1"
+      sources."ms-2.0.0"
+      sources."mute-stream-0.0.5"
+      sources."natural-compare-1.4.0"
+      sources."next-tick-1.0.0"
+      sources."number-is-nan-1.0.1"
+      sources."object-assign-4.1.1"
+      sources."object-keys-1.0.12"
+      sources."once-1.4.0"
+      sources."onetime-1.1.0"
+      sources."optionator-0.8.2"
+      sources."os-homedir-1.0.2"
+      sources."os-tmpdir-1.0.2"
+      sources."p-limit-1.3.0"
+      sources."p-locate-2.0.0"
+      sources."p-try-1.0.0"
+      sources."parse-json-4.0.0"
+      sources."path-exists-3.0.0"
+      sources."path-is-absolute-1.0.1"
+      sources."path-is-inside-1.0.2"
+      sources."path-parse-1.0.5"
+      sources."pify-2.3.0"
+      sources."pinkie-2.0.4"
+      sources."pinkie-promise-2.0.1"
+      sources."pkg-conf-2.1.0"
+      sources."pkg-config-1.1.1"
+      sources."pluralize-1.2.1"
+      sources."prelude-ls-1.1.2"
+      sources."process-nextick-args-2.0.0"
+      sources."progress-1.1.8"
+      sources."readable-stream-2.3.6"
+      sources."readline2-1.0.1"
+      sources."rechoir-0.6.2"
+      sources."require-uncached-1.0.3"
+      sources."resolve-1.8.1"
+      sources."resolve-from-1.0.1"
+      sources."restore-cursor-1.0.1"
+      sources."rimraf-2.6.2"
+      sources."run-async-0.1.0"
+      sources."run-parallel-1.1.9"
+      sources."rx-lite-3.1.2"
+      sources."safe-buffer-5.1.2"
+      sources."shelljs-0.7.8"
+      sources."slice-ansi-0.0.4"
+      sources."sprintf-js-1.0.3"
+      (sources."standard-engine-5.4.0" // {
+        dependencies = [
+          sources."minimist-1.2.0"
+        ];
+      })
+      sources."string-width-1.0.2"
+      sources."string_decoder-1.1.1"
+      sources."strip-ansi-3.0.1"
+      sources."strip-bom-3.0.0"
+      sources."strip-json-comments-2.0.1"
+      sources."supports-color-2.0.0"
+      (sources."table-3.8.3" // {
+        dependencies = [
+          sources."ansi-regex-3.0.0"
+          sources."is-fullwidth-code-point-2.0.0"
+          sources."string-width-2.1.1"
+          sources."strip-ansi-4.0.0"
+        ];
+      })
+      sources."text-table-0.2.0"
+      sources."through-2.3.8"
+      sources."type-check-0.3.2"
+      sources."typedarray-0.0.6"
+      sources."uniq-1.0.1"
+      sources."user-home-2.0.0"
+      sources."util-deprecate-1.0.2"
+      sources."wordwrap-1.0.0"
+      sources."wrappy-1.0.2"
+      sources."write-0.2.1"
+      sources."xtend-4.0.1"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "JavaScript Standard Style";
+      homepage = http://standardjs.com/;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "string-loader-^0.0.1" = nodeEnv.buildNodePackage {
+    name = "string-loader";
+    packageName = "string-loader";
+    version = "0.0.1";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/string-loader/-/string-loader-0.0.1.tgz";
+      sha1 = "496f3cccc990213e0dd5411499f9ac6a6a6f2ff8";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "string loader for webpack";
+      homepage = "https://github.com/enmoon/string-loader#readme";
+      license = "ISC";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "style-loader-^0.13.1" = nodeEnv.buildNodePackage {
+    name = "style-loader";
+    packageName = "style-loader";
+    version = "0.13.2";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/style-loader/-/style-loader-0.13.2.tgz";
+      sha1 = "74533384cf698c7104c7951150b49717adc2f3bb";
+    };
+    dependencies = [
+      sources."big.js-3.2.0"
+      sources."emojis-list-2.1.0"
+      sources."json5-0.5.1"
+      sources."loader-utils-1.1.0"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "style loader module for webpack";
+      homepage = "https://github.com/webpack/style-loader#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "url-loader-^0.5.7" = nodeEnv.buildNodePackage {
+    name = "url-loader";
+    packageName = "url-loader";
+    version = "0.5.9";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/url-loader/-/url-loader-0.5.9.tgz";
+      sha512 = "B7QYFyvv+fOBqBVeefsxv6koWWtjmHaMFT6KZWti4KRw8YUD/hOU+3AECvXuzyVawIBx3z7zQRejXCDSO5kk1Q==";
+    };
+    dependencies = [
+      sources."big.js-3.2.0"
+      sources."emojis-list-2.1.0"
+      sources."json5-0.5.1"
+      sources."loader-utils-1.1.0"
+      sources."mime-1.3.6"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "url loader module for webpack";
+      homepage = "https://github.com/webpack/url-loader#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "webpack-^1.14.0" = nodeEnv.buildNodePackage {
+    name = "webpack";
+    packageName = "webpack";
+    version = "1.15.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/webpack/-/webpack-1.15.0.tgz";
+      sha1 = "4ff31f53db03339e55164a9d468ee0324968fe98";
+    };
+    dependencies = [
+      sources."acorn-3.3.0"
+      sources."align-text-0.1.4"
+      sources."amdefine-1.0.1"
+      sources."anymatch-1.3.2"
+      sources."arr-diff-2.0.0"
+      sources."arr-flatten-1.1.0"
+      sources."array-unique-0.2.1"
+      (sources."assert-1.4.1" // {
+        dependencies = [
+          sources."inherits-2.0.1"
+          sources."util-0.10.3"
+        ];
+      })
+      sources."async-1.5.2"
+      sources."async-each-1.0.1"
+      sources."balanced-match-1.0.0"
+      sources."base64-js-1.3.0"
+      sources."big.js-3.2.0"
+      sources."binary-extensions-1.11.0"
+      sources."brace-expansion-1.1.11"
+      sources."braces-1.8.5"
+      sources."browserify-aes-0.4.0"
+      sources."browserify-zlib-0.1.4"
+      sources."buffer-4.9.1"
+      sources."builtin-status-codes-3.0.0"
+      sources."camelcase-1.2.1"
+      sources."center-align-0.1.3"
+      sources."chokidar-1.7.0"
+      (sources."cliui-2.1.0" // {
+        dependencies = [
+          sources."wordwrap-0.0.2"
+        ];
+      })
+      sources."clone-1.0.4"
+      sources."concat-map-0.0.1"
+      sources."console-browserify-1.1.0"
+      sources."constants-browserify-1.0.0"
+      sources."core-util-is-1.0.2"
+      sources."crypto-browserify-3.3.0"
+      sources."date-now-0.1.4"
+      sources."decamelize-1.2.0"
+      sources."domain-browser-1.2.0"
+      sources."emojis-list-2.1.0"
+      (sources."enhanced-resolve-0.9.1" // {
+        dependencies = [
+          sources."memory-fs-0.2.0"
+        ];
+      })
+      sources."errno-0.1.7"
+      sources."events-1.1.1"
+      sources."expand-brackets-0.1.5"
+      sources."expand-range-1.8.2"
+      sources."extglob-0.3.2"
+      sources."filename-regex-2.0.1"
+      sources."fill-range-2.2.4"
+      sources."for-in-1.0.2"
+      sources."for-own-0.1.5"
+      sources."fsevents-1.2.4"
+      sources."glob-base-0.3.0"
+      sources."glob-parent-2.0.0"
+      sources."graceful-fs-4.1.11"
+      sources."has-flag-1.0.0"
+      sources."https-browserify-0.0.1"
+      sources."ieee754-1.1.12"
+      sources."indexof-0.0.1"
+      sources."inherits-2.0.3"
+      sources."interpret-0.6.6"
+      sources."is-binary-path-1.0.1"
+      sources."is-buffer-1.1.6"
+      sources."is-dotfile-1.0.3"
+      sources."is-equal-shallow-0.1.3"
+      sources."is-extendable-0.1.1"
+      sources."is-extglob-1.0.0"
+      sources."is-glob-2.0.1"
+      sources."is-number-2.1.0"
+      sources."is-posix-bracket-0.1.1"
+      sources."is-primitive-2.0.0"
+      sources."isarray-1.0.0"
+      sources."isobject-2.1.0"
+      sources."json5-0.5.1"
+      sources."kind-of-3.2.2"
+      sources."lazy-cache-1.0.4"
+      sources."loader-utils-0.2.17"
+      sources."longest-1.0.1"
+      sources."math-random-1.0.1"
+      sources."memory-fs-0.3.0"
+      sources."micromatch-2.3.11"
+      sources."minimatch-3.0.4"
+      sources."minimist-0.0.8"
+      sources."mkdirp-0.5.1"
+      sources."nan-2.10.0"
+      (sources."node-libs-browser-0.7.0" // {
+        dependencies = [
+          sources."string_decoder-0.10.31"
+        ];
+      })
+      sources."normalize-path-2.1.1"
+      sources."object-assign-4.1.1"
+      sources."object.omit-2.0.1"
+      sources."optimist-0.6.1"
+      sources."os-browserify-0.2.1"
+      sources."pako-0.2.9"
+      sources."parse-glob-3.0.4"
+      sources."path-browserify-0.0.0"
+      sources."path-is-absolute-1.0.1"
+      sources."pbkdf2-compat-2.0.1"
+      sources."preserve-0.2.0"
+      sources."process-0.11.10"
+      sources."process-nextick-args-2.0.0"
+      sources."prr-1.0.1"
+      sources."punycode-1.4.1"
+      sources."querystring-0.2.0"
+      sources."querystring-es3-0.2.1"
+      (sources."randomatic-3.0.0" // {
+        dependencies = [
+          sources."is-number-4.0.0"
+          sources."kind-of-6.0.2"
+        ];
+      })
+      sources."readable-stream-2.3.6"
+      sources."readdirp-2.1.0"
+      sources."regex-cache-0.4.4"
+      sources."remove-trailing-separator-1.1.0"
+      sources."repeat-element-1.1.2"
+      sources."repeat-string-1.6.1"
+      sources."right-align-0.1.3"
+      sources."ripemd160-0.2.0"
+      sources."safe-buffer-5.1.2"
+      sources."set-immediate-shim-1.0.1"
+      sources."setimmediate-1.0.5"
+      sources."sha.js-2.2.6"
+      sources."source-list-map-0.1.8"
+      sources."source-map-0.5.7"
+      sources."stream-browserify-2.0.1"
+      sources."stream-http-2.8.3"
+      sources."string_decoder-1.1.1"
+      sources."supports-color-3.2.3"
+      sources."tapable-0.1.10"
+      sources."timers-browserify-2.0.10"
+      sources."to-arraybuffer-1.0.1"
+      sources."tty-browserify-0.0.0"
+      (sources."uglify-js-2.7.5" // {
+        dependencies = [
+          sources."async-0.2.10"
+        ];
+      })
+      sources."uglify-to-browserify-1.0.2"
+      (sources."url-0.11.0" // {
+        dependencies = [
+          sources."punycode-1.3.2"
+        ];
+      })
+      sources."util-0.10.4"
+      sources."util-deprecate-1.0.2"
+      sources."vm-browserify-0.0.4"
+      (sources."watchpack-0.2.9" // {
+        dependencies = [
+          sources."async-0.9.2"
+        ];
+      })
+      (sources."webpack-core-0.6.9" // {
+        dependencies = [
+          sources."source-map-0.4.4"
+        ];
+      })
+      sources."window-size-0.1.0"
+      sources."wordwrap-0.0.3"
+      sources."xtend-4.0.1"
+      sources."yargs-3.10.0"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Packs CommonJs/AMD modules for the browser. Allows to split your codebase into multiple bundles, which can be loaded on demand. Support loaders to preprocess files, i.e. json, jade, coffee, css, less, ... and your custom stuff.";
+      homepage = https://github.com/webpack/webpack;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "webpack-parallel-uglify-plugin-^0.2.0" = nodeEnv.buildNodePackage {
+    name = "webpack-parallel-uglify-plugin";
+    packageName = "webpack-parallel-uglify-plugin";
+    version = "0.2.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/webpack-parallel-uglify-plugin/-/webpack-parallel-uglify-plugin-0.2.0.tgz";
+      sha1 = "6daa575cdf7262a1b994ce037b216590b16d2f3d";
+    };
+    dependencies = [
+      sources."align-text-0.1.4"
+      sources."balanced-match-1.0.0"
+      sources."brace-expansion-1.1.11"
+      sources."camelcase-1.2.1"
+      sources."center-align-0.1.3"
+      sources."cliui-2.1.0"
+      sources."concat-map-0.0.1"
+      sources."decamelize-1.2.0"
+      sources."fs.realpath-1.0.0"
+      sources."glob-7.1.2"
+      sources."inflight-1.0.6"
+      sources."inherits-2.0.3"
+      sources."is-buffer-1.1.6"
+      sources."kind-of-3.2.2"
+      sources."lazy-cache-1.0.4"
+      sources."longest-1.0.1"
+      sources."minimatch-3.0.4"
+      sources."minimist-0.0.8"
+      sources."mkdirp-0.5.1"
+      sources."once-1.4.0"
+      sources."os-tmpdir-1.0.2"
+      sources."path-is-absolute-1.0.1"
+      sources."repeat-string-1.6.1"
+      sources."right-align-0.1.3"
+      sources."source-list-map-0.1.8"
+      sources."source-map-0.5.7"
+      sources."tmp-0.0.29"
+      sources."uglify-js-2.8.29"
+      sources."uglify-to-browserify-1.0.2"
+      sources."webpack-sources-0.1.5"
+      sources."window-size-0.1.0"
+      sources."wordwrap-0.0.2"
+      sources."wrappy-1.0.2"
+      sources."yargs-3.10.0"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "A webpack plugin to run uglifyjs in parallel.";
+      homepage = "https://github.com/gdborton/webpack-parallel-uglify-plugin#readme";
+      license = "ISC";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "eve-^0.5.4" = nodeEnv.buildNodePackage {
+    name = "eve";
+    packageName = "eve";
+    version = "0.5.4";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/eve/-/eve-0.5.4.tgz";
+      sha1 = "67d080b9725291d7e389e34c26860dd97f1debaa";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Simple custom events";
+      homepage = "https://github.com/adobe-webplatform/eve#readme";
+      license = "Apache-2.0";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "Idle.Js-git+https://github.com/shawnmclean/Idle.js" = nodeEnv.buildNodePackage {
+    name = "Idle.Js";
+    packageName = "Idle.Js";
+    version = "0.0.1";
+    src = fetchgit {
+      url = "https://github.com/shawnmclean/Idle.js";
+      rev = "db9beb3483a460ad638ec947867720f0ed066a62";
+      sha256 = "05f1b2d5b7013b48d80729fe0edf3a6b7c96ee5c55572f70e81b9593176648dd";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      license = "Apache 2.0";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "archiver-^2.1.1" = nodeEnv.buildNodePackage {
+    name = "archiver";
+    packageName = "archiver";
+    version = "2.1.1";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/archiver/-/archiver-2.1.1.tgz";
+      sha1 = "ff662b4a78201494a3ee544d3a33fe7496509ebc";
+    };
+    dependencies = [
+      sources."archiver-utils-1.3.0"
+      sources."async-2.6.1"
+      sources."balanced-match-1.0.0"
+      sources."base64-js-1.3.0"
+      sources."bl-1.2.2"
+      sources."brace-expansion-1.1.11"
+      sources."buffer-5.2.0"
+      sources."buffer-alloc-1.2.0"
+      sources."buffer-alloc-unsafe-1.1.0"
+      sources."buffer-crc32-0.2.13"
+      sources."buffer-fill-1.0.0"
+      sources."compress-commons-1.2.2"
+      sources."concat-map-0.0.1"
+      sources."core-util-is-1.0.2"
+      sources."crc-3.8.0"
+      sources."crc32-stream-2.0.0"
+      sources."end-of-stream-1.4.1"
+      sources."fs-constants-1.0.0"
+      sources."fs.realpath-1.0.0"
+      sources."glob-7.1.2"
+      sources."graceful-fs-4.1.11"
+      sources."ieee754-1.1.12"
+      sources."inflight-1.0.6"
+      sources."inherits-2.0.3"
+      sources."isarray-1.0.0"
+      sources."lazystream-1.0.0"
+      sources."lodash-4.17.10"
+      sources."minimatch-3.0.4"
+      sources."normalize-path-2.1.1"
+      sources."once-1.4.0"
+      sources."path-is-absolute-1.0.1"
+      sources."process-nextick-args-2.0.0"
+      sources."readable-stream-2.3.6"
+      sources."remove-trailing-separator-1.1.0"
+      sources."safe-buffer-5.1.2"
+      sources."string_decoder-1.1.1"
+      sources."tar-stream-1.6.1"
+      sources."to-buffer-1.1.1"
+      sources."util-deprecate-1.0.2"
+      sources."wrappy-1.0.2"
+      sources."xtend-4.0.1"
+      sources."zip-stream-1.2.0"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "a streaming interface for archive generation";
+      homepage = https://github.com/archiverjs/node-archiver;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "async-^2.1.4" = nodeEnv.buildNodePackage {
+    name = "async";
+    packageName = "async";
+    version = "2.6.1";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/async/-/async-2.6.1.tgz";
+      sha512 = "fNEiL2+AZt6AlAw/29Cr0UDe4sRAHCpEHh54WMz+Bb7QfNcFw4h3loofyJpLeQs4Yx7yuqu/2dLgM5hKOs6HlQ==";
+    };
+    dependencies = [
+      sources."lodash-4.17.10"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Higher-order functions and common patterns for asynchronous code";
+      homepage = https://caolan.github.io/async/;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "aws-sdk-^2.7.20" = nodeEnv.buildNodePackage {
+    name = "aws-sdk";
+    packageName = "aws-sdk";
+    version = "2.286.2";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.286.2.tgz";
+      sha512 = "46a/2+rGEgIlmUz08vZOkYFmZIgj+An/cc+Ngz9XBLkAZbx+3sBzOrxexrlVV69MPkMbckbeZjIq8NEJWV5gPw==";
+    };
+    dependencies = [
+      sources."base64-js-1.3.0"
+      sources."buffer-4.9.1"
+      sources."events-1.1.1"
+      sources."ieee754-1.1.8"
+      sources."isarray-1.0.0"
+      sources."jmespath-0.15.0"
+      sources."punycode-1.3.2"
+      sources."querystring-0.2.0"
+      sources."sax-1.2.1"
+      sources."url-0.10.3"
+      sources."uuid-3.1.0"
+      sources."xml2js-0.4.19"
+      sources."xmlbuilder-9.0.7"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "AWS SDK for JavaScript";
+      homepage = https://github.com/aws/aws-sdk-js;
+      license = "Apache-2.0";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "base64url-^3.0.0" = nodeEnv.buildNodePackage {
+    name = "base64url";
+    packageName = "base64url";
+    version = "3.0.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/base64url/-/base64url-3.0.0.tgz";
+      sha512 = "LIVmqIrIWuiqTvn4RzcrwCOuHo2DD6tKmKBPXXlr4p4n4l6BZBkwFTIa3zu1XkX5MbZgro4a6BvPi+n2Mns5Gg==";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "For encoding to/from base64urls";
+      homepage = "https://github.com/brianloveswords/base64url#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "azure-storage-^2.7.0" = nodeEnv.buildNodePackage {
+    name = "azure-storage";
+    packageName = "azure-storage";
+    version = "2.10.1";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/azure-storage/-/azure-storage-2.10.1.tgz";
+      sha512 = "rnFo1uMIPtilusRCpK91tfY3P4Q7qRsDNwriXdp+OeTIGkGt0cTxL4mhqYfNPYPK+WBQmBdGWhOk+iROM05dcw==";
+    };
+    dependencies = [
+      sources."ajv-5.5.2"
+      sources."asn1-0.2.4"
+      sources."assert-plus-1.0.0"
+      sources."asynckit-0.4.0"
+      sources."aws-sign2-0.7.0"
+      sources."aws4-1.7.0"
+      sources."bcrypt-pbkdf-1.0.2"
+      sources."browserify-mime-1.2.9"
+      sources."caseless-0.12.0"
+      sources."co-4.6.0"
+      sources."combined-stream-1.0.6"
+      sources."core-util-is-1.0.2"
+      sources."dashdash-1.14.1"
+      sources."delayed-stream-1.0.0"
+      sources."ecc-jsbn-0.1.2"
+      sources."extend-1.2.1"
+      sources."extsprintf-1.3.0"
+      sources."fast-deep-equal-1.1.0"
+      sources."fast-json-stable-stringify-2.0.0"
+      sources."forever-agent-0.6.1"
+      sources."form-data-2.3.2"
+      sources."getpass-0.1.7"
+      sources."har-schema-2.0.0"
+      sources."har-validator-5.0.3"
+      sources."hash-base-3.0.4"
+      sources."http-signature-1.2.0"
+      sources."inherits-2.0.3"
+      sources."is-typedarray-1.0.0"
+      sources."isarray-1.0.0"
+      sources."isstream-0.1.2"
+      sources."jsbn-0.1.1"
+      sources."json-edm-parser-0.1.2"
+      sources."json-schema-0.2.3"
+      sources."json-schema-traverse-0.3.1"
+      sources."json-stringify-safe-5.0.1"
+      sources."jsonparse-1.2.0"
+      sources."jsprim-1.4.1"
+      sources."md5.js-1.3.4"
+      sources."mime-db-1.35.0"
+      sources."mime-types-2.1.19"
+      sources."oauth-sign-0.8.2"
+      sources."performance-now-2.1.0"
+      sources."process-nextick-args-1.0.7"
+      sources."punycode-1.4.1"
+      sources."qs-6.5.2"
+      sources."readable-stream-2.0.6"
+      (sources."request-2.87.0" // {
+        dependencies = [
+          sources."extend-3.0.2"
+        ];
+      })
+      sources."safe-buffer-5.1.2"
+      sources."safer-buffer-2.1.2"
+      sources."sax-0.5.8"
+      sources."sshpk-1.14.2"
+      sources."string_decoder-0.10.31"
+      sources."tough-cookie-2.3.4"
+      sources."tunnel-agent-0.6.0"
+      sources."tweetnacl-0.14.5"
+      sources."underscore-1.8.3"
+      sources."util-deprecate-1.0.2"
+      sources."uuid-3.3.2"
+      sources."validator-9.4.1"
+      sources."verror-1.10.0"
+      sources."xml2js-0.2.8"
+      sources."xmlbuilder-0.4.3"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Microsoft Azure Storage Client Library for Node.js";
+      homepage = http://github.com/Azure/azure-storage-node;
+      license = "Apache-2.0";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "blueimp-md5-^2.6.0" = nodeEnv.buildNodePackage {
+    name = "blueimp-md5";
+    packageName = "blueimp-md5";
+    version = "2.10.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/blueimp-md5/-/blueimp-md5-2.10.0.tgz";
+      sha512 = "EkNUOi7tpV68TqjpiUz9D9NcT8um2+qtgntmMbi5UKssVX2m/2PLqotcric0RE63pB3HPN/fjf3cKHN2ufGSUQ==";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "JavaScript MD5 implementation. Compatible with server-side environments like Node.js, module loaders like RequireJS, Browserify or webpack and all web browsers.";
+      homepage = https://github.com/blueimp/JavaScript-MD5;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "body-parser-^1.15.2" = nodeEnv.buildNodePackage {
+    name = "body-parser";
+    packageName = "body-parser";
+    version = "1.18.3";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/body-parser/-/body-parser-1.18.3.tgz";
+      sha1 = "5b292198ffdd553b3a0f20ded0592b956955c8b4";
+    };
+    dependencies = [
+      sources."bytes-3.0.0"
+      sources."content-type-1.0.4"
+      sources."debug-2.6.9"
+      sources."depd-1.1.2"
+      sources."ee-first-1.1.1"
+      sources."http-errors-1.6.3"
+      sources."iconv-lite-0.4.23"
+      sources."inherits-2.0.3"
+      sources."media-typer-0.3.0"
+      sources."mime-db-1.35.0"
+      sources."mime-types-2.1.19"
+      sources."ms-2.0.0"
+      sources."on-finished-2.3.0"
+      sources."qs-6.5.2"
+      sources."raw-body-2.3.3"
+      sources."safer-buffer-2.1.2"
+      sources."setprototypeof-1.1.0"
+      sources."statuses-1.5.0"
+      sources."type-is-1.6.16"
+      sources."unpipe-1.0.0"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Node.js body parsing middleware";
+      homepage = "https://github.com/expressjs/body-parser#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "bootstrap-^3.3.7" = nodeEnv.buildNodePackage {
+    name = "bootstrap";
+    packageName = "bootstrap";
+    version = "3.3.7";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/bootstrap/-/bootstrap-3.3.7.tgz";
+      sha1 = "5a389394549f23330875a3b150656574f8a9eb71";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "The most popular front-end framework for developing responsive, mobile first projects on the web.";
+      homepage = http://getbootstrap.com/;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "bootstrap-validator-^0.11.8" = nodeEnv.buildNodePackage {
+    name = "bootstrap-validator";
+    packageName = "bootstrap-validator";
+    version = "0.11.9";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/bootstrap-validator/-/bootstrap-validator-0.11.9.tgz";
+      sha1 = "fb7058eef53623e78f5aa7967026f98f875a9404";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "A user-friendly HTML5 Form validator for Bootstrap 3";
+      homepage = "https://github.com/1000hz/bootstrap-validator#readme";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "chance-^1.0.4" = nodeEnv.buildNodePackage {
+    name = "chance";
+    packageName = "chance";
+    version = "1.0.16";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/chance/-/chance-1.0.16.tgz";
+      sha512 = "2bgDHH5bVfAXH05SPtjqrsASzZ7h90yCuYT2z4mkYpxxYvJXiIydBFzVieVHZx7wLH1Ag2Azaaej2/zA1XUrNQ==";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Chance - Utility library to generate anything random";
+      homepage = http://chancejs.com/;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "cheerio-^0.22.0" = nodeEnv.buildNodePackage {
+    name = "cheerio";
+    packageName = "cheerio";
+    version = "0.22.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/cheerio/-/cheerio-0.22.0.tgz";
+      sha1 = "a9baa860a3f9b595a6b81b1a86873121ed3a269e";
+    };
+    dependencies = [
+      sources."boolbase-1.0.0"
+      sources."core-util-is-1.0.2"
+      sources."css-select-1.2.0"
+      sources."css-what-2.1.0"
+      (sources."dom-serializer-0.1.0" // {
+        dependencies = [
+          sources."domelementtype-1.1.3"
+        ];
+      })
+      sources."domelementtype-1.3.0"
+      sources."domhandler-2.4.2"
+      sources."domutils-1.5.1"
+      sources."entities-1.1.1"
+      sources."htmlparser2-3.9.2"
+      sources."inherits-2.0.3"
+      sources."isarray-1.0.0"
+      sources."lodash.assignin-4.2.0"
+      sources."lodash.bind-4.2.1"
+      sources."lodash.defaults-4.2.0"
+      sources."lodash.filter-4.6.0"
+      sources."lodash.flatten-4.4.0"
+      sources."lodash.foreach-4.5.0"
+      sources."lodash.map-4.6.0"
+      sources."lodash.merge-4.6.1"
+      sources."lodash.pick-4.4.0"
+      sources."lodash.reduce-4.6.0"
+      sources."lodash.reject-4.6.0"
+      sources."lodash.some-4.6.0"
+      sources."nth-check-1.0.1"
+      sources."process-nextick-args-2.0.0"
+      sources."readable-stream-2.3.6"
+      sources."safe-buffer-5.1.2"
+      sources."string_decoder-1.1.1"
+      sources."util-deprecate-1.0.2"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Tiny, fast, and elegant implementation of core jQuery designed specifically for the server";
+      homepage = "https://github.com/cheeriojs/cheerio#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "codemirror-git+https://github.com/hackmdio/CodeMirror.git" = nodeEnv.buildNodePackage {
+    name = "codemirror";
+    packageName = "codemirror";
+    version = "5.39.1";
+    src = fetchgit {
+      url = "https://github.com/hackmdio/CodeMirror.git";
+      rev = "df412731ed3923124f9a43f60e84bdf855eb843a";
+      sha256 = "3c5a6813c29893301836773c3ed122ec868840432b16d2936a4deab419e3620b";
+    };
+    dependencies = [
+      sources."acorn-5.7.1"
+      (sources."acorn-jsx-3.0.1" // {
+        dependencies = [
+          sources."acorn-3.3.0"
+        ];
+      })
+      (sources."acorn-object-spread-1.0.0" // {
+        dependencies = [
+          sources."acorn-3.3.0"
+        ];
+      })
+      sources."ajv-5.5.2"
+      sources."align-text-0.1.4"
+      sources."ansi-regex-2.1.1"
+      sources."ansi-styles-1.0.0"
+      sources."asn1-0.2.4"
+      sources."assert-plus-1.0.0"
+      sources."asynckit-0.4.0"
+      sources."aws-sign2-0.7.0"
+      sources."aws4-1.7.0"
+      sources."balanced-match-1.0.0"
+      sources."bcrypt-pbkdf-1.0.2"
+      sources."blint-1.0.3"
+      sources."brace-expansion-1.1.11"
+      (sources."buble-0.15.2" // {
+        dependencies = [
+          sources."acorn-3.3.0"
+          sources."ansi-styles-2.2.1"
+          sources."chalk-1.1.3"
+          sources."minimist-1.2.0"
+          sources."strip-ansi-3.0.1"
+        ];
+      })
+      sources."buffer-from-1.1.1"
+      sources."camelcase-1.2.1"
+      sources."caseless-0.12.0"
+      sources."center-align-0.1.3"
+      sources."chalk-0.4.0"
+      sources."cliui-2.1.0"
+      sources."co-4.6.0"
+      sources."combined-stream-1.0.6"
+      sources."concat-map-0.0.1"
+      sources."concat-stream-1.6.2"
+      sources."core-util-is-1.0.2"
+      sources."dashdash-1.14.1"
+      sources."debug-2.6.9"
+      sources."decamelize-1.2.0"
+      sources."delayed-stream-1.0.0"
+      sources."ecc-jsbn-0.1.2"
+      sources."es6-promise-4.2.4"
+      sources."escape-string-regexp-1.0.5"
+      sources."estree-walker-0.2.1"
+      sources."extend-3.0.2"
+      sources."extract-zip-1.6.7"
+      sources."extsprintf-1.3.0"
+      sources."fast-deep-equal-1.1.0"
+      sources."fast-json-stable-stringify-2.0.0"
+      sources."fd-slicer-1.0.1"
+      sources."forever-agent-0.6.1"
+      sources."form-data-2.3.2"
+      sources."fs-extra-1.0.0"
+      sources."getpass-0.1.7"
+      sources."graceful-fs-4.1.11"
+      sources."har-schema-2.0.0"
+      sources."har-validator-5.0.3"
+      sources."has-ansi-2.0.0"
+      sources."has-color-0.1.7"
+      sources."hasha-2.2.0"
+      sources."http-signature-1.2.0"
+      sources."inherits-2.0.3"
+      sources."is-buffer-1.1.6"
+      sources."is-stream-1.1.0"
+      sources."is-typedarray-1.0.0"
+      sources."isarray-1.0.0"
+      sources."isexe-2.0.0"
+      sources."isstream-0.1.2"
+      sources."jsbn-0.1.1"
+      sources."json-schema-0.2.3"
+      sources."json-schema-traverse-0.3.1"
+      sources."json-stringify-safe-5.0.1"
+      sources."jsonfile-2.4.0"
+      sources."jsprim-1.4.1"
+      sources."kew-0.7.0"
+      sources."kind-of-3.2.2"
+      sources."klaw-1.3.1"
+      sources."lazy-cache-1.0.4"
+      sources."longest-1.0.1"
+      sources."magic-string-0.14.0"
+      sources."mime-db-1.35.0"
+      sources."mime-types-2.1.19"
+      sources."minimatch-3.0.4"
+      sources."minimist-0.0.8"
+      sources."mkdirp-0.5.1"
+      sources."ms-2.0.0"
+      sources."node-static-0.6.0"
+      sources."nomnom-1.8.1"
+      sources."oauth-sign-0.8.2"
+      sources."os-homedir-1.0.2"
+      sources."pend-1.2.0"
+      sources."performance-now-2.1.0"
+      sources."phantomjs-prebuilt-2.1.16"
+      sources."pinkie-2.0.4"
+      sources."pinkie-promise-2.0.1"
+      sources."process-nextick-args-2.0.0"
+      sources."progress-1.1.8"
+      sources."punycode-1.4.1"
+      sources."qs-6.5.2"
+      sources."readable-stream-2.3.6"
+      sources."repeat-string-1.6.1"
+      sources."request-2.87.0"
+      sources."request-progress-2.0.1"
+      sources."require-relative-0.8.7"
+      sources."right-align-0.1.3"
+      sources."rollup-0.41.6"
+      sources."rollup-plugin-buble-0.15.0"
+      sources."rollup-pluginutils-1.5.2"
+      sources."rollup-watch-3.2.2"
+      sources."safe-buffer-5.1.2"
+      sources."safer-buffer-2.1.2"
+      sources."source-map-0.5.7"
+      sources."source-map-support-0.4.18"
+      sources."sshpk-1.14.2"
+      sources."string_decoder-1.1.1"
+      sources."strip-ansi-0.1.1"
+      sources."supports-color-2.0.0"
+      sources."throttleit-1.0.0"
+      sources."tough-cookie-2.3.4"
+      sources."tunnel-agent-0.6.0"
+      sources."tweetnacl-0.14.5"
+      sources."typedarray-0.0.6"
+      sources."uglify-js-2.8.29"
+      sources."uglify-to-browserify-1.0.2"
+      sources."underscore-1.6.0"
+      sources."util-deprecate-1.0.2"
+      sources."uuid-3.3.2"
+      sources."verror-1.10.0"
+      sources."vlq-0.2.3"
+      sources."which-1.3.1"
+      sources."window-size-0.1.0"
+      sources."wordwrap-0.0.2"
+      sources."yargs-3.10.0"
+      sources."yauzl-2.4.1"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Full-featured in-browser code editor";
+      homepage = http://codemirror.net/;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "compression-^1.6.2" = nodeEnv.buildNodePackage {
+    name = "compression";
+    packageName = "compression";
+    version = "1.7.3";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/compression/-/compression-1.7.3.tgz";
+      sha512 = "HSjyBG5N1Nnz7tF2+O7A9XUhyjru71/fwgNb7oIsEVHR0WShfs2tIS/EySLgiTe98aOK18YDlMXpzjCXY/n9mg==";
+    };
+    dependencies = [
+      sources."accepts-1.3.5"
+      sources."bytes-3.0.0"
+      sources."compressible-2.0.14"
+      sources."debug-2.6.9"
+      sources."mime-db-1.35.0"
+      sources."mime-types-2.1.19"
+      sources."ms-2.0.0"
+      sources."negotiator-0.6.1"
+      sources."on-headers-1.0.1"
+      sources."safe-buffer-5.1.2"
+      sources."vary-1.1.2"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Node.js compression middleware";
+      homepage = "https://github.com/expressjs/compression#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "connect-flash-^0.1.1" = nodeEnv.buildNodePackage {
+    name = "connect-flash";
+    packageName = "connect-flash";
+    version = "0.1.1";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/connect-flash/-/connect-flash-0.1.1.tgz";
+      sha1 = "d8630f26d95a7f851f9956b1e8cc6732f3b6aa30";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Flash message middleware for Connect.";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "connect-session-sequelize-^4.1.0" = nodeEnv.buildNodePackage {
+    name = "connect-session-sequelize";
+    packageName = "connect-session-sequelize";
+    version = "4.1.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/connect-session-sequelize/-/connect-session-sequelize-4.1.0.tgz";
+      sha1 = "d402749c3bebd79209192c164c090742b3fe2011";
+    };
+    dependencies = [
+      sources."debug-2.6.9"
+      sources."deep-equal-1.0.1"
+      sources."ms-2.0.0"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Session store for connect-session using sequelize";
+      homepage = https://github.com/mweibel/connect-session-sequelize;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "cookie-0.3.1" = nodeEnv.buildNodePackage {
+    name = "cookie";
+    packageName = "cookie";
+    version = "0.3.1";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz";
+      sha1 = "e7e0a1f9ef43b4c8ba925c5c5a96e806d16873bb";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "HTTP server cookie parsing and serialization";
+      homepage = https://github.com/jshttp/cookie;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "cookie-parser-1.4.3" = nodeEnv.buildNodePackage {
+    name = "cookie-parser";
+    packageName = "cookie-parser";
+    version = "1.4.3";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/cookie-parser/-/cookie-parser-1.4.3.tgz";
+      sha1 = "0fe31fa19d000b95f4aadf1f53fdc2b8a203baa5";
+    };
+    dependencies = [
+      sources."cookie-0.3.1"
+      sources."cookie-signature-1.0.6"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "cookie parsing with signatures";
+      homepage = https://github.com/expressjs/cookie-parser;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "deep-freeze-^0.0.1" = nodeEnv.buildNodePackage {
+    name = "deep-freeze";
+    packageName = "deep-freeze";
+    version = "0.0.1";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/deep-freeze/-/deep-freeze-0.0.1.tgz";
+      sha1 = "3a0b0005de18672819dfd38cd31f91179c893e84";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "recursively Object.freeze() objects and functions";
+      homepage = https://github.com/substack/deep-freeze;
+      license = "public domain";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "diff-match-patch-git+https://github.com/hackmdio/diff-match-patch.git" = nodeEnv.buildNodePackage {
+    name = "diff-match-patch";
+    packageName = "diff-match-patch";
+    version = "1.1.0";
+    src = fetchgit {
+      url = "https://github.com/hackmdio/diff-match-patch.git";
+      rev = "73e56e779a2a8503b05458e607077d0fd1d80419";
+      sha256 = "2ea9013d983e96621b447f40ca983f697ad355a9ed9dc48f5ab42fa1f183937f";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "npm package for https://code.google.com/p/google-diff-match-patch/";
+      license = "Apache-2.0";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "ejs-^2.5.5" = nodeEnv.buildNodePackage {
+    name = "ejs";
+    packageName = "ejs";
+    version = "2.6.1";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/ejs/-/ejs-2.6.1.tgz";
+      sha512 = "0xy4A/twfrRCnkhfk8ErDi5DqdAsAqeGxht4xkCUrsvhhbQNs7E+4jV0CN7+NKIY0aHE72+XvqtBIXzD31ZbXQ==";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Embedded JavaScript templates";
+      homepage = https://github.com/mde/ejs;
+      license = "Apache-2.0";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "emojify.js-~1.1.0" = nodeEnv.buildNodePackage {
+    name = "emojify.js";
+    packageName = "emojify.js";
+    version = "1.1.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/emojify.js/-/emojify.js-1.1.0.tgz";
+      sha1 = "079fff223307c9007f570785e8e4935d5c398beb";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "A Javascript module to convert emoji keywords to images.";
+      homepage = "https://github.com/hassankhan/emojify.js#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "express->=4.14" = nodeEnv.buildNodePackage {
+    name = "express";
+    packageName = "express";
+    version = "4.16.3";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/express/-/express-4.16.3.tgz";
+      sha1 = "6af8a502350db3246ecc4becf6b5a34d22f7ed53";
+    };
+    dependencies = [
+      sources."accepts-1.3.5"
+      sources."array-flatten-1.1.1"
+      sources."body-parser-1.18.2"
+      sources."bytes-3.0.0"
+      sources."content-disposition-0.5.2"
+      sources."content-type-1.0.4"
+      sources."cookie-0.3.1"
+      sources."cookie-signature-1.0.6"
+      sources."debug-2.6.9"
+      sources."depd-1.1.2"
+      sources."destroy-1.0.4"
+      sources."ee-first-1.1.1"
+      sources."encodeurl-1.0.2"
+      sources."escape-html-1.0.3"
+      sources."etag-1.8.1"
+      sources."finalhandler-1.1.1"
+      sources."forwarded-0.1.2"
+      sources."fresh-0.5.2"
+      sources."http-errors-1.6.3"
+      sources."iconv-lite-0.4.19"
+      sources."inherits-2.0.3"
+      sources."ipaddr.js-1.8.0"
+      sources."media-typer-0.3.0"
+      sources."merge-descriptors-1.0.1"
+      sources."methods-1.1.2"
+      sources."mime-1.4.1"
+      sources."mime-db-1.35.0"
+      sources."mime-types-2.1.19"
+      sources."ms-2.0.0"
+      sources."negotiator-0.6.1"
+      sources."on-finished-2.3.0"
+      sources."parseurl-1.3.2"
+      sources."path-to-regexp-0.1.7"
+      sources."proxy-addr-2.0.4"
+      sources."qs-6.5.1"
+      sources."range-parser-1.2.0"
+      (sources."raw-body-2.3.2" // {
+        dependencies = [
+          sources."depd-1.1.1"
+          sources."http-errors-1.6.2"
+          sources."setprototypeof-1.0.3"
+        ];
+      })
+      sources."safe-buffer-5.1.1"
+      sources."send-0.16.2"
+      sources."serve-static-1.13.2"
+      sources."setprototypeof-1.1.0"
+      sources."statuses-1.4.0"
+      sources."type-is-1.6.16"
+      sources."unpipe-1.0.0"
+      sources."utils-merge-1.0.1"
+      sources."vary-1.1.2"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Fast, unopinionated, minimalist web framework";
+      homepage = http://expressjs.com/;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "express-session-^1.14.2" = nodeEnv.buildNodePackage {
+    name = "express-session";
+    packageName = "express-session";
+    version = "1.15.6";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/express-session/-/express-session-1.15.6.tgz";
+      sha512 = "r0nrHTCYtAMrFwZ0kBzZEXa1vtPVrw0dKvGSrKP4dahwBQ1BJpF2/y1Pp4sCD/0kvxV4zZeclyvfmw0B4RMJQA==";
+    };
+    dependencies = [
+      sources."cookie-0.3.1"
+      sources."cookie-signature-1.0.6"
+      sources."crc-3.4.4"
+      sources."debug-2.6.9"
+      sources."depd-1.1.2"
+      sources."ms-2.0.0"
+      sources."on-headers-1.0.1"
+      sources."parseurl-1.3.2"
+      sources."random-bytes-1.0.0"
+      sources."uid-safe-2.1.5"
+      sources."utils-merge-1.0.1"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Simple session middleware for Express";
+      homepage = "https://github.com/expressjs/session#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "file-saver-^1.3.3" = nodeEnv.buildNodePackage {
+    name = "file-saver";
+    packageName = "file-saver";
+    version = "1.3.8";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/file-saver/-/file-saver-1.3.8.tgz";
+      sha512 = "spKHSBQIxxS81N/O21WmuXA2F6wppUCsutpzenOeZzOCCJ5gEfcbqJP983IrpLXzYmXnMUa6J03SubcNPdKrlg==";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "An HTML5 saveAs() FileSaver implementation";
+      homepage = "https://github.com/eligrey/FileSaver.js#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "flowchart.js-^1.6.4" = nodeEnv.buildNodePackage {
+    name = "flowchart.js";
+    packageName = "flowchart.js";
+    version = "1.11.3";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/flowchart.js/-/flowchart.js-1.11.3.tgz";
+      sha512 = "Hk5vKKsEjYp/Vt4gSRBx39z+6OLwkg3top/EQ4antpZXCVrHLajVGWEqhCPeEBixhzDxAtHdRn4aFEtRhlTzHA==";
+    };
+    dependencies = [
+      sources."eve-raphael-0.5.0"
+      sources."raphael-2.2.7"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "[![JS.ORG](https://img.shields.io/badge/js.org-flowchart-ffb400.svg?style=flat-square)](http://js.org)";
+      homepage = http://flowchart.js.org/;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "font-awesome-^4.7.0" = nodeEnv.buildNodePackage {
+    name = "font-awesome";
+    packageName = "font-awesome";
+    version = "4.7.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/font-awesome/-/font-awesome-4.7.0.tgz";
+      sha1 = "8fa8cf0411a1a31afd07b06d2902bb9fc815a133";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "The iconic font and CSS framework";
+      homepage = http://fontawesome.io/;
+      license = "(OFL-1.1 AND MIT)";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "formidable-^1.0.17" = nodeEnv.buildNodePackage {
+    name = "formidable";
+    packageName = "formidable";
+    version = "1.2.1";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/formidable/-/formidable-1.2.1.tgz";
+      sha512 = "Fs9VRguL0gqGHkXS5GQiMCr1VhZBxz0JnJs4JmMp/2jL18Fmbzvv7vOFRU+U8TBkHEE/CX1qDXzJplVULgsLeg==";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "A node.js module for parsing form data, especially file uploads.";
+      homepage = https://github.com/felixge/node-formidable;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "gist-embed-~2.6.0" = nodeEnv.buildNodePackage {
+    name = "gist-embed";
+    packageName = "gist-embed";
+    version = "2.6.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/gist-embed/-/gist-embed-2.6.0.tgz";
+      sha1 = "1ea95703fa1fc2a1255419f6f06c67e9920649ab";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Ultra powered gist embedding for your website";
+      homepage = "https://github.com/blairvanderhoof/gist-embed#readme";
+      license = "BSD-2-Clause";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "graceful-fs-^4.1.11" = nodeEnv.buildNodePackage {
+    name = "graceful-fs";
+    packageName = "graceful-fs";
+    version = "4.1.11";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz";
+      sha1 = "0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "A drop-in replacement for fs, making various improvements.";
+      homepage = "https://github.com/isaacs/node-graceful-fs#readme";
+      license = "ISC";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "handlebars-^4.0.6" = nodeEnv.buildNodePackage {
+    name = "handlebars";
+    packageName = "handlebars";
+    version = "4.0.11";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/handlebars/-/handlebars-4.0.11.tgz";
+      sha1 = "630a35dfe0294bc281edae6ffc5d329fc7982dcc";
+    };
+    dependencies = [
+      sources."align-text-0.1.4"
+      sources."amdefine-1.0.1"
+      sources."async-1.5.2"
+      sources."camelcase-1.2.1"
+      sources."center-align-0.1.3"
+      (sources."cliui-2.1.0" // {
+        dependencies = [
+          sources."wordwrap-0.0.2"
+        ];
+      })
+      sources."decamelize-1.2.0"
+      sources."is-buffer-1.1.6"
+      sources."kind-of-3.2.2"
+      sources."lazy-cache-1.0.4"
+      sources."longest-1.0.1"
+      sources."minimist-0.0.10"
+      sources."optimist-0.6.1"
+      sources."repeat-string-1.6.1"
+      sources."right-align-0.1.3"
+      sources."source-map-0.4.4"
+      (sources."uglify-js-2.8.29" // {
+        dependencies = [
+          sources."source-map-0.5.7"
+        ];
+      })
+      sources."uglify-to-browserify-1.0.2"
+      sources."window-size-0.1.0"
+      sources."wordwrap-0.0.3"
+      sources."yargs-3.10.0"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Handlebars provides the power necessary to let you build semantic templates effectively with no frustration";
+      homepage = http://www.handlebarsjs.com/;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "helmet-^3.3.0" = nodeEnv.buildNodePackage {
+    name = "helmet";
+    packageName = "helmet";
+    version = "3.13.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/helmet/-/helmet-3.13.0.tgz";
+      sha512 = "rCYnlbOBkeP6fCo4sXZNu91vIAWlbVgolwnUANtnzPANRf2kJZ2a6yjRnCqG23Tyl2/ExvJ8bDg4xUdNCIWnrw==";
+    };
+    dependencies = [
+      sources."camelize-1.0.0"
+      sources."content-security-policy-builder-2.0.0"
+      sources."dasherize-2.0.0"
+      sources."dns-prefetch-control-0.1.0"
+      sources."dont-sniff-mimetype-1.0.0"
+      sources."expect-ct-0.1.1"
+      sources."frameguard-3.0.0"
+      sources."helmet-crossdomain-0.3.0"
+      sources."helmet-csp-2.7.1"
+      sources."hide-powered-by-1.0.0"
+      sources."hpkp-2.0.0"
+      sources."hsts-2.1.0"
+      sources."ienoopen-1.0.0"
+      sources."nocache-2.0.0"
+      sources."platform-1.3.5"
+      sources."referrer-policy-1.1.0"
+      sources."x-xss-protection-1.1.0"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "help secure Express/Connect apps with various HTTP headers";
+      homepage = https://helmetjs.github.io/;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "highlight.js-~9.12.0" = nodeEnv.buildNodePackage {
+    name = "highlight.js";
+    packageName = "highlight.js";
+    version = "9.12.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/highlight.js/-/highlight.js-9.12.0.tgz";
+      sha1 = "e6d9dbe57cbefe60751f02af336195870c90c01e";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Syntax highlighting with language autodetection.";
+      homepage = https://highlightjs.org/;
+      license = "BSD-3-Clause";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "i18n-^0.8.3" = nodeEnv.buildNodePackage {
+    name = "i18n";
+    packageName = "i18n";
+    version = "0.8.3";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/i18n/-/i18n-0.8.3.tgz";
+      sha1 = "2d8cf1c24722602c2041d01ba6ae5eaa51388f0e";
+    };
+    dependencies = [
+      sources."abbrev-1.1.1"
+      (sources."ambi-2.5.0" // {
+        dependencies = [
+          sources."typechecker-4.5.0"
+        ];
+      })
+      sources."async-1.5.2"
+      sources."balanced-match-1.0.0"
+      sources."brace-expansion-1.1.11"
+      sources."concat-map-0.0.1"
+      sources."csextends-1.2.0"
+      sources."debug-3.1.0"
+      sources."eachr-2.0.4"
+      sources."editions-1.3.4"
+      (sources."extendr-2.1.0" // {
+        dependencies = [
+          sources."typechecker-2.0.8"
+        ];
+      })
+      (sources."extract-opts-2.2.0" // {
+        dependencies = [
+          sources."typechecker-2.0.8"
+        ];
+      })
+      sources."glob-6.0.4"
+      sources."graceful-fs-4.1.11"
+      sources."ignorefs-1.2.0"
+      sources."ignorepatterns-1.1.0"
+      sources."inflight-1.0.6"
+      sources."inherits-2.0.3"
+      sources."make-plural-3.0.6"
+      sources."math-interval-parser-1.1.0"
+      sources."messageformat-0.3.1"
+      sources."minimatch-3.0.4"
+      sources."minimist-1.2.0"
+      sources."ms-2.0.0"
+      sources."mustache-2.3.0"
+      sources."nopt-3.0.6"
+      sources."once-1.4.0"
+      sources."path-is-absolute-1.0.1"
+      sources."safefs-3.2.2"
+      sources."scandirectory-2.5.0"
+      sources."sprintf-js-1.1.1"
+      sources."taskgroup-4.3.1"
+      sources."typechecker-2.1.0"
+      sources."watchr-2.4.13"
+      sources."wrappy-1.0.2"
+      sources."xregexp-2.0.0"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "lightweight translation module with dynamic json storage";
+      homepage = http://github.com/mashpie/i18n-node;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "imgur-git+https://github.com/hackmdio/node-imgur.git" = nodeEnv.buildNodePackage {
+    name = "imgur";
+    packageName = "imgur";
+    version = "0.2.0";
+    src = fetchgit {
+      url = "https://github.com/hackmdio/node-imgur.git";
+      rev = "0fba6d163428c946942cd2c3022634cbb8754e38";
+      sha256 = "b7dc96b2ccefdca42dca10138d3121b405b2b7e70ffa055ce225ad63bc3f3c7a";
+    };
+    dependencies = [
+      sources."ajv-5.5.2"
+      sources."asn1-0.2.4"
+      sources."assert-plus-1.0.0"
+      sources."asynckit-0.4.0"
+      sources."aws-sign2-0.7.0"
+      sources."aws4-1.7.0"
+      sources."balanced-match-1.0.0"
+      sources."bcrypt-pbkdf-1.0.2"
+      sources."brace-expansion-1.1.11"
+      sources."caseless-0.12.0"
+      sources."co-4.6.0"
+      sources."combined-stream-1.0.6"
+      sources."commander-2.16.0"
+      sources."concat-map-0.0.1"
+      sources."core-util-is-1.0.2"
+      sources."dashdash-1.14.1"
+      sources."delayed-stream-1.0.0"
+      sources."ecc-jsbn-0.1.2"
+      sources."extend-3.0.2"
+      sources."extsprintf-1.3.0"
+      sources."fast-deep-equal-1.1.0"
+      sources."fast-json-stable-stringify-2.0.0"
+      sources."forever-agent-0.6.1"
+      sources."form-data-2.3.2"
+      sources."getpass-0.1.7"
+      sources."glob-4.5.3"
+      sources."har-schema-2.0.0"
+      sources."har-validator-5.0.3"
+      sources."http-signature-1.2.0"
+      sources."inflight-1.0.6"
+      sources."inherits-2.0.3"
+      sources."is-typedarray-1.0.0"
+      sources."isstream-0.1.2"
+      sources."jsbn-0.1.1"
+      sources."json-schema-0.2.3"
+      sources."json-schema-traverse-0.3.1"
+      sources."json-stringify-safe-5.0.1"
+      sources."jsprim-1.4.1"
+      sources."mime-db-1.35.0"
+      sources."mime-types-2.1.19"
+      sources."minimatch-2.0.10"
+      sources."oauth-sign-0.8.2"
+      sources."once-1.4.0"
+      sources."performance-now-2.1.0"
+      sources."punycode-1.4.1"
+      sources."q-1.5.1"
+      sources."qs-6.5.2"
+      sources."request-2.87.0"
+      sources."safe-buffer-5.1.2"
+      sources."safer-buffer-2.1.2"
+      sources."sshpk-1.14.2"
+      sources."tough-cookie-2.3.4"
+      sources."tunnel-agent-0.6.0"
+      sources."tweetnacl-0.14.5"
+      sources."uuid-3.3.2"
+      sources."verror-1.10.0"
+      sources."wrappy-1.0.2"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Upload images to imgur.com";
+      homepage = https://github.com/kaimallea/node-imgur;
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "ionicons-~2.0.1" = nodeEnv.buildNodePackage {
+    name = "ionicons";
+    packageName = "ionicons";
+    version = "2.0.1";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/ionicons/-/ionicons-2.0.1.tgz";
+      sha1 = "ca398113293ea870244f538f0aabbd4b5b209a3e";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Ionicons - free and beautiful icons from the creators of Ionic Framework";
+      homepage = "https://github.com/driftyco/ionicons#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "jquery-^3.1.1" = nodeEnv.buildNodePackage {
+    name = "jquery";
+    packageName = "jquery";
+    version = "3.3.1";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/jquery/-/jquery-3.3.1.tgz";
+      sha512 = "Ubldcmxp5np52/ENotGxlLe6aGMvmF4R8S6tZjsP6Knsaxd/xp3Zrh50cG93lR6nPXyUFwzN3ZSOQI0wRJNdGg==";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "JavaScript library for DOM operations";
+      homepage = https://jquery.com/;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "jquery-mousewheel-^3.1.13" = nodeEnv.buildNodePackage {
+    name = "jquery-mousewheel";
+    packageName = "jquery-mousewheel";
+    version = "3.1.13";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/jquery-mousewheel/-/jquery-mousewheel-3.1.13.tgz";
+      sha1 = "06f0335f16e353a695e7206bf50503cb523a6ee5";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "A jQuery plugin that adds cross-browser mouse wheel support.";
+      homepage = https://github.com/jquery/jquery-mousewheel;
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "jquery-ui-^1.12.1" = nodeEnv.buildNodePackage {
+    name = "jquery-ui";
+    packageName = "jquery-ui";
+    version = "1.12.1";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/jquery-ui/-/jquery-ui-1.12.1.tgz";
+      sha1 = "bcb4045c8dd0539c134bc1488cdd3e768a7a9e51";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "A curated set of user interface interactions, effects, widgets, and themes built on top of the jQuery JavaScript Library.";
+      homepage = http://jqueryui.com/;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "js-cookie-^2.1.3" = nodeEnv.buildNodePackage {
+    name = "js-cookie";
+    packageName = "js-cookie";
+    version = "2.2.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/js-cookie/-/js-cookie-2.2.0.tgz";
+      sha1 = "1b2c279a6eece380a12168b92485265b35b1effb";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "A simple, lightweight JavaScript API for handling cookies";
+      homepage = "https://github.com/js-cookie/js-cookie#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "js-sequence-diagrams-^1000000.0.6" = nodeEnv.buildNodePackage {
+    name = "js-sequence-diagrams";
+    packageName = "js-sequence-diagrams";
+    version = "1000000.0.6";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/js-sequence-diagrams/-/js-sequence-diagrams-1000000.0.6.tgz";
+      sha1 = "e95db01420479c5ccbc12046af1da42fde649e5c";
+    };
+    dependencies = [
+      sources."eve-git://github.com/adobe-webplatform/eve.git#eef80ed"
+      sources."raphael-2.1.4"
+      sources."underscore-1.4.4"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Fucks NPM and draws simple SVG sequence diagrams from textual representation of the diagram";
+      homepage = "https://github.com/Moeditor/js-sequence-diagrams#readme";
+      license = "BSD-2-Clause";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "js-url-^2.3.0" = nodeEnv.buildNodePackage {
+    name = "js-url";
+    packageName = "js-url";
+    version = "2.3.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/js-url/-/js-url-2.3.0.tgz";
+      sha1 = "e0c02b622e89710749399f440d49056e72f70078";
+    };
+    dependencies = [
+      sources."ajv-5.5.2"
+      sources."ansi-regex-2.1.1"
+      sources."ansi-styles-2.2.1"
+      sources."asn1-0.2.4"
+      sources."assert-plus-1.0.0"
+      sources."async-1.0.0"
+      sources."asynckit-0.4.0"
+      sources."aws-sign2-0.7.0"
+      sources."aws4-1.7.0"
+      sources."balanced-match-1.0.0"
+      sources."bcrypt-pbkdf-1.0.2"
+      sources."brace-expansion-1.1.11"
+      sources."buffer-from-1.1.1"
+      sources."caseless-0.12.0"
+      sources."chalk-1.1.3"
+      sources."cli-1.0.1"
+      sources."co-4.6.0"
+      sources."colors-1.0.3"
+      sources."combined-stream-1.0.6"
+      sources."commander-2.16.0"
+      sources."concat-map-0.0.1"
+      sources."concat-stream-1.6.2"
+      sources."console-browserify-1.1.0"
+      sources."core-util-is-1.0.2"
+      sources."cycle-1.0.3"
+      sources."dashdash-1.14.1"
+      sources."date-now-0.1.4"
+      sources."debug-2.6.9"
+      sources."delayed-stream-1.0.0"
+      (sources."dom-serializer-0.1.0" // {
+        dependencies = [
+          sources."domelementtype-1.1.3"
+          sources."entities-1.1.1"
+        ];
+      })
+      sources."domelementtype-1.3.0"
+      sources."domhandler-2.3.0"
+      sources."domutils-1.5.1"
+      sources."duplexer-0.1.1"
+      sources."ecc-jsbn-0.1.2"
+      sources."entities-1.0.0"
+      sources."es6-promise-4.2.4"
+      sources."escape-string-regexp-1.0.5"
+      sources."eventemitter2-0.4.14"
+      sources."exit-0.1.2"
+      sources."extend-3.0.2"
+      sources."extract-zip-1.6.7"
+      sources."extsprintf-1.3.0"
+      sources."eyes-0.1.8"
+      sources."fast-deep-equal-1.1.0"
+      sources."fast-json-stable-stringify-2.0.0"
+      sources."fd-slicer-1.0.1"
+      sources."figures-1.7.0"
+      sources."forever-agent-0.6.1"
+      sources."form-data-2.3.2"
+      sources."fs-extra-1.0.0"
+      sources."fs.realpath-1.0.0"
+      sources."getpass-0.1.7"
+      sources."glob-7.1.2"
+      sources."graceful-fs-4.1.11"
+      sources."grunt-contrib-jshint-1.1.0"
+      sources."grunt-contrib-qunit-2.0.0"
+      sources."grunt-contrib-uglify-3.4.0"
+      sources."grunt-lib-phantomjs-1.1.0"
+      sources."gzip-size-3.0.0"
+      sources."har-schema-2.0.0"
+      sources."har-validator-5.0.3"
+      sources."has-ansi-2.0.0"
+      sources."hasha-2.2.0"
+      sources."hooker-0.2.3"
+      (sources."htmlparser2-3.8.3" // {
+        dependencies = [
+          sources."isarray-0.0.1"
+          sources."readable-stream-1.1.14"
+          sources."string_decoder-0.10.31"
+        ];
+      })
+      sources."http-signature-1.2.0"
+      sources."inflight-1.0.6"
+      sources."inherits-2.0.3"
+      sources."is-stream-1.1.0"
+      sources."is-typedarray-1.0.0"
+      sources."isarray-1.0.0"
+      sources."isexe-2.0.0"
+      sources."isstream-0.1.2"
+      sources."jsbn-0.1.1"
+      sources."jshint-2.9.6"
+      sources."json-schema-0.2.3"
+      sources."json-schema-traverse-0.3.1"
+      sources."json-stringify-safe-5.0.1"
+      sources."jsonfile-2.4.0"
+      sources."jsprim-1.4.1"
+      sources."kew-0.7.0"
+      sources."klaw-1.3.1"
+      sources."lodash-4.17.10"
+      sources."maxmin-2.1.0"
+      sources."mime-db-1.35.0"
+      sources."mime-types-2.1.19"
+      sources."minimatch-3.0.4"
+      sources."minimist-0.0.8"
+      sources."mkdirp-0.5.1"
+      sources."ms-2.0.0"
+      sources."number-is-nan-1.0.1"
+      sources."oauth-sign-0.8.2"
+      sources."object-assign-4.1.1"
+      sources."once-1.4.0"
+      sources."package-1.0.1"
+      sources."path-is-absolute-1.0.1"
+      sources."pend-1.2.0"
+      sources."performance-now-2.1.0"
+      sources."phantom-4.0.12"
+      sources."phantomjs-prebuilt-2.1.16"
+      sources."pinkie-2.0.4"
+      sources."pinkie-promise-2.0.1"
+      sources."pretty-bytes-3.0.1"
+      sources."process-nextick-args-2.0.0"
+      sources."progress-1.1.8"
+      sources."punycode-1.4.1"
+      sources."qs-6.5.2"
+      sources."readable-stream-2.3.6"
+      sources."request-2.87.0"
+      sources."request-progress-2.0.1"
+      sources."rimraf-2.6.2"
+      sources."safe-buffer-5.1.2"
+      sources."safer-buffer-2.1.2"
+      sources."semver-5.5.0"
+      sources."shelljs-0.3.0"
+      sources."source-map-0.6.1"
+      sources."split-1.0.1"
+      sources."sshpk-1.14.2"
+      sources."stack-trace-0.0.10"
+      sources."string_decoder-1.1.1"
+      sources."strip-ansi-3.0.1"
+      sources."strip-json-comments-1.0.4"
+      sources."supports-color-2.0.0"
+      sources."temporary-0.0.8"
+      sources."throttleit-1.0.0"
+      sources."through-2.3.8"
+      sources."tough-cookie-2.3.4"
+      sources."tunnel-agent-0.6.0"
+      sources."tweetnacl-0.14.5"
+      sources."typedarray-0.0.6"
+      sources."uglify-js-3.4.6"
+      sources."unicode-5.2.0-0.7.5"
+      sources."uri-path-1.0.0"
+      sources."util-deprecate-1.0.2"
+      sources."uuid-3.3.2"
+      sources."verror-1.10.0"
+      sources."which-1.3.1"
+      sources."winston-2.4.3"
+      sources."wrappy-1.0.2"
+      sources."yauzl-2.4.1"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "A simple, lightweight url parser for JavaScript (~1.7 Kb minified, ~0.7Kb gzipped).";
+      homepage = https://github.com/WillZWL/;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "js-yaml-^3.7.0" = nodeEnv.buildNodePackage {
+    name = "js-yaml";
+    packageName = "js-yaml";
+    version = "3.12.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/js-yaml/-/js-yaml-3.12.0.tgz";
+      sha512 = "PIt2cnwmPfL4hKNwqeiuz4bKfnzHTBv6HyVgjahA6mPLwPDzjDWrplJBMjHUFxku/N3FlmrbyPclad+I+4mJ3A==";
+    };
+    dependencies = [
+      sources."argparse-1.0.10"
+      sources."esprima-4.0.1"
+      sources."sprintf-js-1.0.3"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "YAML 1.2 parser and serializer";
+      homepage = https://github.com/nodeca/js-yaml;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "jsdom-nogyp-^0.8.3" = nodeEnv.buildNodePackage {
+    name = "jsdom-nogyp";
+    packageName = "jsdom-nogyp";
+    version = "0.8.3";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/jsdom-nogyp/-/jsdom-nogyp-0.8.3.tgz";
+      sha1 = "924b3f03cfe487dfcdf6375e6324252ceb80d0cc";
+    };
+    dependencies = [
+      sources."ajv-5.5.2"
+      sources."asn1-0.2.4"
+      sources."assert-plus-1.0.0"
+      sources."asynckit-0.4.0"
+      sources."aws-sign2-0.7.0"
+      sources."aws4-1.7.0"
+      sources."bcrypt-pbkdf-1.0.2"
+      sources."caseless-0.12.0"
+      sources."co-4.6.0"
+      sources."combined-stream-1.0.6"
+      sources."core-util-is-1.0.2"
+      sources."cssom-0.2.5"
+      (sources."cssstyle-0.2.37" // {
+        dependencies = [
+          sources."cssom-0.3.4"
+        ];
+      })
+      sources."dashdash-1.14.1"
+      sources."delayed-stream-1.0.0"
+      (sources."dom-serializer-0.1.0" // {
+        dependencies = [
+          sources."domelementtype-1.1.3"
+        ];
+      })
+      sources."domelementtype-1.3.0"
+      sources."domhandler-2.4.2"
+      sources."domutils-1.7.0"
+      sources."ecc-jsbn-0.1.2"
+      sources."entities-1.1.1"
+      sources."extend-3.0.2"
+      sources."extsprintf-1.3.0"
+      sources."fast-deep-equal-1.1.0"
+      sources."fast-json-stable-stringify-2.0.0"
+      sources."forever-agent-0.6.1"
+      sources."form-data-2.3.2"
+      sources."getpass-0.1.7"
+      sources."har-schema-2.0.0"
+      sources."har-validator-5.0.3"
+      sources."htmlparser2-3.9.2"
+      sources."http-signature-1.2.0"
+      sources."inherits-2.0.3"
+      sources."is-typedarray-1.0.0"
+      sources."isarray-1.0.0"
+      sources."isstream-0.1.2"
+      sources."jsbn-0.1.1"
+      sources."json-schema-0.2.3"
+      sources."json-schema-traverse-0.3.1"
+      sources."json-stringify-safe-5.0.1"
+      sources."jsprim-1.4.1"
+      sources."mime-db-1.35.0"
+      sources."mime-types-2.1.19"
+      sources."nwmatcher-1.3.9"
+      sources."oauth-sign-0.8.2"
+      sources."performance-now-2.1.0"
+      sources."process-nextick-args-2.0.0"
+      sources."punycode-1.4.1"
+      sources."qs-6.5.2"
+      sources."readable-stream-2.3.6"
+      sources."request-2.87.0"
+      sources."safe-buffer-5.1.2"
+      sources."safer-buffer-2.1.2"
+      sources."sshpk-1.14.2"
+      sources."string_decoder-1.1.1"
+      sources."tough-cookie-2.3.4"
+      sources."tunnel-agent-0.6.0"
+      sources."tweetnacl-0.14.5"
+      sources."util-deprecate-1.0.2"
+      sources."uuid-3.3.2"
+      sources."verror-1.10.0"
+      sources."xmlhttprequest-1.8.0"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "A JavaScript implementation of the W3C DOM, forked from jsdom, remove dependencies to contextify and node-gyp";
+      license = {
+        type = "MIT";
+        url = "http://github.com/tmpvar/jsdom/blob/master/LICENSE.txt";
+      };
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "keymaster-^1.6.2" = nodeEnv.buildNodePackage {
+    name = "keymaster";
+    packageName = "keymaster";
+    version = "1.6.2";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/keymaster/-/keymaster-1.6.2.tgz";
+      sha1 = "e1ae54d0ea9488f9f60b66b668f02e9a1946c6eb";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "library for defining and dispatching keyboard shortcuts";
+      homepage = https://github.com/madrobby/keymaster;
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "list.js-^1.5.0" = nodeEnv.buildNodePackage {
+    name = "list.js";
+    packageName = "list.js";
+    version = "1.5.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/list.js/-/list.js-1.5.0.tgz";
+      sha1 = "a4cbfc8281ddefc02fdb2d30c8748bfae25fbcda";
+    };
+    dependencies = [
+      sources."string-natural-compare-2.0.2"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "The perfect library for lists. Supports search, sort, filters and flexibility. Built to be invisible and work on existing HTML";
+      homepage = http://listjs.com/;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "lodash-^4.17.4" = nodeEnv.buildNodePackage {
+    name = "lodash";
+    packageName = "lodash";
+    version = "4.17.10";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz";
+      sha512 = "UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Lodash modular utilities.";
+      homepage = https://lodash.com/;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "lz-string-1.4.4" = nodeEnv.buildNodePackage {
+    name = "lz-string";
+    packageName = "lz-string";
+    version = "1.4.4";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/lz-string/-/lz-string-1.4.4.tgz";
+      sha1 = "c0d8eaf36059f705796e1e344811cf4c498d3a26";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "LZ-based compression algorithm";
+      homepage = http://pieroxy.net/blog/pages/lz-string/index.html;
+      license = "WTFPL";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "markdown-it-^8.2.2" = nodeEnv.buildNodePackage {
+    name = "markdown-it";
+    packageName = "markdown-it";
+    version = "8.4.2";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/markdown-it/-/markdown-it-8.4.2.tgz";
+      sha512 = "GcRz3AWTqSUphY3vsUqQSFMbgR38a4Lh3GWlHRh/7MRwz8mcu9n2IO7HOh+bXHrR9kOPDl5RNCaEsrneb+xhHQ==";
+    };
+    dependencies = [
+      sources."argparse-1.0.10"
+      sources."entities-1.1.1"
+      sources."linkify-it-2.0.3"
+      sources."mdurl-1.0.1"
+      sources."sprintf-js-1.0.3"
+      sources."uc.micro-1.0.5"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Markdown-it - modern pluggable markdown parser.";
+      homepage = "https://github.com/markdown-it/markdown-it#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "markdown-it-abbr-^1.0.4" = nodeEnv.buildNodePackage {
+    name = "markdown-it-abbr";
+    packageName = "markdown-it-abbr";
+    version = "1.0.4";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/markdown-it-abbr/-/markdown-it-abbr-1.0.4.tgz";
+      sha1 = "d66b5364521cbb3dd8aa59dadfba2fb6865c8fd8";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "<abbr> tag for markdown-it markdown parser.";
+      homepage = https://github.com/markdown-it/markdown-it-abbr;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "markdown-it-container-^2.0.0" = nodeEnv.buildNodePackage {
+    name = "markdown-it-container";
+    packageName = "markdown-it-container";
+    version = "2.0.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/markdown-it-container/-/markdown-it-container-2.0.0.tgz";
+      sha1 = "0019b43fd02eefece2f1960a2895fba81a404695";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Plugin to create block-level custom containers for markdown-it markdown parser";
+      homepage = "https://github.com/markdown-it/markdown-it-container#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "markdown-it-deflist-^2.0.1" = nodeEnv.buildNodePackage {
+    name = "markdown-it-deflist";
+    packageName = "markdown-it-deflist";
+    version = "2.0.3";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/markdown-it-deflist/-/markdown-it-deflist-2.0.3.tgz";
+      sha512 = "/BNZ8ksW42bflm1qQLnRI09oqU2847Z7MVavrR0MORyKLtiUYOMpwtlAfMSZAQU9UCvaUZMpgVAqoS3vpToJxw==";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "<dl> tag for markdown-it markdown parser.";
+      homepage = https://github.com/markdown-it/markdown-it-deflist;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "markdown-it-emoji-^1.3.0" = nodeEnv.buildNodePackage {
+    name = "markdown-it-emoji";
+    packageName = "markdown-it-emoji";
+    version = "1.4.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/markdown-it-emoji/-/markdown-it-emoji-1.4.0.tgz";
+      sha1 = "9bee0e9a990a963ba96df6980c4fddb05dfb4dcc";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Emoji plugin for markdown-it markdown parser.";
+      homepage = https://github.com/markdown-it/markdown-it-emoji;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "markdown-it-footnote-^3.0.1" = nodeEnv.buildNodePackage {
+    name = "markdown-it-footnote";
+    packageName = "markdown-it-footnote";
+    version = "3.0.1";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/markdown-it-footnote/-/markdown-it-footnote-3.0.1.tgz";
+      sha1 = "7f3730747cacc86e2fe0bf8a17a710f34791517a";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Footnotes for markdown-it markdown parser.";
+      homepage = "https://github.com/markdown-it/markdown-it-footnote#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "markdown-it-imsize-^2.0.1" = nodeEnv.buildNodePackage {
+    name = "markdown-it-imsize";
+    packageName = "markdown-it-imsize";
+    version = "2.0.1";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/markdown-it-imsize/-/markdown-it-imsize-2.0.1.tgz";
+      sha1 = "cca0427905d05338a247cb9ca9d968c5cddd5170";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Markdown-it plugin to specify image size";
+      homepage = https://github.com/tatsy/markdown-it-imsize;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "markdown-it-ins-^2.0.0" = nodeEnv.buildNodePackage {
+    name = "markdown-it-ins";
+    packageName = "markdown-it-ins";
+    version = "2.0.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/markdown-it-ins/-/markdown-it-ins-2.0.0.tgz";
+      sha1 = "a5aa6a30f1e2f71e9497567cfdff40f1fde67483";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "<ins> tag for markdown-it markdown parser.";
+      homepage = https://github.com/markdown-it/markdown-it-ins;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "markdown-it-mark-^2.0.0" = nodeEnv.buildNodePackage {
+    name = "markdown-it-mark";
+    packageName = "markdown-it-mark";
+    version = "2.0.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/markdown-it-mark/-/markdown-it-mark-2.0.0.tgz";
+      sha1 = "46a1aa947105aed8188978e0a016179e404f42c7";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "<mark> tag for markdown-it markdown parser.";
+      homepage = https://github.com/markdown-it/markdown-it-mark;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "markdown-it-mathjax-^2.0.0" = nodeEnv.buildNodePackage {
+    name = "markdown-it-mathjax";
+    packageName = "markdown-it-mathjax";
+    version = "2.0.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/markdown-it-mathjax/-/markdown-it-mathjax-2.0.0.tgz";
+      sha1 = "ae2b4f4c5c719a03f9e475c664f7b2685231d9e9";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "[![Build Status](https://img.shields.io/travis/classeur/markdown-it-mathjax/master.svg?style=flat)](https://travis-ci.org/classeur/markdown-it-mathjax) [![NPM version](https://img.shields.io/npm/v/markdown-it-mathjax.svg?style=flat)](https://www.npmjs.org";
+      homepage = "https://github.com/classeur/markdown-it-mathjax#readme";
+      license = "ISC";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "markdown-it-regexp-^0.4.0" = nodeEnv.buildNodePackage {
+    name = "markdown-it-regexp";
+    packageName = "markdown-it-regexp";
+    version = "0.4.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/markdown-it-regexp/-/markdown-it-regexp-0.4.0.tgz";
+      sha1 = "d64d713eecec55ce4cfdeb321750ecc099e2c2dc";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "plugin that makes regexp replacement simple";
+      homepage = https://github.com/rlidwka/markdown-it-regexp;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "markdown-it-sub-^1.0.0" = nodeEnv.buildNodePackage {
+    name = "markdown-it-sub";
+    packageName = "markdown-it-sub";
+    version = "1.0.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/markdown-it-sub/-/markdown-it-sub-1.0.0.tgz";
+      sha1 = "375fd6026eae7ddcb012497f6411195ea1e3afe8";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "<sub> tag for markdown-it markdown parser.";
+      homepage = https://github.com/markdown-it/markdown-it-sub;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "markdown-it-sup-^1.0.0" = nodeEnv.buildNodePackage {
+    name = "markdown-it-sup";
+    packageName = "markdown-it-sup";
+    version = "1.0.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/markdown-it-sup/-/markdown-it-sup-1.0.0.tgz";
+      sha1 = "cb9c9ff91a5255ac08f3fd3d63286e15df0a1fc3";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "<sup> tag for markdown-it markdown parser.";
+      homepage = https://github.com/markdown-it/markdown-it-sup;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "markdown-pdf-^8.0.0" = nodeEnv.buildNodePackage {
+    name = "markdown-pdf";
+    packageName = "markdown-pdf";
+    version = "8.1.1";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/markdown-pdf/-/markdown-pdf-8.1.1.tgz";
+      sha512 = "lpRyiNptdwArH6bG6Y8X13G5Qr/usTTDXxTp7zjhwxJ+cQO7Z6A1T265ZiN6PVDLzRNxxtcquQCIOpTC0U1NFg==";
+    };
+    dependencies = [
+      sources."ajv-5.5.2"
+      sources."argparse-0.1.16"
+      sources."asn1-0.2.4"
+      sources."assert-plus-1.0.0"
+      sources."async-1.5.2"
+      sources."asynckit-0.4.0"
+      sources."autolinker-0.15.3"
+      sources."aws-sign2-0.7.0"
+      sources."aws4-1.7.0"
+      sources."bcrypt-pbkdf-1.0.2"
+      sources."buffer-from-1.1.1"
+      sources."caseless-0.12.0"
+      sources."co-4.6.0"
+      sources."combined-stream-1.0.6"
+      sources."commander-2.16.0"
+      sources."concat-stream-1.6.2"
+      sources."core-util-is-1.0.2"
+      sources."dashdash-1.14.1"
+      sources."debug-2.6.9"
+      sources."delayed-stream-1.0.0"
+      sources."duplexer-0.1.1"
+      sources."ecc-jsbn-0.1.2"
+      sources."es6-promise-4.2.4"
+      sources."extend-3.0.2"
+      sources."extract-zip-1.6.7"
+      sources."extsprintf-1.3.0"
+      sources."fast-deep-equal-1.1.0"
+      sources."fast-json-stable-stringify-2.0.0"
+      sources."fd-slicer-1.0.1"
+      sources."forever-agent-0.6.1"
+      sources."form-data-2.3.2"
+      sources."fs-extra-1.0.0"
+      sources."getpass-0.1.7"
+      sources."graceful-fs-4.1.11"
+      sources."har-schema-2.0.0"
+      sources."har-validator-5.0.3"
+      sources."hasha-2.2.0"
+      sources."highlight.js-9.12.0"
+      sources."http-signature-1.2.0"
+      sources."inherits-2.0.3"
+      sources."is-stream-1.1.0"
+      sources."is-typedarray-1.0.0"
+      sources."isarray-1.0.0"
+      sources."isexe-2.0.0"
+      sources."isstream-0.1.2"
+      sources."jsbn-0.1.1"
+      sources."json-schema-0.2.3"
+      sources."json-schema-traverse-0.3.1"
+      sources."json-stringify-safe-5.0.1"
+      sources."jsonfile-2.4.0"
+      sources."jsprim-1.4.1"
+      sources."kew-0.7.0"
+      sources."klaw-1.3.1"
+      sources."mime-db-1.35.0"
+      sources."mime-types-2.1.19"
+      sources."minimist-0.0.8"
+      sources."mkdirp-0.5.1"
+      sources."ms-2.0.0"
+      sources."oauth-sign-0.8.2"
+      sources."os-tmpdir-1.0.2"
+      sources."pend-1.2.0"
+      sources."performance-now-2.1.0"
+      sources."phantomjs-prebuilt-2.1.16"
+      sources."pinkie-2.0.4"
+      sources."pinkie-promise-2.0.1"
+      sources."process-nextick-args-2.0.0"
+      sources."progress-1.1.8"
+      sources."punycode-1.4.1"
+      sources."qs-6.5.2"
+      sources."readable-stream-2.3.6"
+      sources."remarkable-1.7.1"
+      sources."request-2.87.0"
+      sources."request-progress-2.0.1"
+      sources."safe-buffer-5.1.2"
+      sources."safer-buffer-2.1.2"
+      sources."series-stream-1.0.1"
+      sources."sshpk-1.14.2"
+      sources."stream-from-to-1.4.3"
+      sources."string_decoder-1.1.1"
+      sources."throttleit-1.0.0"
+      sources."through2-2.0.3"
+      sources."tmp-0.0.33"
+      sources."tough-cookie-2.3.4"
+      sources."tunnel-agent-0.6.0"
+      sources."tweetnacl-0.14.5"
+      sources."typedarray-0.0.6"
+      sources."underscore-1.7.0"
+      sources."underscore.string-2.4.0"
+      sources."util-deprecate-1.0.2"
+      sources."uuid-3.3.2"
+      sources."verror-1.10.0"
+      sources."which-1.3.1"
+      sources."xtend-4.0.1"
+      sources."yauzl-2.4.1"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Markdown to PDF converter";
+      homepage = https://github.com/alanshaw/markdown-pdf;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "mathjax-~2.7.0" = nodeEnv.buildNodePackage {
+    name = "mathjax";
+    packageName = "mathjax";
+    version = "2.7.5";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/mathjax/-/mathjax-2.7.5.tgz";
+      sha512 = "OzsJNitEHAJB3y4IIlPCAvS0yoXwYjlo2Y4kmm9KQzyIBZt2d8yKRalby3uTRNN4fZQiGL2iMXjpdP1u2Rq2DQ==";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Beautiful math in all browsers. MathJax is an open-source JavaScript display engine for LaTeX, MathML, and AsciiMath notation that works in all browsers.";
+      homepage = "https://github.com/mathjax/MathJax#readme";
+      license = "Apache-2.0";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "mermaid-~7.1.0" = nodeEnv.buildNodePackage {
+    name = "mermaid";
+    packageName = "mermaid";
+    version = "7.1.2";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/mermaid/-/mermaid-7.1.2.tgz";
+      sha512 = "bDLu3fQuf3/R0fNkNzB0GTaF7+6SxnZpfTs9DVQF1ougsuP23MBzvEIGfL0ML8zeyg7+J2D+0AaoLVhskW5ulw==";
+    };
+    dependencies = [
+      sources."d3-3.5.17"
+      sources."dagre-d3-renderer-0.4.26"
+      sources."dagre-layout-0.8.8"
+      sources."graphlib-2.1.5"
+      sources."graphlibrary-2.2.0"
+      sources."he-1.1.1"
+      sources."lodash-4.17.10"
+      sources."moment-2.22.2"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Markdownish syntax for generating flowcharts, sequence diagrams, class diagrams, gantt charts and git graphs.";
+      homepage = "https://github.com/knsv/mermaid#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "mattermost-^3.4.0" = nodeEnv.buildNodePackage {
+    name = "mattermost";
+    packageName = "mattermost";
+    version = "3.4.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/mattermost/-/mattermost-3.4.0.tgz";
+      sha1 = "7e4958e1bc96c7da7bc5f179dd2c6ae5035a8857";
+    };
+    dependencies = [
+      sources."async-1.5.2"
+      sources."combined-stream-1.0.6"
+      sources."component-emitter-1.2.1"
+      sources."cookiejar-2.0.6"
+      sources."core-util-is-1.0.2"
+      sources."debug-2.6.9"
+      sources."delayed-stream-1.0.0"
+      sources."extend-3.0.0"
+      sources."form-data-1.0.0-rc3"
+      sources."formidable-1.0.17"
+      sources."inherits-2.0.3"
+      sources."isarray-0.0.1"
+      sources."methods-1.1.2"
+      sources."mime-1.3.4"
+      sources."mime-db-1.35.0"
+      sources."mime-types-2.1.19"
+      sources."ms-2.0.0"
+      sources."qs-2.3.3"
+      sources."readable-stream-1.0.27-1"
+      sources."reduce-component-1.0.1"
+      sources."string_decoder-0.10.31"
+      sources."superagent-1.8.3"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Javascript library for interacting with the Mattermost API";
+      homepage = https://www.mattermost.org/;
+      license = "Apache-2.0";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "meta-marked-^0.4.2" = nodeEnv.buildNodePackage {
+    name = "meta-marked";
+    packageName = "meta-marked";
+    version = "0.4.2";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/meta-marked/-/meta-marked-0.4.2.tgz";
+      sha1 = "4a1fae344f53d7040aacabb723e2f432a37455f8";
+    };
+    dependencies = [
+      sources."argparse-1.0.10"
+      sources."esprima-2.7.3"
+      sources."js-yaml-3.5.5"
+      sources."marked-0.3.19"
+      sources."sprintf-js-1.0.3"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "The 'marked' markdown processor with a simple metadata system.";
+      homepage = "https://github.com/j201/meta-marked#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "method-override-^2.3.7" = nodeEnv.buildNodePackage {
+    name = "method-override";
+    packageName = "method-override";
+    version = "2.3.10";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/method-override/-/method-override-2.3.10.tgz";
+      sha1 = "e3daf8d5dee10dd2dce7d4ae88d62bbee77476b4";
+    };
+    dependencies = [
+      sources."debug-2.6.9"
+      sources."methods-1.1.2"
+      sources."ms-2.0.0"
+      sources."parseurl-1.3.2"
+      sources."vary-1.1.2"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Override HTTP verbs";
+      homepage = "https://github.com/expressjs/method-override#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "minimist-^1.2.0" = nodeEnv.buildNodePackage {
+    name = "minimist";
+    packageName = "minimist";
+    version = "1.2.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz";
+      sha1 = "a35008b20f41383eec1fb914f4cd5df79a264284";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "parse argument options";
+      homepage = https://github.com/substack/minimist;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "minio-^6.0.0" = nodeEnv.buildNodePackage {
+    name = "minio";
+    packageName = "minio";
+    version = "6.0.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/minio/-/minio-6.0.0.tgz";
+      sha1 = "7e514d38eaacf2264556b232f1c2c063cc6ca7ba";
+    };
+    dependencies = [
+      sources."async-1.5.2"
+      sources."block-stream2-1.1.0"
+      sources."buffer-from-1.1.1"
+      sources."concat-stream-1.6.2"
+      sources."core-util-is-1.0.2"
+      sources."defined-1.0.0"
+      sources."es6-error-2.1.1"
+      sources."inherits-2.0.3"
+      sources."isarray-1.0.0"
+      sources."json-stream-1.0.0"
+      sources."lodash-4.17.10"
+      sources."mime-db-1.35.0"
+      sources."mime-types-2.1.19"
+      sources."minimist-0.0.8"
+      sources."mkdirp-0.5.1"
+      sources."process-nextick-args-2.0.0"
+      sources."querystring-0.2.0"
+      sources."readable-stream-2.3.6"
+      sources."safe-buffer-5.1.2"
+      sources."sax-1.2.4"
+      sources."source-map-0.5.7"
+      sources."source-map-support-0.4.18"
+      sources."string_decoder-1.1.1"
+      (sources."through2-0.6.5" // {
+        dependencies = [
+          sources."isarray-0.0.1"
+          sources."readable-stream-1.0.34"
+          sources."string_decoder-0.10.31"
+        ];
+      })
+      sources."typedarray-0.0.6"
+      sources."util-deprecate-1.0.2"
+      sources."uuid-3.3.2"
+      sources."xml-1.0.1"
+      sources."xml2js-0.4.19"
+      sources."xmlbuilder-9.0.7"
+      sources."xtend-4.0.1"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "S3 Compatible Cloud Storage client";
+      homepage = "https://github.com/minio/minio-js#readme";
+      license = "Apache-2.0";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "moment-^2.17.1" = nodeEnv.buildNodePackage {
+    name = "moment";
+    packageName = "moment";
+    version = "2.22.2";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/moment/-/moment-2.22.2.tgz";
+      sha1 = "3c257f9839fc0e93ff53149632239eb90783ff66";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Parse, validate, manipulate, and display dates";
+      homepage = http://momentjs.com/;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "morgan-^1.7.0" = nodeEnv.buildNodePackage {
+    name = "morgan";
+    packageName = "morgan";
+    version = "1.9.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/morgan/-/morgan-1.9.0.tgz";
+      sha1 = "d01fa6c65859b76fcf31b3cb53a3821a311d8051";
+    };
+    dependencies = [
+      sources."basic-auth-2.0.0"
+      sources."debug-2.6.9"
+      sources."depd-1.1.2"
+      sources."ee-first-1.1.1"
+      sources."ms-2.0.0"
+      sources."on-finished-2.3.0"
+      sources."on-headers-1.0.1"
+      sources."safe-buffer-5.1.1"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "HTTP request logger middleware for node.js";
+      homepage = "https://github.com/expressjs/morgan#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "mysql-^2.12.0" = nodeEnv.buildNodePackage {
+    name = "mysql";
+    packageName = "mysql";
+    version = "2.16.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/mysql/-/mysql-2.16.0.tgz";
+      sha512 = "dPbN2LHonQp7D5ja5DJXNbCLe/HRdu+f3v61aguzNRQIrmZLOeRoymBYyeThrR6ug+FqzDL95Gc9maqZUJS+Gw==";
+    };
+    dependencies = [
+      sources."bignumber.js-4.1.0"
+      sources."core-util-is-1.0.2"
+      sources."inherits-2.0.3"
+      sources."isarray-1.0.0"
+      sources."process-nextick-args-2.0.0"
+      sources."readable-stream-2.3.6"
+      sources."safe-buffer-5.1.2"
+      sources."sqlstring-2.3.1"
+      sources."string_decoder-1.1.1"
+      sources."util-deprecate-1.0.2"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "A node.js driver for mysql. It is written in JavaScript, does not require compiling, and is 100% MIT licensed.";
+      homepage = "https://github.com/mysqljs/mysql#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "node-uuid-^1.4.7" = nodeEnv.buildNodePackage {
+    name = "node-uuid";
+    packageName = "node-uuid";
+    version = "1.4.8";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/node-uuid/-/node-uuid-1.4.8.tgz";
+      sha1 = "b040eb0923968afabf8d32fb1f17f1167fdab907";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Rigorous implementation of RFC4122 (v1 and v4) UUIDs.";
+      homepage = https://github.com/broofa/node-uuid;
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "octicons-~4.4.0" = nodeEnv.buildNodePackage {
+    name = "octicons";
+    packageName = "octicons";
+    version = "4.4.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/octicons/-/octicons-4.4.0.tgz";
+      sha1 = "aca3bd32f5dc1d907a8d0de744f78e0c54e19446";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "A scalable set of icons handcrafted with <3 by GitHub.";
+      homepage = https://octicons.github.com/;
+      license = "(OFL-1.1 OR MIT)";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "passport-^0.4.0" = nodeEnv.buildNodePackage {
+    name = "passport";
+    packageName = "passport";
+    version = "0.4.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/passport/-/passport-0.4.0.tgz";
+      sha1 = "c5095691347bd5ad3b5e180238c3914d16f05811";
+    };
+    dependencies = [
+      sources."passport-strategy-1.0.0"
+      sources."pause-0.0.1"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Simple, unobtrusive authentication for Node.js.";
+      homepage = http://passportjs.org/;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "passport-dropbox-oauth2-^1.1.0" = nodeEnv.buildNodePackage {
+    name = "passport-dropbox-oauth2";
+    packageName = "passport-dropbox-oauth2";
+    version = "1.1.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/passport-dropbox-oauth2/-/passport-dropbox-oauth2-1.1.0.tgz";
+      sha1 = "77c737636e4841944dfb82dfc42c3d8ab782c10e";
+    };
+    dependencies = [
+      sources."oauth-0.9.15"
+      sources."passport-oauth-1.0.0"
+      sources."passport-oauth1-1.1.0"
+      sources."passport-oauth2-1.4.0"
+      sources."passport-strategy-1.0.0"
+      sources."pkginfo-0.2.3"
+      sources."uid2-0.0.3"
+      sources."utils-merge-1.0.1"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Dropbox OAuth 2.0 authentication strategy for Passport.";
+      homepage = "https://github.com/florianheinemann/passport-dropbox-oauth2#readme";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "passport-facebook-^2.1.1" = nodeEnv.buildNodePackage {
+    name = "passport-facebook";
+    packageName = "passport-facebook";
+    version = "2.1.1";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/passport-facebook/-/passport-facebook-2.1.1.tgz";
+      sha1 = "c39d0b52ae4d59163245a4e21a7b9b6321303311";
+    };
+    dependencies = [
+      sources."oauth-0.9.15"
+      sources."passport-oauth2-1.4.0"
+      sources."passport-strategy-1.0.0"
+      sources."uid2-0.0.3"
+      sources."utils-merge-1.0.1"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Facebook authentication strategy for Passport.";
+      homepage = "https://github.com/jaredhanson/passport-facebook#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "passport-github-^1.1.0" = nodeEnv.buildNodePackage {
+    name = "passport-github";
+    packageName = "passport-github";
+    version = "1.1.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/passport-github/-/passport-github-1.1.0.tgz";
+      sha1 = "8ce1e3fcd61ad7578eb1df595839e4aea12355d4";
+    };
+    dependencies = [
+      sources."oauth-0.9.15"
+      sources."passport-oauth2-1.4.0"
+      sources."passport-strategy-1.0.0"
+      sources."uid2-0.0.3"
+      sources."utils-merge-1.0.1"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "GitHub authentication strategy for Passport.";
+      homepage = "https://github.com/jaredhanson/passport-github#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "passport-gitlab2-^4.0.0" = nodeEnv.buildNodePackage {
+    name = "passport-gitlab2";
+    packageName = "passport-gitlab2";
+    version = "4.0.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/passport-gitlab2/-/passport-gitlab2-4.0.0.tgz";
+      sha512 = "C/8/L8piHwv57J6fY/MzsEJc8yCkgsyBSzMWxfTfEHRvCaTkD08vJ5b/txydKrWrRPl4MHuZfisFnKlZHmq4yw==";
+    };
+    dependencies = [
+      sources."oauth-0.9.15"
+      sources."passport-oauth2-1.4.0"
+      sources."passport-strategy-1.0.0"
+      sources."uid2-0.0.3"
+      sources."utils-merge-1.0.1"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "GitLab authentication strategy for Passport.";
+      homepage = "https://github.com/fh1ch/passport-gitlab2#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "passport-google-oauth20-^1.0.0" = nodeEnv.buildNodePackage {
+    name = "passport-google-oauth20";
+    packageName = "passport-google-oauth20";
+    version = "1.0.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/passport-google-oauth20/-/passport-google-oauth20-1.0.0.tgz";
+      sha1 = "3b960e8a1d70d1dbe794615c827c68c40392a5d0";
+    };
+    dependencies = [
+      sources."oauth-0.9.15"
+      sources."passport-oauth2-1.4.0"
+      sources."passport-strategy-1.0.0"
+      sources."uid2-0.0.3"
+      sources."utils-merge-1.0.1"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Google (OAuth 2.0) authentication strategy for Passport.";
+      homepage = "https://github.com/jaredhanson/passport-google-oauth2#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "passport-ldapauth-^2.0.0" = nodeEnv.buildNodePackage {
+    name = "passport-ldapauth";
+    packageName = "passport-ldapauth";
+    version = "2.0.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/passport-ldapauth/-/passport-ldapauth-2.0.0.tgz";
+      sha1 = "42dff004417185d0a4d9f776a3eed8d4731fd689";
+    };
+    dependencies = [
+      sources."@types/body-parser-1.17.0"
+      sources."@types/connect-3.4.32"
+      sources."@types/events-1.2.0"
+      sources."@types/express-4.16.0"
+      sources."@types/express-serve-static-core-4.16.0"
+      sources."@types/ldapjs-1.0.3"
+      sources."@types/mime-2.0.0"
+      sources."@types/node-7.0.68"
+      sources."@types/passport-0.3.5"
+      sources."@types/range-parser-1.2.2"
+      sources."@types/serve-static-1.13.2"
+      sources."asn1-0.2.3"
+      sources."assert-plus-1.0.0"
+      sources."backoff-2.5.0"
+      sources."balanced-match-1.0.0"
+      sources."bcryptjs-2.4.3"
+      sources."brace-expansion-1.1.11"
+      sources."bunyan-1.8.12"
+      sources."concat-map-0.0.1"
+      sources."core-util-is-1.0.2"
+      sources."dashdash-1.14.1"
+      sources."dtrace-provider-0.8.7"
+      sources."extsprintf-1.2.0"
+      sources."glob-6.0.4"
+      sources."inflight-1.0.6"
+      sources."inherits-2.0.3"
+      (sources."ldap-filter-0.2.2" // {
+        dependencies = [
+          sources."assert-plus-0.1.5"
+        ];
+      })
+      sources."ldapauth-fork-4.0.2"
+      sources."ldapjs-1.0.2"
+      sources."lru-cache-4.1.3"
+      sources."minimatch-3.0.4"
+      sources."minimist-0.0.8"
+      sources."mkdirp-0.5.1"
+      sources."moment-2.22.2"
+      sources."mv-2.1.1"
+      sources."nan-2.10.0"
+      sources."ncp-2.0.0"
+      sources."once-1.4.0"
+      sources."passport-strategy-1.0.0"
+      sources."path-is-absolute-1.0.1"
+      sources."precond-0.2.3"
+      sources."pseudomap-1.0.2"
+      sources."rimraf-2.4.5"
+      sources."safe-json-stringify-1.2.0"
+      (sources."vasync-1.6.4" // {
+        dependencies = [
+          sources."verror-1.6.0"
+        ];
+      })
+      sources."verror-1.10.0"
+      sources."wrappy-1.0.2"
+      sources."yallist-2.1.2"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "LDAP authentication strategy for Passport";
+      homepage = "https://github.com/vesse/passport-ldapauth#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "passport-local-^1.0.0" = nodeEnv.buildNodePackage {
+    name = "passport-local";
+    packageName = "passport-local";
+    version = "1.0.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/passport-local/-/passport-local-1.0.0.tgz";
+      sha1 = "1fe63268c92e75606626437e3b906662c15ba6ee";
+    };
+    dependencies = [
+      sources."passport-strategy-1.0.0"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Local username and password authentication strategy for Passport.";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "passport-oauth2-^1.4.0" = nodeEnv.buildNodePackage {
+    name = "passport-oauth2";
+    packageName = "passport-oauth2";
+    version = "1.4.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/passport-oauth2/-/passport-oauth2-1.4.0.tgz";
+      sha1 = "f62f81583cbe12609be7ce6f160b9395a27b86ad";
+    };
+    dependencies = [
+      sources."oauth-0.9.15"
+      sources."passport-strategy-1.0.0"
+      sources."uid2-0.0.3"
+      sources."utils-merge-1.0.1"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "OAuth 2.0 authentication strategy for Passport.";
+      homepage = "https://github.com/jaredhanson/passport-oauth2#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "passport-twitter-^1.0.4" = nodeEnv.buildNodePackage {
+    name = "passport-twitter";
+    packageName = "passport-twitter";
+    version = "1.0.4";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/passport-twitter/-/passport-twitter-1.0.4.tgz";
+      sha1 = "01a799e1f760bf2de49f2ba5fba32282f18932d7";
+    };
+    dependencies = [
+      sources."oauth-0.9.15"
+      sources."passport-oauth1-1.1.0"
+      sources."passport-strategy-1.0.0"
+      sources."utils-merge-1.0.1"
+      sources."xmldom-0.1.27"
+      sources."xtraverse-0.1.0"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Twitter authentication strategy for Passport.";
+      homepage = "https://github.com/jaredhanson/passport-twitter#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "passport-saml-^0.31.0" = nodeEnv.buildNodePackage {
+    name = "passport-saml";
+    packageName = "passport-saml";
+    version = "0.31.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/passport-saml/-/passport-saml-0.31.0.tgz";
+      sha1 = "e4d654cab30f018bfd39056efe7bcfa770aab463";
+    };
+    dependencies = [
+      sources."async-2.6.1"
+      sources."ejs-2.6.1"
+      sources."lodash-4.17.10"
+      sources."node-forge-0.7.5"
+      sources."passport-strategy-1.0.0"
+      sources."q-1.5.1"
+      sources."sax-1.2.4"
+      (sources."xml-crypto-0.10.1" // {
+        dependencies = [
+          sources."xmldom-0.1.19"
+        ];
+      })
+      sources."xml-encryption-0.11.2"
+      sources."xml2js-0.4.19"
+      sources."xmlbuilder-9.0.7"
+      sources."xmldom-0.1.27"
+      sources."xpath-0.0.27"
+      sources."xpath.js-1.1.0"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "SAML 2.0 authentication strategy for Passport";
+      homepage = "https://github.com/bergie/passport-saml#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "passport.socketio-^3.7.0" = nodeEnv.buildNodePackage {
+    name = "passport.socketio";
+    packageName = "passport.socketio";
+    version = "3.7.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/passport.socketio/-/passport.socketio-3.7.0.tgz";
+      sha1 = "2ee5fafe9695d4281c8cddd3fe975ecd18e6726e";
+    };
+    dependencies = [
+      sources."xtend-4.0.1"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "access passport.js authenticated user information from socket.io";
+      homepage = "https://github.com/jfromaniello/passport.socketio#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "pdfobject-^2.0.201604172" = nodeEnv.buildNodePackage {
+    name = "pdfobject";
+    packageName = "pdfobject";
+    version = "2.0.201604172";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/pdfobject/-/pdfobject-2.0.201604172.tgz";
+      sha1 = "112edf93b98be121a5e780b06e7f5f78ad31ab3f";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "An open-source standards-friendly JavaScript utility for embedding PDF files into HTML documents";
+      homepage = "https://github.com/pipwerks/PDFObject#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "pg-^6.1.2" = nodeEnv.buildNodePackage {
+    name = "pg";
+    packageName = "pg";
+    version = "6.4.2";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/pg/-/pg-6.4.2.tgz";
+      sha1 = "c364011060eac7a507a2ae063eb857ece910e27f";
+    };
+    dependencies = [
+      sources."buffer-writer-1.0.1"
+      sources."generic-pool-2.4.3"
+      sources."js-string-escape-1.0.1"
+      sources."object-assign-4.1.0"
+      sources."packet-reader-0.3.1"
+      sources."pg-connection-string-0.1.3"
+      sources."pg-int8-1.0.1"
+      sources."pg-pool-1.8.0"
+      sources."pg-types-1.13.0"
+      sources."pgpass-1.0.2"
+      sources."postgres-array-1.0.2"
+      sources."postgres-bytea-1.0.0"
+      sources."postgres-date-1.0.3"
+      sources."postgres-interval-1.1.2"
+      sources."semver-4.3.2"
+      sources."split-1.0.1"
+      sources."through-2.3.8"
+      sources."xtend-4.0.1"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "PostgreSQL client - pure javascript & libpq with the same API";
+      homepage = http://github.com/brianc/node-postgres;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "pg-hstore-^2.3.2" = nodeEnv.buildNodePackage {
+    name = "pg-hstore";
+    packageName = "pg-hstore";
+    version = "2.3.2";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/pg-hstore/-/pg-hstore-2.3.2.tgz";
+      sha1 = "f7ef053e7b9b892ae986af2f7cbe86432dfcf24f";
+    };
+    dependencies = [
+      sources."underscore-1.9.1"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "An module for serializing and deserializing JSON data in to hstore format";
+      homepage = https://github.com/scarney81/pg-hstore;
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "prismjs-^1.6.0" = nodeEnv.buildNodePackage {
+    name = "prismjs";
+    packageName = "prismjs";
+    version = "1.15.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/prismjs/-/prismjs-1.15.0.tgz";
+      sha512 = "Lf2JrFYx8FanHrjoV5oL8YHCclLQgbJcVZR+gikGGMqz6ub5QVWDTM6YIwm3BuPxM/LOV+rKns3LssXNLIf+DA==";
+    };
+    dependencies = [
+      sources."clipboard-2.0.1"
+      sources."delegate-3.2.0"
+      sources."good-listener-1.2.2"
+      sources."select-1.1.2"
+      sources."tiny-emitter-2.0.2"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Lightweight, robust, elegant syntax highlighting. A spin-off project from Dabblet.";
+      homepage = "https://github.com/LeaVerou/prism#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "randomcolor-^0.5.3" = nodeEnv.buildNodePackage {
+    name = "randomcolor";
+    packageName = "randomcolor";
+    version = "0.5.3";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/randomcolor/-/randomcolor-0.5.3.tgz";
+      sha1 = "7f90f2f2a7f6d5a52232161eeaeeaea9ac3b5815";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "A tiny script for generating attractive random colors";
+      homepage = https://randomcolor.llllll.li/;
+      license = "CC0";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "raphael-git+https://github.com/dmitrybaranovskiy/raphael" = nodeEnv.buildNodePackage {
+    name = "raphael";
+    packageName = "raphael";
+    version = "2.2.7";
+    src = fetchgit {
+      url = "https://github.com/dmitrybaranovskiy/raphael";
+      rev = "527c51b7b12f846f9ab0d5ddf14767912b569c7d";
+      sha256 = "a9c2dece0218d3c82ad624fd55d7f81b7696fd0415bc0f52429f2d09497b25d8";
+    };
+    dependencies = [
+      sources."eve-raphael-0.5.0"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "JavaScript Vector Library";
+      homepage = http://dmitrybaranovskiy.github.io/raphael/;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "readline-sync-^1.4.7" = nodeEnv.buildNodePackage {
+    name = "readline-sync";
+    packageName = "readline-sync";
+    version = "1.4.9";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/readline-sync/-/readline-sync-1.4.9.tgz";
+      sha1 = "3eda8e65f23cd2a17e61301b1f0003396af5ecda";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Synchronous Readline for interactively running to have a conversation with the user via a console(TTY).";
+      homepage = https://github.com/anseki/readline-sync;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "request-^2.79.0" = nodeEnv.buildNodePackage {
+    name = "request";
+    packageName = "request";
+    version = "2.87.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/request/-/request-2.87.0.tgz";
+      sha512 = "fcogkm7Az5bsS6Sl0sibkbhcKsnyon/jV1kF3ajGmF0c8HrttdKTPRT9hieOaQHA5HEq6r8OyWOo/o781C1tNw==";
+    };
+    dependencies = [
+      sources."ajv-5.5.2"
+      sources."asn1-0.2.4"
+      sources."assert-plus-1.0.0"
+      sources."asynckit-0.4.0"
+      sources."aws-sign2-0.7.0"
+      sources."aws4-1.7.0"
+      sources."bcrypt-pbkdf-1.0.2"
+      sources."caseless-0.12.0"
+      sources."co-4.6.0"
+      sources."combined-stream-1.0.6"
+      sources."core-util-is-1.0.2"
+      sources."dashdash-1.14.1"
+      sources."delayed-stream-1.0.0"
+      sources."ecc-jsbn-0.1.2"
+      sources."extend-3.0.2"
+      sources."extsprintf-1.3.0"
+      sources."fast-deep-equal-1.1.0"
+      sources."fast-json-stable-stringify-2.0.0"
+      sources."forever-agent-0.6.1"
+      sources."form-data-2.3.2"
+      sources."getpass-0.1.7"
+      sources."har-schema-2.0.0"
+      sources."har-validator-5.0.3"
+      sources."http-signature-1.2.0"
+      sources."is-typedarray-1.0.0"
+      sources."isstream-0.1.2"
+      sources."jsbn-0.1.1"
+      sources."json-schema-0.2.3"
+      sources."json-schema-traverse-0.3.1"
+      sources."json-stringify-safe-5.0.1"
+      sources."jsprim-1.4.1"
+      sources."mime-db-1.35.0"
+      sources."mime-types-2.1.19"
+      sources."oauth-sign-0.8.2"
+      sources."performance-now-2.1.0"
+      sources."punycode-1.4.1"
+      sources."qs-6.5.2"
+      sources."safe-buffer-5.1.2"
+      sources."safer-buffer-2.1.2"
+      sources."sshpk-1.14.2"
+      sources."tough-cookie-2.3.4"
+      sources."tunnel-agent-0.6.0"
+      sources."tweetnacl-0.14.5"
+      sources."uuid-3.3.2"
+      sources."verror-1.10.0"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Simplified HTTP request client.";
+      homepage = "https://github.com/request/request#readme";
+      license = "Apache-2.0";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "reveal.js-~3.6.0" = nodeEnv.buildNodePackage {
+    name = "reveal.js";
+    packageName = "reveal.js";
+    version = "3.6.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/reveal.js/-/reveal.js-3.6.0.tgz";
+      sha512 = "ZhXBWoDiaNySAJgs3XqmkHTmjR3Dkkhyy89VY8PLzXBDwNhP7ZEGtBT1H3xJRCEGOD4ScLJBbU75PRiPLQgWgw==";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "The HTML Presentation Framework";
+      homepage = http://revealjs.com/;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "scrypt-^6.0.3" = nodeEnv.buildNodePackage {
+    name = "scrypt";
+    packageName = "scrypt";
+    version = "6.0.3";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/scrypt/-/scrypt-6.0.3.tgz";
+      sha1 = "04e014a5682b53fa50c2d5cce167d719c06d870d";
+    };
+    dependencies = [
+      sources."nan-2.10.0"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "The scrypt crypto library for NodeJS";
+      homepage = https://github.com/barrysteyn/node-scrypt;
+      license = "zlib";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "select2-^3.5.2-browserify" = nodeEnv.buildNodePackage {
+    name = "select2";
+    packageName = "select2";
+    version = "3.5.2-browserify";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/select2/-/select2-3.5.2-browserify.tgz";
+      sha1 = "dc4dafda38d67a734e8a97a46f0d3529ae05391d";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Browserify-ed version of Select2.";
+      homepage = http://ivaynberg.github.io/select2;
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "sequelize-^3.28.0" = nodeEnv.buildNodePackage {
+    name = "sequelize";
+    packageName = "sequelize";
+    version = "3.33.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/sequelize/-/sequelize-3.33.0.tgz";
+      sha1 = "b0eb12b87223aded10e50a9d78506e0dd42f9208";
+    };
+    dependencies = [
+      sources."@types/geojson-1.0.6"
+      sources."bluebird-3.5.1"
+      sources."debug-2.6.9"
+      sources."depd-1.1.2"
+      sources."dottie-1.1.1"
+      sources."generic-pool-2.4.2"
+      sources."inflection-1.12.0"
+      sources."lodash-4.17.10"
+      sources."moment-2.22.2"
+      sources."moment-timezone-0.5.21"
+      sources."ms-2.0.0"
+      sources."retry-as-promised-2.3.2"
+      sources."semver-5.5.0"
+      sources."shimmer-1.1.0"
+      sources."terraformer-1.0.9"
+      sources."terraformer-wkt-parser-1.2.0"
+      sources."toposort-class-1.0.1"
+      sources."uuid-3.3.2"
+      sources."validator-5.7.0"
+      sources."wkx-0.2.0"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Multi dialect ORM for Node.JS/io.js";
+      homepage = "https://github.com/sequelize/sequelize#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "sequelize-cli-^2.5.1" = nodeEnv.buildNodePackage {
+    name = "sequelize-cli";
+    packageName = "sequelize-cli";
+    version = "2.8.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/sequelize-cli/-/sequelize-cli-2.8.0.tgz";
+      sha1 = "4304cce60e499169603f838dedbab421c9849e74";
+    };
+    dependencies = [
+      sources."abbrev-1.1.1"
+      sources."ansi-gray-0.1.1"
+      sources."ansi-regex-2.1.1"
+      sources."ansi-styles-2.2.1"
+      sources."ansi-wrap-0.1.0"
+      sources."archy-1.0.0"
+      sources."arr-diff-2.0.0"
+      sources."arr-flatten-1.1.0"
+      sources."arr-union-3.1.0"
+      sources."array-differ-1.0.0"
+      sources."array-each-1.0.1"
+      sources."array-slice-1.1.0"
+      sources."array-uniq-1.0.3"
+      sources."array-unique-0.2.1"
+      sources."assign-symbols-1.0.0"
+      sources."atob-2.1.1"
+      sources."balanced-match-1.0.0"
+      (sources."base-0.11.2" // {
+        dependencies = [
+          sources."define-property-1.0.0"
+          sources."isobject-3.0.1"
+        ];
+      })
+      sources."beeper-1.1.1"
+      sources."bluebird-3.5.1"
+      sources."brace-expansion-1.1.11"
+      sources."braces-1.8.5"
+      sources."builtin-modules-1.1.1"
+      (sources."cache-base-1.0.1" // {
+        dependencies = [
+          sources."isobject-3.0.1"
+        ];
+      })
+      sources."camelcase-4.1.0"
+      sources."chalk-1.1.3"
+      (sources."class-utils-0.3.6" // {
+        dependencies = [
+          sources."define-property-0.2.5"
+          (sources."is-accessor-descriptor-0.1.6" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          (sources."is-data-descriptor-0.1.4" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          sources."is-descriptor-0.1.6"
+          sources."isobject-3.0.1"
+          sources."kind-of-5.1.0"
+        ];
+      })
+      sources."cli-color-1.2.0"
+      (sources."cliui-3.2.0" // {
+        dependencies = [
+          sources."string-width-1.0.2"
+        ];
+      })
+      sources."clone-1.0.4"
+      sources."clone-stats-0.0.1"
+      sources."code-point-at-1.1.0"
+      sources."collection-visit-1.0.0"
+      sources."color-support-1.1.3"
+      sources."commander-2.16.0"
+      sources."component-emitter-1.2.1"
+      sources."concat-map-0.0.1"
+      sources."config-chain-1.1.11"
+      sources."copy-descriptor-0.1.1"
+      sources."core-util-is-1.0.2"
+      (sources."cross-spawn-5.1.0" // {
+        dependencies = [
+          sources."lru-cache-4.1.3"
+        ];
+      })
+      sources."d-1.0.0"
+      sources."dateformat-2.2.0"
+      sources."debug-2.6.9"
+      sources."decamelize-1.2.0"
+      sources."decode-uri-component-0.2.0"
+      sources."defaults-1.0.3"
+      (sources."define-property-2.0.2" // {
+        dependencies = [
+          sources."isobject-3.0.1"
+        ];
+      })
+      sources."deprecated-0.0.1"
+      sources."detect-file-0.1.0"
+      sources."duplexer2-0.0.2"
+      (sources."editorconfig-0.13.3" // {
+        dependencies = [
+          sources."lru-cache-3.2.0"
+          sources."semver-5.5.0"
+        ];
+      })
+      sources."end-of-stream-0.1.5"
+      sources."error-ex-1.3.2"
+      sources."es5-ext-0.10.45"
+      sources."es6-iterator-2.0.3"
+      sources."es6-symbol-3.1.1"
+      sources."es6-weak-map-2.0.2"
+      sources."escape-string-regexp-1.0.5"
+      sources."event-emitter-0.3.5"
+      sources."execa-0.7.0"
+      sources."expand-brackets-0.1.5"
+      sources."expand-range-1.8.2"
+      sources."expand-tilde-1.2.2"
+      sources."extend-3.0.2"
+      (sources."extend-shallow-3.0.2" // {
+        dependencies = [
+          sources."is-extendable-1.0.1"
+        ];
+      })
+      sources."extglob-0.3.2"
+      sources."fancy-log-1.3.2"
+      sources."filename-regex-2.0.1"
+      sources."fill-range-2.2.4"
+      sources."find-index-0.1.1"
+      sources."find-up-2.1.0"
+      sources."findup-sync-1.0.0"
+      (sources."fined-1.1.0" // {
+        dependencies = [
+          sources."expand-tilde-2.0.2"
+        ];
+      })
+      sources."first-chunk-stream-1.0.0"
+      sources."flagged-respawn-1.0.0"
+      sources."for-in-1.0.2"
+      sources."for-own-0.1.5"
+      sources."fragment-cache-0.2.1"
+      sources."fs-exists-sync-0.1.0"
+      sources."fs-extra-4.0.3"
+      sources."gaze-0.5.2"
+      sources."get-caller-file-1.0.3"
+      sources."get-stream-3.0.0"
+      sources."get-value-2.0.6"
+      sources."glob-4.5.3"
+      sources."glob-base-0.3.0"
+      sources."glob-parent-2.0.0"
+      (sources."glob-stream-3.1.18" // {
+        dependencies = [
+          sources."isarray-0.0.1"
+          sources."readable-stream-1.0.34"
+          sources."through2-0.6.5"
+        ];
+      })
+      sources."glob-watcher-0.0.6"
+      sources."glob2base-0.0.12"
+      sources."global-modules-0.2.3"
+      sources."global-prefix-0.1.5"
+      (sources."globule-0.1.0" // {
+        dependencies = [
+          sources."glob-3.1.21"
+          sources."graceful-fs-1.2.3"
+          sources."inherits-1.0.2"
+          sources."lodash-1.0.2"
+          sources."minimatch-0.2.14"
+        ];
+      })
+      sources."glogg-1.0.1"
+      sources."graceful-fs-4.1.11"
+      sources."gulp-3.9.1"
+      sources."gulp-help-1.6.1"
+      sources."gulp-util-3.0.8"
+      sources."gulplog-1.0.0"
+      sources."has-ansi-2.0.0"
+      sources."has-gulplog-0.1.0"
+      (sources."has-value-1.0.0" // {
+        dependencies = [
+          sources."isobject-3.0.1"
+        ];
+      })
+      (sources."has-values-1.0.0" // {
+        dependencies = [
+          (sources."is-number-3.0.0" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          sources."kind-of-4.0.0"
+        ];
+      })
+      sources."homedir-polyfill-1.0.1"
+      sources."hosted-git-info-2.7.1"
+      sources."inflight-1.0.6"
+      sources."inherits-2.0.3"
+      sources."ini-1.3.5"
+      sources."interpret-1.1.0"
+      sources."invert-kv-1.0.0"
+      (sources."is-absolute-1.0.0" // {
+        dependencies = [
+          sources."is-windows-1.0.2"
+        ];
+      })
+      (sources."is-accessor-descriptor-1.0.0" // {
+        dependencies = [
+          sources."kind-of-6.0.2"
+        ];
+      })
+      sources."is-arrayish-0.2.1"
+      sources."is-buffer-1.1.6"
+      sources."is-builtin-module-1.0.0"
+      (sources."is-data-descriptor-1.0.0" // {
+        dependencies = [
+          sources."kind-of-6.0.2"
+        ];
+      })
+      (sources."is-descriptor-1.0.2" // {
+        dependencies = [
+          sources."kind-of-6.0.2"
+        ];
+      })
+      sources."is-dotfile-1.0.3"
+      sources."is-equal-shallow-0.1.3"
+      sources."is-extendable-0.1.1"
+      sources."is-extglob-1.0.0"
+      sources."is-fullwidth-code-point-1.0.0"
+      sources."is-glob-2.0.1"
+      sources."is-number-2.1.0"
+      (sources."is-plain-object-2.0.4" // {
+        dependencies = [
+          sources."isobject-3.0.1"
+        ];
+      })
+      sources."is-posix-bracket-0.1.1"
+      sources."is-primitive-2.0.0"
+      sources."is-promise-2.1.0"
+      sources."is-relative-1.0.0"
+      sources."is-stream-1.1.0"
+      sources."is-unc-path-1.0.0"
+      sources."is-utf8-0.2.1"
+      sources."is-windows-0.2.0"
+      sources."isarray-1.0.0"
+      sources."isexe-2.0.0"
+      sources."isobject-2.1.0"
+      sources."js-beautify-1.7.5"
+      sources."jsonfile-4.0.0"
+      sources."kind-of-3.2.2"
+      sources."lcid-1.0.0"
+      (sources."liftoff-2.5.0" // {
+        dependencies = [
+          sources."arr-diff-4.0.0"
+          sources."array-unique-0.3.2"
+          (sources."braces-2.3.2" // {
+            dependencies = [
+              sources."extend-shallow-2.0.1"
+            ];
+          })
+          sources."detect-file-1.0.0"
+          (sources."expand-brackets-2.1.4" // {
+            dependencies = [
+              sources."define-property-0.2.5"
+              sources."extend-shallow-2.0.1"
+            ];
+          })
+          sources."expand-tilde-2.0.2"
+          (sources."extglob-2.0.4" // {
+            dependencies = [
+              sources."define-property-1.0.0"
+              sources."extend-shallow-2.0.1"
+            ];
+          })
+          (sources."fill-range-4.0.0" // {
+            dependencies = [
+              sources."extend-shallow-2.0.1"
+            ];
+          })
+          sources."findup-sync-2.0.0"
+          sources."global-modules-1.0.0"
+          sources."global-prefix-1.0.2"
+          (sources."is-accessor-descriptor-0.1.6" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          (sources."is-data-descriptor-0.1.4" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          (sources."is-descriptor-0.1.6" // {
+            dependencies = [
+              sources."kind-of-5.1.0"
+            ];
+          })
+          sources."is-extglob-2.1.1"
+          sources."is-glob-3.1.0"
+          (sources."is-number-3.0.0" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          sources."is-windows-1.0.2"
+          sources."isobject-3.0.1"
+          sources."kind-of-6.0.2"
+          sources."micromatch-3.1.10"
+          sources."resolve-dir-1.0.1"
+        ];
+      })
+      (sources."load-json-file-2.0.0" // {
+        dependencies = [
+          sources."strip-bom-3.0.0"
+        ];
+      })
+      sources."locate-path-2.0.0"
+      sources."lodash-4.17.10"
+      sources."lodash._basecopy-3.0.1"
+      sources."lodash._basetostring-3.0.1"
+      sources."lodash._basevalues-3.0.0"
+      sources."lodash._getnative-3.9.1"
+      sources."lodash._isiterateecall-3.0.9"
+      sources."lodash._reescape-3.0.0"
+      sources."lodash._reevaluate-3.0.0"
+      sources."lodash._reinterpolate-3.0.0"
+      sources."lodash._root-3.0.1"
+      sources."lodash.escape-3.2.0"
+      sources."lodash.isarguments-3.1.0"
+      sources."lodash.isarray-3.0.4"
+      sources."lodash.keys-3.1.2"
+      sources."lodash.restparam-3.6.1"
+      sources."lodash.template-3.6.2"
+      sources."lodash.templatesettings-3.1.1"
+      sources."lru-cache-2.7.3"
+      sources."lru-queue-0.1.0"
+      (sources."make-iterator-1.0.1" // {
+        dependencies = [
+          sources."kind-of-6.0.2"
+        ];
+      })
+      sources."map-cache-0.2.2"
+      sources."map-visit-1.0.0"
+      sources."math-random-1.0.1"
+      sources."mem-1.1.0"
+      sources."memoizee-0.4.12"
+      sources."micromatch-2.3.11"
+      sources."mimic-fn-1.2.0"
+      sources."minimatch-2.0.10"
+      sources."minimist-1.2.0"
+      (sources."mixin-deep-1.3.1" // {
+        dependencies = [
+          sources."is-extendable-1.0.1"
+        ];
+      })
+      (sources."mkdirp-0.5.1" // {
+        dependencies = [
+          sources."minimist-0.0.8"
+        ];
+      })
+      sources."moment-2.22.2"
+      sources."ms-2.0.0"
+      sources."multipipe-0.1.2"
+      (sources."nanomatch-1.2.13" // {
+        dependencies = [
+          sources."arr-diff-4.0.0"
+          sources."array-unique-0.3.2"
+          sources."is-windows-1.0.2"
+          sources."kind-of-6.0.2"
+        ];
+      })
+      sources."natives-1.1.4"
+      sources."next-tick-1.0.0"
+      sources."nopt-3.0.6"
+      sources."normalize-package-data-2.4.0"
+      sources."normalize-path-2.1.1"
+      sources."npm-run-path-2.0.2"
+      sources."number-is-nan-1.0.1"
+      sources."object-assign-3.0.0"
+      (sources."object-copy-0.1.0" // {
+        dependencies = [
+          sources."define-property-0.2.5"
+          sources."is-accessor-descriptor-0.1.6"
+          sources."is-data-descriptor-0.1.4"
+          (sources."is-descriptor-0.1.6" // {
+            dependencies = [
+              sources."kind-of-5.1.0"
+            ];
+          })
+        ];
+      })
+      (sources."object-visit-1.0.1" // {
+        dependencies = [
+          sources."isobject-3.0.1"
+        ];
+      })
+      (sources."object.defaults-1.1.0" // {
+        dependencies = [
+          sources."for-own-1.0.0"
+          sources."isobject-3.0.1"
+        ];
+      })
+      (sources."object.map-1.0.1" // {
+        dependencies = [
+          sources."for-own-1.0.0"
+        ];
+      })
+      sources."object.omit-2.0.1"
+      (sources."object.pick-1.3.0" // {
+        dependencies = [
+          sources."isobject-3.0.1"
+        ];
+      })
+      sources."once-1.3.3"
+      sources."orchestrator-0.3.8"
+      sources."ordered-read-streams-0.1.0"
+      sources."os-homedir-1.0.2"
+      sources."os-locale-2.1.0"
+      sources."p-finally-1.0.0"
+      sources."p-limit-1.3.0"
+      sources."p-locate-2.0.0"
+      sources."p-try-1.0.0"
+      sources."parse-filepath-1.0.2"
+      sources."parse-glob-3.0.4"
+      sources."parse-json-2.2.0"
+      sources."parse-passwd-1.0.0"
+      sources."pascalcase-0.1.1"
+      sources."path-exists-3.0.0"
+      sources."path-key-2.0.1"
+      sources."path-parse-1.0.5"
+      sources."path-root-0.1.1"
+      sources."path-root-regex-0.1.2"
+      sources."path-type-2.0.0"
+      sources."pify-2.3.0"
+      sources."posix-character-classes-0.1.1"
+      sources."preserve-0.2.0"
+      sources."pretty-hrtime-1.0.3"
+      sources."process-nextick-args-2.0.0"
+      sources."proto-list-1.2.4"
+      sources."pseudomap-1.0.2"
+      (sources."randomatic-3.0.0" // {
+        dependencies = [
+          sources."is-number-4.0.0"
+          sources."kind-of-6.0.2"
+        ];
+      })
+      sources."read-pkg-2.0.0"
+      sources."read-pkg-up-2.0.0"
+      (sources."readable-stream-1.1.14" // {
+        dependencies = [
+          sources."isarray-0.0.1"
+        ];
+      })
+      sources."rechoir-0.6.2"
+      sources."redefine-0.2.1"
+      sources."regex-cache-0.4.4"
+      sources."regex-not-1.0.2"
+      sources."remove-trailing-separator-1.1.0"
+      sources."repeat-element-1.1.2"
+      sources."repeat-string-1.6.1"
+      sources."replace-ext-0.0.1"
+      sources."require-directory-2.1.1"
+      sources."require-main-filename-1.0.1"
+      sources."resolve-1.8.1"
+      sources."resolve-dir-0.1.1"
+      sources."resolve-url-0.2.1"
+      sources."ret-0.1.15"
+      sources."safe-buffer-5.1.2"
+      sources."safe-regex-1.1.0"
+      sources."semver-4.3.6"
+      sources."sequencify-0.0.7"
+      sources."set-blocking-2.0.0"
+      (sources."set-value-2.0.0" // {
+        dependencies = [
+          sources."extend-shallow-2.0.1"
+        ];
+      })
+      sources."shebang-command-1.2.0"
+      sources."shebang-regex-1.0.0"
+      sources."sigmund-1.0.1"
+      sources."signal-exit-3.0.2"
+      (sources."snapdragon-0.8.2" // {
+        dependencies = [
+          sources."define-property-0.2.5"
+          sources."extend-shallow-2.0.1"
+          (sources."is-accessor-descriptor-0.1.6" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          (sources."is-data-descriptor-0.1.4" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          sources."is-descriptor-0.1.6"
+          sources."kind-of-5.1.0"
+        ];
+      })
+      (sources."snapdragon-node-2.1.1" // {
+        dependencies = [
+          sources."define-property-1.0.0"
+          sources."isobject-3.0.1"
+        ];
+      })
+      sources."snapdragon-util-3.0.1"
+      sources."source-map-0.5.7"
+      sources."source-map-resolve-0.5.2"
+      sources."source-map-url-0.4.0"
+      sources."sparkles-1.0.1"
+      sources."spdx-correct-3.0.0"
+      sources."spdx-exceptions-2.1.0"
+      sources."spdx-expression-parse-3.0.0"
+      sources."spdx-license-ids-3.0.0"
+      sources."split-string-3.1.0"
+      (sources."static-extend-0.1.2" // {
+        dependencies = [
+          sources."define-property-0.2.5"
+          (sources."is-accessor-descriptor-0.1.6" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          (sources."is-data-descriptor-0.1.4" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          sources."is-descriptor-0.1.6"
+          sources."kind-of-5.1.0"
+        ];
+      })
+      sources."stream-consume-0.1.1"
+      (sources."string-width-2.1.1" // {
+        dependencies = [
+          sources."ansi-regex-3.0.0"
+          sources."is-fullwidth-code-point-2.0.0"
+          sources."strip-ansi-4.0.0"
+        ];
+      })
+      sources."string_decoder-0.10.31"
+      sources."strip-ansi-3.0.1"
+      sources."strip-bom-1.0.0"
+      sources."strip-eof-1.0.0"
+      sources."supports-color-2.0.0"
+      (sources."through2-2.0.3" // {
+        dependencies = [
+          sources."readable-stream-2.3.6"
+          sources."string_decoder-1.1.1"
+        ];
+      })
+      sources."tildify-1.2.0"
+      sources."time-stamp-1.1.0"
+      sources."timers-ext-0.1.5"
+      sources."to-object-path-0.3.0"
+      sources."to-regex-3.0.2"
+      (sources."to-regex-range-2.1.1" // {
+        dependencies = [
+          sources."is-number-3.0.0"
+        ];
+      })
+      sources."umzug-1.12.0"
+      sources."unc-path-regex-0.1.2"
+      (sources."union-value-1.0.0" // {
+        dependencies = [
+          sources."extend-shallow-2.0.1"
+          sources."set-value-0.4.3"
+        ];
+      })
+      sources."unique-stream-1.0.0"
+      sources."universalify-0.1.2"
+      (sources."unset-value-1.0.0" // {
+        dependencies = [
+          (sources."has-value-0.3.1" // {
+            dependencies = [
+              sources."isobject-2.1.0"
+            ];
+          })
+          sources."has-values-0.1.4"
+          sources."isobject-3.0.1"
+        ];
+      })
+      sources."urix-0.1.0"
+      sources."use-3.1.1"
+      sources."user-home-1.1.1"
+      sources."util-deprecate-1.0.2"
+      sources."v8flags-2.1.1"
+      sources."validate-npm-package-license-3.0.3"
+      sources."vinyl-0.5.3"
+      (sources."vinyl-fs-0.3.14" // {
+        dependencies = [
+          sources."clone-0.2.0"
+          sources."graceful-fs-3.0.11"
+          sources."isarray-0.0.1"
+          sources."readable-stream-1.0.34"
+          sources."through2-0.6.5"
+          sources."vinyl-0.4.6"
+        ];
+      })
+      sources."which-1.3.1"
+      sources."which-module-2.0.0"
+      (sources."wrap-ansi-2.1.0" // {
+        dependencies = [
+          sources."string-width-1.0.2"
+        ];
+      })
+      sources."wrappy-1.0.2"
+      sources."xtend-4.0.1"
+      sources."y18n-3.2.1"
+      sources."yallist-2.1.2"
+      sources."yargs-8.0.2"
+      sources."yargs-parser-7.0.0"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "The Sequelize CLI";
+      homepage = https://github.com/sequelize/cli;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "shortid-2.2.8" = nodeEnv.buildNodePackage {
+    name = "shortid";
+    packageName = "shortid";
+    version = "2.2.8";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/shortid/-/shortid-2.2.8.tgz";
+      sha1 = "033b117d6a2e975804f6f0969dbe7d3d0b355131";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Amazingly short non-sequential url-friendly unique id generator.";
+      homepage = https://github.com/dylang/shortid;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "socket.io-~2.0.4" = nodeEnv.buildNodePackage {
+    name = "socket.io";
+    packageName = "socket.io";
+    version = "2.0.4";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/socket.io/-/socket.io-2.0.4.tgz";
+      sha1 = "c1a4590ceff87ecf13c72652f046f716b29e6014";
+    };
+    dependencies = [
+      sources."accepts-1.3.5"
+      sources."after-0.8.2"
+      sources."arraybuffer.slice-0.0.7"
+      sources."async-limiter-1.0.0"
+      sources."backo2-1.0.2"
+      sources."base64-arraybuffer-0.1.5"
+      sources."base64id-1.0.0"
+      sources."better-assert-1.0.2"
+      sources."blob-0.0.4"
+      sources."callsite-1.0.0"
+      sources."component-bind-1.0.0"
+      sources."component-emitter-1.2.1"
+      sources."component-inherit-0.0.3"
+      sources."cookie-0.3.1"
+      sources."debug-2.6.9"
+      (sources."engine.io-3.1.5" // {
+        dependencies = [
+          sources."debug-3.1.0"
+        ];
+      })
+      (sources."engine.io-client-3.1.6" // {
+        dependencies = [
+          sources."debug-3.1.0"
+        ];
+      })
+      sources."engine.io-parser-2.1.2"
+      sources."has-binary2-1.0.3"
+      sources."has-cors-1.1.0"
+      sources."indexof-0.0.1"
+      sources."isarray-2.0.1"
+      sources."mime-db-1.35.0"
+      sources."mime-types-2.1.19"
+      sources."ms-2.0.0"
+      sources."negotiator-0.6.1"
+      sources."object-component-0.0.3"
+      sources."parseqs-0.0.5"
+      sources."parseuri-0.0.5"
+      sources."safe-buffer-5.1.2"
+      sources."socket.io-adapter-1.1.1"
+      sources."socket.io-client-2.0.4"
+      (sources."socket.io-parser-3.1.3" // {
+        dependencies = [
+          sources."debug-3.1.0"
+        ];
+      })
+      sources."to-array-0.1.4"
+      sources."ultron-1.1.1"
+      sources."uws-9.14.0"
+      sources."ws-3.3.3"
+      sources."xmlhttprequest-ssl-1.5.5"
+      sources."yeast-0.1.2"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "node.js realtime framework server";
+      homepage = "https://github.com/socketio/socket.io#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "socket.io-client-~2.0.4" = nodeEnv.buildNodePackage {
+    name = "socket.io-client";
+    packageName = "socket.io-client";
+    version = "2.0.4";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/socket.io-client/-/socket.io-client-2.0.4.tgz";
+      sha1 = "0918a552406dc5e540b380dcd97afc4a64332f8e";
+    };
+    dependencies = [
+      sources."after-0.8.2"
+      sources."arraybuffer.slice-0.0.7"
+      sources."async-limiter-1.0.0"
+      sources."backo2-1.0.2"
+      sources."base64-arraybuffer-0.1.5"
+      sources."better-assert-1.0.2"
+      sources."blob-0.0.4"
+      sources."callsite-1.0.0"
+      sources."component-bind-1.0.0"
+      sources."component-emitter-1.2.1"
+      sources."component-inherit-0.0.3"
+      sources."debug-2.6.9"
+      (sources."engine.io-client-3.1.6" // {
+        dependencies = [
+          sources."debug-3.1.0"
+        ];
+      })
+      sources."engine.io-parser-2.1.2"
+      sources."has-binary2-1.0.3"
+      sources."has-cors-1.1.0"
+      sources."indexof-0.0.1"
+      sources."isarray-2.0.1"
+      sources."ms-2.0.0"
+      sources."object-component-0.0.3"
+      sources."parseqs-0.0.5"
+      sources."parseuri-0.0.5"
+      sources."safe-buffer-5.1.2"
+      (sources."socket.io-parser-3.1.3" // {
+        dependencies = [
+          sources."debug-3.1.0"
+        ];
+      })
+      sources."to-array-0.1.4"
+      sources."ultron-1.1.1"
+      sources."ws-3.3.3"
+      sources."xmlhttprequest-ssl-1.5.5"
+      sources."yeast-0.1.2"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "[![Build Status](https://secure.travis-ci.org/socketio/socket.io-client.svg?branch=master)](http://travis-ci.org/socketio/socket.io-client) [![Dependency Status](https://david-dm.org/socketio/socket.io-client.svg)](https://david-dm.org/socketio/socket.io-";
+      homepage = "https://github.com/Automattic/socket.io-client#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "spin.js-^2.3.2" = nodeEnv.buildNodePackage {
+    name = "spin.js";
+    packageName = "spin.js";
+    version = "2.3.2";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/spin.js/-/spin.js-2.3.2.tgz";
+      sha1 = "6caa56d520673450fd5cfbc6971e6d0772c37a1a";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "An animated CSS3 loading spinner with VML fallback for IE.";
+      homepage = "https://github.com/fgnass/spin.js#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "sqlite3-^4.0.1" = nodeEnv.buildNodePackage {
+    name = "sqlite3";
+    packageName = "sqlite3";
+    version = "4.0.2";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/sqlite3/-/sqlite3-4.0.2.tgz";
+      sha512 = "51ferIRwYOhzUEtogqOa/y9supADlAht98bF/gbIi6WkzRJX6Yioldxbzj1MV4yV+LgdKD/kkHwFTeFXOG4htA==";
+    };
+    dependencies = [
+      sources."abbrev-1.1.1"
+      sources."ajv-5.5.2"
+      sources."ansi-regex-2.1.1"
+      sources."aproba-1.2.0"
+      sources."are-we-there-yet-1.1.5"
+      sources."asn1-0.2.4"
+      sources."assert-plus-1.0.0"
+      sources."asynckit-0.4.0"
+      sources."aws-sign2-0.7.0"
+      sources."aws4-1.7.0"
+      sources."balanced-match-1.0.0"
+      sources."bcrypt-pbkdf-1.0.2"
+      sources."brace-expansion-1.1.11"
+      sources."caseless-0.12.0"
+      sources."chownr-1.0.1"
+      sources."co-4.6.0"
+      sources."code-point-at-1.1.0"
+      sources."combined-stream-1.0.6"
+      sources."concat-map-0.0.1"
+      sources."console-control-strings-1.1.0"
+      sources."core-util-is-1.0.2"
+      sources."dashdash-1.14.1"
+      sources."debug-2.6.9"
+      sources."deep-extend-0.6.0"
+      sources."delayed-stream-1.0.0"
+      sources."delegates-1.0.0"
+      sources."detect-libc-1.0.3"
+      sources."ecc-jsbn-0.1.2"
+      sources."extend-3.0.2"
+      sources."extsprintf-1.3.0"
+      sources."fast-deep-equal-1.1.0"
+      sources."fast-json-stable-stringify-2.0.0"
+      sources."forever-agent-0.6.1"
+      sources."form-data-2.3.2"
+      sources."fs-minipass-1.2.5"
+      sources."fs.realpath-1.0.0"
+      sources."gauge-2.7.4"
+      sources."getpass-0.1.7"
+      sources."glob-7.1.2"
+      sources."har-schema-2.0.0"
+      sources."har-validator-5.0.3"
+      sources."has-unicode-2.0.1"
+      sources."http-signature-1.2.0"
+      sources."iconv-lite-0.4.23"
+      sources."ignore-walk-3.0.1"
+      sources."inflight-1.0.6"
+      sources."inherits-2.0.3"
+      sources."ini-1.3.5"
+      sources."is-fullwidth-code-point-1.0.0"
+      sources."is-typedarray-1.0.0"
+      sources."isarray-1.0.0"
+      sources."isstream-0.1.2"
+      sources."jsbn-0.1.1"
+      sources."json-schema-0.2.3"
+      sources."json-schema-traverse-0.3.1"
+      sources."json-stringify-safe-5.0.1"
+      sources."jsprim-1.4.1"
+      sources."mime-db-1.35.0"
+      sources."mime-types-2.1.19"
+      sources."minimatch-3.0.4"
+      sources."minimist-0.0.8"
+      sources."minipass-2.3.3"
+      sources."minizlib-1.1.0"
+      sources."mkdirp-0.5.1"
+      sources."ms-2.0.0"
+      sources."nan-2.10.0"
+      sources."needle-2.2.1"
+      sources."node-pre-gyp-0.10.3"
+      sources."nopt-4.0.1"
+      sources."npm-bundled-1.0.3"
+      sources."npm-packlist-1.1.11"
+      sources."npmlog-4.1.2"
+      sources."number-is-nan-1.0.1"
+      sources."oauth-sign-0.8.2"
+      sources."object-assign-4.1.1"
+      sources."once-1.4.0"
+      sources."os-homedir-1.0.2"
+      sources."os-tmpdir-1.0.2"
+      sources."osenv-0.1.5"
+      sources."path-is-absolute-1.0.1"
+      sources."performance-now-2.1.0"
+      sources."process-nextick-args-2.0.0"
+      sources."punycode-1.4.1"
+      sources."qs-6.5.2"
+      (sources."rc-1.2.8" // {
+        dependencies = [
+          sources."minimist-1.2.0"
+        ];
+      })
+      sources."readable-stream-2.3.6"
+      sources."request-2.87.0"
+      sources."rimraf-2.6.2"
+      sources."safe-buffer-5.1.2"
+      sources."safer-buffer-2.1.2"
+      sources."sax-1.2.4"
+      sources."semver-5.5.0"
+      sources."set-blocking-2.0.0"
+      sources."signal-exit-3.0.2"
+      sources."sshpk-1.14.2"
+      sources."string-width-1.0.2"
+      sources."string_decoder-1.1.1"
+      sources."strip-ansi-3.0.1"
+      sources."strip-json-comments-2.0.1"
+      sources."tar-4.4.6"
+      sources."tough-cookie-2.3.4"
+      sources."tunnel-agent-0.6.0"
+      sources."tweetnacl-0.14.5"
+      sources."util-deprecate-1.0.2"
+      sources."uuid-3.3.2"
+      sources."verror-1.10.0"
+      sources."wide-align-1.1.3"
+      sources."wrappy-1.0.2"
+      sources."yallist-3.0.2"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Asynchronous, non-blocking SQLite3 bindings";
+      homepage = http://github.com/mapbox/node-sqlite3;
+      license = "BSD-3-Clause";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "store-^2.0.12" = nodeEnv.buildNodePackage {
+    name = "store";
+    packageName = "store";
+    version = "2.0.12";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/store/-/store-2.0.12.tgz";
+      sha1 = "8c534e2a0b831f72b75fc5f1119857c44ef5d593";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "A localStorage wrapper for all browsers without using cookies or flash. Uses localStorage, globalStorage, and userData behavior under the hood";
+      homepage = "https://github.com/marcuswestin/store.js#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "string-^3.3.3" = nodeEnv.buildNodePackage {
+    name = "string";
+    packageName = "string";
+    version = "3.3.3";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/string/-/string-3.3.3.tgz";
+      sha1 = "5ea211cd92d228e184294990a6cc97b366a77cb0";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "string contains methods that aren't included in the vanilla JavaScript string such as escaping html, decoding html entities, stripping tags, etc.";
+      homepage = http://stringjs.com/;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "tedious-^1.14.0" = nodeEnv.buildNodePackage {
+    name = "tedious";
+    packageName = "tedious";
+    version = "1.15.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/tedious/-/tedious-1.15.0.tgz";
+      sha1 = "9bda9e9798212c8fcd9438a70cb2a806abcae70a";
+    };
+    dependencies = [
+      sources."babel-runtime-6.26.0"
+      sources."big-number-0.3.1"
+      sources."bl-1.2.2"
+      sources."core-js-2.5.7"
+      sources."core-util-is-1.0.2"
+      sources."dns-lookup-all-1.0.2"
+      sources."iconv-lite-0.4.23"
+      sources."inherits-2.0.3"
+      sources."isarray-1.0.0"
+      sources."process-nextick-args-2.0.0"
+      sources."readable-stream-2.3.6"
+      sources."regenerator-runtime-0.11.1"
+      sources."safe-buffer-5.1.2"
+      sources."safer-buffer-2.1.2"
+      sources."semver-5.5.0"
+      sources."sprintf-0.1.5"
+      sources."string_decoder-1.1.1"
+      sources."util-deprecate-1.0.2"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "A TDS driver, for connecting to MS SQLServer databases.";
+      homepage = https://github.com/tediousjs/tedious;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "to-markdown-^3.0.3" = nodeEnv.buildNodePackage {
+    name = "to-markdown";
+    packageName = "to-markdown";
+    version = "3.1.1";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/to-markdown/-/to-markdown-3.1.1.tgz";
+      sha1 = "251e241b8c74c7ad177292e6c52cc195c9268c11";
+    };
+    dependencies = [
+      sources."abab-1.0.4"
+      sources."acorn-4.0.13"
+      sources."acorn-globals-3.1.0"
+      sources."ajv-5.5.2"
+      sources."array-equal-1.0.0"
+      sources."asn1-0.2.4"
+      sources."assert-plus-1.0.0"
+      sources."asynckit-0.4.0"
+      sources."aws-sign2-0.7.0"
+      sources."aws4-1.7.0"
+      sources."bcrypt-pbkdf-1.0.2"
+      sources."block-elements-1.2.0"
+      sources."caseless-0.12.0"
+      sources."co-4.6.0"
+      sources."collapse-whitespace-1.1.2"
+      sources."combined-stream-1.0.6"
+      sources."content-type-parser-1.0.2"
+      sources."core-util-is-1.0.2"
+      sources."cssom-0.3.4"
+      sources."cssstyle-0.2.37"
+      sources."dashdash-1.14.1"
+      sources."deep-is-0.1.3"
+      sources."delayed-stream-1.0.0"
+      sources."ecc-jsbn-0.1.2"
+      sources."escodegen-1.11.0"
+      sources."esprima-3.1.3"
+      sources."estraverse-4.2.0"
+      sources."esutils-2.0.2"
+      sources."extend-3.0.2"
+      sources."extsprintf-1.3.0"
+      sources."fast-deep-equal-1.1.0"
+      sources."fast-json-stable-stringify-2.0.0"
+      sources."fast-levenshtein-2.0.6"
+      sources."forever-agent-0.6.1"
+      sources."form-data-2.3.2"
+      sources."getpass-0.1.7"
+      sources."har-schema-2.0.0"
+      sources."har-validator-5.0.3"
+      sources."html-encoding-sniffer-1.0.2"
+      sources."http-signature-1.2.0"
+      sources."iconv-lite-0.4.19"
+      sources."is-typedarray-1.0.0"
+      sources."isstream-0.1.2"
+      sources."jsbn-0.1.1"
+      sources."jsdom-9.12.0"
+      sources."json-schema-0.2.3"
+      sources."json-schema-traverse-0.3.1"
+      sources."json-stringify-safe-5.0.1"
+      sources."jsprim-1.4.1"
+      sources."levn-0.3.0"
+      sources."mime-db-1.35.0"
+      sources."mime-types-2.1.19"
+      sources."nwmatcher-1.4.4"
+      sources."oauth-sign-0.8.2"
+      sources."optionator-0.8.2"
+      sources."parse5-1.5.1"
+      sources."performance-now-2.1.0"
+      sources."prelude-ls-1.1.2"
+      sources."psl-1.1.29"
+      sources."punycode-1.4.1"
+      sources."qs-6.5.2"
+      (sources."request-2.87.0" // {
+        dependencies = [
+          sources."tough-cookie-2.3.4"
+        ];
+      })
+      sources."safe-buffer-5.1.2"
+      sources."safer-buffer-2.1.2"
+      sources."sax-1.2.4"
+      sources."source-map-0.6.1"
+      sources."sshpk-1.14.2"
+      sources."symbol-tree-3.2.2"
+      sources."tough-cookie-2.4.3"
+      sources."tr46-0.0.3"
+      sources."tunnel-agent-0.6.0"
+      sources."tweetnacl-0.14.5"
+      sources."type-check-0.3.2"
+      sources."uuid-3.3.2"
+      sources."verror-1.10.0"
+      sources."void-elements-2.0.1"
+      sources."webidl-conversions-4.0.2"
+      sources."whatwg-encoding-1.0.3"
+      (sources."whatwg-url-4.8.0" // {
+        dependencies = [
+          sources."webidl-conversions-3.0.1"
+        ];
+      })
+      sources."wordwrap-1.0.0"
+      sources."xml-name-validator-2.0.1"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "HTML-to-Markdown converter";
+      homepage = "https://github.com/domchristie/to-markdown#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "toobusy-js-^0.5.1" = nodeEnv.buildNodePackage {
+    name = "toobusy-js";
+    packageName = "toobusy-js";
+    version = "0.5.1";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/toobusy-js/-/toobusy-js-0.5.1.tgz";
+      sha1 = "5511f78f6a87a6a512d44fdb0efa13672217f659";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Don't fall over when your Node.JS server is too busy. Now without native dependencies!";
+      homepage = https://github.com/STRML/node-toobusy;
+      license = "WTFPL";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "uuid-^3.1.0" = nodeEnv.buildNodePackage {
+    name = "uuid";
+    packageName = "uuid";
+    version = "3.3.2";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz";
+      sha512 = "yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "RFC4122 (v1, v4, and v5) UUIDs";
+      homepage = "https://github.com/kelektiv/node-uuid#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "uws-~0.14.1" = nodeEnv.buildNodePackage {
+    name = "uws";
+    packageName = "uws";
+    version = "0.14.5";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/uws/-/uws-0.14.5.tgz";
+      sha1 = "67aaf33c46b2a587a5f6666d00f7691328f149dc";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Tiny WebSockets";
+      homepage = https://github.com/uWebSockets/uWebSockets;
+      license = "Zlib";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "validator-^10.4.0" = nodeEnv.buildNodePackage {
+    name = "validator";
+    packageName = "validator";
+    version = "10.5.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/validator/-/validator-10.5.0.tgz";
+      sha512 = "6OOi+eV2mOxCFLq0f2cJDrdB6lrtLXEUxabhNRGjgOLT/l3SSll9J49Cl+LIloUqkWWTPraK/mucEQ3dc2jStQ==";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "String validation and sanitization";
+      homepage = http://github.com/chriso/validator.js;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "velocity-animate-^1.4.0" = nodeEnv.buildNodePackage {
+    name = "velocity-animate";
+    packageName = "velocity-animate";
+    version = "1.5.2";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/velocity-animate/-/velocity-animate-1.5.2.tgz";
+      sha512 = "m6EXlCAMetKztO1ppBhGU1/1MR3IiEevO6ESq6rcrSQ3Q77xYSW13jkfXW88o4xMrkXJhy/U7j4wFR/twMB0Eg==";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Accelerated JavaScript animation.";
+      homepage = http://velocityjs.org/;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "visibilityjs-^1.2.4" = nodeEnv.buildNodePackage {
+    name = "visibilityjs";
+    packageName = "visibilityjs";
+    version = "1.2.8";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/visibilityjs/-/visibilityjs-1.2.8.tgz";
+      sha512 = "Y+aL3OUX88b+/VSmkmC2ApuLbf0grzbNLpCfIDSw3BzTU6PqcPsdgIOaw8b+eZoy+DdQqnVN3y/Evow9vQq9Ig==";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Wrapper for the Page Visibility API";
+      homepage = "https://github.com/ai/visibilityjs#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "viz.js-^1.7.0" = nodeEnv.buildNodePackage {
+    name = "viz.js";
+    packageName = "viz.js";
+    version = "1.8.2";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/viz.js/-/viz.js-1.8.2.tgz";
+      sha512 = "W+1+N/hdzLpQZEcvz79n2IgUE9pfx6JLdHh3Kh8RGvLL8P1LdJVQmi2OsDcLdY4QVID4OUy+FPelyerX0nJxIQ==";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "A hack to put Graphviz on the web.";
+      homepage = https://github.com/mdaines/viz.js;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "winston-^2.3.0" = nodeEnv.buildNodePackage {
+    name = "winston";
+    packageName = "winston";
+    version = "2.4.3";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/winston/-/winston-2.4.3.tgz";
+      sha512 = "GYKuysPz2pxYAVJD2NPsDLP5Z79SDEzPm9/j4tCjkF/n89iBNGBMJcR+dMUqxgPNgoSs6fVygPi+Vl2oxIpBuw==";
+    };
+    dependencies = [
+      sources."async-1.0.0"
+      sources."colors-1.0.3"
+      sources."cycle-1.0.3"
+      sources."eyes-0.1.8"
+      sources."isstream-0.1.2"
+      sources."stack-trace-0.0.10"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "A multi-transport async logging library for Node.js";
+      homepage = "https://github.com/winstonjs/winston#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+  "xss-^1.0.3" = nodeEnv.buildNodePackage {
+    name = "xss";
+    packageName = "xss";
+    version = "1.0.3";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/xss/-/xss-1.0.3.tgz";
+      sha512 = "LTpz3jXPLUphMMmyufoZRSKnqMj41OVypZ8uYGzvjkMV9C1EdACrhQl/EM8Qfh5htSAuMIQFOejmKAZGkJfaCg==";
+    };
+    dependencies = [
+      sources."commander-2.16.0"
+      sources."cssfilter-0.0.10"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Sanitize untrusted HTML (to prevent XSS) with a configuration specified by a Whitelist";
+      homepage = https://github.com/leizongmin/js-xss;
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = false;
+  };
+}
\ No newline at end of file
diff --git a/pkgs/servers/web-apps/codimd/node.nix b/pkgs/servers/web-apps/codimd/node.nix
new file mode 100644
index 000000000000..8f3be4cc8c7f
--- /dev/null
+++ b/pkgs/servers/web-apps/codimd/node.nix
@@ -0,0 +1,17 @@
+# This file has been generated by node2nix 1.6.0. Do not edit!
+
+{pkgs ? import <nixpkgs> {
+    inherit system;
+  }, system ? builtins.currentSystem, nodejs ? pkgs."nodejs-6_x"}:
+
+let
+  nodeEnv = import ../../../development/node-packages/node-env.nix {
+    inherit (pkgs) stdenv python2 utillinux runCommand writeTextFile;
+    inherit nodejs;
+    libtool = if pkgs.stdenv.isDarwin then pkgs.darwin.cctools else null;
+  };
+in
+import ./node-packages.nix {
+  inherit (pkgs) fetchurl fetchgit;
+  inherit nodeEnv;
+}
\ No newline at end of file
diff --git a/pkgs/servers/web-apps/frab/default.nix b/pkgs/servers/web-apps/frab/default.nix
index 657bd423f3f4..d6a5128b8130 100644
--- a/pkgs/servers/web-apps/frab/default.nix
+++ b/pkgs/servers/web-apps/frab/default.nix
@@ -48,5 +48,6 @@ stdenv.mkDerivation rec {
     description = "Web-based conference planning and management system";
     homepage = https://github.com/frab/frab;
     license = licenses.mit;
+    broken = true; # 2018-09-08; no successful hydra build since 2018-02-14
   };
 }
diff --git a/pkgs/servers/web-apps/matomo/default.nix b/pkgs/servers/web-apps/matomo/default.nix
index a4a26fd506bc..1fb8f4b1221b 100644
--- a/pkgs/servers/web-apps/matomo/default.nix
+++ b/pkgs/servers/web-apps/matomo/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "matomo-${version}";
-  version = "3.5.1";
+  version = "3.6.0";
 
   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 = "0ifrgaw30h4d6hwwzrz8i9k036dxzkxgh71y9s0ds10lhr8vidym";
+    sha256 = "1bkxa163s420w579ma7sbab1nm8c6ca6r6irn200j7p1r5zjklp8";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/servers/x11/xorg/xcb-util-xrm.nix b/pkgs/servers/x11/xorg/xcb-util-xrm.nix
index 5a315b99b08b..0a008227b9fb 100644
--- a/pkgs/servers/x11/xorg/xcb-util-xrm.nix
+++ b/pkgs/servers/x11/xorg/xcb-util-xrm.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, pkgconfig, m4, libxcb, xcbutil, libX11 }:
 
 stdenv.mkDerivation rec {
-  version = "1.2";
+  version = "1.3";
   name = "xcb-util-xrm-${version}";
 
   src = fetchurl {
     url = "https://github.com/Airblader/xcb-util-xrm/releases/download/v${version}/${name}.tar.bz2";
-    sha256 = "0vbqhag51i0njc8d5fc8c6aa12496cwrc3s6s7sa5kfc17cwhppp";
+    sha256 = "118cj1ybw86pgw0l5whn9vbg5n5b0ijcpx295mwahzi004vz671h";
   };
 
   nativeBuildInputs = [ pkgconfig m4 ];
diff --git a/pkgs/shells/ion/default.nix b/pkgs/shells/ion/default.nix
index 1333bfd873fa..239eeb89c8ba 100644
--- a/pkgs/shells/ion/default.nix
+++ b/pkgs/shells/ion/default.nix
@@ -21,5 +21,6 @@ buildRustPackage rec {
     license = licenses.mit;
     maintainers = with maintainers; [ dywedir ];
     platforms = platforms.all;
+    broken = stdenv.isDarwin;
   };
 }
diff --git a/pkgs/shells/zsh/default.nix b/pkgs/shells/zsh/default.nix
index 3259dbbd9bc6..a14829070b33 100644
--- a/pkgs/shells/zsh/default.nix
+++ b/pkgs/shells/zsh/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, ncurses, pcre }:
 
 let
-  version = "5.5.1";
+  version = "5.6.2";
 
   documentation = fetchurl {
-    url = "mirror://sourceforge/zsh/zsh-${version}-doc.tar.gz";
-    sha256 = "0bm9n7lycdzvw5hmgi4a920pqbb5yxvmyhfxx8jbign2hzgf7g01";
+    url = "mirror://sourceforge/zsh/zsh-${version}-doc.tar.xz";
+    sha256 = "05014rg6hkwiv1p56iij8wn2rghmwjxs5qsj3d3xigbwaikk55wq";
   };
 
 in
@@ -14,8 +14,8 @@ stdenv.mkDerivation {
   name = "zsh-${version}";
 
   src = fetchurl {
-    url = "mirror://sourceforge/zsh/zsh-${version}.tar.gz";
-    sha256 = "10705qnnr3p416bwfjaip9r7yw187vczzjrk60yg79dfwy4slk3p";
+    url = "mirror://sourceforge/zsh/zsh-${version}.tar.xz";
+    sha256 = "17iffliqcj4hv91g0bd2sxsyfcz51mfyh97sp2iyrs2p0mndc2x5";
   };
 
   buildInputs = [ ncurses pcre ];
diff --git a/pkgs/shells/zsh/oh-my-zsh/default.nix b/pkgs/shells/zsh/oh-my-zsh/default.nix
index 6f9e338dabaa..22aa478d743c 100644
--- a/pkgs/shells/zsh/oh-my-zsh/default.nix
+++ b/pkgs/shells/zsh/oh-my-zsh/default.nix
@@ -4,13 +4,13 @@
 { stdenv, fetchgit }:
 
 stdenv.mkDerivation rec {
-  version = "2018-07-29";
+  version = "2018-09-03";
   name = "oh-my-zsh-${version}";
 
   src = fetchgit {
     url = "https://github.com/robbyrussell/oh-my-zsh";
-    rev = "5fa7824ea59ec12a976f348a83399e66699456ea";
-    sha256 = "1ry46jxk7k4ndh4gic9v7c19gsqmcag8bng92pp7vw0fj0b0ij6k";
+    rev = "69e637c35578305e19dbfc520e65c514180db6ef";
+    sha256 = "067qwvdlghjb2kcv4fydnnbwss2kb4fgn1qib88ygz82fpvb0cwf";
   };
 
   pathsToLink = [ "/share/oh-my-zsh" ];
diff --git a/pkgs/shells/zsh/zsh-history-substring-search/default.nix b/pkgs/shells/zsh/zsh-history-substring-search/default.nix
new file mode 100644
index 000000000000..26866f830dbc
--- /dev/null
+++ b/pkgs/shells/zsh/zsh-history-substring-search/default.nix
@@ -0,0 +1,26 @@
+{ stdenv, lib, fetchFromGitHub, zsh }:
+
+stdenv.mkDerivation rec {
+  name = "zsh-history-substring-search-${version}";
+  version = "1.0.1";
+
+  src = fetchFromGitHub {
+    owner = "zsh-users";
+    repo = "zsh-history-substring-search";
+    rev = "v${version}";
+    sha256 = "0lgmq1xcccnz5cf7vl0r0qj351hwclx9p80cl0qczxry4r2g5qaz";
+  };
+
+  installPhase = ''
+    install -D zsh-history-substring-search.zsh \
+      "$out/share/zsh-history-substring-search/zsh-history-substring-search.zsh"
+  '';
+
+  meta = with lib; {
+    description = "Fish shell history-substring-search for Zsh";
+    homepage = https://github.com/zsh-users/zsh-history-substring-search;
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ qyliss ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/stdenv/linux/default.nix b/pkgs/stdenv/linux/default.nix
index de58178a34ba..b29a96314d2c 100644
--- a/pkgs/stdenv/linux/default.nix
+++ b/pkgs/stdenv/linux/default.nix
@@ -343,8 +343,8 @@ in
       # Mainly avoid reference to bootstrap tools
       allowedRequisites = with prevStage; with lib;
         # Simple executable tools
-        concatMap (p: [ (getBin p) (getLib p) ])
-          [ gzip bzip2 xz bash binutils.bintools coreutils diffutils findutils
+        concatMap (p: [ (getBin p) (getLib p) ]) [
+            gzip bzip2 xz bash binutils.bintools coreutils diffutils findutils
             gawk gnumake gnused gnutar gnugrep gnupatch patchelf ed paxctl
           ]
         # Library dependencies
diff --git a/pkgs/tools/X11/dex/default.nix b/pkgs/tools/X11/dex/default.nix
index 2a3a406135b3..fd0c0503de9f 100644
--- a/pkgs/tools/X11/dex/default.nix
+++ b/pkgs/tools/X11/dex/default.nix
@@ -16,9 +16,10 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ python3.pkgs.sphinx ];
   makeFlags = [ "PREFIX=$(out)" "VERSION=$(version)" ];
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "A program to generate and execute DesktopEntry files of the Application type";
     homepage = https://github.com/jceb/dex;
-    platforms = stdenv.lib.platforms.linux;
+    platforms = platforms.linux;
+    license = licenses.gpl3Plus;
   };
 }
diff --git a/pkgs/tools/X11/ncview/default.nix b/pkgs/tools/X11/ncview/default.nix
index e4ba08a6ff36..1f793aa6c4c9 100644
--- a/pkgs/tools/X11/ncview/default.nix
+++ b/pkgs/tools/X11/ncview/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl
-, netcdf, x11, xorg, udunits, expat
+, netcdf, xlibsWrapper, xorg, udunits, expat
 }:
 
 let
@@ -14,7 +14,7 @@ in stdenv.mkDerivation {
     sha256 = "1gliziyxil2fcz85hj6z0jq33avrxdcjs74d500lhxwvgd8drfp8";
   };
 
-  buildInputs = [ netcdf x11 xorg.libXaw udunits expat ];
+  buildInputs = [ netcdf xlibsWrapper xorg.libXaw udunits expat ];
 
   meta = with stdenv.lib; {
     description = "Visual browser for netCDF format files";
diff --git a/pkgs/tools/X11/nitrogen/default.nix b/pkgs/tools/X11/nitrogen/default.nix
index f53ab38672bd..eda5703d6a86 100644
--- a/pkgs/tools/X11/nitrogen/default.nix
+++ b/pkgs/tools/X11/nitrogen/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
       multi-head with Xinerama. Wallpapers are browsable with a convenient GUI,
       and settings are stored in a human-readable config file.
     '';
-    homepage = http://projects.l3ib.org/nitrogen/;
+    homepage = https://github.com/l3ib/nitrogen;
     license = stdenv.lib.licenses.gpl2;
     platforms = stdenv.lib.platforms.linux;
     maintainers = [ stdenv.lib.maintainers.auntie ];
diff --git a/pkgs/tools/X11/virtualgl/default.nix b/pkgs/tools/X11/virtualgl/default.nix
index b0d017acf84b..aa839e6d684d 100644
--- a/pkgs/tools/X11/virtualgl/default.nix
+++ b/pkgs/tools/X11/virtualgl/default.nix
@@ -19,5 +19,6 @@ stdenv.mkDerivation {
 
   meta = {
     platforms = stdenv.lib.platforms.linux;
+    inherit (virtualglLib.meta) license;
   };
 }
diff --git a/pkgs/tools/X11/virtualgl/lib.nix b/pkgs/tools/X11/virtualgl/lib.nix
index c552011f3844..4c911e756330 100644
--- a/pkgs/tools/X11/virtualgl/lib.nix
+++ b/pkgs/tools/X11/virtualgl/lib.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     homepage = http://www.virtualgl.org/;
     description = "X11 GL rendering in a remote computer with full 3D hw acceleration";
-    license = licenses.free; # many parts under different free licenses
+    license = licenses.wxWindows;
     platforms = platforms.linux;
     maintainers = with maintainers; [ abbradar ];
   };
diff --git a/pkgs/tools/X11/x11vnc/default.nix b/pkgs/tools/X11/x11vnc/default.nix
index 2d319cccf206..2dc6d8ffd78c 100644
--- a/pkgs/tools/X11/x11vnc/default.nix
+++ b/pkgs/tools/X11/x11vnc/default.nix
@@ -26,9 +26,10 @@ stdenv.mkDerivation rec {
     sed -i -e '/#!\/bin\/sh/a"PATH=${xorg.xdpyinfo}\/bin:${xorg.xauth}\/bin:$PATH\\n"' -e 's|/bin/su|/run/wrappers/bin/su|g' x11vnc/ssltools.h
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "A VNC server connected to a real X11 screen";
     homepage = http://www.karlrunge.com/x11vnc/;
-    platforms = stdenv.lib.platforms.linux;
+    platforms = platforms.linux;
+    license = licenses.gpl2;
   };
 }
diff --git a/pkgs/tools/X11/x2vnc/default.nix b/pkgs/tools/X11/x2vnc/default.nix
index 2703379a23b9..f3ab23d364c5 100644
--- a/pkgs/tools/X11/x2vnc/default.nix
+++ b/pkgs/tools/X11/x2vnc/default.nix
@@ -15,9 +15,10 @@ stdenv.mkDerivation rec {
 
   hardeningDisable = [ "format" ];
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = http://fredrik.hubbe.net/x2vnc.html;
     description = "A program to control a remote VNC server";
-    platforms = stdenv.lib.platforms.unix;
+    platforms = platforms.unix;
+    license = licenses.gpl2;
   };
 }
diff --git a/pkgs/tools/X11/x2x/default.nix b/pkgs/tools/X11/x2x/default.nix
index dd529011557a..24cf4f6b2e16 100644
--- a/pkgs/tools/X11/x2x/default.nix
+++ b/pkgs/tools/X11/x2x/default.nix
@@ -24,10 +24,10 @@ stdenv.mkDerivation {
     cp x2x.1 $out/man/man1/
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "Allows the keyboard, mouse on one X display to be used to control another X display";
-    homepage = http://x2x.dottedmag.net;
-    license = "BSD";
-    platforms = stdenv.lib.platforms.linux;
+    homepage = https://github.com/dottedmag/x2x;
+    license = licenses.bsd3;
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/tools/X11/xpra/default.nix b/pkgs/tools/X11/xpra/default.nix
index fd7f70004dbf..23270793b34e 100644
--- a/pkgs/tools/X11/xpra/default.nix
+++ b/pkgs/tools/X11/xpra/default.nix
@@ -81,5 +81,6 @@ in buildPythonApplication rec {
     description = "Persistent remote applications for X";
     platforms = platforms.linux;
     maintainers = with maintainers; [ tstrobel offline ];
+    license = licenses.gpl2;
   };
 }
diff --git a/pkgs/tools/X11/xpra/gtk3.nix b/pkgs/tools/X11/xpra/gtk3.nix
index 16693b08e110..ceba4269e808 100644
--- a/pkgs/tools/X11/xpra/gtk3.nix
+++ b/pkgs/tools/X11/xpra/gtk3.nix
@@ -68,11 +68,12 @@ buildPythonApplication rec {
   #'';
 
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = http://xpra.org/;
     downloadPage = "https://xpra.org/src/";
     downloadURLRegexp = "xpra-.*[.]tar[.]xz$";
     description = "Persistent remote applications for X";
-    platforms = stdenv.lib.platforms.linux;
+    platforms = platforms.linux;
+    license = licenses.gpl2;
   };
 }
diff --git a/pkgs/tools/X11/xpra/libfakeXinerama.nix b/pkgs/tools/X11/xpra/libfakeXinerama.nix
index 4ca509f8b936..d6fab2b19103 100644
--- a/pkgs/tools/X11/xpra/libfakeXinerama.nix
+++ b/pkgs/tools/X11/xpra/libfakeXinerama.nix
@@ -24,10 +24,11 @@ stdenv.mkDerivation  rec {
     ln -s libXinerama.so.1 $out/lib/libXinerama.so
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = http://xpra.org/;
     description = "fakeXinerama for Xpra";
-    platforms = stdenv.lib.platforms.linux;
-    maintainers = with stdenv.lib.maintainers; [ tstrobel ];
+    platforms = platforms.linux;
+    maintainers = [ maintainers.tstrobel ];
+    license = licenses.gpl2;
   };
 }
diff --git a/pkgs/tools/X11/xsettingsd/default.nix b/pkgs/tools/X11/xsettingsd/default.nix
index 239b01e1345d..2f84711e61c4 100644
--- a/pkgs/tools/X11/xsettingsd/default.nix
+++ b/pkgs/tools/X11/xsettingsd/default.nix
@@ -1,39 +1,38 @@
-{ stdenv, fetchFromGitHub, scons, libX11, pkgconfig }:
+{ stdenv, fetchFromGitHub, scons, pkgconfig, libX11 }:
 
 stdenv.mkDerivation rec {
   name = "xsettingsd-${version}";
-  version = "git-2015-06-14";
+  version = "1.0.0";
 
   src = fetchFromGitHub {
     owner = "derat";
     repo = "xsettingsd";
-    rev = "b4999f5e9e99224caf97d09f25ee731774ecd7be";
-    sha256 = "18cp6a66ji483lrvf0vq855idwmcxd0s67ijpydgjlsr70c65j7s";
+    rev = "v${version}";
+    sha256 = "05m4jlw0mgwp24cvyklncpziq1prr2lg0cq9c055sh4n9d93d07v";
   };
 
   patches = [
     ./SConstruct.patch
   ];
 
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ libX11 scons ];
+  nativeBuildInputs = [ scons pkgconfig ];
+
+  buildInputs = [ libX11 ];
+
   buildPhase = ''
-    mkdir -p "$out"
-    scons \
-      -j$NIX_BUILD_CORES -l$NIX_BUILD_CORES \
-      "prefix=$out"
+    scons -j$NIX_BUILD_CORES -l$NIX_BUILD_CORES
   '';
   
   installPhase = ''
-    mkdir -p "$out"/bin
-    install xsettingsd "$out"/bin
-    install dump_xsettings "$out"/bin
+    install -D -t "$out"/bin xsettingsd dump_xsettings
+    install -D -t "$out"/usr/share/man/man1 xsettingsd.1 dump_xsettings.1
   '';
 
   meta = with stdenv.lib; {
     description = "Provides settings to X11 applications via the XSETTINGS specification";
     homepage = https://github.com/derat/xsettingsd;
-    license = licenses.bsd2;
+    license = licenses.bsd3;
     platforms = platforms.linux;
+    maintainers = [ maintainers.romildo ];
   };
 }
diff --git a/pkgs/tools/X11/xvkbd/default.nix b/pkgs/tools/X11/xvkbd/default.nix
index 7221555ed33f..06824f882a44 100644
--- a/pkgs/tools/X11/xvkbd/default.nix
+++ b/pkgs/tools/X11/xvkbd/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
       facility to enter characters onto other clients (softwares) by clicking on a
       keyboard displayed on the screen.
     '';
-    homepage = http://homepage3.nifty.com/tsato/xvkbd/;
+    homepage = http://t-sato.in.coocan.jp/xvkbd;
     license = licenses.gpl2Plus;
     maintainers = [ maintainers.bennofs ];
     platforms = platforms.linux;
diff --git a/pkgs/tools/admin/aws-vault/default.nix b/pkgs/tools/admin/aws-vault/default.nix
index 4f8b1bc1368f..71360f8030c5 100644
--- a/pkgs/tools/admin/aws-vault/default.nix
+++ b/pkgs/tools/admin/aws-vault/default.nix
@@ -2,7 +2,7 @@
 buildGoPackage rec {
   name = "${pname}-${version}";
   pname = "aws-vault";
-  version = "4.1.0";
+  version = "4.3.0";
 
   goPackagePath = "github.com/99designs/${pname}";
 
@@ -10,9 +10,15 @@ buildGoPackage rec {
     owner = "99designs";
     repo = pname;
     rev = "v${version}";
-    sha256 = "04cdynqmkbs7bkl2aay4sjxq49i90fg048lw0ssw1fpwldbvnl6j";
+    sha256 = "0cwzvw1rcvg7y3m8dahr9r05s4i9apnfw5xhiaf0rlkdh3vy33wp";
   };
 
+  # set the version. see: aws-vault's Makefile
+  buildFlagsArray = ''
+    -ldflags=
+    -X main.Version=v${version}
+  '';
+
   meta = with lib; {
     description = "A vault for securely storing and accessing AWS credentials in development environments";
     homepage = "https://github.com/99designs/aws-vault";
diff --git a/pkgs/tools/admin/google-cloud-sdk/default.nix b/pkgs/tools/admin/google-cloud-sdk/default.nix
index 8b98636b3475..016ea957f6c7 100644
--- a/pkgs/tools/admin/google-cloud-sdk/default.nix
+++ b/pkgs/tools/admin/google-cloud-sdk/default.nix
@@ -19,18 +19,18 @@ let
   sources = name: system: {
     x86_64-darwin = {
       url = "${baseUrl}/${name}-darwin-x86_64.tar.gz";
-      sha256 = "0fdcd5d63e231443b9e032de4e2c2be9e4f1c766a25054ad93410f5213e45645";
+      sha256 = "1d5z575vw07jk7528bsqgdd875b3zwayrdnidvxpd2n8j4bip654";
     };
 
     x86_64-linux = {
       url = "${baseUrl}/${name}-linux-x86_64.tar.gz";
-      sha256 = "d39293914b2e969bfe18dd19eb77ba96d283995f8cf1e5d7ba6ac712a3c9479a";
+      sha256 = "0ljslvp68ml5mglrl7kakgkqskbzglf3i5jv5d7jld28d0kbzj2c";
     };
   }.${system};
 
 in stdenv.mkDerivation rec {
   name = "google-cloud-sdk-${version}";
-  version = "206.0.0";
+  version = "215.0.0";
 
   src = fetchurl (sources name stdenv.hostPlatform.system);
 
diff --git a/pkgs/tools/admin/salt/default.nix b/pkgs/tools/admin/salt/default.nix
index 80df9148220c..6cf997cd738c 100644
--- a/pkgs/tools/admin/salt/default.nix
+++ b/pkgs/tools/admin/salt/default.nix
@@ -23,7 +23,7 @@ pythonPackages.buildPythonApplication rec {
     pyyaml
     pyzmq
     requests
-    tornado
+    tornado_4
   ] ++ stdenv.lib.optional (!pythonPackages.isPy3k) [
     futures
   ] ++ extraInputs;
diff --git a/pkgs/tools/admin/scaleway-cli/default.nix b/pkgs/tools/admin/scaleway-cli/default.nix
index 0e8aacea4ef2..b246c7712ec9 100644
--- a/pkgs/tools/admin/scaleway-cli/default.nix
+++ b/pkgs/tools/admin/scaleway-cli/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec{
   name = "scaleway-cli-${version}";
-  version = "1.14";
+  version = "1.17";
 
   goPackagePath = "github.com/scaleway/scaleway-cli";
 
@@ -10,7 +10,7 @@ buildGoPackage rec{
     owner = "scaleway";
     repo = "scaleway-cli";
     rev = "v${version}";
-    sha256 = "09rqw82clfdiixa9m3hphxh5v7w1gks3wicz1dvpay2sx28bpddr";
+    sha256 = "0v50wk6q8537880whi6w83dia9y934v0s2xr1z52cn3mrsjghsnd";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/tools/admin/sec/default.nix b/pkgs/tools/admin/sec/default.nix
index f7b6aaa76c68..dede514729ec 100644
--- a/pkgs/tools/admin/sec/default.nix
+++ b/pkgs/tools/admin/sec/default.nix
@@ -1,11 +1,11 @@
 { fetchurl, perl, stdenv }:
 
 stdenv.mkDerivation rec {
-  name = "sec-2.7.12";
+  name = "sec-2.8.0";
 
   src = fetchurl {
     url = "mirror://sourceforge/simple-evcorr/${name}.tar.gz";
-    sha256 = "0f5a2nkd5cmg1rziizz2gmgdwb5dz99x9pbxw30p384rjh79zcaa";
+    sha256 = "0q9fhkkh0n0jya4kf5c54smk4xbnv01hqhip2y6fnnj9imwskymz";
   };
 
   buildInputs = [ perl ];
diff --git a/pkgs/tools/audio/accuraterip-checksum/default.nix b/pkgs/tools/audio/accuraterip-checksum/default.nix
new file mode 100644
index 000000000000..502859cd52d3
--- /dev/null
+++ b/pkgs/tools/audio/accuraterip-checksum/default.nix
@@ -0,0 +1,31 @@
+{ stdenv, fetchFromGitHub, libsndfile }:
+
+stdenv.mkDerivation rec {
+  name = "accuraterip-checksum-${version}";
+  version = "1.5";
+
+  src = fetchFromGitHub {
+    owner = "leo-bogert";
+    repo = "accuraterip-checksum";
+    rev = "version${version}";
+    sha256 = "1a6biy78jb094rifazn4a2g1dlhryg5q8p8gwj0a60ipl0vfb9bj";
+  };
+
+  buildInputs = [ libsndfile ];
+
+  installPhase = ''
+    runHook preInstall
+
+    install -D -m755 accuraterip-checksum "$out/bin/accuraterip-checksum"
+
+    runHook postInstall
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Program for computing the AccurateRip checksum of singletrack WAV files";
+    homepage = https://github.com/leo-bogert/accuraterip-checksum;
+    license = licenses.gpl3;
+    maintainers = with maintainers; [ ];
+    platforms = with platforms; linux;
+  };
+}
diff --git a/pkgs/tools/backup/dar/default.nix b/pkgs/tools/backup/dar/default.nix
index 86f8619f101e..b870c08d755f 100644
--- a/pkgs/tools/backup/dar/default.nix
+++ b/pkgs/tools/backup/dar/default.nix
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
   meta = {
     homepage = http://dar.linux.free.fr;
     description = "Disk ARchiver, allows backing up files into indexed archives";
-    maintainers = with maintainers; [ ];
+    license = licenses.gpl2;
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/tools/backup/duplicity/default.nix b/pkgs/tools/backup/duplicity/default.nix
index e0c3ea4cf018..9fbe05c725ef 100644
--- a/pkgs/tools/backup/duplicity/default.nix
+++ b/pkgs/tools/backup/duplicity/default.nix
@@ -2,11 +2,11 @@
 
 python2Packages.buildPythonApplication rec {
   name = "duplicity-${version}";
-  version = "0.7.18";
+  version = "0.7.18.1";
 
   src = fetchurl {
     url = "http://code.launchpad.net/duplicity/${stdenv.lib.versions.majorMinor version}-series/${version}/+download/${name}.tar.gz";
-    sha256 = "1qlika4l1k1nx8zr657ihcy0yzr1c1cdnjlbs325l5krvc3zbc5b";
+    sha256 = "17c0203y5qz9w8iyhs26l44qf6a1vp26b5ykz1ypdr2kv6g02df9";
   };
 
   buildInputs = [ librsync makeWrapper python2Packages.wrapPython ];
diff --git a/pkgs/tools/backup/restic/default.nix b/pkgs/tools/backup/restic/default.nix
index feb7b4802630..453e31f5d13a 100644
--- a/pkgs/tools/backup/restic/default.nix
+++ b/pkgs/tools/backup/restic/default.nix
@@ -27,7 +27,7 @@ buildGoPackage rec {
     cp restic $bin/bin/
     $bin/bin/restic generate \
       --bash-completion $bin/etc/bash_completion.d/restic.sh \
-      --zsh-completion $bin/share/zsh/vendor-completions/restic.sh \
+      --zsh-completion $bin/share/zsh/vendor-completions/_restic \
       --man $bin/share/man/man1
   '';
 
diff --git a/pkgs/tools/backup/wal-g/default.nix b/pkgs/tools/backup/wal-g/default.nix
index 9c2fb0c0b002..0cd18dae1c27 100644
--- a/pkgs/tools/backup/wal-g/default.nix
+++ b/pkgs/tools/backup/wal-g/default.nix
@@ -2,18 +2,18 @@
 
 buildGoPackage rec {
   name = "wal-g-${version}";
-  version = "0.1.10";
+  version = "0.1.12";
 
   src = fetchFromGitHub {
     owner  = "wal-g";
     repo   = "wal-g";
     rev    = "v${version}";
-    sha256 = "0klqnrrjzzxcj3clg7vapmbga1vqsfh8mkci5r2ir1bjp0z1xfnp";
+    sha256 = "06k71xz96jpg6966xj48a8j07v0vk37b5v2k1bnqrbin4sma3s0c";
   };
 
   goPackagePath = "github.com/wal-g/wal-g";
   meta = {
-    homepage = https://github.com/wal-g/wal-g;
+    inherit (src.meta) homepage;
     license = stdenv.lib.licenses.asl20;
     description = "An archival restoration tool for Postgres";
     maintainers = [ stdenv.lib.maintainers.ocharles ];
diff --git a/pkgs/tools/cd-dvd/bchunk/default.nix b/pkgs/tools/cd-dvd/bchunk/default.nix
index 6828ef7d61d3..aa47edcb96c4 100644
--- a/pkgs/tools/cd-dvd/bchunk/default.nix
+++ b/pkgs/tools/cd-dvd/bchunk/default.nix
@@ -20,5 +20,6 @@ stdenv.mkDerivation rec {
     homepage = http://he.fi/bchunk/;
     description = "A program that converts CD images in BIN/CUE format into a set of ISO and CDR tracks";
     platforms = platforms.unix;
+    license = licenses.gpl2;
   };
 }
diff --git a/pkgs/tools/cd-dvd/cdrdao/default.nix b/pkgs/tools/cd-dvd/cdrdao/default.nix
index 25d94593f5ef..a17b03025032 100644
--- a/pkgs/tools/cd-dvd/cdrdao/default.nix
+++ b/pkgs/tools/cd-dvd/cdrdao/default.nix
@@ -28,9 +28,10 @@ stdenv.mkDerivation {
   # Needed on gcc >= 6.
   NIX_CFLAGS_COMPILE = "-Wno-narrowing";
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "A tool for recording audio or data CD-Rs in disk-at-once (DAO) mode";
     homepage = http://cdrdao.sourceforge.net/;
-    platforms = stdenv.lib.platforms.linux;
+    platforms = platforms.linux;
+    license = licenses.gpl2;
   };
 }
diff --git a/pkgs/tools/cd-dvd/lsdvd/default.nix b/pkgs/tools/cd-dvd/lsdvd/default.nix
index 6a3f92a57c2d..56ec8e19f54e 100644
--- a/pkgs/tools/cd-dvd/lsdvd/default.nix
+++ b/pkgs/tools/cd-dvd/lsdvd/default.nix
@@ -13,9 +13,10 @@ stdenv.mkDerivation {
   buildInputs = [ libdvdread ];
   nativeBuildInputs = [ pkgconfig ];
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = https://sourceforge.net/projects/lsdvd/;
     description = "Display information about audio, video, and subtitle tracks on a DVD";
-    platforms = stdenv.lib.platforms.linux;
+    license = licenses.gpl2;
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/tools/compression/pigz/default.nix b/pkgs/tools/compression/pigz/default.nix
index a2668f73ceb2..7d4cdc2df86d 100644
--- a/pkgs/tools/compression/pigz/default.nix
+++ b/pkgs/tools/compression/pigz/default.nix
@@ -28,9 +28,10 @@ stdenv.mkDerivation {
       install -Dm755 pigz.pdf "$out/share/doc/pigz/pigz.pdf"
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = http://www.zlib.net/pigz/;
     description = "A parallel implementation of gzip for multi-core machines";
-    platforms = stdenv.lib.platforms.unix;
+    license = licenses.zlib;
+    platforms = platforms.unix;
   };
 }
diff --git a/pkgs/tools/compression/zdelta/default.nix b/pkgs/tools/compression/zdelta/default.nix
index 01050c5ee821..20748c31ab81 100644
--- a/pkgs/tools/compression/zdelta/default.nix
+++ b/pkgs/tools/compression/zdelta/default.nix
@@ -8,8 +8,9 @@ stdenv.mkDerivation rec {
     sha256 = "0k6y0r9kv5qiglnr2j4a0yvfynjkvm0pyv8ly28j0pr3w6rbxrh3";
   };
 
-  meta = {
+  meta = with stdenv.lib; {
 	  homepage = http://cis.poly.edu/zdelta;
-    platforms = stdenv.lib.platforms.linux;
+    platforms = platforms.linux;
+    license = licenses.zlib;
   };
 }
diff --git a/pkgs/tools/filesystems/aefs/default.nix b/pkgs/tools/filesystems/aefs/default.nix
index 9ea4d092548f..9344ada8f93e 100644
--- a/pkgs/tools/filesystems/aefs/default.nix
+++ b/pkgs/tools/filesystems/aefs/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ fuse ];
 
   meta = with stdenv.lib; {
-    homepage = http://www.st.ewi.tudelft.nl/~dolstra/aefs/;
+    homepage = https://nixos.org/~edolstra/aefs/;
     description = "A cryptographic filesystem implemented in userspace using FUSE";
     platforms = platforms.linux;
     maintainers = [ maintainers.eelco ];
diff --git a/pkgs/tools/filesystems/android-file-transfer/default.nix b/pkgs/tools/filesystems/android-file-transfer/default.nix
index 40725defbed9..336dc785bbfd 100644
--- a/pkgs/tools/filesystems/android-file-transfer/default.nix
+++ b/pkgs/tools/filesystems/android-file-transfer/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   name = "android-file-transfer-${version}";
-  version = "3.4";
+  version = "3.5";
   src = fetchFromGitHub {
     owner = "whoozle";
     repo = "android-file-transfer-linux";
     rev = "v${version}";
-    sha256 = "1xwl0vk57174gdjhgqkzrirwzd2agdm84q30dq9q376ixgxjrifc";
+    sha256 = "036hca41ikgnw4maykjdp53l31rm01mgamy9y56i5qqh84cwmls2";
   };
   buildInputs = [ cmake fuse readline pkgconfig qtbase ];
   buildPhase = ''
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
   '';
   meta = with stdenv.lib; {
     description = "Reliable MTP client with minimalistic UI";
-    homepage = http://whoozle.github.io/android-file-transfer-linux/;
+    homepage = https://whoozle.github.io/android-file-transfer-linux/;
     license = licenses.lgpl21;
     maintainers = [ maintainers.xaverdh ];
     platforms = platforms.linux;
diff --git a/pkgs/tools/filesystems/avfs/default.nix b/pkgs/tools/filesystems/avfs/default.nix
index 3f596947f883..5c44ef239630 100644
--- a/pkgs/tools/filesystems/avfs/default.nix
+++ b/pkgs/tools/filesystems/avfs/default.nix
@@ -2,10 +2,10 @@
 
 stdenv.mkDerivation rec {
   name = "avfs-${version}";
-  version = "1.0.5";
+  version = "1.0.6";
   src = fetchurl {
     url = "mirror://sourceforge/avf/${version}/${name}.tar.bz2";
-    sha256 = "0xh1wpd8z3m5jmmv24fg4pvqhpnhygs2385qn5473hwk84gnpkp5";
+    sha256 = "1hz39f7p5vw647xqk161v3nh88qnd599av6nfidpmkh1d9vkl6jc";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/tools/filesystems/bashmount/default.nix b/pkgs/tools/filesystems/bashmount/default.nix
index 579258f63f98..cd0f3ea23229 100644
--- a/pkgs/tools/filesystems/bashmount/default.nix
+++ b/pkgs/tools/filesystems/bashmount/default.nix
@@ -31,6 +31,7 @@ stdenv.mkDerivation rec {
     homepage = https://github.com/jamielinux/bashmount;
     description = "A menu-driven bash script for the management of removable media with udisks";
     maintainers = [ maintainers.koral ];
+    license = licenses.gpl2;
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/tools/filesystems/curlftpfs/default.nix b/pkgs/tools/filesystems/curlftpfs/default.nix
index 4af7c9fb8c26..5636909093e6 100644
--- a/pkgs/tools/filesystems/curlftpfs/default.nix
+++ b/pkgs/tools/filesystems/curlftpfs/default.nix
@@ -11,7 +11,11 @@ stdenv.mkDerivation {
 
   doCheck = false; # fails, doesn't work well too, btw
 
-  meta = {
-    platforms = stdenv.lib.platforms.linux;
+  meta = with stdenv.lib; {
+    description = "Filesystem for accessing FTP hosts based on FUSE and libcurl";
+    homepage = http://curlftpfs.sourceforge.net;
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+
   };
 }
diff --git a/pkgs/tools/filesystems/exfat/default.nix b/pkgs/tools/filesystems/exfat/default.nix
index 47ff22ae20dd..97a96651a68e 100644
--- a/pkgs/tools/filesystems/exfat/default.nix
+++ b/pkgs/tools/filesystems/exfat/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "exfat-${version}";
-  version = "1.2.8";
+  version = "1.3.0";
 
   src = fetchFromGitHub {
     owner = "relan";
     repo = "exfat";
     rev = "v${version}";
-    sha256 = "0q02g3yvfmxj70h85a69d8s4f6y7jask268vr87j44ya51lzndd9";
+    sha256 = "1q29pcysv747y6dis07953dkax8k9x50b5gg99gpz6rr46xwgkgb";
   };
 
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
diff --git a/pkgs/tools/filesystems/fatresize/default.nix b/pkgs/tools/filesystems/fatresize/default.nix
index 9af14b051261..7bb5dd415a6a 100644
--- a/pkgs/tools/filesystems/fatresize/default.nix
+++ b/pkgs/tools/filesystems/fatresize/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchurl, parted, utillinux }:
 
 stdenv.mkDerivation rec {
-  
+
   version = "1.0.2";
   name = "fatresize-${version}";
 
@@ -9,31 +9,32 @@ stdenv.mkDerivation rec {
     url = "mirror://sourceforge/fatresize/fatresize-${version}.tar.bz2";
     sha256 = "04wp48jpdvq4nn0dgbw5za07g842rnxlh9mig4mslz70zqs0izjm";
   };
-  
+
   buildInputs = [ parted utillinux ];
-  
+
   # This patch helps this unmantained piece of software to be built against recent parted
   # It basically modifies the detection scheme for parted version (the current one has no micro version defined)
   # The second change is to include a header for a moved function since 1.6+ to current 3.1+ parted
   # The third change is to modify the call to PED_ASSERT that is no longer defined with 2 params
   patches = [ ./fatresize_parted_nix.patch ];
-  
+
   preConfigure = ''
     echo "Replacing calls to ped_free with free ..."
     substituteInPlace ./fatresize.c --replace ped_free free
   '';
-  
+
   # Filesystem resize functions were reintroduced in parted 3.1 due to no other available free alternatives
   # but in a sepparate library -> libparted-fs-resize --- that's why the added LDFLAG
   makeFlags = ''
     LDFLAGS=-lparted-fs-resize
   '';
-  
+
   propagatedBuildInputs = [ parted utillinux ];
-  
-  meta = {
+
+  meta = with stdenv.lib; {
     description = "The FAT16/FAT32 non-destructive resizer";
     homepage = https://sourceforge.net/projects/fatresize;
-    platforms = stdenv.lib.platforms.linux;
+    platforms = platforms.linux;
+    license = licenses.gpl2;
   };
 }
diff --git a/pkgs/tools/filesystems/jfsutils/default.nix b/pkgs/tools/filesystems/jfsutils/default.nix
index 244f3e294a86..acc7a91d93f5 100644
--- a/pkgs/tools/filesystems/jfsutils/default.nix
+++ b/pkgs/tools/filesystems/jfsutils/default.nix
@@ -12,8 +12,10 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ libuuid ];
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "IBM JFS utilities";
-    platforms = stdenv.lib.platforms.linux;
+    homepage = http://jfs.sourceforge.net;
+    license = licenses.gpl3;
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/tools/filesystems/mtools/default.nix b/pkgs/tools/filesystems/mtools/default.nix
index e7a9963f6501..f153e59019e3 100644
--- a/pkgs/tools/filesystems/mtools/default.nix
+++ b/pkgs/tools/filesystems/mtools/default.nix
@@ -17,10 +17,10 @@ stdenv.mkDerivation rec {
 
   doCheck = true;
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = http://www.gnu.org/software/mtools/;
     description = "Utilities to access MS-DOS disks";
-    platforms = stdenv.lib.platforms.unix;
-    maintainers = [ ];
+    platforms = platforms.unix;
+    license = licenses.gpl3;
   };
 }
diff --git a/pkgs/tools/filesystems/mtpfs/default.nix b/pkgs/tools/filesystems/mtpfs/default.nix
index afe51caa8772..bf048113714f 100644
--- a/pkgs/tools/filesystems/mtpfs/default.nix
+++ b/pkgs/tools/filesystems/mtpfs/default.nix
@@ -18,10 +18,11 @@ stdenv.mkDerivation rec {
     sha256 = "07acrqb17kpif2xcsqfqh5j4axvsa4rnh6xwnpqab5b9w5ykbbqv";
   };
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = https://github.com/cjd/mtpfs;
     description = "FUSE Filesystem providing access to MTP devices";
-    platforms = stdenv.lib.platforms.all;
-    maintainers = [ stdenv.lib.maintainers.qknight ];
+    platforms = platforms.all;
+    license = licenses.gpl3;
+    maintainers = [ maintainers.qknight ];
   };
 }
diff --git a/pkgs/tools/filesystems/nilfs-utils/default.nix b/pkgs/tools/filesystems/nilfs-utils/default.nix
index 6b56a8aadfa0..eccd72ceb238 100644
--- a/pkgs/tools/filesystems/nilfs-utils/default.nix
+++ b/pkgs/tools/filesystems/nilfs-utils/default.nix
@@ -46,14 +46,11 @@ stdenv.mkDerivation rec {
     find . -name .libs | xargs rm -rf
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "NILFS utilities";
-    maintainers = with stdenv.lib.maintainers;
-    [
-      raskin
-    ];
-    platforms = with stdenv.lib.platforms;
-      linux;
+    maintainers = [ maintainers.raskin ];
+    platforms = platforms.linux;
+    license =  with licenses; [ gpl2 lgpl21 ];
     downloadPage = "http://nilfs.sourceforge.net/en/download.html";
     updateWalker = true;
   };
diff --git a/pkgs/tools/filesystems/reiser4progs/default.nix b/pkgs/tools/filesystems/reiser4progs/default.nix
index 59d8e8aa4389..967a8ee43bef 100644
--- a/pkgs/tools/filesystems/reiser4progs/default.nix
+++ b/pkgs/tools/filesystems/reiser4progs/default.nix
@@ -21,10 +21,11 @@ stdenv.mkDerivation rec {
     substituteInPlace Makefile --replace ./run-ldconfig true
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     inherit version;
-    homepage = http://www.namesys.com/;
+    homepage = https://sourceforge.net/projects/reiser4/;
     description = "Reiser4 utilities";
-    platforms = stdenv.lib.platforms.linux;
+    license = licenses.gpl2;
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/tools/filesystems/relfs/default.nix b/pkgs/tools/filesystems/relfs/default.nix
index 9a8c3ecb0fc8..04a15dfa22be 100644
--- a/pkgs/tools/filesystems/relfs/default.nix
+++ b/pkgs/tools/filesystems/relfs/default.nix
@@ -40,10 +40,12 @@ stdenv.mkDerivation rec {
 		chmod a+x \$out/bin/relfs_grant;
   '';
 
-	meta = {
+	meta = with stdenv.lib; {
 		description = "A relational filesystem on top of FUSE";
-    maintainers = [stdenv.lib.maintainers.raskin];
-		platforms = stdenv.lib.platforms.linux;
+    homepage = http://relfs.sourceforge.net;
+    license = licenses.gpl2;
+    maintainers = [ maintainers.raskin ];
+    platforms = platforms.linux;
     broken = true;
 	};
 }
diff --git a/pkgs/tools/filesystems/tmsu/default.nix b/pkgs/tools/filesystems/tmsu/default.nix
index 359653465059..3c6dd2648ef6 100644
--- a/pkgs/tools/filesystems/tmsu/default.nix
+++ b/pkgs/tools/filesystems/tmsu/default.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation rec {
   name = "tmsu-${version}";
-  version = "0.7.0";
+  version = "0.7.1";
 
   go-sqlite3 = fetchgit {
     url = "git://github.com/mattn/go-sqlite3";
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
     owner = "oniony";
     repo = "tmsu";
     rev = "v${version}";
-    sha256 = "0vccxb8mlr7wf92xawnqpvzwlw2xs3b962hjn09dnd6yxqscql64";
+    sha256 = "0d1sryq80chb9vrf9z0lfx4xb3sdkg01f9hqf3bb9c89vm6v2lwg";
   };
 
   buildInputs = [ go fuse ];
diff --git a/pkgs/tools/filesystems/wdfs/default.nix b/pkgs/tools/filesystems/wdfs/default.nix
index dc725b5078f0..135373e09f42 100644
--- a/pkgs/tools/filesystems/wdfs/default.nix
+++ b/pkgs/tools/filesystems/wdfs/default.nix
@@ -9,9 +9,11 @@ stdenv.mkDerivation rec
   };
   nativeBuildInputs = [ pkgconfig ];
   buildInputs = [fuse glib neon];
-  meta = {
+
+  meta = with stdenv.lib; {
     homepage = http://noedler.de/projekte/wdfs/;
+    license = licenses.gpl2;
     description = "User-space filesystem that allows to mount a webdav share";
-    platforms = stdenv.lib.platforms.linux;
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/tools/graphics/asymptote/default.nix b/pkgs/tools/graphics/asymptote/default.nix
index 1aa4fff82241..a0bf0a434471 100644
--- a/pkgs/tools/graphics/asymptote/default.nix
+++ b/pkgs/tools/graphics/asymptote/default.nix
@@ -1,5 +1,5 @@
 {stdenv, fetchurl
-  , freeglut, ghostscriptX, imagemagick, fftw 
+  , freeglut, ghostscriptX, imagemagick, fftw
   , boehmgc, libGLU, libGL, mesa_noglu, ncurses, readline, gsl, libsigsegv
   , python, zlib, perl, texLive, texinfo, xz
 , darwin
@@ -35,7 +35,7 @@ stdenv.mkDerivation {
 
   preConfigure = ''
     export HOME="$PWD"
-    patchShebangs . 
+    patchShebangs .
     sed -e 's@epswrite@eps2write@g' -i runlabel.in
     xz -d < ${texinfo.src} | tar --wildcards -x texinfo-'*'/doc/texinfo.tex
     cp texinfo-*/doc/texinfo.tex doc/
@@ -63,6 +63,7 @@ stdenv.mkDerivation {
     description =  "A tool for programming graphics intended to replace Metapost";
     license = licenses.gpl3Plus;
     maintainers = [ maintainers.raskin maintainers.peti ];
+    broken = stdenv.isDarwin;  # https://github.com/vectorgraphics/asymptote/issues/69
     platforms = platforms.linux ++ platforms.darwin;
   };
 }
diff --git a/pkgs/tools/graphics/cfdg/default.nix b/pkgs/tools/graphics/cfdg/default.nix
index a4d49edcb447..c65d1302dcaf 100644
--- a/pkgs/tools/graphics/cfdg/default.nix
+++ b/pkgs/tools/graphics/cfdg/default.nix
@@ -27,6 +27,7 @@ stdenv.mkDerivation rec {
     maintainers = with maintainers; [ raskin ];
     platforms = platforms.linux;
     homepage = https://contextfreeart.org/;
+    license = licenses.gpl2;
     downloadPage = "https://contextfreeart.org/mediawiki/index.php/Download_page";
   };
 }
diff --git a/pkgs/tools/graphics/cuneiform/default.nix b/pkgs/tools/graphics/cuneiform/default.nix
index cc899ab104f9..9fcb7ba404d0 100644
--- a/pkgs/tools/graphics/cuneiform/default.nix
+++ b/pkgs/tools/graphics/cuneiform/default.nix
@@ -24,9 +24,11 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ cmake ];
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "Multi-language OCR system";
-    platforms = stdenv.lib.platforms.linux;
-    maintainers = with stdenv.lib.maintainers; [raskin];
+    homepage = https://launchpad.net/cuneiform-linux;
+    license = licenses.bsd3;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.raskin ];
   };
 }
diff --git a/pkgs/tools/graphics/editres/default.nix b/pkgs/tools/graphics/editres/default.nix
index b8f32c33a530..cb83e02689cf 100644
--- a/pkgs/tools/graphics/editres/default.nix
+++ b/pkgs/tools/graphics/editres/default.nix
@@ -15,10 +15,10 @@ stdenv.mkDerivation rec {
 
   hardeningDisable = [ "format" ];
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = https://cgit.freedesktop.org/xorg/app/editres/;
     description = "A dynamic resource editor for X Toolkit applications";
-
-    platforms = stdenv.lib.platforms.linux;
+    license = licenses.mit;
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/tools/graphics/exif/default.nix b/pkgs/tools/graphics/exif/default.nix
index d6ec68ba3cc5..83fec1287a6b 100644
--- a/pkgs/tools/graphics/exif/default.nix
+++ b/pkgs/tools/graphics/exif/default.nix
@@ -11,9 +11,10 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ pkgconfig ];
   buildInputs = [ libexif popt libintl ];
 
-  meta = {
-    homepage = http://libexif.sourceforge.net/;
+  meta = with stdenv.lib; {
+    homepage = https://libexif.github.io;
     description = "A utility to read and manipulate EXIF data in digital photographs";
-    platforms = stdenv.lib.platforms.unix;
+    platforms = platforms.unix;
+    license = licenses.lgpl21;
   };
 }
diff --git a/pkgs/tools/graphics/imgur-screenshot/default.nix b/pkgs/tools/graphics/imgur-screenshot/default.nix
index e9f1ad5dacd7..8db5b6c7dea7 100644
--- a/pkgs/tools/graphics/imgur-screenshot/default.nix
+++ b/pkgs/tools/graphics/imgur-screenshot/default.nix
@@ -21,7 +21,7 @@ in stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A tool for easy screencapping and uploading to imgur";
-    homepage = https://https://github.com/jomo/imgur-screenshot/;
+    homepage = https://github.com/jomo/imgur-screenshot/;
     platforms = platforms.linux;
     license = licenses.mit;
     maintainers = with maintainers; [ lw ];
diff --git a/pkgs/tools/graphics/pdftag/default.nix b/pkgs/tools/graphics/pdftag/default.nix
new file mode 100644
index 000000000000..8428480ca037
--- /dev/null
+++ b/pkgs/tools/graphics/pdftag/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, fetchFromGitHub, pkgconfig, meson, vala, ninja
+, gtk3, poppler, wrapGAppsHook }:
+
+stdenv.mkDerivation rec {
+  pname = "pdftag";
+  name = "${pname}-${version}";
+  version = "1.0.5";
+
+  src = fetchFromGitHub {
+    owner = "arrufat";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1paj8hs27akzsivn01a30fl3zx5gfn1h89wxg2m72fd806hk0hql";
+  };
+
+  nativeBuildInputs = [ pkgconfig meson ninja wrapGAppsHook vala ];
+  buildInputs = [ gtk3 poppler ];
+
+  meta = with stdenv.lib; {
+    description = "Edit metadata found in PDFs";
+    license = licenses.gpl3;
+    maintainers = with maintainers; [ leenaars ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/tools/graphics/qrencode/default.nix b/pkgs/tools/graphics/qrencode/default.nix
index 8e186399d638..7c5aed9b4e23 100644
--- a/pkgs/tools/graphics/qrencode/default.nix
+++ b/pkgs/tools/graphics/qrencode/default.nix
@@ -15,6 +15,7 @@ stdenv.mkDerivation rec {
     homepage = https://fukuchi.org/works/qrencode/;
     description = "QR code encoder";
     platforms = platforms.all;
+    license = licenses.lgpl21Plus;
     maintainers = with maintainers; [ yegortimoshenko ];
   };
 }
diff --git a/pkgs/tools/graphics/wkhtmltopdf/default.nix b/pkgs/tools/graphics/wkhtmltopdf/default.nix
index 3ecd91aaca14..14ba0f8c2a9a 100644
--- a/pkgs/tools/graphics/wkhtmltopdf/default.nix
+++ b/pkgs/tools/graphics/wkhtmltopdf/default.nix
@@ -1,113 +1,21 @@
-{ stdenv, fetchFromGitHub, fetchpatch, qt4, fontconfig, freetype, libpng, zlib, libjpeg
-, openssl, libX11, libXext, libXrender, overrideDerivation }:
+{ stdenv, fetchFromGitHub, qt5, fontconfig, freetype, libpng, zlib, libjpeg
+, openssl, libX11, libXext, libXrender }:
 
 stdenv.mkDerivation rec {
-  version = "0.12.4";
+  version = "0.12.5";
   name = "wkhtmltopdf-${version}";
 
   src = fetchFromGitHub {
     owner  = "wkhtmltopdf";
     repo   = "wkhtmltopdf";
     rev    = version;
-    sha256 = "09yzj9ylc6ci4a1qlhz60cgxi1nm9afwjrjxfikf8wwjd3i24vp2";
+    sha256 = "0i6b6z3f4szspbbi23qr3hv22j9bhmcj7c1jizr7y0ra43mrgws1";
   };
 
-  wkQt = overrideDerivation qt4 (deriv: {
-    name = "qt-mod-4.8.7";
-    enableParallelBuilding = true;
-    src = fetchFromGitHub {
-      owner  = "wkhtmltopdf";
-      repo   = "qt";
-      rev    = "fe194f9dac0b515757392a18f7fc9527c91d45ab"; # From git submodule spec in wkhtml repo.
-      sha256 = "1j2ld2bfacnn3vm2l1870v55sj82bq4y8zkawmlx2y5j63d8vr23";
-    };
-    configureFlags =
-      ''
-        -dbus-linked
-        -glib
-        -no-separate-debug-info
-        -openssl-linked
-        -qdbus
-        -v
-      ''
-      + # This is taken from the wkhtml build script that we don't run
-      ''
-        -confirm-license
-        -exceptions
-        -fast
-        -graphicssystem raster
-        -iconv
-        -largefile
-        -no-3dnow
-        -no-accessibility
-        -no-audio-backend
-        -no-avx
-        -no-cups
-        -no-dbus
-        -no-declarative
-        -no-glib
-        -no-gstreamer
-        -no-gtkstyle
-        -no-icu
-        -no-javascript-jit
-        -no-libmng
-        -no-libtiff
-        -nomake demos
-        -nomake docs
-        -nomake examples
-        -nomake tests
-        -nomake tools
-        -nomake translations
-        -no-mitshm
-        -no-mmx
-        -no-multimedia
-        -no-nas-sound
-        -no-neon
-        -no-nis
-        -no-opengl
-        -no-openvg
-        -no-pch
-        -no-phonon
-        -no-phonon-backend
-        -no-qt3support
-        -no-rpath
-        -no-scripttools
-        -no-sm
-        -no-sql-ibase
-        -no-sql-mysql
-        -no-sql-odbc
-        -no-sql-psql
-        -no-sql-sqlite
-        -no-sql-sqlite2
-        -no-sse
-        -no-sse2
-        -no-sse3
-        -no-sse4.1
-        -no-sse4.2
-        -no-ssse3
-        -no-stl
-        -no-xcursor
-        -no-xfixes
-        -no-xinerama
-        -no-xinput
-        -no-xkb
-        -no-xrandr
-        -no-xshape
-        -no-xsync
-        -opensource
-        -release
-        -static
-        -system-libjpeg
-        -system-libpng
-        -system-zlib
-        -webkit
-        -xmlpatterns
-      '';
-  });
-
   buildInputs = [
-    wkQt fontconfig freetype libpng zlib libjpeg openssl
+    fontconfig freetype libpng zlib libjpeg openssl
     libX11 libXext libXrender
+    qt5.qtwebkit qt5.qtsvg
   ];
 
   prePatch = ''
@@ -116,14 +24,6 @@ stdenv.mkDerivation rec {
     done
   '';
 
-  patches = [
-    (fetchpatch {
-      name = "make-0.12.4-compile.patch";
-      url = "https://github.com/efx/aports/raw/eb9f8e6bb9a488460929db747b15b8fceddd7abd/testing/wkhtmltopdf/10-patch1.patch";
-      sha256 = "1c136jz0klr2rmhmy13gdbgsgkpjfdp2sif8bnw8d23mr9pym3s1";
-    })
-  ];
-
   configurePhase = "qmake wkhtmltopdf.pro INSTALLBASE=$out";
 
   enableParallelBuilding = true;
diff --git a/pkgs/tools/graphics/wkhtmltopdf/makefix.patch b/pkgs/tools/graphics/wkhtmltopdf/makefix.patch
deleted file mode 100644
index 0642a23afa9e..000000000000
--- a/pkgs/tools/graphics/wkhtmltopdf/makefix.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-diff -Naur a/src/image/image.pro b/src/image/image.pro
---- a/src/image/image.pro	2014-08-28 14:07:51.024561967 +0200
-+++ b/src/image/image.pro	2014-08-28 14:08:22.383623390 +0200
-@@ -25,7 +25,7 @@
- 
- unix {
-     man.path=$$INSTALLBASE/share/man/man1
--    man.extra=LD_LIBRARY_PATH=../../bin/ ../../bin/wkhtmltoimage --manpage | gzip > $(INSTALL_ROOT)/share/man/man1/wkhtmltoimage.1.gz
-+    man.extra=LD_LIBRARY_PATH=../../bin/ ../../bin/wkhtmltoimage --manpage | gzip > $$INSTALLBASE/share/man/man1/wkhtmltoimage.1.gz
- 
-     QMAKE_EXTRA_TARGETS += man
-     INSTALLS += man
-diff -Naur a/src/pdf/pdf.pro b/src/pdf/pdf.pro
---- a/src/pdf/pdf.pro	2014-08-28 14:10:02.305818775 +0200
-+++ b/src/pdf/pdf.pro	2014-08-28 14:09:47.360789555 +0200
-@@ -25,7 +25,7 @@
- 
- unix {
-     man.path=$$INSTALLBASE/share/man/man1
--    man.extra=LD_LIBRARY_PATH=../../bin/ ../../bin/wkhtmltopdf --manpage | gzip > $(INSTALL_ROOT)/share/man/man1/wkhtmltopdf.1.gz
-+    man.extra=LD_LIBRARY_PATH=../../bin/ ../../bin/wkhtmltopdf --manpage | gzip > $$INSTALLBASE/share/man/man1/wkhtmltopdf.1.gz
- 
-     QMAKE_EXTRA_TARGETS += man
-     INSTALLS += man
diff --git a/pkgs/tools/misc/bat/default.nix b/pkgs/tools/misc/bat/default.nix
index 03895f6c8478..01e720e5b877 100644
--- a/pkgs/tools/misc/bat/default.nix
+++ b/pkgs/tools/misc/bat/default.nix
@@ -1,24 +1,24 @@
-{ stdenv, rustPlatform, fetchFromGitHub, cmake, pkgconfig, zlib, libiconv, darwin }:
+{ stdenv, rustPlatform, fetchFromGitHub, cmake, pkgconfig, zlib
+, Security, libiconv
+}:
 
 rustPlatform.buildRustPackage rec {
   name    = "bat-${version}";
-  version = "0.6.1";
+  version = "0.7.0";
 
   src = fetchFromGitHub {
     owner  = "sharkdp";
     repo   = "bat";
     rev    = "v${version}";
-    sha256 = "19xmj3a3npx4v1mlvd31r3icml73mxjq6la5qifb2i35ciqnx9bd";
+    sha256 = "1dhn88asf08dvl4827v4mkxafcr01m1h5jmicvzda9ywmr82g1cs";
     fetchSubmodules = true;
   };
 
-  cargoSha256 = "062vvpj514h85h9gm3jipp6z256cnnbxbjy7ja6bm7i6bpglyvvi";
+  cargoSha256 = "10s8ig08prs1wcsisrllvsixqkrkwjx769y1w5fypldn9kfk2lka";
 
   nativeBuildInputs = [ cmake pkgconfig zlib ];
 
-  buildInputs = [ libiconv ] ++ stdenv.lib.optionals stdenv.isDarwin [
-    darwin.apple_sdk.frameworks.Security
-  ];
+  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security libiconv ];
 
   meta = with stdenv.lib; {
     description = "A cat(1) clone with syntax highlighting and Git integration";
diff --git a/pkgs/tools/misc/calamares/default.nix b/pkgs/tools/misc/calamares/default.nix
index e154e217e951..c799b08bd446 100644
--- a/pkgs/tools/misc/calamares/default.nix
+++ b/pkgs/tools/misc/calamares/default.nix
@@ -7,12 +7,12 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "calamares";
-  version = "3.2.1";
+  version = "3.2.2";
 
   # release including submodule
   src = fetchurl {
     url = "https://github.com/${pname}/${pname}/releases/download/v${version}/${name}.tar.gz";
-    sha256 = "06i1fivcdzdf6fzj4db3izqcgy5q4wwgsmlx24szi88rd2j6prx9";
+    sha256 = "14hsv2m0jza33kf68l3rhqfjj7224fmvgvk1kg2qwhvplpjdn16v";
   };
 
   buildInputs = [
diff --git a/pkgs/tools/misc/cloc/default.nix b/pkgs/tools/misc/cloc/default.nix
index 97c0251d9d64..0eff3f0c3916 100644
--- a/pkgs/tools/misc/cloc/default.nix
+++ b/pkgs/tools/misc/cloc/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   name = "cloc-${version}";
-  version = "1.76";
+  version = "1.78";
 
   src = fetchFromGitHub {
     owner = "AlDanial";
     repo = "cloc";
-    rev = "v${version}";
-    sha256 = "03z4ar959ximsddd92zchi013lh82ganzisk309y3b09q10hl9k7";
+    rev = version;
+    sha256 = "030cnvl83hgynri3jimhhqp238375m1g6liqfiggl0habrnlbck2";
   };
 
   setSourceRoot = ''
diff --git a/pkgs/tools/misc/cloud-utils/default.nix b/pkgs/tools/misc/cloud-utils/default.nix
index fd6df64e5e76..bda8ebcf3b0e 100644
--- a/pkgs/tools/misc/cloud-utils/default.nix
+++ b/pkgs/tools/misc/cloud-utils/default.nix
@@ -30,5 +30,8 @@ stdenv.mkDerivation rec {
 
   dontBuild = true;
 
-  meta.platforms = stdenv.lib.platforms.unix;
+  meta = with stdenv.lib; {
+    platforms = platforms.unix;
+    license = licenses.gpl3;
+  };
 }
diff --git a/pkgs/tools/misc/ddcutil/default.nix b/pkgs/tools/misc/ddcutil/default.nix
index 35c18954bf3f..ec2a2e4b7dd7 100644
--- a/pkgs/tools/misc/ddcutil/default.nix
+++ b/pkgs/tools/misc/ddcutil/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   name = "ddcutil-${version}";
-  version = "0.9.1";
+  version = "0.9.2";
 
   src = fetchFromGitHub {
     owner  = "rockowitz";
     repo   = "ddcutil";
     rev    = "v${version}";
-    sha256 = "0chs5bfw4yjnr7brhxxqydybcxdkjv4gnik2s0cvjzcj3bqnz73b";
+    sha256 = "0mpd3j570yyfm9ki5in9i92nzg25ahmdfp2f7yby7xnqiy53zd8w";
   };
 
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
@@ -22,6 +22,7 @@ stdenv.mkDerivation rec {
     homepage    = http://www.ddcutil.com/;
     description = "Query and change Linux monitor settings using DDC/CI and USB";
     license     = licenses.gpl2;
+    platforms   = platforms.linux;
     maintainers = with maintainers; [ rnhmjoj ];
   };
 }
diff --git a/pkgs/tools/misc/debootstrap/default.nix b/pkgs/tools/misc/debootstrap/default.nix
index a11e8a44de92..4e8eb0411d1a 100644
--- a/pkgs/tools/misc/debootstrap/default.nix
+++ b/pkgs/tools/misc/debootstrap/default.nix
@@ -4,13 +4,13 @@
 # There is also cdebootstrap now. Is that easier to maintain?
 stdenv.mkDerivation rec {
   name = "debootstrap-${version}";
-  version = "1.0.107";
+  version = "1.0.108";
 
   src = fetchurl {
     # git clone git://git.debian.org/d-i/debootstrap.git
     # I'd like to use the source. However it's lacking the lanny script ? (still true?)
     url = "mirror://debian/pool/main/d/debootstrap/debootstrap_${version}.tar.gz";
-    sha256 = "1gq5r4fa0hrq4c69l2s0ygnfyvr90k2wqaq15s869hayhnssx4g1";
+    sha256 = "1zfp6i6mskgx3b186sbd1443031h9z01yfqgynhl848faknv4h9f";
   };
 
   buildInputs = [ dpkg gettext gawk perl wget ];
diff --git a/pkgs/tools/misc/desktop-file-utils/default.nix b/pkgs/tools/misc/desktop-file-utils/default.nix
index a6280ff4008a..70bc34954b2c 100644
--- a/pkgs/tools/misc/desktop-file-utils/default.nix
+++ b/pkgs/tools/misc/desktop-file-utils/default.nix
@@ -17,5 +17,6 @@ stdenv.mkDerivation rec {
     homepage = http://www.freedesktop.org/wiki/Software/desktop-file-utils;
     description = "Command line utilities for working with .desktop files";
     platforms = platforms.linux ++ platforms.darwin;
+    license = licenses.gpl2;
   };
 }
diff --git a/pkgs/tools/misc/ent/default.nix b/pkgs/tools/misc/ent/default.nix
index f4354ad2416c..d4f69340d0ae 100644
--- a/pkgs/tools/misc/ent/default.nix
+++ b/pkgs/tools/misc/ent/default.nix
@@ -21,9 +21,10 @@ stdenv.mkDerivation rec {
     cp ent $out/bin/
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "Pseudorandom Number Sequence Test Program";
     homepage = http://www.fourmilab.ch/random/;
-    platforms = stdenv.lib.platforms.all;
+    platforms = platforms.all;
+    license = licenses.publicDomain;
   };
 }
diff --git a/pkgs/tools/misc/execline/default.nix b/pkgs/tools/misc/execline/default.nix
index 360808f4280b..f0dc3ab64604 100644
--- a/pkgs/tools/misc/execline/default.nix
+++ b/pkgs/tools/misc/execline/default.nix
@@ -1,27 +1,18 @@
-{ stdenv, fetchgit, skalibs }:
+{ stdenv, skawarePackages }:
 
-let
+with skawarePackages;
 
-  version = "2.5.0.0";
+buildPackage {
+  pname = "execline";
+  version = "2.5.0.1";
+  sha256 = "0j8hwdw8wn0rv8njdza8fbgmvyjg7hqp3qlbw00i7fwskr7d21wd";
 
-in stdenv.mkDerivation rec {
-
-  name = "execline-${version}";
-
-  src = fetchgit {
-    url = "git://git.skarnet.org/execline";
-    rev = "refs/tags/v${version}";
-    sha256 = "19vd8252g5bmzm4i9gybpj7i2mhsflcgfl4ns5k3g1vv7f69i1dn";
-  };
+  description = "A small scripting language, to be used in place of a shell in non-interactive scripts";
 
   outputs = [ "bin" "lib" "dev" "doc" "out" ];
 
-  dontDisableStatic = true;
-
-  enableParallelBuilding = true;
-
+  # TODO: nsss support
   configureFlags = [
-    "--enable-absolute-paths"
     "--libdir=\${lib}/lib"
     "--dynlibdir=\${lib}/lib"
     "--bindir=\${bin}/bin"
@@ -30,22 +21,15 @@ in stdenv.mkDerivation rec {
     "--with-include=${skalibs.dev}/include"
     "--with-lib=${skalibs.lib}/lib"
     "--with-dynlib=${skalibs.lib}/lib"
-  ]
-  ++ (if stdenv.isDarwin then [ "--disable-shared" ] else [ "--enable-shared" ])
-  ++ (stdenv.lib.optional stdenv.isDarwin "--build=${stdenv.hostPlatform.system}");
+  ];
 
   postInstall = ''
-    mkdir -p $doc/share/doc/execline
+    # remove all execline executables from build directory
+    rm $(find -type f -mindepth 1 -maxdepth 1 -executable)
+    rm libexecline.*
+
     mv doc $doc/share/doc/execline/html
     mv examples $doc/share/doc/execline/examples
   '';
 
-  meta = {
-    homepage = http://skarnet.org/software/execline/;
-    description = "A small scripting language, to be used in place of a shell in non-interactive scripts";
-    platforms = stdenv.lib.platforms.all;
-    license = stdenv.lib.licenses.isc;
-    maintainers = with stdenv.lib.maintainers; [ pmahoney Profpatsch ];
-  };
-
 }
diff --git a/pkgs/tools/misc/grub/default.nix b/pkgs/tools/misc/grub/default.nix
index 6ba931ad80d6..f5ba8b7fe100 100644
--- a/pkgs/tools/misc/grub/default.nix
+++ b/pkgs/tools/misc/grub/default.nix
@@ -1,52 +1,30 @@
 {stdenv, fetchurl, autoreconfHook, texinfo, buggyBiosCDSupport ? true}:
 
+let
+in
 stdenv.mkDerivation {
-  name = "grub-0.97-patch-1.12";
+  name = "grub-0.97-73";
 
   src = fetchurl {
     url = ftp://alpha.gnu.org/gnu/grub/grub-0.97.tar.gz;
     sha256 = "02r6b52r0nsp6ryqfiqchnl7r1d9smm80sqx24494gmx5p8ia7af";
   };
 
-  # Lots of patches from Gentoo, in particular splash screen support
-  # (not the fancy SUSE gfxmenu stuff though).  Also a fix for boot
-  # failures on systems with more than 2 GiB RAM, and for booting from
-  # ext3 filesystems with 256-byte inodes as well as ext4 filesystems.
-  gentooPatches = fetchurl {
-    url = mirror://gentoo/distfiles/grub-0.97-patches-1.12.tar.bz2;
-    sha256 = "15xc5349hkzl03lbn2cadrmvjrf3s8sn147vv2142cwys9sdzkl0";
-  };
-
   patches = [
     # Properly handle the case of symlinks such as
     # /dev/disk/by-label/bla.  The symlink resolution code in
     # grub-install isn't smart enough.
     ./symlink.patch
-
-    # Provide support for the "savedefault --once" command in the Grub
-    # shell.  KDE uses this to allow rebooting into a non-default
-    # entry.
-    (fetchurl {
-      url = "https://raw.github.com/andatche/centos-grub/master/SOURCES/grub-0.97-once.patch";
-      sha256 = "1g5qfn8lvl32h4pggdf7dmjqjpi42jblknzakb5h909fi5i1qyw8";
-    })
-
-  ] ++ (stdenv.lib.optional buggyBiosCDSupport ./buggybios.patch);
+  ]
+  ++ (stdenv.lib.optional buggyBiosCDSupport ./buggybios.patch)
+  ++ map fetchurl (import ./grub1.patches.nix)
+  ;
 
   # autoreconfHook required for the splashimage patch.
   nativeBuildInputs = [ autoreconfHook ];
   buildInputs = [ texinfo ];
 
-  hardeningDisable = [ "stackprotector" ];
-
-  prePatch = ''
-    unpackFile $gentooPatches
-    rm patch/400_all_grub-0.97-reiser4-20050808-gentoo.patch
-    for i in patch/*.patch; do
-      echo "applying patch $i"
-      patch -p1 < $i || patch -p0 < $i
-    done
-  '';
+  hardeningDisable = [ "format" "stackprotector" ];
 
   passthru.grubTarget = "";
 
diff --git a/pkgs/tools/misc/grub/grub1.patches.nix b/pkgs/tools/misc/grub/grub1.patches.nix
new file mode 100644
index 000000000000..5ee8722b5eca
--- /dev/null
+++ b/pkgs/tools/misc/grub/grub1.patches.nix
@@ -0,0 +1,34 @@
+# Generated by grub1-patches.sh
+let
+  prefix = "https://salsa.debian.org/grub-team/grub-legacy/raw/1dad5507d74ef97fdd3c6cf2a028084f6f2850c3/debian/patches";
+in
+[
+{ url = "${prefix}/snapshot.patch"; sha256 = "0ixymrn5w1dq0kkxnzdjwwvhjchgyrlivfvnrfncxcv30v84xzna"; }
+{ url = "${prefix}/menu.lst_gnu-hurd.patch"; sha256 = "0mz8dvgmxlyrl28dza1ncfq1xipihxgymw4aw688bgg7xxmw7jbs"; }
+{ url = "${prefix}/graphics.patch"; sha256 = "1v9kp832f3rhncfdrd28djhw0zfrznfmiadch33mclnkcxprcqcs"; }
+{ url = "${prefix}/raid.patch"; sha256 = "0cq6dz5s7m48g76frvbf296bv4pvqkxqcbydsvs43ymqdsary7hj"; }
+{ url = "${prefix}/raid_cciss.patch"; sha256 = "0sy5xvzjsllgbn26nykkq4b69lp1fcwjkjs2kmxq38sk3dzadjfl"; }
+{ url = "${prefix}/xfs_freeze.patch"; sha256 = "1wqgj8ar4x4zwa37bj4a7kldiz5v92msigy3cv879nnk6sz4rmhg"; }
+{ url = "${prefix}/2gb_limit.patch"; sha256 = "06f9lfl4va3alz87wzli0df5ay0xxlqj2akr2dcay6jr27z6ks29"; }
+{ url = "${prefix}/grub-special_device_names.patch"; sha256 = "098608xh20sqdjqf42fm2z23r8xd9ify1v0vmy1j9qhrhk3g9qyz"; }
+{ url = "${prefix}/grub-xvd_drives.patch"; sha256 = "13k0m1c1w5d1d4qd1bshjc8kp7qba4agk2j64gb7mg8vfzjd35bj"; }
+{ url = "${prefix}/initrd_max_address.patch"; sha256 = "05q90rxdnyncpanhbkrknshkk7g8ff4v8fpk7wj4sg8666d9llg3"; }
+{ url = "${prefix}/splashimage_help.patch"; sha256 = "1lj3xh56wf1pdcf0fg585vmggrz7qqfzbhg91qv0rf4snf3ybfvr"; }
+{ url = "${prefix}/grub-install_addsyncs.patch"; sha256 = "1dzcpxi806kw3j8mx4amyy4ibc0ir3qhqyyyxz3w43741p351r65"; }
+{ url = "${prefix}/grub-install_regexp.patch"; sha256 = "0ph9lb63x858019c25aa3fpsm8rzn00ad8fp88yqqvq0xq2jxq69"; }
+{ url = "${prefix}/grub-install_aoe_support.patch"; sha256 = "19szmvg13h2hhijrwbgdszldg26iz7vjnagvajxb7nav7vca6k3n"; }
+{ url = "${prefix}/grub-install_xvd.patch"; sha256 = "1cgh731nhs0chj2r2dzh5dcfj5xmap34i3fk0i0aq59j83cwflgz"; }
+{ url = "${prefix}/geometry-26kernel.patch"; sha256 = "01vka7jrxrwlj9m1d6schygyh964a3k1rdrm3j9x910xkz74i13n"; }
+{ url = "${prefix}/print_func.patch"; sha256 = "0dvrcy1i58fgrv2x1qniqfr5az9b834hm5l94k0cy8ii2nfvk27g"; }
+{ url = "${prefix}/mprotect.patch"; sha256 = "0ahgnhgw2b86j024ajs6m3h2fy2shqdssjzz0ahk8ny9f4mnvns6"; }
+{ url = "${prefix}/savedefault.patch"; sha256 = "1l6x1s9mxkrf3k4j9dpg7qhvrk816vs70sw073iiisvqspnrz2j3"; }
+{ url = "${prefix}/find-grub-dir.patch"; sha256 = "1vkgig4dylji03jflwikhap87lz8l470ck1bhmcy8jh0slg6ndbf"; }
+{ url = "${prefix}/intelmac.patch"; sha256 = "04l9mk9xm9ml8vdlpbv3qbj7gbaa0g5k4dl7xp8wm7kmqwxd9l3m"; }
+{ url = "${prefix}/crossreference_manpages.patch"; sha256 = "0kd12ck4s4bg414fmllgvq8n4b58i3kgdhmcx6riaz43gg2g2b9p"; }
+{ url = "${prefix}/ext3_256byte_inode.patch"; sha256 = "0ay9svbdj7mw8p1ld0iiryg6nhd9hc1xpmr9rqg9990xzmg2h4pi"; }
+{ url = "${prefix}/objcopy-absolute.patch"; sha256 = "0hkmicjli7bsmc56kr40ls21v6x3yd188xpwc08dvqxnb0763077"; }
+{ url = "${prefix}/no-reorder-functions.patch"; sha256 = "0gmv0nzkqim2901hd0an90kwnr83155qp2zjp52biznad2p415gw"; }
+{ url = "${prefix}/modern-automake.patch"; sha256 = "08l3y6cbk6gfj63kpqlpzrlain7nmvki7jjjxq86n7himj078znj"; }
+{ url = "${prefix}/no-combine-stack-adjustments.patch"; sha256 = "0h4di8zja0rg45rs02x9qm8q1vxly1bcl6ms08wgdl5ywn6849nr"; }
+{ url = "${prefix}/no-pie.patch"; sha256 = "0kshdsclza7lsd31apd28qq04arv42nd6wsj2v6q6jx7f8bgdaqw"; }
+]
diff --git a/pkgs/tools/misc/grub/grub1.patches.sh b/pkgs/tools/misc/grub/grub1.patches.sh
new file mode 100755
index 000000000000..d3b138ad3577
--- /dev/null
+++ b/pkgs/tools/misc/grub/grub1.patches.sh
@@ -0,0 +1,70 @@
+#!/usr/bin/env nix-shell
+#!nix-shell -p nix -i bash --pure
+
+# Does like `maintainers/scripts/debian-patches.sh`, but specialized for
+# grub1 patches, and using the new salsa service.
+
+# Most common usage: `pkgs/tools/misc/grub/grub1.patches.sh pkgs/tools/misc/grub/grub1.patches.nix`
+# That is, after updating the script with the new list from the series file,
+# removing (by commenting) patches as required.
+
+set -e
+set -u
+
+# https://salsa.debian.org/grub-team/grub-legacy/tree/master/debian/patches
+SERIES=(
+	snapshot.patch
+	menu.lst_gnu-hurd.patch
+	graphics.patch
+	raid.patch
+	raid_cciss.patch
+	xfs_freeze.patch
+	2gb_limit.patch
+	grub-special_device_names.patch
+	grub-xvd_drives.patch
+	initrd_max_address.patch
+	splashimage_help.patch
+	grub-install_addsyncs.patch
+	grub-install_regexp.patch
+	grub-install_aoe_support.patch
+	grub-install_xvd.patch
+	geometry-26kernel.patch
+	print_func.patch
+	mprotect.patch
+	savedefault.patch
+	find-grub-dir.patch
+	intelmac.patch
+	crossreference_manpages.patch
+	ext3_256byte_inode.patch
+    # Breaks on NixOS.
+	#use_grub-probe_in_grub-install.patch
+	objcopy-absolute.patch
+	no-reorder-functions.patch
+
+	# We aren't building amd64 binaries, see #244498
+	#fix_amd64_compile.patch
+	modern-automake.patch
+	no-combine-stack-adjustments.patch
+	no-pie.patch
+)
+
+# Revision mapping to current tip of the 0.97-73 branch.
+rev="1dad5507d74ef97fdd3c6cf2a028084f6f2850c3"
+prefix="https://salsa.debian.org/grub-team/grub-legacy/raw/${rev}/debian/patches"
+FILE="$1"
+shift
+
+cat <<EOF > "$FILE"
+# Generated by grub1-patches.sh
+let
+  prefix = "${prefix}";
+in
+[
+EOF
+
+for PATCH in "${SERIES[@]}"; do
+	URL="$prefix/$PATCH"
+	HASH="$(nix-prefetch-url "$URL")"
+	echo "{ url = \"\${prefix}/$PATCH\"; sha256 = \"$HASH\"; }" >> "$FILE"
+done
+echo "]" >> "$FILE"
diff --git a/pkgs/tools/misc/hashit/default.nix b/pkgs/tools/misc/hashit/default.nix
new file mode 100644
index 000000000000..69d73aafff92
--- /dev/null
+++ b/pkgs/tools/misc/hashit/default.nix
@@ -0,0 +1,39 @@
+{ stdenv, fetchFromGitHub, meson, ninja, pkgconfig, cmake, vala, python3, gnome3, gtk3, granite, gobjectIntrospection, wrapGAppsHook }:
+
+stdenv.mkDerivation rec {
+  pname = "hashit";
+  version = "0.2.0";
+
+  name = "${pname}-${version}";
+
+  src = fetchFromGitHub {
+    owner = "artemanufrij";
+    repo = pname;
+    rev = version;
+    sha256 = "1d2g7cm7hhs354waidak9xkhhcvqlwnsl9d0bar9p82gfnpjdg7v";
+  };
+
+  nativeBuildInputs = [
+    gobjectIntrospection
+    meson
+    ninja
+    pkgconfig
+    python3
+    vala
+    wrapGAppsHook
+  ];
+
+  buildInputs = [
+    granite
+    gtk3
+    gnome3.libgee
+  ];
+
+  meta = with stdenv.lib; {
+    description = "A simple app for checking usual checksums";
+    homepage    = https://github.com/artemanufrij/hashit;
+    license     = licenses.gpl2Plus;
+    maintainers = with maintainers; [ worldofpeace ];
+    platforms   = platforms.linux;
+  };
+}
diff --git a/pkgs/tools/misc/hdaps-gl/default.nix b/pkgs/tools/misc/hdaps-gl/default.nix
new file mode 100644
index 000000000000..8b19cd038951
--- /dev/null
+++ b/pkgs/tools/misc/hdaps-gl/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, fetchzip, freeglut, libGL, libGLU }:
+
+let version = "0.0.5"; in
+stdenv.mkDerivation {
+      name = "hdaps-gl-${version}";
+      src = fetchzip {
+            url = "mirror://sourceforge/project/hdaps/hdaps-gl/hdaps-gl-${version}/hdaps-gl-${version}.tar.gz";
+            sha256 = "16fk4k0lvr4c95vd6c7qdylcqa1h5yjp3xm4xwipdjbp0bvsgxq4";
+      };
+
+      buildInputs = [ freeglut libGL libGLU ];
+
+      # the Makefile has no install target
+      installPhase = ''
+            install -Dt $out/bin ./hdaps-gl
+      '';
+
+      meta = with stdenv.lib; {
+            description = "GL-based laptop model that rotates in real-time via hdaps";
+            homepage = https://sourceforge.net/projects/hdaps/;
+            license = licenses.gpl2;
+            platforms = platforms.linux;
+            maintainers = [ maintainers.symphorien ];
+      };
+}
diff --git a/pkgs/tools/misc/hebcal/default.nix b/pkgs/tools/misc/hebcal/default.nix
index fb6944c1cf36..da231c16cc90 100644
--- a/pkgs/tools/misc/hebcal/default.nix
+++ b/pkgs/tools/misc/hebcal/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchFromGitHub, autoreconfHook }:
 
 stdenv.mkDerivation rec {
-  version = "4.13";
+  version = "4.14";
   name = "hebcal-${version}";
 
   src = fetchFromGitHub {
     owner = "hebcal";
     repo = "hebcal";
     rev = "v${version}";
-    sha256 = "0h9hbfkbq620sw9gnnkivv7yi7dnp1k6axzwr0yccbv5cg67xs3h";
+    sha256 = "1zq8f7cigh5r31p03az338sbygkx8gbday35c9acppglci3r8fvc";
   };
 
   nativeBuildInputs = [ autoreconfHook ];
diff --git a/pkgs/tools/misc/kdecoration-viewer/default.nix b/pkgs/tools/misc/kdecoration-viewer/default.nix
index 62783bb30dff..5c2e410cd930 100644
--- a/pkgs/tools/misc/kdecoration-viewer/default.nix
+++ b/pkgs/tools/misc/kdecoration-viewer/default.nix
@@ -2,13 +2,13 @@
 , cmake, extra-cmake-modules, qtquickcontrols, kconfigwidgets, kdeclarative, kdecoration }:
 
 stdenv.mkDerivation rec {
-  name = "kdecoration-viewer-2015-08-20";
+  name = "kdecoration-viewer-2018-07-24";
 
   src = fetchFromGitHub {
     owner = "KDE";
     repo = "kdecoration-viewer";
-    rev = "d7174acee01475fbdb71cfd48ca49d487a141701";
-    sha256 = "1cc4xxv72a82p1w9r76090xba7g069r41bi4zx32k4gz3vyl1am6";
+    rev = "6e50b39c651bbf92fd7e7116d43bf57288254288";
+    sha256 = "01v6i081vx0mydqvnj05xli86m52v6bxxc3z1zlyyap9cfhag7lj";
   };
 
   nativeBuildInputs = [ cmake extra-cmake-modules ];
diff --git a/pkgs/tools/misc/kt/default.nix b/pkgs/tools/misc/kt/default.nix
index eb0f78e787ab..be0ceda511c4 100644
--- a/pkgs/tools/misc/kt/default.nix
+++ b/pkgs/tools/misc/kt/default.nix
@@ -18,5 +18,6 @@ buildGoPackage rec {
     homepage = https://github.com/fgeller/kt;
     maintainers = with maintainers; [ utdemir ];
     platforms = with platforms; unix;
+    license = licenses.mit;
   };
 }
diff --git a/pkgs/tools/misc/lockfile-progs/default.nix b/pkgs/tools/misc/lockfile-progs/default.nix
index 308b5217a6fc..e851855834a4 100644
--- a/pkgs/tools/misc/lockfile-progs/default.nix
+++ b/pkgs/tools/misc/lockfile-progs/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   _name   = "lockfile-progs";
-  version = "0.1.17";
+  version = "0.1.18";
   name    = "${_name}-${version}";
 
   src = fetchurl {
     url = "mirror://debian/pool/main/l/${_name}/${_name}_${version}.tar.gz";
-    sha256 = "04f5cvhrld15w58wkg6k2azywszsc5xp9cbmfx4jylwrak90byq3";
+    sha256 = "1rjwn3fh2hy8hmpr66y8yp7v5i3325v1mk0gr7pqhqbyp6j9aad4";
   };
 
   buildInputs = [ liblockfile ];
diff --git a/pkgs/tools/misc/mbuffer/default.nix b/pkgs/tools/misc/mbuffer/default.nix
index 664c5cc8e78e..5eefc94a2cd6 100644
--- a/pkgs/tools/misc/mbuffer/default.nix
+++ b/pkgs/tools/misc/mbuffer/default.nix
@@ -3,12 +3,12 @@
  } :
 
 stdenv.mkDerivation rec {
-  version = "20180318";
+  version = "20180625";
   name = "mbuffer-${version}";
 
   src = fetchurl {
     url = "http://www.maier-komor.de/software/mbuffer/mbuffer-${version}.tgz";
-    sha256 = "1sh0ipf77aav1k17dgl9dcjlb17zygs07x01g0nn0cg7yw5y5hfk";
+    sha256 = "174m3zbm0qb68p1qng1vldcs23s7qjhyf7d39sw3r03m7y7f5g5p";
   };
 
   buildInputs = [ openssl ];
diff --git a/pkgs/tools/misc/mdbtools/default.nix b/pkgs/tools/misc/mdbtools/default.nix
index acb3bd9d3773..d251bee71d96 100644
--- a/pkgs/tools/misc/mdbtools/default.nix
+++ b/pkgs/tools/misc/mdbtools/default.nix
@@ -15,8 +15,10 @@ stdenv.mkDerivation {
     sed -e 's@static \(GHashTable [*]mdb_backends;\)@\1@' -i src/libmdb/backend.c
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     description = ".mdb (MS Access) format tools";
-    platforms = stdenv.lib.platforms.unix;
+    homepage = http://mdbtools.sourceforge.net;
+    platforms = platforms.unix;
+    license = with licenses; [ gpl2 lgpl2 ];
   };
 }
diff --git a/pkgs/tools/misc/mdbtools/git.nix b/pkgs/tools/misc/mdbtools/git.nix
index 2116815ed0c3..b275002e1105 100644
--- a/pkgs/tools/misc/mdbtools/git.nix
+++ b/pkgs/tools/misc/mdbtools/git.nix
@@ -26,8 +26,10 @@ stdenv.mkDerivation {
     sed -e 's@static \(GHashTable [*]mdb_backends;\)@\1@' -i src/libmdb/backend.c
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     description = ".mdb (MS Access) format tools";
-    platforms = stdenv.lib.platforms.linux;
+    homepage = http://mdbtools.sourceforge.net;
+    platforms = platforms.linux;
+    license = with licenses; [ gpl2 lgpl2 ];
   };
 }
diff --git a/pkgs/tools/misc/noti/default.nix b/pkgs/tools/misc/noti/default.nix
new file mode 100644
index 000000000000..ac5b4199c216
--- /dev/null
+++ b/pkgs/tools/misc/noti/default.nix
@@ -0,0 +1,38 @@
+{ stdenv, buildGoPackage, fetchFromGitHub }:
+
+buildGoPackage rec {
+  name = "noti-${version}";
+  version = "3.1.0";
+
+  src = fetchFromGitHub {
+    owner = "variadico";
+    repo = "noti";
+    rev = "${version}";
+    sha256 = "1chsqfqk0pnhx5k2nr4c16cpb8m6zv69l1jvv4v4903zgfzcm823";
+  };
+
+  goPackagePath = "github.com/variadico/noti";
+
+  preBuild = ''
+    buildFlagsArray+=("-ldflags" "-X ${goPackagePath}/internal/command.Version=${version}")
+  '';
+
+  postInstall = ''
+    mkdir -p $out/share/man/man{1,5}/
+    cp $src/docs/man/noti.1      $out/share/man/man1/
+    cp $src/docs/man/noti.yaml.5 $out/share/man/man5/
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Monitor a process and trigger a notification.";
+    longDescription = ''
+      Monitor a process and trigger a notification.
+
+      Never sit and wait for some long-running process to finish. Noti can alert you when it's done. You can receive messages on your computer or phone.
+    '';
+    homepage = https://github.com/variadico/noti;
+    license = licenses.mit;
+    maintainers = [ maintainers.stites ];
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/tools/misc/nvramtool/default.nix b/pkgs/tools/misc/nvramtool/default.nix
new file mode 100644
index 000000000000..fdce7076661a
--- /dev/null
+++ b/pkgs/tools/misc/nvramtool/default.nix
@@ -0,0 +1,34 @@
+{ stdenv, fetchgit, iasl, flex, bison }:
+
+stdenv.mkDerivation rec {
+  name = "nvramtool-${version}";
+  version = "4.8.1";
+
+  src = fetchgit {
+    url = "http://review.coreboot.org/p/coreboot";
+    rev = "refs/tags/${version}";
+    sha256 = "0nrf840jg4fn38zcnz1r10w2yfpvrk1nvsrnbbgdbgkmpjxz0zw9";
+  };
+
+  nativeBuildInputs = [ flex bison ];
+  buildInputs = [ iasl ];
+
+  buildPhase = ''
+    export LEX=${flex}/bin/flex
+    make -C util/nvramtool
+    '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp util/nvramtool/nvramtool $out/bin
+    '';
+
+  meta = with stdenv.lib; {
+    description = "utility for reading/writing coreboot parameters and displaying information from the coreboot table in CMOS/NVRAM";
+    homepage = https://www.coreboot.org/Nvramtool;
+    license = licenses.gpl2;
+    maintainers = [ maintainers.cryptix ];
+    platforms = platforms.linux;
+  };
+}
+
diff --git a/pkgs/tools/misc/ostree/default.nix b/pkgs/tools/misc/ostree/default.nix
index 98154d9d5628..3cbdd498aa73 100644
--- a/pkgs/tools/misc/ostree/default.nix
+++ b/pkgs/tools/misc/ostree/default.nix
@@ -4,13 +4,13 @@
 }:
 
 let
-  version = "2018.6";
+  version = "2018.8";
 
   libglnx-src = fetchFromGitHub {
     owner = "GNOME";
     repo = "libglnx";
-    rev = "e1a78cf2f5351d5394ccfb79f3f5a7b4917f73f3";
-    sha256 = "10kzyjbrmr98i65hlz8jc1v5bijyqwwfp6qqjbd5g3y0n520iaxc";
+    rev = "470af8763ff7b99bec950a6ae0a957c1dcfc8edd";
+    sha256 = "1fwik38i6w3r6pn4qkizradcqp1m83n7ljh9jg0y3p3kvrbfxh15";
   };
 
   bsdiff-src = fetchFromGitHub {
@@ -28,10 +28,15 @@ in stdenv.mkDerivation {
     rev = "v${version}";
     owner = "ostreedev";
     repo = "ostree";
-    sha256 = "0kk04pznk6m6fqdz609m2zcnkalcw9q8fsx8wm42k6dhf6cw7l3g";
+    sha256 = "0i7b7hvlv8m44k39fr5389wskf810vda8s7ivy2whj1nan5951yx";
   };
 
   patches = [
+    # Workarounds for https://github.com/ostreedev/ostree/issues/1592
+    ./fix-1592.patch
+    # Disable test-gpg-verify-result.test,
+    # https://github.com/ostreedev/ostree/issues/1634
+    ./disable-test-gpg-verify-result.patch
     # Tests access the helper using relative path
     # https://github.com/ostreedev/ostree/issues/1593
     (fetchpatch {
@@ -58,10 +63,13 @@ in stdenv.mkDerivation {
     cp --no-preserve=mode -r ${bsdiff-src} bsdiff
   '';
 
+
   preConfigure = ''
     env NOCONFIGURE=1 ./autogen.sh
   '';
 
+  enableParallelBuilding = true;
+
   configureFlags = [
     "--with-systemdsystemunitdir=$(out)/lib/systemd/system"
     "--with-systemdsystemgeneratordir=$(out)/lib/systemd/system-generators"
@@ -73,6 +81,7 @@ in stdenv.mkDerivation {
     "installed_test_metadir=$(installedTests)/share/installed-tests/libostree"
   ];
 
+
   meta = with stdenv.lib; {
     description = "Git for operating system binaries";
     homepage = https://ostree.readthedocs.io/en/latest/;
diff --git a/pkgs/tools/misc/ostree/disable-test-gpg-verify-result.patch b/pkgs/tools/misc/ostree/disable-test-gpg-verify-result.patch
new file mode 100644
index 000000000000..d3ef7e08357a
--- /dev/null
+++ b/pkgs/tools/misc/ostree/disable-test-gpg-verify-result.patch
@@ -0,0 +1,12 @@
+diff -aur --no-dereference a/Makefile-tests.am b/Makefile-tests.am
+--- a/Makefile-tests.am	1970-01-01 01:00:01.000000000 +0100
++++ b/Makefile-tests.am	2018-09-17 00:24:11.977841113 +0200
+@@ -243,7 +243,7 @@
+ 
+ _installed_or_uninstalled_test_programs = tests/test-varint tests/test-ot-unix-utils tests/test-bsdiff tests/test-mutable-tree \
+ 	tests/test-keyfile-utils tests/test-ot-opt-utils tests/test-ot-tool-util \
+-	tests/test-gpg-verify-result tests/test-checksum tests/test-lzma tests/test-rollsum \
++	tests/test-checksum tests/test-lzma tests/test-rollsum \
+ 	tests/test-basic-c tests/test-sysroot-c tests/test-pull-c tests/test-repo tests/test-include-ostree-h
+ 
+ if USE_AVAHI
diff --git a/pkgs/tools/misc/ostree/fix-1592.patch b/pkgs/tools/misc/ostree/fix-1592.patch
new file mode 100644
index 000000000000..f26a924c0d83
--- /dev/null
+++ b/pkgs/tools/misc/ostree/fix-1592.patch
@@ -0,0 +1,97 @@
+diff -aur --no-dereference a/tests/pull-test.sh b/tests/pull-test.sh
+--- a/tests/pull-test.sh	1970-01-01 01:00:01.000000000 +0100
++++ b/tests/pull-test.sh	2018-09-16 23:55:44.214593856 +0200
+@@ -275,7 +275,7 @@
+ if ${CMD_PREFIX} ostree --repo=mirrorrepo-local pull-local otherrepo 2>err.txt; then
+     fatal "pull with mixed refs succeeded?"
+ fi
+-assert_file_has_content err.txt "error: Invalid ref name origin:main"
++assert_file_has_content err.txt "Invalid ref name origin:main"
+ ${CMD_PREFIX} ostree --repo=mirrorrepo-local pull-local otherrepo localbranch
+ ${CMD_PREFIX} ostree --repo=mirrorrepo-local rev-parse localbranch
+ ${CMD_PREFIX} ostree --repo=mirrorrepo-local fsck
+@@ -286,7 +286,7 @@
+     fatal "pulled nonexistent branch"
+ fi
+ # So true
+-assert_file_has_content_literal err.txt "error: Refspec 'nosuchbranch' not found"
++assert_file_has_content_literal err.txt "Refspec 'nosuchbranch' not found"
+ echo "ok pull-local nonexistent branch"
+ 
+ cd ${test_tmpdir}
+@@ -587,5 +587,5 @@
+ if ${CMD_PREFIX} ostree --repo=repo pull origin main 2>err.txt; then
+     fatal "pull of invalid ref succeeded"
+ fi
+-assert_file_has_content_literal err.txt 'error: Fetching checksum for ref ((empty), main): Invalid rev lots of html here  lots of html here  lots of html here  lots of'
++assert_file_has_content_literal err.txt 'Fetching checksum for ref ((empty), main): Invalid rev lots of html here  lots of html here  lots of html here  lots of'
+ echo "ok pull got HTML for a ref"
+diff -aur --no-dereference a/tests/test-fsck-collections.sh b/tests/test-fsck-collections.sh
+--- a/tests/test-fsck-collections.sh	1970-01-01 01:00:01.000000000 +0100
++++ b/tests/test-fsck-collections.sh	2018-09-17 02:22:48.922502037 +0200
+@@ -100,7 +100,7 @@
+ if ${CMD_PREFIX} ostree fsck --repo=repo --verify-bindings > fsck 2> fsck-error; then
+     assert_not_reached "fsck unexpectedly succeeded after adding unbound ref!"
+ fi
+-assert_file_has_content fsck-error "Commit has no requested ref ‘new-ref’ in ref binding metadata (‘ref1’)"
++assert_file_has_content fsck-error "Commit has no requested ref .new-ref. in ref binding metadata (.ref1.)"
+ assert_file_has_content fsck "^Validating refs...$"
+ 
+ echo "ok 3 fsck detects missing ref bindings"
+@@ -113,7 +113,7 @@
+ if ${CMD_PREFIX} ostree fsck --repo=repo --verify-bindings > fsck 2> fsck-error; then
+     assert_not_reached "fsck unexpectedly succeeded after adding unbound ref!"
+ fi
+-assert_file_has_content fsck-error "Commit has no requested ref ‘new-ref’ in ref binding metadata (‘ref1’)"
++assert_file_has_content fsck-error "Commit has no requested ref .new-ref. in ref binding metadata (.ref1.)"
+ assert_file_has_content fsck "^Validating refs...$"
+ assert_file_has_content fsck "^Validating refs in collections...$"
+ 
+@@ -127,7 +127,7 @@
+ if ${CMD_PREFIX} ostree fsck --repo=repo --verify-bindings > fsck 2> fsck-error; then
+     assert_not_reached "fsck unexpectedly succeeded after adding unbound ref!"
+ fi
+-assert_file_has_content fsck-error "Commit has collection ID ‘org.example.Collection’ in collection binding metadata, while the remote it came from has collection ID ‘org.example.Collection2’"
++assert_file_has_content fsck-error "Commit has collection ID .org.example.Collection. in collection binding metadata, while the remote it came from has collection ID .org.example.Collection2."
+ assert_file_has_content fsck "^Validating refs...$"
+ assert_file_has_content fsck "^Validating refs in collections...$"
+ 
+@@ -147,7 +147,7 @@
+ if ${CMD_PREFIX} ostree fsck --repo=repo --verify-back-refs > fsck 2> fsck-error; then
+     assert_not_reached "fsck unexpectedly succeeded after adding unbound ref!"
+ fi
+-assert_file_has_content fsck-error "Collection–ref (org.example.Collection, ref1) in bindings for commit .* does not exist"
++assert_file_has_content fsck-error 'Collection.ref (org.example.Collection, ref1) in bindings for commit .* does not exist'
+ assert_file_has_content fsck "^Validating refs...$"
+ assert_file_has_content fsck "^Validating refs in collections...$"
+ 
+@@ -186,7 +186,7 @@
+ if ${CMD_PREFIX} ostree fsck --repo=repo --verify-bindings > fsck 2> fsck-error; then
+     assert_not_reached "fsck unexpectedly succeeded after adding unbound ref!"
+ fi
+-assert_file_has_content fsck-error "Commit has no requested ref ‘new-ref’ in ref binding metadata (‘ref3’, ‘ref4’)"
++assert_file_has_content fsck-error "Commit has no requested ref .new-ref. in ref binding metadata (.ref3., .ref4.)"
+ assert_file_has_content fsck "^Validating refs...$"
+ 
+ echo "ok 9 fsck detects missing ref bindings"
+@@ -205,7 +205,7 @@
+ if ${CMD_PREFIX} ostree fsck --repo=repo --verify-back-refs > fsck 2> fsck-error; then
+     assert_not_reached "fsck unexpectedly succeeded after adding unbound ref!"
+ fi
+-assert_file_has_content fsck-error "Ref ‘ref3’ in bindings for commit .* does not exist"
++assert_file_has_content fsck-error 'Ref .ref3. in bindings for commit .* does not exist'
+ assert_file_has_content fsck "^Validating refs...$"
+ 
+ echo "ok 11 fsck ignores unreferenced ref bindings"
+diff -aur --no-dereference a/tests/test-remote-add.sh b/tests/test-remote-add.sh
+--- a/tests/test-remote-add.sh	1970-01-01 01:00:01.000000000 +0100
++++ b/tests/test-remote-add.sh	2018-09-17 00:14:16.486788225 +0200
+@@ -83,7 +83,7 @@
+ if $OSTREE remote delete nosuchremote 2>err.txt; then
+     assert_not_reached "Deleting remote unexpectedly succeeded"
+ fi
+-assert_file_has_content err.txt "error: "
++assert_file_has_content err.txt "not found"
+ 
+ $OSTREE remote delete --if-exists nosuchremote
+ echo "ok"
diff --git a/pkgs/tools/misc/plantuml/default.nix b/pkgs/tools/misc/plantuml/default.nix
index 51844c8e5faa..08df665aede6 100644
--- a/pkgs/tools/misc/plantuml/default.nix
+++ b/pkgs/tools/misc/plantuml/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, jre, graphviz }:
 
 stdenv.mkDerivation rec {
-  version = "1.2018.9";
+  version = "1.2018.10";
   name = "plantuml-${version}";
 
   src = fetchurl {
     url = "mirror://sourceforge/project/plantuml/${version}/plantuml.${version}.jar";
-    sha256 = "0g5wd80brwqb0v9rbs66y3clv9jsccc8937jzz4r9gzp38rkvzmn";
+    sha256 = "19s3zrfri388nfykcs67sfk0dhmiw0rcv0dvj1j4c0fkyhl41bjs";
   };
 
   # It's only a .jar file and a shell wrapper
diff --git a/pkgs/tools/misc/powerline-rs/default.nix b/pkgs/tools/misc/powerline-rs/default.nix
index b16be0b5bdca..67f805988a3e 100644
--- a/pkgs/tools/misc/powerline-rs/default.nix
+++ b/pkgs/tools/misc/powerline-rs/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, rustPlatform, fetchFromGitHub, pkgconfig, file, perl, curl, cmake, openssl_1_1_0, libssh2, libgit2, libzip, Security }:
+{ stdenv, lib, rustPlatform, fetchFromGitHub, pkgconfig, file, perl, curl, cmake, openssl, libssh2, libgit2, libzip, Security }:
 rustPlatform.buildRustPackage rec {
   pname = "powerline-rs";
   name = "${pname}-${version}";
@@ -15,7 +15,7 @@ rustPlatform.buildRustPackage rec {
   cargoSha256 = "184s432a6damzvl0lv6jar1iml9dq60r190aqjy44lcg938981zc";
 
   nativeBuildInputs = [ pkgconfig file perl cmake curl ];
-  buildInputs = [ openssl_1_1_0 libssh2 libgit2 libzip ] ++ lib.optional stdenv.isDarwin Security;
+  buildInputs = [ openssl libssh2 libgit2 libzip ] ++ lib.optional stdenv.isDarwin Security;
 
   postInstall = ''
     install -Dm 755 "${pname}.bash" "$out/etc/bash_completion.d/${pname}"
diff --git a/pkgs/tools/misc/rkflashtool/default.nix b/pkgs/tools/misc/rkflashtool/default.nix
index ff606c6b72bb..fb55b15bbd55 100644
--- a/pkgs/tools/misc/rkflashtool/default.nix
+++ b/pkgs/tools/misc/rkflashtool/default.nix
@@ -24,10 +24,11 @@ stdenv.mkDerivation rec {
     cp rkunpack rkcrc rkflashtool rkparameters rkparametersblock rkunsign rkmisc $out/bin
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = https://sourceforge.net/projects/rkflashtool/;
     description = "Tools for flashing Rockchip devices";
-    platforms = stdenv.lib.platforms.linux;
-    maintainers = [ stdenv.lib.maintainers.viric ];
+    platforms = platforms.linux;
+    maintainers = [ maintainers.viric ];
+    license = licenses.bsd2;
   };
 }
diff --git a/pkgs/tools/misc/s6-portable-utils/default.nix b/pkgs/tools/misc/s6-portable-utils/default.nix
index 5f56daf3a48d..ae4385a0048a 100644
--- a/pkgs/tools/misc/s6-portable-utils/default.nix
+++ b/pkgs/tools/misc/s6-portable-utils/default.nix
@@ -1,47 +1,35 @@
-{ stdenv, fetchurl, skalibs }:
+{ stdenv, skawarePackages }:
 
-with stdenv.lib;
+with skawarePackages;
 
-stdenv.mkDerivation rec {
-  name = "s6-portable-utils-${version}";
-  version = "2.2.1.1";
+let
+  pname = "s6-portable-utils";
 
-  src = fetchurl {
-    url = "https://www.skarnet.org/software/s6-portable-utils/${name}.tar.gz";
-    sha256 = "0ca5iiq3n6isj64jb81xpwjzjx1q8jg145nnnn91ra2qqk93kqka";
-  };
+in buildPackage {
+  pname = pname;
+  version = "2.2.1.2";
+  sha256 = "0if77z07rfygd1yk9d2abxkdbx3dg52vcjhb20isb8kvqxhkg8ih";
 
-  outputs = [ "bin" "dev" "doc" "out" ];
+  description = "A set of tiny general Unix utilities optimized for simplicity and small size";
 
-  dontDisableStatic = true;
+  outputs = [ "bin" "dev" "doc" "out" ];
 
   configureFlags = [
-    "--enable-absolute-paths"
     "--bindir=\${bin}/bin"
     "--includedir=\${dev}/include"
     "--with-sysdeps=${skalibs.lib}/lib/skalibs/sysdeps"
     "--with-include=${skalibs.dev}/include"
     "--with-lib=${skalibs.lib}/lib"
     "--with-dynlib=${skalibs.lib}/lib"
-  ]
-  # On darwin, the target triplet from -dumpmachine includes version number, but
-  # skarnet.org software uses the triplet to test binary compatibility.
-  # Explicitly setting target ensures code can be compiled against a skalibs
-  # binary built on a different version of darwin.
-  # http://www.skarnet.org/cgi-bin/archive.cgi?1:mss:623:heiodchokfjdkonfhdph
-  ++ (stdenv.lib.optional stdenv.isDarwin "--build=${stdenv.hostPlatform.system}");
+  ];
 
   postInstall = ''
-    mkdir -p $doc/share/doc/s6-portable-utils/
-    mv doc $doc/share/doc/s6-portable-utils/html
+    # remove all s6 executables from build directory
+    rm $(find -name "s6-*" -type f -mindepth 1 -maxdepth 1 -executable)
+    rm seekablepipe
+
+    mv doc $doc/share/doc/${pname}/html
   '';
 
-  meta = {
-    homepage = http://www.skarnet.org/software/s6-portable-utils/;
-    description = "A set of tiny general Unix utilities optimized for simplicity and small size";
-    platforms = platforms.all;
-    license = licenses.isc;
-    maintainers = with maintainers; [ pmahoney Profpatsch ];
-  };
 
 }
diff --git a/pkgs/tools/misc/smenu/default.nix b/pkgs/tools/misc/smenu/default.nix
index 30475047c4f7..b5c963307dfd 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.13";
+  version = "0.9.14";
   name = "smenu-${version}";
 
   src = fetchFromGitHub {
     owner  = "p-gen";
     repo   = "smenu";
     rev    = "v${version}";
-    sha256 = "0ixfl1dxkvmzb3xy6zs1x94hlf8y7zmd14gmb50rp7gb7ff1ivm5";
+    sha256 = "1q2jvzia5ggkifkawm791p2nkmnpm6cmd5x3al7zf76gpdm6j87d";
   };
 
   buildInputs = [ ncurses ];
diff --git a/pkgs/tools/misc/woeusb/default.nix b/pkgs/tools/misc/woeusb/default.nix
index 9c6211b13dfe..e75baac669a3 100644
--- a/pkgs/tools/misc/woeusb/default.nix
+++ b/pkgs/tools/misc/woeusb/default.nix
@@ -3,14 +3,14 @@
 , wxGTK30 }:
 
 stdenv.mkDerivation rec {
-  version = "3.2.1";
+  version = "3.2.2";
   name = "woeusb-${version}";
 
   src = fetchFromGitHub {
     owner = "slacka";
     repo = "WoeUSB";
     rev = "v${version}";
-    sha256 = "0qymdc216ws6adkzmzxz6hx43dim0hpwab9c4qmgg8jnkhnpvnj1";
+    sha256 = "08spc7r5zgn483y7jmnlqi5417p6h1v6izyx10jnk39md6lv8pb3";
   };
 
   buildInputs = [ wxGTK30 autoreconfHook makeWrapper ];
diff --git a/pkgs/tools/misc/xvfb-run/default.nix b/pkgs/tools/misc/xvfb-run/default.nix
index c4cfc00308e9..bfc2a03e6cb8 100644
--- a/pkgs/tools/misc/xvfb-run/default.nix
+++ b/pkgs/tools/misc/xvfb-run/default.nix
@@ -20,7 +20,8 @@ stdenv.mkDerivation {
       --prefix PATH : ${stdenv.lib.makeBinPath [ getopt xorgserver xauth which utillinux gawk coreutils ]}
   '';
 
-  meta = {
-    platforms = stdenv.lib.platforms.linux;
+  meta = with stdenv.lib; {
+    platforms = platforms.linux;
+    license = licenses.gpl2;
   };
 }
diff --git a/pkgs/tools/misc/youtube-dl/default.nix b/pkgs/tools/misc/youtube-dl/default.nix
index 7ed8f3bfd71b..d688e5fe6625 100644
--- a/pkgs/tools/misc/youtube-dl/default.nix
+++ b/pkgs/tools/misc/youtube-dl/default.nix
@@ -1,5 +1,6 @@
 { lib, fetchurl, buildPythonPackage
 , zip, ffmpeg, rtmpdump, phantomjs2, atomicparsley, pycryptodome, pandoc
+, fetchpatch
 # Pandoc is required to build the package's man page. Release tarballs contain a
 # formatted man page already, though, it will still be installed. We keep the
 # manpage argument in place in case someone wants to use this derivation to
@@ -15,20 +16,21 @@
 buildPythonPackage rec {
 
   pname = "youtube-dl";
-  version = "2018.08.28";
+  version = "2018.09.10";
 
   src = fetchurl {
     url = "https://yt-dl.org/downloads/${version}/${pname}-${version}.tar.gz";
-    sha256 = "1swdp4czvm0752psbi8a4qw5i9x18s7nhivh7iw92274pmqxq9wi";
+    sha256 = "12gd84i5drc2z4wzah7r2vj8fkj9yilm7q8dm7q9n95abrdb7sh8";
   };
 
   nativeBuildInputs = [ makeWrapper ];
   buildInputs = [ zip ] ++ lib.optional generateManPage pandoc;
   propagatedBuildInputs = lib.optional hlsEncryptedSupport pycryptodome;
 
-  # Ensure ffmpeg is available in $PATH for post-processing & transcoding support.
-  # rtmpdump is required to download files over RTMP
-  # atomicparsley for embedding thumbnails
+  # Ensure these utilities are available in $PATH:
+  # - ffmpeg: post-processing & transcoding support
+  # - rtmpdump: download files over RTMP
+  # - atomicparsley: embedding thumbnails
   makeWrapperArgs = let
       packagesToBinPath =
         [ atomicparsley ]
diff --git a/pkgs/tools/networking/aria2/default.nix b/pkgs/tools/networking/aria2/default.nix
index 028691229e3b..873aa66c4212 100644
--- a/pkgs/tools/networking/aria2/default.nix
+++ b/pkgs/tools/networking/aria2/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, pkgconfig, autoreconfHook
+{ stdenv, fetchpatch, fetchFromGitHub, pkgconfig, autoreconfHook
 , openssl, c-ares, libxml2, sqlite, zlib, libssh2
 , cppunit
 , Security
@@ -15,6 +15,14 @@ stdenv.mkDerivation rec {
     sha256 = "0hwqnjyszasr6049vr5mn48slb48v5kw39cbpbxa68ggmhj9bw6m";
   };
 
+  patches = [
+    # Remove with 1.35.0.
+    (fetchpatch {
+      url = https://github.com/aria2/aria2/commit/e8e04d6f22a507e8374651d3d2343cd9fb986993.patch;
+      sha256 = "1v27nqbsdjgg3ga4n0v9daq21m3cmdpy7d08kp32200pzag87f4y";
+    })
+  ];
+
   nativeBuildInputs = [ pkgconfig autoreconfHook ];
 
   buildInputs = [ openssl c-ares libxml2 sqlite zlib libssh2 ] ++
diff --git a/pkgs/tools/networking/bsd-finger/default.nix b/pkgs/tools/networking/bsd-finger/default.nix
index 25f795d52c2c..d011665a492b 100644
--- a/pkgs/tools/networking/bsd-finger/default.nix
+++ b/pkgs/tools/networking/bsd-finger/default.nix
@@ -18,7 +18,8 @@ stdenv.mkDerivation rec {
 
   preInstall = '' mkdir -p $out/man/man1 $out/bin '';
 
-  meta = {
-    platforms = stdenv.lib.platforms.linux;
+  meta = with stdenv.lib; {
+    platforms = platforms.linux;
+    license = licenses.bsdOriginal;
   };
 }
diff --git a/pkgs/tools/networking/carddav-util/default.nix b/pkgs/tools/networking/carddav-util/default.nix
index 86a13ba90e65..7cc89bebf477 100644
--- a/pkgs/tools/networking/carddav-util/default.nix
+++ b/pkgs/tools/networking/carddav-util/default.nix
@@ -31,9 +31,10 @@ stdenv.mkDerivation rec {
       --prefix PATH : "$prefix/bin:$PATH"
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = https://github.com/ljanyst/carddav-util;
     description = "A CardDAV import/export utility";
-    platforms = stdenv.lib.platforms.unix;
+    platforms = platforms.unix;
+    license = licenses.isc;
   };
 }
diff --git a/pkgs/tools/networking/cksfv/default.nix b/pkgs/tools/networking/cksfv/default.nix
index c14770fb32be..3098b091dc64 100644
--- a/pkgs/tools/networking/cksfv/default.nix
+++ b/pkgs/tools/networking/cksfv/default.nix
@@ -2,15 +2,16 @@
 
 stdenv.mkDerivation rec {
   name = "cksfv-1.3.14";
-  
+
   src = fetchurl {
     url = "http://zakalwe.fi/~shd/foss/cksfv/files/${name}.tar.bz2";
     sha256 = "0lnz0z57phl6s52hjvlryn96xrlph9b0h89ahhv027sa79pj8g4g";
   };
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = http://zakalwe.fi/~shd/foss/cksfv/;
     description = "A tool for verifying files against a SFV checksum file";
-    platforms = stdenv.lib.platforms.all;
+    platforms = platforms.all;
+    license = licenses.gpl2;
   };
 }
diff --git a/pkgs/tools/networking/dd-agent/6.nix b/pkgs/tools/networking/dd-agent/6.nix
index 56a71595cea7..b26e915e6909 100644
--- a/pkgs/tools/networking/dd-agent/6.nix
+++ b/pkgs/tools/networking/dd-agent/6.nix
@@ -1,26 +1,27 @@
-{ stdenv, fetchFromGitHub, buildGoPackage, makeWrapper, pythonPackages, pkgconfig }:
+{ stdenv, fetchFromGitHub, buildGoPackage, makeWrapper, pythonPackages, pkgconfig, systemd }:
 
 let
   # keep this in sync with github.com/DataDog/agent-payload dependency
-  payloadVersion = "4.7";
+  payloadVersion = "4.7.1";
 
 in buildGoPackage rec {
   name = "datadog-agent-${version}";
-  version = "6.1.4";
+  version = "6.4.2";
   owner   = "DataDog";
   repo    = "datadog-agent";
 
   src = fetchFromGitHub {
     inherit owner repo;
-    rev    = "a8ee76deb11fa334470d9b8f2356214999980894";
-    sha256 = "06grcwwbfvcw1k1d4nqrasrf76qkpik1gsw60zwafllfd9ffhl1v";
+    rev    = "155fddb3547919bd54530dfdb250e0cb2defae7d";
+    sha256 = "0l7ic0p2h27x386k1gzzm20af2s06cpalmqz0h0c5zq4wszmw5zy";
   };
 
   subPackages = [
     "cmd/agent"
     "cmd/dogstatsd"
     "cmd/py-launcher"
-    "cmd/cluster-agent"
+    # Does not compile: go/src/github.com/DataDog/datadog-agent/cmd/cluster-agent/main.go:31:12: undefined: app.ClusterAgentCmd
+    #"cmd/cluster-agent"
   ];
   goDeps = ./deps.nix;
   goPackagePath = "github.com/${owner}/${repo}";
@@ -29,9 +30,11 @@ in buildGoPackage rec {
   python = pythonPackages.python;
 
   nativeBuildInputs = [ pkgconfig makeWrapper ];
+  buildInputs = [ systemd ];
   PKG_CONFIG_PATH = "${python}/lib/pkgconfig";
 
-  buildFlagsArray = let
+
+  preBuild = let
     ldFlags = stdenv.lib.concatStringsSep " " [
       "-X ${goPackagePath}/pkg/version.Commit=${src.rev}"
       "-X ${goPackagePath}/pkg/version.AgentVersion=${version}"
@@ -39,10 +42,9 @@ in buildGoPackage rec {
       "-X ${goPackagePath}/pkg/collector/py.pythonHome=${python}"
       "-r ${python}/lib"
     ];
-  in [
-    "-ldflags=${ldFlags}"
-  ];
-  buildFlags = "-tags cpython";
+  in ''
+    buildFlagsArray=( "-tags" "ec2 systemd cpython process log" "-ldflags" "${ldFlags}")
+  '';
 
   # DataDog use paths relative to the agent binary, so fix these.
   postPatch = ''
@@ -61,7 +63,8 @@ in buildGoPackage rec {
     cp -R $src/pkg/status/dist/templates $bin/share/datadog-agent
 
     wrapProgram "$bin/bin/agent" \
-        --set PYTHONPATH "$bin/${python.sitePackages}"
+      --set PYTHONPATH "$bin/${python.sitePackages}" \
+      --prefix LD_LIBRARY_PATH : ${systemd.lib}/lib
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/tools/networking/dd-agent/README.md b/pkgs/tools/networking/dd-agent/README.md
new file mode 100644
index 000000000000..b04af72aef10
--- /dev/null
+++ b/pkgs/tools/networking/dd-agent/README.md
@@ -0,0 +1,8 @@
+To update v6 (v5 is deprecated and should be removed):
+
+1. Bump `version`, `rev`, `sha256` and `payloadVersion` in `6.nix`
+2. `git clone https://github.com/DataDog/datadog-agent.git && cd datadog-agent`
+3. `git checkout <tag>`
+4. `nix-env -i -f https://github.com/nixcloud/dep2nix/archive/master.tar.gz`
+5. `deps2nix`
+6. `cp deps.nix $NIXPKGS/pkgs/tools/networking/dd-agent/deps.nix`
diff --git a/pkgs/tools/networking/dd-agent/datadog-process-agent-deps.nix b/pkgs/tools/networking/dd-agent/datadog-process-agent-deps.nix
new file mode 100644
index 000000000000..863402854aeb
--- /dev/null
+++ b/pkgs/tools/networking/dd-agent/datadog-process-agent-deps.nix
@@ -0,0 +1,669 @@
+# file generated from Gopkg.lock using dep2nix (https://github.com/nixcloud/dep2nix)
+[
+  {
+    goPackagePath  = "bitbucket.org/ww/goautoneg";
+    fetch = {
+      type = "hg";
+      url = "https://bitbucket.org/ww/goautoneg";
+      rev =  "75cd24fc2f2c2a2088577d12123ddee5f54e0675";
+      sha256 = "19khhn5xhqv1yp7d6k987gh5w5rhrjnp4p0c6fyrd8z6lzz5h9qi";
+    };
+  }
+  {
+    goPackagePath  = "github.com/DataDog/agent-payload";
+    fetch = {
+      type = "git";
+      url = "https://github.com/DataDog/agent-payload";
+      rev =  "f0521943f60221829c6bb5de1c7f788cd4411372";
+      sha256 = "19m3kiwi0g2a0rysjabrb2nkkz7yx632g7s05mylv1x2ixparhrg";
+    };
+  }
+  {
+    goPackagePath  = "github.com/DataDog/datadog-agent";
+    fetch = {
+      type = "git";
+      url = "https://github.com/DataDog/datadog-agent";
+      rev =  "f2d7ce69202c8212cae1ebf476d038b28f3a895e";
+      sha256 = "0by3qvj6468r3532x1q6ingf6hlgv4dk8g1aa0hmh9gm25dbfsg5";
+    };
+  }
+  {
+    goPackagePath  = "github.com/DataDog/datadog-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/DataDog/datadog-go";
+      rev =  "a9c7a9896c1847c9cc2b068a2ae68e9d74540a5d";
+      sha256 = "1m1vpi2s22dqcq0fqhfp3skzkmsbmhzyiw2kh2dw6ii7qimy8zki";
+    };
+  }
+  {
+    goPackagePath  = "github.com/DataDog/gopsutil";
+    fetch = {
+      type = "git";
+      url = "https://github.com/DataDog/gopsutil";
+      rev =  "771928d86fa878b9d62f073a7a6f91ee0a358105";
+      sha256 = "0dr5a67jy2zh42dcndx981ca1wv0phc16zlimahjlr00qxam90xi";
+    };
+  }
+  {
+    goPackagePath  = "github.com/DataDog/tcptracer-bpf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/DataDog/tcptracer-bpf";
+      rev =  "636ee01a99a4bd352329de98f40fb9fdf611d1c9";
+      sha256 = "13373wg1x90jydzgbblxpq2gg9b7ppk6nkjzhw8d27mxd047i74m";
+    };
+  }
+  {
+    goPackagePath  = "github.com/DataDog/zstd";
+    fetch = {
+      type = "git";
+      url = "https://github.com/DataDog/zstd";
+      rev =  "2bf71ec4836011b92dc78df3b9ace6b40e65f7df";
+      sha256 = "0j0qmnzjxx86kavrb3qcashp2irzjbvip15df97k87pcfvl1gsig";
+    };
+  }
+  {
+    goPackagePath  = "github.com/Microsoft/go-winio";
+    fetch = {
+      type = "git";
+      url = "https://github.com/Microsoft/go-winio";
+      rev =  "97e4973ce50b2ff5f09635a57e2b88a037aae829";
+      sha256 = "14y1gryr3pb3zy09v2g8dh89m363rfd9sch0wgbabh531hfx72vn";
+    };
+  }
+  {
+    goPackagePath  = "github.com/StackExchange/wmi";
+    fetch = {
+      type = "git";
+      url = "https://github.com/StackExchange/wmi";
+      rev =  "b12b22c5341f0c26d88c4d66176330500e84db68";
+      sha256 = "0kzkb4zllhrdiq0m9m5ka9i393r1hnx75lnd3hz5rg2fs0n3ym16";
+    };
+  }
+  {
+    goPackagePath  = "github.com/aws/aws-sdk-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/aws/aws-sdk-go";
+      rev =  "bff41fb23b7550368282029f6478819d6a99ae0f";
+      sha256 = "1hcd8f3m2cq02mj9i8c1ynbh3j0iyw14l1wszm0qgs18nsj1rzgn";
+    };
+  }
+  {
+    goPackagePath  = "github.com/beorn7/perks";
+    fetch = {
+      type = "git";
+      url = "https://github.com/beorn7/perks";
+      rev =  "3ac7bf7a47d159a033b107610db8a1b6575507a4";
+      sha256 = "1qc3l4r818xpvrhshh1sisc5lvl9479qspcfcdbivdyh0apah83r";
+    };
+  }
+  {
+    goPackagePath  = "github.com/cenkalti/backoff";
+    fetch = {
+      type = "git";
+      url = "https://github.com/cenkalti/backoff";
+      rev =  "b7325b0f3f1097c6546ea5e83c4a23267e58ad71";
+      sha256 = "0vx4ggryxd9w111mf1bi2g51559r8sh99gdqah72k4dfj3vrv19d";
+    };
+  }
+  {
+    goPackagePath  = "github.com/cihub/seelog";
+    fetch = {
+      type = "git";
+      url = "https://github.com/cihub/seelog";
+      rev =  "d2c6e5aa9fbfdd1c624e140287063c7730654115";
+      sha256 = "0ab9kyrh51x1x71z37pwjsla0qv11a1qv697xafyc4r5nq5hds6p";
+    };
+  }
+  {
+    goPackagePath  = "github.com/davecgh/go-spew";
+    fetch = {
+      type = "git";
+      url = "https://github.com/davecgh/go-spew";
+      rev =  "8991bc29aa16c548c550c7ff78260e27b9ab7c73";
+      sha256 = "0hka6hmyvp701adzag2g26cxdj47g21x6jz4sc6jjz1mn59d474y";
+    };
+  }
+  {
+    goPackagePath  = "github.com/docker/distribution";
+    fetch = {
+      type = "git";
+      url = "https://github.com/docker/distribution";
+      rev =  "48294d928ced5dd9b378f7fd7c6f5da3ff3f2c89";
+      sha256 = "0nj4xd72mik4pj8g065cqb0yjmgpj5ppsqf2k5ibz9f68c39c00b";
+    };
+  }
+  {
+    goPackagePath  = "github.com/docker/docker";
+    fetch = {
+      type = "git";
+      url = "https://github.com/docker/docker";
+      rev =  "092cba3727bb9b4a2f0e922cd6c0f93ea270e363";
+      sha256 = "0l9kjibnpwcgk844sibxk9ppyqniw9r0np1mzp95f8f461jb0iar";
+    };
+  }
+  {
+    goPackagePath  = "github.com/docker/go-connections";
+    fetch = {
+      type = "git";
+      url = "https://github.com/docker/go-connections";
+      rev =  "97c2040d34dfae1d1b1275fa3a78dbdd2f41cf7e";
+      sha256 = "11szydahzjz7zia3hr8kplnlxsg9papbvc2mgr1vlwrahxpdx7l7";
+    };
+  }
+  {
+    goPackagePath  = "github.com/docker/go-units";
+    fetch = {
+      type = "git";
+      url = "https://github.com/docker/go-units";
+      rev =  "47565b4f722fb6ceae66b95f853feed578a4a51c";
+      sha256 = "0npxsb3pp89slwf4a73fxm20hykad8xggij6i6hcd5jy19bjrd93";
+    };
+  }
+  {
+    goPackagePath  = "github.com/emicklei/go-restful";
+    fetch = {
+      type = "git";
+      url = "https://github.com/emicklei/go-restful";
+      rev =  "68c9750c36bb8cb433f1b88c807b4b30df4acc40";
+      sha256 = "0bc0wd5nipz1x078vpq82acyc7ip0qv1sddl451d7f7bvfms6h67";
+    };
+  }
+  {
+    goPackagePath  = "github.com/fsnotify/fsnotify";
+    fetch = {
+      type = "git";
+      url = "https://github.com/fsnotify/fsnotify";
+      rev =  "ccc981bf80385c528a65fbfdd49bf2d8da22aa23";
+      sha256 = "0hcrfmiyx27izac3v0ii0qq2kfjvhr9ma1i79hrl6a6y2ayagzz7";
+    };
+  }
+  {
+    goPackagePath  = "github.com/ghodss/yaml";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ghodss/yaml";
+      rev =  "73d445a93680fa1a78ae23a5839bad48f32ba1ee";
+      sha256 = "0pg53ky4sy3sp9j4n7vgf1p3gw4nbckwqfldcmmi9rf13kjh0mr7";
+    };
+  }
+  {
+    goPackagePath  = "github.com/go-ini/ini";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-ini/ini";
+      rev =  "d3de07a94d22b4a0972deb4b96d790c2c0ce8333";
+      sha256 = "1lpwqhcfhaa6aighd2lpjfswbb6aw5d5bsmyr0vqaqg6g5kz0ikg";
+    };
+  }
+  {
+    goPackagePath  = "github.com/go-ole/go-ole";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-ole/go-ole";
+      rev =  "7a0fa49edf48165190530c675167e2f319a05268";
+      sha256 = "00v6fixm35pj8jyqbj0z3kyv7bhrqa2dr2fgmlc9xqwbf0nayssy";
+    };
+  }
+  {
+    goPackagePath  = "github.com/gogo/protobuf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gogo/protobuf";
+      rev =  "d76fbc1373015ced59b43ac267f28d546b955683";
+      sha256 = "051a3imx2m7gpns8cjm1gckif9z6i4ik0svc1i8j7h86800c5rg0";
+    };
+  }
+  {
+    goPackagePath  = "github.com/golang/glog";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/glog";
+      rev =  "44145f04b68cf362d9c4df2182967c2275eaefed";
+      sha256 = "1k7sf6qmpgm0iw81gx2dwggf9di6lgw0n54mni7862hihwfrb5rq";
+    };
+  }
+  {
+    goPackagePath  = "github.com/golang/protobuf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/protobuf";
+      rev =  "b4deda0973fb4c70b50d226b1af49f3da59f5265";
+      sha256 = "0ya4ha7m20bw048m1159ppqzlvda4x0vdprlbk5sdgmy74h3xcdq";
+    };
+  }
+  {
+    goPackagePath  = "github.com/google/gofuzz";
+    fetch = {
+      type = "git";
+      url = "https://github.com/google/gofuzz";
+      rev =  "44d81051d367757e1c7c6a5a86423ece9afcf63c";
+      sha256 = "0ivq2sl2fv8x0xxrcys27c42s8yq7irgl7lp6l0im9i7ky63nk0i";
+    };
+  }
+  {
+    goPackagePath  = "github.com/googleapis/gnostic";
+    fetch = {
+      type = "git";
+      url = "https://github.com/googleapis/gnostic";
+      rev =  "0c5108395e2debce0d731cf0287ddf7242066aba";
+      sha256 = "0jf3cp5clli88gpjf24r6wxbkvngnc1kf59d4cgjczsn2wasvsfc";
+    };
+  }
+  {
+    goPackagePath  = "github.com/hashicorp/golang-lru";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/golang-lru";
+      rev =  "a0d98a5f288019575c6d1f4bb1573fef2d1fcdc4";
+      sha256 = "1z3h4aca31l3qs0inqr5l49vrlycpjm7vq1l9nh1mp0mb2ij0kmp";
+    };
+  }
+  {
+    goPackagePath  = "github.com/hashicorp/hcl";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/hcl";
+      rev =  "65a6292f0157eff210d03ed1bf6c59b190b8b906";
+      sha256 = "00qgmygfa4vgf9v3lpz4vp1ca1hcfcxnjqjrvp6z4jjklc8x4mqf";
+    };
+  }
+  {
+    goPackagePath  = "github.com/hectane/go-acl";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hectane/go-acl";
+      rev =  "7f56832555fc229dad908c67d65ed3ce6156b70c";
+      sha256 = "17crpqmn51fqcz0j1vi4grwwiaqpvc3zhl102hn5sy7s2lmdf630";
+    };
+  }
+  {
+    goPackagePath  = "github.com/howeyc/gopass";
+    fetch = {
+      type = "git";
+      url = "https://github.com/howeyc/gopass";
+      rev =  "bf9dde6d0d2c004a008c27aaee91170c786f6db8";
+      sha256 = "1jxzyfnqi0h1fzlsvlkn10bncic803bfhslyijcxk55mgh297g45";
+    };
+  }
+  {
+    goPackagePath  = "github.com/imdario/mergo";
+    fetch = {
+      type = "git";
+      url = "https://github.com/imdario/mergo";
+      rev =  "6633656539c1639d9d78127b7d47c622b5d7b6dc";
+      sha256 = "1fffbq1l17i0gynmvcxypl7d9h4v81g5vlimiph5bfgf4sp4db7g";
+    };
+  }
+  {
+    goPackagePath  = "github.com/iovisor/gobpf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/iovisor/gobpf";
+      rev =  "3b07770c6d5e2bd37e582ecd49460e6ef094f257";
+      sha256 = "0inv9vwjd8r365rdpf6z4kzs8b36890vrfkifw228mjlxxx8rg7f";
+    };
+  }
+  {
+    goPackagePath  = "github.com/jmespath/go-jmespath";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jmespath/go-jmespath";
+      rev =  "0b12d6b5";
+      sha256 = "1vv6hph8j6xgv7gwl9vvhlsaaqsm22sxxqmgmldi4v11783pc1ld";
+    };
+  }
+  {
+    goPackagePath  = "github.com/json-iterator/go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/json-iterator/go";
+      rev =  "f2b4162afba35581b6d4a50d3b8f34e33c144682";
+      sha256 = "0siqfghsm2lkdwinvg8x5gls3p76rq3cdm59c1r4x0b2mdfhnvcd";
+    };
+  }
+  {
+    goPackagePath  = "github.com/kubernetes-incubator/custom-metrics-apiserver";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kubernetes-incubator/custom-metrics-apiserver";
+      rev =  "e61f72fec56ab519d74ebd396cd3fcf31b084558";
+      sha256 = "1cgbn0yzvrqrxq4kwwz2d6vddi9py2z18dx33yjd8w85j9ghhg6g";
+    };
+  }
+  {
+    goPackagePath  = "github.com/magiconair/properties";
+    fetch = {
+      type = "git";
+      url = "https://github.com/magiconair/properties";
+      rev =  "c2353362d570a7bfa228149c62842019201cfb71";
+      sha256 = "1a10362wv8a8qwb818wygn2z48lgzch940hvpv81hv8gc747ajxn";
+    };
+  }
+  {
+    goPackagePath  = "github.com/mailru/easyjson";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mailru/easyjson";
+      rev =  "60711f1a8329503b04e1c88535f419d0bb440bff";
+      sha256 = "0234jp6134wkihdpdwq1hvzqblgl5khc1wp6dyi2h0hgh88bhdk1";
+    };
+  }
+  {
+    goPackagePath  = "github.com/matttproud/golang_protobuf_extensions";
+    fetch = {
+      type = "git";
+      url = "https://github.com/matttproud/golang_protobuf_extensions";
+      rev =  "fc2b8d3a73c4867e51861bbdd5ae3c1f0869dd6a";
+      sha256 = "0ajg41h6402big484drvm72wvid1af2sffw0qkzbmpy04lq68ahj";
+    };
+  }
+  {
+    goPackagePath  = "github.com/mitchellh/mapstructure";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mitchellh/mapstructure";
+      rev =  "fa473d140ef3c6adf42d6b391fe76707f1f243c8";
+      sha256 = "0f06q4fpzg0c370cvmpsl0iq2apl5nkbz5cd3nba5x5ysmshv1lm";
+    };
+  }
+  {
+    goPackagePath  = "github.com/modern-go/concurrent";
+    fetch = {
+      type = "git";
+      url = "https://github.com/modern-go/concurrent";
+      rev =  "bacd9c7ef1dd9b15be4a9909b8ac7a4e313eec94";
+      sha256 = "0s0fxccsyb8icjmiym5k7prcqx36hvgdwl588y0491gi18k5i4zs";
+    };
+  }
+  {
+    goPackagePath  = "github.com/modern-go/reflect2";
+    fetch = {
+      type = "git";
+      url = "https://github.com/modern-go/reflect2";
+      rev =  "4b7aa43c6742a2c18fdef89dd197aaae7dac7ccd";
+      sha256 = "1721y3yr3dpx5dx5ashf063qczk2awy5zjir1jvp1h5hn7qz4i49";
+    };
+  }
+  {
+    goPackagePath  = "github.com/patrickmn/go-cache";
+    fetch = {
+      type = "git";
+      url = "https://github.com/patrickmn/go-cache";
+      rev =  "a3647f8e31d79543b2d0f0ae2fe5c379d72cedc0";
+      sha256 = "10020inkzrm931r4bixf8wqr9n39wcrb78vfyxmbvjavvw4zybgs";
+    };
+  }
+  {
+    goPackagePath  = "github.com/pborman/uuid";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pborman/uuid";
+      rev =  "ca53cad383cad2479bbba7f7a1a05797ec1386e4";
+      sha256 = "0rcx669bbjkkwdlw81spnra4ffgzd4rbpywnrj3w41m9vq6mk1gn";
+    };
+  }
+  {
+    goPackagePath  = "github.com/pelletier/go-toml";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pelletier/go-toml";
+      rev =  "c2dbbc24a97911339e01bda0b8cabdbd8f13b602";
+      sha256 = "0v1dsqnk5zmn6ir8jgxijx14s47jvijlqfz3aq435snfrgybd5rz";
+    };
+  }
+  {
+    goPackagePath  = "github.com/pkg/errors";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pkg/errors";
+      rev =  "816c9085562cd7ee03e7f8188a1cfd942858cded";
+      sha256 = "1ws5crb7c70wdicavl6qr4g03nn6m92zd6wwp9n2ygz5c8rmxh8k";
+    };
+  }
+  {
+    goPackagePath  = "github.com/pmezard/go-difflib";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pmezard/go-difflib";
+      rev =  "792786c7400a136282c1664665ae0a8db921c6c2";
+      sha256 = "0c1cn55m4rypmscgf0rrb88pn58j3ysvc2d0432dp3c6fqg6cnzw";
+    };
+  }
+  {
+    goPackagePath  = "github.com/prometheus/client_golang";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/client_golang";
+      rev =  "e7e903064f5e9eb5da98208bae10b475d4db0f8c";
+      sha256 = "0mn6x6za7br81vc9s8d58ivylpx5j4xdq72n7kz3aybniif49r3i";
+    };
+  }
+  {
+    goPackagePath  = "github.com/prometheus/client_model";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/client_model";
+      rev =  "fa8ad6fec33561be4280a8f0514318c79d7f6cb6";
+      sha256 = "11a7v1fjzhhwsl128znjcf5v7v6129xjgkdpym2lial4lac1dhm9";
+    };
+  }
+  {
+    goPackagePath  = "github.com/prometheus/common";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/common";
+      rev =  "13ba4ddd0caa9c28ca7b7bffe1dfa9ed8d5ef207";
+      sha256 = "0i6mpcnsawi7f00rfmjfjq8llaplyzq4xrkrawlcgfd762p5hnp8";
+    };
+  }
+  {
+    goPackagePath  = "github.com/prometheus/procfs";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/procfs";
+      rev =  "65c1f6f8f0fc1e2185eb9863a3bc751496404259";
+      sha256 = "0jfzmr8642hr04naim1maa3wklxvcxklykri2z7k4ayizc974lkq";
+    };
+  }
+  {
+    goPackagePath  = "github.com/shirou/gopsutil";
+    fetch = {
+      type = "git";
+      url = "https://github.com/shirou/gopsutil";
+      rev =  "8048a2e9c5773235122027dd585cf821b2af1249";
+      sha256 = "17ri1ijhvg6gxscaw4sy0r5pkcyiqdsf6nn2d4q36hd0nrswvk29";
+    };
+  }
+  {
+    goPackagePath  = "github.com/shirou/w32";
+    fetch = {
+      type = "git";
+      url = "https://github.com/shirou/w32";
+      rev =  "bb4de0191aa41b5507caa14b0650cdbddcd9280b";
+      sha256 = "0xh5vqblhr2c3mlaswawx6nipi4rc2x73rbdvlkakmgi0nnl50m4";
+    };
+  }
+  {
+    goPackagePath  = "github.com/spf13/afero";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/afero";
+      rev =  "d40851caa0d747393da1ffb28f7f9d8b4eeffebd";
+      sha256 = "0miv4faf5ihjfifb1zv6aia6f6ik7h1s4954kcb8n6ixzhx9ck6k";
+    };
+  }
+  {
+    goPackagePath  = "github.com/spf13/cast";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/cast";
+      rev =  "8965335b8c7107321228e3e3702cab9832751bac";
+      sha256 = "177bk7lq40jbgv9p9r80aydpaccfk8ja3a7jjhfwiwk9r1pa4rr2";
+    };
+  }
+  {
+    goPackagePath  = "github.com/spf13/jwalterweatherman";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/jwalterweatherman";
+      rev =  "4a4406e478ca629068e7768fc33f3f044173c0a6";
+      sha256 = "093fmmvavv84pv4q84hav7ph3fmrq87bvspjj899q0qsx37yvdr8";
+    };
+  }
+  {
+    goPackagePath  = "github.com/spf13/pflag";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/pflag";
+      rev =  "583c0c0531f06d5278b7d917446061adc344b5cd";
+      sha256 = "0nr4mdpfhhk94hq4ymn5b2sxc47b29p1akxd8b0hx4dvdybmipb5";
+    };
+  }
+  {
+    goPackagePath  = "github.com/spf13/viper";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/viper";
+      rev =  "b5e8006cbee93ec955a89ab31e0e3ce3204f3736";
+      sha256 = "0y3r6ysi5vn0yq5c7pbl62yg2i64fkv54xgj2jf1hn3v6zzyimis";
+    };
+  }
+  {
+    goPackagePath  = "github.com/stretchr/testify";
+    fetch = {
+      type = "git";
+      url = "https://github.com/stretchr/testify";
+      rev =  "f35b8ab0b5a2cef36673838d662e249dd9c94686";
+      sha256 = "0dlszlshlxbmmfxj5hlwgv3r22x0y1af45gn1vd198nvvs3pnvfs";
+    };
+  }
+  {
+    goPackagePath  = "golang.org/x/crypto";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/crypto";
+      rev =  "c10c31b5e94b6f7a0283272dc2bb27163dcea24b";
+      sha256 = "1a4k61xrwmr99fib2m1rcavbaxihnsmy1bgqhff5hkcv4n7bpsl2";
+    };
+  }
+  {
+    goPackagePath  = "golang.org/x/mobile";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/mobile";
+      rev =  "0ff817254b04da935cce10d2d1270ccf047fbbd7";
+      sha256 = "0hzsis106xh3hcydjribcar75va3ghp4hwbj9982h2msi27v54x4";
+    };
+  }
+  {
+    goPackagePath  = "golang.org/x/net";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/net";
+      rev =  "1c05540f6879653db88113bc4a2b70aec4bd491f";
+      sha256 = "0h8yqb0vcqgllgydrf9d3rzp83w8wlr8f0nm6r1rwf2qg30pq1pd";
+    };
+  }
+  {
+    goPackagePath  = "golang.org/x/sys";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sys";
+      rev =  "95c6576299259db960f6c5b9b69ea52422860fce";
+      sha256 = "1fhq8bianb9a1iccpr92mi2hix9zvm10n0f7syx6vfbxdw32i316";
+    };
+  }
+  {
+    goPackagePath  = "golang.org/x/text";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/text";
+      rev =  "b19bf474d317b857955b12035d2c5acb57ce8b01";
+      sha256 = "0wc8csaafp0ps9jb2hdk8d6xpyw1axhk1np73h0z17x09zk3ylcr";
+    };
+  }
+  {
+    goPackagePath  = "golang.org/x/time";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/time";
+      rev =  "a4bde12657593d5e90d0533a3e4fd95e635124cb";
+      sha256 = "07r227rrqgwkchm63dzmdyv5yplbla1vnwkn6qrr940l4psy15aw";
+    };
+  }
+  {
+    goPackagePath  = "gopkg.in/inf.v0";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-inf/inf";
+      rev =  "3887ee99ecf07df5b447e9b00d9c0b2adaa9f3e4";
+      sha256 = "0rf3vwyb8aqnac9x9d6ax7z5526c45a16yjm2pvkijr6qgqz8b82";
+    };
+  }
+  {
+    goPackagePath  = "gopkg.in/yaml.v2";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-yaml/yaml";
+      rev =  "d670f9405373e636a5a2765eea47fac0c9bc91a4";
+      sha256 = "1w1xid51n8v1mydn2m3vgggw8qgpd5a5sr62snsc77d99fpjsrs0";
+    };
+  }
+  {
+    goPackagePath  = "gopkg.in/zorkian/go-datadog-api.v2";
+    fetch = {
+      type = "git";
+      url = "https://github.com/zorkian/go-datadog-api";
+      rev =  "6c08e2322af96e867e5715aedd6ea194c42cf44f";
+      sha256 = "16ha3azq9981hwpn18sd50ai6d1h85fsawbdxp352c4gi8bhj8zw";
+    };
+  }
+  {
+    goPackagePath  = "k8s.io/api";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kubernetes/api";
+      rev =  "9e5ffd1f1320950b238cfce291b926411f0af722";
+      sha256 = "03992x9n9b8w9rlf70wizn7iqk8cbyksxg0sdc1mm5jyzyvgksgf";
+    };
+  }
+  {
+    goPackagePath  = "k8s.io/apimachinery";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kubernetes/apimachinery";
+      rev =  "e386b2658ed20923da8cc9250e552f082899a1ee";
+      sha256 = "0lgwpsvx0gpnrdnkqc9m96xwkifdq50l7cj9rvh03njws4rbd8jz";
+    };
+  }
+  {
+    goPackagePath  = "k8s.io/apiserver";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kubernetes/apiserver";
+      rev =  "2cf66d2375dce045e1e02e1d7b74a0d1e34fedb3";
+      sha256 = "0x0am99n25njpbd1x20bhyadpv9w6qqjmspp1ahzpmdwjzrnsagg";
+    };
+  }
+  {
+    goPackagePath  = "k8s.io/client-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kubernetes/client-go";
+      rev =  "23781f4d6632d88e869066eaebb743857aa1ef9b";
+      sha256 = "0cazbcv7j7fgjs00arx3a8f0z0ikybmv16ccy0yg0wp0nbc05r6v";
+    };
+  }
+  {
+    goPackagePath  = "k8s.io/metrics";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kubernetes/metrics";
+      rev =  "0d9ea2ac660031c8f2726a735dda29441f396f99";
+      sha256 = "0bcsb7s4wlmrja35zvz4s10cf3w7dfn2ckjv6apxd1ykdjxnsk71";
+    };
+  }
+]
diff --git a/pkgs/tools/networking/dd-agent/datadog-process-agent.nix b/pkgs/tools/networking/dd-agent/datadog-process-agent.nix
new file mode 100644
index 000000000000..7541eee0a20e
--- /dev/null
+++ b/pkgs/tools/networking/dd-agent/datadog-process-agent.nix
@@ -0,0 +1,26 @@
+{ stdenv, fetchFromGitHub, buildGoPackage  }:
+
+buildGoPackage rec {
+  name = "datadog-process-agent-${version}";
+  # NOTE: this is 6.5.0 + https://github.com/DataDog/datadog-process-agent/pull/185
+  version = "6.5.0";
+  owner   = "DataDog";
+  repo    = "datadog-process-agent";
+
+  src = fetchFromGitHub {
+    inherit owner repo;
+    rev    = "bd96c99c97e8639fd3ea72e61a492c0a74686abe";
+    sha256 = "0afdf344256jivzhdv3k9n9i4aik1yr805dnrc2i3d4di9w8vg8c";
+  };
+
+  goDeps = ./datadog-process-agent-deps.nix;
+  goPackagePath = "github.com/${owner}/${repo}";
+
+  meta = with stdenv.lib; {
+    description = "Live process collector for the DataDog Agent v6";
+    homepage    = https://www.datadoghq.com;
+    license     = licenses.bsd3;
+    platforms   = platforms.all;
+    maintainers = with maintainers; [ domenkozar rvl ];
+  };
+}
diff --git a/pkgs/tools/networking/dd-agent/deps.nix b/pkgs/tools/networking/dd-agent/deps.nix
index 7a8fc69b2a42..eddd16e0ab9d 100644
--- a/pkgs/tools/networking/dd-agent/deps.nix
+++ b/pkgs/tools/networking/dd-agent/deps.nix
@@ -1,353 +1,1110 @@
+# file generated from Gopkg.lock using dep2nix (https://github.com/nixcloud/dep2nix)
 [
   {
-    goPackagePath = "github.com/DataDog/agent-payload";
+    goPackagePath  = "bitbucket.org/ww/goautoneg";
+    fetch = {
+      type = "hg";
+      url = "https://bitbucket.org/ww/goautoneg";
+      rev =  "75cd24fc2f2c2a2088577d12123ddee5f54e0675";
+      sha256 = "19khhn5xhqv1yp7d6k987gh5w5rhrjnp4p0c6fyrd8z6lzz5h9qi";
+    };
+  }
+  {
+    goPackagePath  = "github.com/DataDog/agent-payload";
     fetch = {
       type = "git";
       url = "https://github.com/DataDog/agent-payload";
-      rev = "3b793015ecfa5b829e8a466bd7cce836891502cc";
-      sha256 = "0lg7c1whmvk4a13mrivdjfzfxqan07kvs2calgylncy7yf4szdp6";
+      rev =  "c76e9d5be7457cafb7b3e056c6e8ae127b1f0431";
+      sha256 = "0wva55yz5gs5gw23icz1z23hwhjw5vmijx4aa3fp3bq6pi63s873";
     };
   }
   {
-    goPackagePath = "github.com/DataDog/gohai";
+    goPackagePath  = "github.com/DataDog/gohai";
     fetch = {
       type = "git";
       url = "https://github.com/DataDog/gohai";
-      rev = "d80d0f562a71fa2380fbeccc93ba5a2e325606e4";
-      sha256 = "1frslms7f5i8dc8n0v9pb64mf4zdj3q2c005qxajl8j8i9nhj7yb";
+      rev =  "508b4f7bfc834501c944ab00e99b6f0e760f5ea7";
+      sha256 = "0qnhckvj3sk9rwc3dxz48zhx5p8ajg71azhi3y1l7ac6ayzpsc7f";
     };
   }
   {
-    goPackagePath = "github.com/DataDog/mmh3";
+    goPackagePath  = "github.com/DataDog/mmh3";
     fetch = {
       type = "git";
       url = "https://github.com/DataDog/mmh3";
-      rev = "2cfb68475274527a10701355c739f31dd404718c";
+      rev =  "2cfb68475274527a10701355c739f31dd404718c";
       sha256 = "09jgzxi08pkxllxk3f5qwipz96jxrw5v035fj2bkid1d4akn8y0b";
     };
   }
   {
-    goPackagePath = "github.com/beevik/ntp";
+    goPackagePath  = "github.com/DataDog/zstd";
+    fetch = {
+      type = "git";
+      url = "https://github.com/DataDog/zstd";
+      rev =  "aebefd9fcb99f22cd691ef778a12ed68f0e6a1ab";
+      sha256 = "06wphl43ji23c0cmmm6fd3wszbwq36mdp1jarak2a6hmxl6yf0b8";
+    };
+  }
+  {
+    goPackagePath  = "github.com/Microsoft/go-winio";
+    fetch = {
+      type = "git";
+      url = "https://github.com/Microsoft/go-winio";
+      rev =  "67921128fb397dd80339870d2193d6b1e6856fd4";
+      sha256 = "1m3ajjwpdmbzhn5iclhzgyknfncw06fnd5n91yxlf75qsq235rz3";
+    };
+  }
+  {
+    goPackagePath  = "github.com/NYTimes/gziphandler";
+    fetch = {
+      type = "git";
+      url = "https://github.com/NYTimes/gziphandler";
+      rev =  "2600fb119af974220d3916a5916d6e31176aac1b";
+      sha256 = "0bh6qqz2iyrnxhhj02s8mqayqwqxy182ldxh97q1vg7phlbm52xx";
+    };
+  }
+  {
+    goPackagePath  = "github.com/PuerkitoBio/purell";
+    fetch = {
+      type = "git";
+      url = "https://github.com/PuerkitoBio/purell";
+      rev =  "0bcb03f4b4d0a9428594752bd2a3b9aa0a9d4bd4";
+      sha256 = "0vsxyn1fbm7g873b8kf3hcsgqgncb5nmfq3zfsc35a9yhzarka91";
+    };
+  }
+  {
+    goPackagePath  = "github.com/PuerkitoBio/urlesc";
+    fetch = {
+      type = "git";
+      url = "https://github.com/PuerkitoBio/urlesc";
+      rev =  "de5bf2ad457846296e2031421a34e2568e304e35";
+      sha256 = "0n0srpqwbaan1wrhh2b7ysz543pjs1xw2rghvqyffg9l0g8kzgcw";
+    };
+  }
+  {
+    goPackagePath  = "github.com/StackExchange/wmi";
+    fetch = {
+      type = "git";
+      url = "https://github.com/StackExchange/wmi";
+      rev =  "5d049714c4a64225c3c79a7cf7d02f7fb5b96338";
+      sha256 = "1slw6v1fl8i0hz4db9lph55pbhnrxhqyndq6vm27dgvpj22k29fk";
+    };
+  }
+  {
+    goPackagePath  = "github.com/aws/aws-sdk-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/aws/aws-sdk-go";
+      rev =  "bff41fb23b7550368282029f6478819d6a99ae0f";
+      sha256 = "1hcd8f3m2cq02mj9i8c1ynbh3j0iyw14l1wszm0qgs18nsj1rzgn";
+    };
+  }
+  {
+    goPackagePath  = "github.com/beevik/ntp";
     fetch = {
       type = "git";
       url = "https://github.com/beevik/ntp";
-      rev = "cb3dae3a7588ae35829eb5724df611cd75152fba";
+      rev =  "cb3dae3a7588ae35829eb5724df611cd75152fba";
       sha256 = "0nc6f7d0xw23y18z9qxrmm8kvnywihassyk706mn9v4makmhalnz";
     };
   }
   {
-    goPackagePath = "github.com/cihub/seelog";
+    goPackagePath  = "github.com/beorn7/perks";
+    fetch = {
+      type = "git";
+      url = "https://github.com/beorn7/perks";
+      rev =  "3a771d992973f24aa725d07868b467d1ddfceafb";
+      sha256 = "1l2lns4f5jabp61201sh88zf3b0q793w4zdgp9nll7mmfcxxjif3";
+    };
+  }
+  {
+    goPackagePath  = "github.com/cenkalti/backoff";
+    fetch = {
+      type = "git";
+      url = "https://github.com/cenkalti/backoff";
+      rev =  "2ea60e5f094469f9e65adb9cd103795b73ae743e";
+      sha256 = "0k4899ifpir6kmfxli8a2xfj5zdh0xb2jd0fq2r38wzd4pk25ipr";
+    };
+  }
+  {
+    goPackagePath  = "github.com/cihub/seelog";
     fetch = {
       type = "git";
       url = "https://github.com/cihub/seelog";
-      rev = "f561c5e57575bb1e0a2167028b7339b3a8d16fb4";
-      sha256 = "0r3228hvgljgpaggj6b9mvxfsizfw25q2c1761wsvcif8gz49cvl";
+      rev =  "d2c6e5aa9fbfdd1c624e140287063c7730654115";
+      sha256 = "0ab9kyrh51x1x71z37pwjsla0qv11a1qv697xafyc4r5nq5hds6p";
+    };
+  }
+  {
+    goPackagePath  = "github.com/clbanning/mxj";
+    fetch = {
+      type = "git";
+      url = "https://github.com/clbanning/mxj";
+      rev =  "1f00e0bf9bacd7ea9c93d27594d1d1f5a41bac36";
+      sha256 = "1cb7kib79xrzr8n91p6kskmn30ayqrhbqql2ppyf879967wbm8qy";
     };
   }
   {
-    goPackagePath = "github.com/docker/docker";
+    goPackagePath  = "github.com/coreos/etcd";
+    fetch = {
+      type = "git";
+      url = "https://github.com/coreos/etcd";
+      rev =  "c9504f61fc7f29b0ad30bf8bab02d9e1b600e962";
+      sha256 = "1ap8zhfz6pcn2ipn27s84ihpyrvpjrb48mpy4n5pr6khrni83p1a";
+    };
+  }
+  {
+    goPackagePath  = "github.com/coreos/go-semver";
+    fetch = {
+      type = "git";
+      url = "https://github.com/coreos/go-semver";
+      rev =  "8ab6407b697782a06568d4b7f1db25550ec2e4c6";
+      sha256 = "1gghi5bnqj50hfxhqc1cxmynqmh2yk9ii7ab9gsm75y5cp94ymk0";
+    };
+  }
+  {
+    goPackagePath  = "github.com/coreos/go-systemd";
+    fetch = {
+      type = "git";
+      url = "https://github.com/coreos/go-systemd";
+      rev =  "40e2722dffead74698ca12a750f64ef313ddce05";
+      sha256 = "0kq7aa0pbn8gv9ny2a1gfx3ybsqyryfwz9gv7fck6zfc8xxbl1fa";
+    };
+  }
+  {
+    goPackagePath  = "github.com/coreos/pkg";
+    fetch = {
+      type = "git";
+      url = "https://github.com/coreos/pkg";
+      rev =  "97fdf19511ea361ae1c100dd393cc47f8dcfa1e1";
+      sha256 = "1srn87wih25l09f75483hnxsr8fc6rq3bk7w1x8125ym39p6mg21";
+    };
+  }
+  {
+    goPackagePath  = "github.com/davecgh/go-spew";
+    fetch = {
+      type = "git";
+      url = "https://github.com/davecgh/go-spew";
+      rev =  "346938d642f2ec3594ed81d874461961cd0faa76";
+      sha256 = "0d4jfmak5p6lb7n2r6yvf5p1zcw0l8j74kn55ghvr7zr7b7axm6c";
+    };
+  }
+  {
+    goPackagePath  = "github.com/docker/distribution";
+    fetch = {
+      type = "git";
+      url = "https://github.com/docker/distribution";
+      rev =  "48294d928ced5dd9b378f7fd7c6f5da3ff3f2c89";
+      sha256 = "0nj4xd72mik4pj8g065cqb0yjmgpj5ppsqf2k5ibz9f68c39c00b";
+    };
+  }
+  {
+    goPackagePath  = "github.com/docker/docker";
     fetch = {
       type = "git";
       url = "https://github.com/docker/docker";
-      rev = "092cba3727bb9b4a2f0e922cd6c0f93ea270e363";
+      rev =  "092cba3727bb9b4a2f0e922cd6c0f93ea270e363";
       sha256 = "0l9kjibnpwcgk844sibxk9ppyqniw9r0np1mzp95f8f461jb0iar";
     };
   }
   {
-    goPackagePath = "github.com/dsnet/compress";
+    goPackagePath  = "github.com/docker/go-connections";
+    fetch = {
+      type = "git";
+      url = "https://github.com/docker/go-connections";
+      rev =  "3ede32e2033de7505e6500d6c868c2b9ed9f169d";
+      sha256 = "0v1pkr8apwmhyzbjfriwdrs1ihlk6pw7izm57r24mf9jdmg3fyb0";
+    };
+  }
+  {
+    goPackagePath  = "github.com/docker/go-units";
+    fetch = {
+      type = "git";
+      url = "https://github.com/docker/go-units";
+      rev =  "47565b4f722fb6ceae66b95f853feed578a4a51c";
+      sha256 = "0npxsb3pp89slwf4a73fxm20hykad8xggij6i6hcd5jy19bjrd93";
+    };
+  }
+  {
+    goPackagePath  = "github.com/dsnet/compress";
     fetch = {
       type = "git";
       url = "https://github.com/dsnet/compress";
-      rev = "cc9eb1d7ad760af14e8f918698f745e80377af4f";
+      rev =  "cc9eb1d7ad760af14e8f918698f745e80377af4f";
       sha256 = "159liclywmyb6zx88ga5gn42hfl4cpk1660zss87fkx31hdq9fgx";
     };
   }
   {
-    goPackagePath = "github.com/fatih/color";
+    goPackagePath  = "github.com/dustin/go-humanize";
+    fetch = {
+      type = "git";
+      url = "https://github.com/dustin/go-humanize";
+      rev =  "9f541cc9db5d55bce703bd99987c9d5cb8eea45e";
+      sha256 = "1kqf1kavdyvjk7f8kx62pnm7fbypn9z1vbf8v2qdh3y7z7a0cbl3";
+    };
+  }
+  {
+    goPackagePath  = "github.com/elazarl/go-bindata-assetfs";
+    fetch = {
+      type = "git";
+      url = "https://github.com/elazarl/go-bindata-assetfs";
+      rev =  "30f82fa23fd844bd5bb1e5f216db87fd77b5eb43";
+      sha256 = "1swfb37g6sga3awvcmxf49ngbpvjv7ih5an9f8ixjqcfcwnb7nzp";
+    };
+  }
+  {
+    goPackagePath  = "github.com/emicklei/go-restful";
+    fetch = {
+      type = "git";
+      url = "https://github.com/emicklei/go-restful";
+      rev =  "3658237ded108b4134956c1b3050349d93e7b895";
+      sha256 = "07sm3b5dlrqld4r8r1w79s37y41fk4zmw4afhi2ragjy1iarqck3";
+    };
+  }
+  {
+    goPackagePath  = "github.com/emicklei/go-restful-swagger12";
+    fetch = {
+      type = "git";
+      url = "https://github.com/emicklei/go-restful-swagger12";
+      rev =  "dcef7f55730566d41eae5db10e7d6981829720f6";
+      sha256 = "0zz1f6n1qfbyrp592mgyrkyfhki3r0ksic6ja9lxisg8br1ibrvq";
+    };
+  }
+  {
+    goPackagePath  = "github.com/evanphx/json-patch";
+    fetch = {
+      type = "git";
+      url = "https://github.com/evanphx/json-patch";
+      rev =  "afac545df32f2287a079e2dfb7ba2745a643747e";
+      sha256 = "1d90prf8wfvndqjn6nr0k405ykia5vb70sjw4ywd49s9p3wcdyn8";
+    };
+  }
+  {
+    goPackagePath  = "github.com/fatih/color";
     fetch = {
       type = "git";
       url = "https://github.com/fatih/color";
-      rev = "507f6050b8568533fb3f5504de8e5205fa62a114";
-      sha256 = "0k1v9dkhrxiqhg48yqkwzpd7x40xx38gv2pgknswbsy4r8w644i7";
+      rev =  "5b77d2a35fb0ede96d138fc9a99f5c9b6aef11b4";
+      sha256 = "0v8msvg38r8d1iiq2i5r4xyfx0invhc941kjrsg5gzwvagv55inv";
     };
   }
   {
-    goPackagePath = "github.com/fsnotify/fsnotify";
+    goPackagePath  = "github.com/fsnotify/fsnotify";
     fetch = {
       type = "git";
       url = "https://github.com/fsnotify/fsnotify";
-      rev = "c2828203cd70a50dcccfb2761f8b1f8ceef9a8e9";
+      rev =  "c2828203cd70a50dcccfb2761f8b1f8ceef9a8e9";
       sha256 = "07va9crci0ijlivbb7q57d2rz9h27zgn2fsm60spjsqpdbvyrx4g";
     };
   }
   {
-    goPackagePath = "github.com/go-ini/ini";
+    goPackagePath  = "github.com/geoffgarside/ber";
+    fetch = {
+      type = "git";
+      url = "https://github.com/geoffgarside/ber";
+      rev =  "0b763e6b6fb1cb7422c29cd9195a3abf625651fb";
+      sha256 = "04k9k6805mvgp6gxs53frvlpp45hvkvrpj1jl1hc27ldwv5gpjrk";
+    };
+  }
+  {
+    goPackagePath  = "github.com/ghodss/yaml";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ghodss/yaml";
+      rev =  "0ca9ea5df5451ffdf184b4428c902747c2c11cd7";
+      sha256 = "0skwmimpy7hlh7pva2slpcplnm912rp3igs98xnqmn859kwa5v8g";
+    };
+  }
+  {
+    goPackagePath  = "github.com/go-ini/ini";
     fetch = {
       type = "git";
       url = "https://github.com/go-ini/ini";
-      rev = "bda519ae5f4cbc60d391ff8610711627a08b86ae";
-      sha256 = "05vcc3ssxyrk8g3sr4gs888vllgjqfq11na63qz2pvaiy7m0rqrs";
+      rev =  "06f5f3d67269ccec1fe5fe4134ba6e982984f7f5";
+      sha256 = "0fx123601aiqqn0yr9vj6qp1bh8gp240w4qdm76irs73q8dxlk7a";
+    };
+  }
+  {
+    goPackagePath  = "github.com/go-ole/go-ole";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-ole/go-ole";
+      rev =  "a41e3c4b706f6ae8dfbff342b06e40fa4d2d0506";
+      sha256 = "114h8x7dh4jp7w7k678fm98lr9icavsf74v6jfipyq7q35bsfr1p";
     };
   }
   {
-    goPackagePath = "github.com/gogo/protobuf";
+    goPackagePath  = "github.com/go-openapi/jsonpointer";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-openapi/jsonpointer";
+      rev =  "3a0015ad55fa9873f41605d3e8f28cd279c32ab2";
+      sha256 = "02an755ashhckqwxyq2avgn8mm4qq3hxda2jsj1a3bix2gkb45v7";
+    };
+  }
+  {
+    goPackagePath  = "github.com/go-openapi/jsonreference";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-openapi/jsonreference";
+      rev =  "3fb327e6747da3043567ee86abd02bb6376b6be2";
+      sha256 = "0zwsrmqqcihm0lj2pc18cpm7wnn1dzwr4kvrlyrxf0lnn7dsdsbm";
+    };
+  }
+  {
+    goPackagePath  = "github.com/go-openapi/spec";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-openapi/spec";
+      rev =  "bcff419492eeeb01f76e77d2ebc714dc97b607f5";
+      sha256 = "00z8sv766kjdrdvpyzm9c5x3d45gssbwsm77qihmkflric6a3d3l";
+    };
+  }
+  {
+    goPackagePath  = "github.com/go-openapi/swag";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-openapi/swag";
+      rev =  "811b1089cde9dad18d4d0c2d09fbdbf28dbd27a5";
+      sha256 = "0hkbrq4jq9s4nrz7xpx03z1zljss1zdylm3zb76hhjpp0s7hz418";
+    };
+  }
+  {
+    goPackagePath  = "github.com/gogo/protobuf";
     fetch = {
       type = "git";
       url = "https://github.com/gogo/protobuf";
-      rev = "1ef32a8b9fc3f8ec940126907cedb5998f6318e4";
-      sha256 = "0zk2n0n35ksskr5cd83k5k8wg21ckrcggjy88bym2s21ngj5w4fh";
+      rev =  "1adfc126b41513cc696b209667c8656ea7aac67c";
+      sha256 = "1j7azzlnihcvnd1apw5zr0bz30h7n0gyimqqkgc76vzb1n5dpi7m";
+    };
+  }
+  {
+    goPackagePath  = "github.com/golang/glog";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/glog";
+      rev =  "23def4e6c14b4da8ac2ed8007337bc5eb5007998";
+      sha256 = "0jb2834rw5sykfr937fxi8hxi2zy80sj2bdn9b3jb4b26ksqng30";
+    };
+  }
+  {
+    goPackagePath  = "github.com/golang/groupcache";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/groupcache";
+      rev =  "24b0969c4cb722950103eed87108c8d291a8df00";
+      sha256 = "0rj588dxg4ncanj8vcsixi00161xq54nz7siv47d5ijmzgxs82zf";
+    };
+  }
+  {
+    goPackagePath  = "github.com/golang/protobuf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/protobuf";
+      rev =  "b4deda0973fb4c70b50d226b1af49f3da59f5265";
+      sha256 = "0ya4ha7m20bw048m1159ppqzlvda4x0vdprlbk5sdgmy74h3xcdq";
     };
   }
   {
-    goPackagePath = "github.com/golang/snappy";
+    goPackagePath  = "github.com/golang/snappy";
     fetch = {
       type = "git";
       url = "https://github.com/golang/snappy";
-      rev = "553a641470496b2327abcac10b36396bd98e45c9";
-      sha256 = "0kssxnih1l722hx9219c7javganjqkqhvl3i0hp0hif6xm6chvqk";
+      rev =  "2e65f85255dbc3072edf28d6b5b8efc472979f5a";
+      sha256 = "05w6mpc4qcy0pv8a2bzng8nf4s5rf5phfang4jwy9rgf808q0nxf";
+    };
+  }
+  {
+    goPackagePath  = "github.com/google/gofuzz";
+    fetch = {
+      type = "git";
+      url = "https://github.com/google/gofuzz";
+      rev =  "24818f796faf91cd76ec7bddd72458fbced7a6c1";
+      sha256 = "0cq90m2lgalrdfrwwyycrrmn785rgnxa3l3vp9yxkvnv88bymmlm";
     };
   }
   {
-    goPackagePath = "github.com/gorilla/mux";
+    goPackagePath  = "github.com/googleapis/gnostic";
+    fetch = {
+      type = "git";
+      url = "https://github.com/googleapis/gnostic";
+      rev =  "7c663266750e7d82587642f65e60bc4083f1f84e";
+      sha256 = "0yh3ckd7m0r9h50wmxxvba837d0wb1k5yd439zq4p1kpp4390z12";
+    };
+  }
+  {
+    goPackagePath  = "github.com/gorilla/context";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gorilla/context";
+      rev =  "08b5f424b9271eedf6f9f0ce86cb9396ed337a42";
+      sha256 = "03p4hn87vcmfih0p9w663qbx9lpsf7i7j3lc7yl7n84la3yz63m4";
+    };
+  }
+  {
+    goPackagePath  = "github.com/gorilla/mux";
     fetch = {
       type = "git";
       url = "https://github.com/gorilla/mux";
-      rev = "ded0c29b24f96f46cf349e6701b099db601cf8ec";
-      sha256 = "125dxfxs7his95fd2r28bn1rpb78pldfgm3lmw84ha1c0v5gfh33";
+      rev =  "e3702bed27f0d39777b0b37b664b6280e8ef8fbf";
+      sha256 = "0pvzm23hklxysspnz52mih6h1q74vfrdhjfm1l3sa9r8hhqmmld2";
     };
   }
   {
-    goPackagePath = "github.com/hashicorp/hcl";
+    goPackagePath  = "github.com/hashicorp/consul";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/consul";
+      rev =  "fb848fc48818f58690db09d14640513aa6bf3c02";
+      sha256 = "0ra38xrh6ghcnix8w6gjs33yr2ra1n5jvf8lww4csr4dgw5bh5b1";
+    };
+  }
+  {
+    goPackagePath  = "github.com/hashicorp/go-cleanhttp";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/go-cleanhttp";
+      rev =  "d5fe4b57a186c716b0e00b8c301cbd9b4182694d";
+      sha256 = "1m20y90syky4xr81sm3980jpil81nnpzmi6kv0vjr6p584gl1hn8";
+    };
+  }
+  {
+    goPackagePath  = "github.com/hashicorp/go-rootcerts";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/go-rootcerts";
+      rev =  "6bb64b370b90e7ef1fa532be9e591a81c3493e00";
+      sha256 = "1a81fcm1i0ji2iva0dcimiichgwpbcb7lx0vyaks87zj5wf04qy9";
+    };
+  }
+  {
+    goPackagePath  = "github.com/hashicorp/golang-lru";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/golang-lru";
+      rev =  "0fb14efe8c47ae851c0034ed7a448854d3d34cf3";
+      sha256 = "0vg4yn3088ym4sj1d34kr13lp4v5gya7r2nxshp2bz70n46fsqn2";
+    };
+  }
+  {
+    goPackagePath  = "github.com/hashicorp/hcl";
     fetch = {
       type = "git";
       url = "https://github.com/hashicorp/hcl";
-      rev = "ef8a98b0bbce4a65b5aa4c368430a80ddc533168";
+      rev =  "ef8a98b0bbce4a65b5aa4c368430a80ddc533168";
       sha256 = "1qalfsc31fra7hcw2lc3s20aj7al62fq3j5fn5kga3mg99b82nyr";
     };
   }
   {
-    goPackagePath = "github.com/kardianos/osext";
+    goPackagePath  = "github.com/hashicorp/serf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/serf";
+      rev =  "d6574a5bb1226678d7010325fb6c985db20ee458";
+      sha256 = "1arakjvhyasrk52vhxas2ghlrby3i3wj59r7sjrkbpln2cdbqnlx";
+    };
+  }
+  {
+    goPackagePath  = "github.com/hectane/go-acl";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hectane/go-acl";
+      rev =  "7f56832555fc229dad908c67d65ed3ce6156b70c";
+      sha256 = "17crpqmn51fqcz0j1vi4grwwiaqpvc3zhl102hn5sy7s2lmdf630";
+    };
+  }
+  {
+    goPackagePath  = "github.com/howeyc/gopass";
+    fetch = {
+      type = "git";
+      url = "https://github.com/howeyc/gopass";
+      rev =  "bf9dde6d0d2c004a008c27aaee91170c786f6db8";
+      sha256 = "1jxzyfnqi0h1fzlsvlkn10bncic803bfhslyijcxk55mgh297g45";
+    };
+  }
+  {
+    goPackagePath  = "github.com/imdario/mergo";
+    fetch = {
+      type = "git";
+      url = "https://github.com/imdario/mergo";
+      rev =  "9316a62528ac99aaecb4e47eadd6dc8aa6533d58";
+      sha256 = "1mvgn89vp39gcpvhiq4n7nw5ipj7fk6h03jgc6fjwgvwvss213pb";
+    };
+  }
+  {
+    goPackagePath  = "github.com/inconshreveable/mousetrap";
+    fetch = {
+      type = "git";
+      url = "https://github.com/inconshreveable/mousetrap";
+      rev =  "76626ae9c91c4f2a10f34cad8ce83ea42c93bb75";
+      sha256 = "1mn0kg48xkd74brf48qf5hzp0bc6g8cf5a77w895rl3qnlpfw152";
+    };
+  }
+  {
+    goPackagePath  = "github.com/jmespath/go-jmespath";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jmespath/go-jmespath";
+      rev =  "0b12d6b5";
+      sha256 = "1vv6hph8j6xgv7gwl9vvhlsaaqsm22sxxqmgmldi4v11783pc1ld";
+    };
+  }
+  {
+    goPackagePath  = "github.com/json-iterator/go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/json-iterator/go";
+      rev =  "f2b4162afba35581b6d4a50d3b8f34e33c144682";
+      sha256 = "0siqfghsm2lkdwinvg8x5gls3p76rq3cdm59c1r4x0b2mdfhnvcd";
+    };
+  }
+  {
+    goPackagePath  = "github.com/k-sone/snmpgo";
+    fetch = {
+      type = "git";
+      url = "https://github.com/k-sone/snmpgo";
+      rev =  "de09377ff34857b08afdc16ea8c7c2929eb1fc6e";
+      sha256 = "0fia82msxviawcp5w4j4ll9n7z3gfjjvigqcq0d94cshj9ras10j";
+    };
+  }
+  {
+    goPackagePath  = "github.com/kardianos/osext";
     fetch = {
       type = "git";
       url = "https://github.com/kardianos/osext";
-      rev = "ae77be60afb1dcacde03767a8c37337fad28ac14";
+      rev =  "ae77be60afb1dcacde03767a8c37337fad28ac14";
       sha256 = "056dkgxrqjj5r18bnc3knlpgdz5p3yvp12y4y978hnsfhwaqvbjz";
     };
   }
   {
-    goPackagePath = "github.com/magiconair/properties";
+    goPackagePath  = "github.com/kubernetes-incubator/custom-metrics-apiserver";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kubernetes-incubator/custom-metrics-apiserver";
+      rev =  "e61f72fec56ab519d74ebd396cd3fcf31b084558";
+      sha256 = "1cgbn0yzvrqrxq4kwwz2d6vddi9py2z18dx33yjd8w85j9ghhg6g";
+    };
+  }
+  {
+    goPackagePath  = "github.com/lxn/walk";
+    fetch = {
+      type = "git";
+      url = "https://github.com/lxn/walk";
+      rev =  "02935bac0ab8448d5f9bf72ebeeb7ca0d5553f9b";
+      sha256 = "0m0dva6nyv6vxc188c9003g5ylxb6clmlcvqjgaibbcrxkxjw1d5";
+    };
+  }
+  {
+    goPackagePath  = "github.com/lxn/win";
+    fetch = {
+      type = "git";
+      url = "https://github.com/lxn/win";
+      rev =  "7e1250ba2e7749fb9eb865da9ee93fb5a2fe73f1";
+      sha256 = "1n5ksvy3va3zd0iqpl64advjscm2w9n8kxn45ahahvbrbi7zy1zw";
+    };
+  }
+  {
+    goPackagePath  = "github.com/magiconair/properties";
     fetch = {
       type = "git";
       url = "https://github.com/magiconair/properties";
-      rev = "2c9e9502788518c97fe44e8955cd069417ee89df";
-      sha256 = "1w0rl9rla61m0qbha75jg48yiq1vs91sfy96rgqa6nags9v9b1rl";
+      rev =  "c2353362d570a7bfa228149c62842019201cfb71";
+      sha256 = "1a10362wv8a8qwb818wygn2z48lgzch940hvpv81hv8gc747ajxn";
+    };
+  }
+  {
+    goPackagePath  = "github.com/mailru/easyjson";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mailru/easyjson";
+      rev =  "3fdea8d05856a0c8df22ed4bc71b3219245e4485";
+      sha256 = "0g3crph77yhv4ipdnwqc32z4cp87ahi4ikad5kyy6q4znnxliz74";
+    };
+  }
+  {
+    goPackagePath  = "github.com/mattn/go-colorable";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-colorable";
+      rev =  "167de6bfdfba052fa6b2d3664c8f5272e23c9072";
+      sha256 = "1nwjmsppsjicr7anq8na6md7b1z84l9ppnlr045hhxjvbkqwalvx";
+    };
+  }
+  {
+    goPackagePath  = "github.com/mattn/go-isatty";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-isatty";
+      rev =  "0360b2af4f38e8d38c7fce2a9f4e702702d73a39";
+      sha256 = "06w45aqz2a6yrk25axbly2k5wmsccv8cspb94bfmz4izvw8h927n";
     };
   }
   {
-    goPackagePath = "github.com/mholt/archiver";
+    goPackagePath  = "github.com/matttproud/golang_protobuf_extensions";
+    fetch = {
+      type = "git";
+      url = "https://github.com/matttproud/golang_protobuf_extensions";
+      rev =  "c12348ce28de40eed0136aa2b644d0ee0650e56c";
+      sha256 = "1d0c1isd2lk9pnfq2nk0aih356j30k3h1gi2w0ixsivi5csl7jya";
+    };
+  }
+  {
+    goPackagePath  = "github.com/mholt/archiver";
     fetch = {
       type = "git";
       url = "https://github.com/mholt/archiver";
-      rev = "e4ef56d48eb029648b0e895bb0b6a393ef0829c3";
-      sha256 = "1krxyh6iq0s0rwhz7gg6dn795j9qq64rsgq9nivav7fhrqpgr6hb";
+      rev =  "26cf5bb32d07aa4e8d0de15f56ce516f4641d7df";
+      sha256 = "1r2gcxh8gkyn1l0h7sshachg2fxz6542lbqcar9zym6n2dni30mm";
     };
   }
   {
-    goPackagePath = "github.com/mitchellh/mapstructure";
+    goPackagePath  = "github.com/mitchellh/go-homedir";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mitchellh/go-homedir";
+      rev =  "3864e76763d94a6df2f9960b16a20a33da9f9a66";
+      sha256 = "1n8vya16l60i5jms43yb8fzdgwvqa2q926p5wkg3lbrk8pxy1nv0";
+    };
+  }
+  {
+    goPackagePath  = "github.com/mitchellh/mapstructure";
     fetch = {
       type = "git";
       url = "https://github.com/mitchellh/mapstructure";
-      rev = "00c29f56e2386353d58c599509e8dc3801b0d716";
-      sha256 = "1vw8fvhax0d567amgvxr7glcl12lvzg2sbzs007q5k5bbwn1szyb";
+      rev =  "bb74f1db0675b241733089d5a1faa5dd8b0ef57b";
+      sha256 = "1aqk9qr46bwgdc5j7n7als61xvssvyjf4qzfsvhacl4izpygqnw7";
     };
   }
   {
-    goPackagePath = "github.com/nwaples/rardecode";
+    goPackagePath  = "github.com/mitchellh/reflectwalk";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mitchellh/reflectwalk";
+      rev =  "63d60e9d0dbc60cf9164e6510889b0db6683d98c";
+      sha256 = "1hpq6sjr6l1h25x68mz13q7sd52dv1mjfxbl5p7m3j7cv85khnvc";
+    };
+  }
+  {
+    goPackagePath  = "github.com/modern-go/concurrent";
+    fetch = {
+      type = "git";
+      url = "https://github.com/modern-go/concurrent";
+      rev =  "bacd9c7ef1dd9b15be4a9909b8ac7a4e313eec94";
+      sha256 = "0s0fxccsyb8icjmiym5k7prcqx36hvgdwl588y0491gi18k5i4zs";
+    };
+  }
+  {
+    goPackagePath  = "github.com/modern-go/reflect2";
+    fetch = {
+      type = "git";
+      url = "https://github.com/modern-go/reflect2";
+      rev =  "4b7aa43c6742a2c18fdef89dd197aaae7dac7ccd";
+      sha256 = "1721y3yr3dpx5dx5ashf063qczk2awy5zjir1jvp1h5hn7qz4i49";
+    };
+  }
+  {
+    goPackagePath  = "github.com/nwaples/rardecode";
     fetch = {
       type = "git";
       url = "https://github.com/nwaples/rardecode";
-      rev = "e06696f847aeda6f39a8f0b7cdff193b7690aef6";
+      rev =  "e06696f847aeda6f39a8f0b7cdff193b7690aef6";
       sha256 = "1aj7l8ii7hxnn3q4wzxlx3f92b1aspck6ncyqgb4h2g228phcibw";
     };
   }
   {
-    goPackagePath = "github.com/patrickmn/go-cache";
+    goPackagePath  = "github.com/openshift/api";
+    fetch = {
+      type = "git";
+      url = "https://github.com/openshift/api";
+      rev =  "0d921e363e951d89f583292c60d013c318df64dc";
+      sha256 = "171xac4hr665q08mp17fld2zfpp95h9mjws2wikcr0brwq878p3s";
+    };
+  }
+  {
+    goPackagePath  = "github.com/patrickmn/go-cache";
     fetch = {
       type = "git";
       url = "https://github.com/patrickmn/go-cache";
-      rev = "a3647f8e31d79543b2d0f0ae2fe5c379d72cedc0";
+      rev =  "a3647f8e31d79543b2d0f0ae2fe5c379d72cedc0";
       sha256 = "10020inkzrm931r4bixf8wqr9n39wcrb78vfyxmbvjavvw4zybgs";
     };
   }
   {
-    goPackagePath = "github.com/pelletier/go-toml";
+    goPackagePath  = "github.com/pborman/uuid";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pborman/uuid";
+      rev =  "e790cca94e6cc75c7064b1332e63811d4aae1a53";
+      sha256 = "0y1crv4wkly2naki2f68ln9sc8l9skswkc696vr8vc43p4p67wam";
+    };
+  }
+  {
+    goPackagePath  = "github.com/pelletier/go-toml";
     fetch = {
       type = "git";
       url = "https://github.com/pelletier/go-toml";
-      rev = "66540cf1fcd2c3aee6f6787dfa32a6ae9a870f12";
-      sha256 = "1n8na0yg90gm0rpifmzrby5r385vvd62cdam3ls7ssy02bjvfw15";
+      rev =  "c01d1270ff3e442a8a57cddc1c92dc1138598194";
+      sha256 = "1fjzpcjng60mc3a4b2ql5a00d5gah84wj740dabv9kq67mpg8fxy";
     };
   }
   {
-    goPackagePath = "github.com/pierrec/lz4";
+    goPackagePath  = "github.com/pierrec/lz4";
     fetch = {
       type = "git";
       url = "https://github.com/pierrec/lz4";
-      rev = "ed8d4cc3b461464e69798080a0092bd028910298";
-      sha256 = "0flsn2ka108lb63gkxfzl90bkhndh1znnscv4v1k6j5h2s3zksls";
+      rev =  "1958fd8fff7f115e79725b1288e0b878b3e06b00";
+      sha256 = "1c4xi40bvcp91a3lw9nw1hylvdmb51hviwrqv5f6zj1sswkv24ps";
+    };
+  }
+  {
+    goPackagePath  = "github.com/pkg/errors";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pkg/errors";
+      rev =  "645ef00459ed84a119197bfb8d8205042c6df63d";
+      sha256 = "001i6n71ghp2l6kdl3qq1v2vmghcz3kicv9a5wgcihrzigm75pp5";
+    };
+  }
+  {
+    goPackagePath  = "github.com/pmezard/go-difflib";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pmezard/go-difflib";
+      rev =  "792786c7400a136282c1664665ae0a8db921c6c2";
+      sha256 = "0c1cn55m4rypmscgf0rrb88pn58j3ysvc2d0432dp3c6fqg6cnzw";
+    };
+  }
+  {
+    goPackagePath  = "github.com/prometheus/client_golang";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/client_golang";
+      rev =  "c5b7fccd204277076155f10851dad72b76a49317";
+      sha256 = "1xqny3147g12n4j03kxm8s9mvdbs3ln6i56c655mybrn9jjy48kd";
     };
   }
   {
-    goPackagePath = "github.com/pierrec/xxHash";
+    goPackagePath  = "github.com/prometheus/client_model";
     fetch = {
       type = "git";
-      url = "https://github.com/pierrec/xxHash";
-      rev = "a0006b13c722f7f12368c00a3d3c2ae8a999a0c6";
-      sha256 = "1hf7hqrqx0cbgx0alfwnqs0mrxg9rnwsijn5d0lv06w6vzqbvnzj";
+      url = "https://github.com/prometheus/client_model";
+      rev =  "99fa1f4be8e564e8a6b613da7fa6f46c9edafc6c";
+      sha256 = "19y4ywsivhpxj7ikf2j0gm9k3cmyw37qcbfi78n526jxcc7kw998";
     };
   }
   {
-    goPackagePath = "github.com/shirou/gopsutil";
+    goPackagePath  = "github.com/prometheus/common";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/common";
+      rev =  "7600349dcfe1abd18d72d3a1770870d9800a7801";
+      sha256 = "0lsp94dqpj35dny4m4x15kg4wgwawlm3in7cnpajkkacgyxagk5f";
+    };
+  }
+  {
+    goPackagePath  = "github.com/prometheus/procfs";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/procfs";
+      rev =  "7d6f385de8bea29190f15ba9931442a0eaef9af7";
+      sha256 = "18cish8yas5r6xhgp8p8n7lg4wh3d4szzirszxra8m7rwy3swxxq";
+    };
+  }
+  {
+    goPackagePath  = "github.com/samuel/go-zookeeper";
+    fetch = {
+      type = "git";
+      url = "https://github.com/samuel/go-zookeeper";
+      rev =  "c4fab1ac1bec58281ad0667dc3f0907a9476ac47";
+      sha256 = "0i7mxg9hz8ymglq2xcwwswy1pvcr53qd57lzcdlf3d5bjki73a4w";
+    };
+  }
+  {
+    goPackagePath  = "github.com/sbinet/go-python";
+    fetch = {
+      type = "git";
+      url = "https://github.com/sbinet/go-python";
+      rev =  "f976f61134dc6f5b4920941eb1b0e7cec7e4ef4c";
+      sha256 = "15l7wip7kr1z6v3315m9y0070wmwq447q7gwz6490xwnclrq85kl";
+    };
+  }
+  {
+    goPackagePath  = "github.com/shirou/gopsutil";
     fetch = {
       type = "git";
       url = "https://github.com/shirou/gopsutil";
-      rev = "57f370e13068146efe1cb7129f79e5d51da8a242";
-      sha256 = "1ij0bbnfjj65afin8vhccr3cxvg6r0awmvcvb2ilza5wbbsslggb";
+      rev =  "eeb1d38d69593f121e060d24d17f7b1f0936b203";
+      sha256 = "01qsznk599225gf4pld7p2m30p61y77mvzhrs6raxpk6wf7icp4w";
     };
   }
   {
-    goPackagePath = "github.com/spf13/afero";
+    goPackagePath  = "github.com/shirou/w32";
+    fetch = {
+      type = "git";
+      url = "https://github.com/shirou/w32";
+      rev =  "bb4de0191aa41b5507caa14b0650cdbddcd9280b";
+      sha256 = "0xh5vqblhr2c3mlaswawx6nipi4rc2x73rbdvlkakmgi0nnl50m4";
+    };
+  }
+  {
+    goPackagePath  = "github.com/spf13/afero";
     fetch = {
       type = "git";
       url = "https://github.com/spf13/afero";
-      rev = "63644898a8da0bc22138abf860edaf5277b6102e";
-      sha256 = "13piahaq4vw1y1sklq5scrsflqx0a8hzmdqfz1fy4871kf2gl8qw";
+      rev =  "787d034dfe70e44075ccc060d346146ef53270ad";
+      sha256 = "0138rjiacl71h7kvhzinviwvy6qa2m6rflpv9lgqv15hnjvhwvg1";
     };
   }
   {
-    goPackagePath = "github.com/spf13/cast";
+    goPackagePath  = "github.com/spf13/cast";
     fetch = {
       type = "git";
       url = "https://github.com/spf13/cast";
-      rev = "8965335b8c7107321228e3e3702cab9832751bac";
+      rev =  "8965335b8c7107321228e3e3702cab9832751bac";
       sha256 = "177bk7lq40jbgv9p9r80aydpaccfk8ja3a7jjhfwiwk9r1pa4rr2";
     };
   }
   {
-    goPackagePath = "github.com/spf13/cobra";
+    goPackagePath  = "github.com/spf13/cobra";
     fetch = {
       type = "git";
       url = "https://github.com/spf13/cobra";
-      rev = "ef82de70bb3f60c65fb8eebacbb2d122ef517385";
+      rev =  "ef82de70bb3f60c65fb8eebacbb2d122ef517385";
       sha256 = "1q1nsx05svyv9fv3fy6xv6gs9ffimkyzsfm49flvl3wnvf1ncrkd";
     };
   }
   {
-    goPackagePath = "github.com/spf13/jwalterweatherman";
+    goPackagePath  = "github.com/spf13/jwalterweatherman";
     fetch = {
       type = "git";
       url = "https://github.com/spf13/jwalterweatherman";
-      rev = "7c0cea34c8ece3fbeb2b27ab9b59511d360fb394";
+      rev =  "7c0cea34c8ece3fbeb2b27ab9b59511d360fb394";
       sha256 = "132p84i20b9s5r6fs597lsa6648vd415ch7c0d018vm8smzqpd0h";
     };
   }
   {
-    goPackagePath = "github.com/spf13/pflag";
+    goPackagePath  = "github.com/spf13/pflag";
     fetch = {
       type = "git";
       url = "https://github.com/spf13/pflag";
-      rev = "583c0c0531f06d5278b7d917446061adc344b5cd";
+      rev =  "583c0c0531f06d5278b7d917446061adc344b5cd";
       sha256 = "0nr4mdpfhhk94hq4ymn5b2sxc47b29p1akxd8b0hx4dvdybmipb5";
     };
   }
   {
-    goPackagePath = "github.com/spf13/viper";
+    goPackagePath  = "github.com/spf13/viper";
     fetch = {
       type = "git";
       url = "https://github.com/spf13/viper";
-      rev = "8dc2790b029dc41e2b8ff772c63c26adbb1db70d";
-      sha256 = "147zq6v34pgb79r4m0m2mwm8739jxwawxs8mpqvvhq7gxwvhng40";
+      rev =  "b5e8006cbee93ec955a89ab31e0e3ce3204f3736";
+      sha256 = "0y3r6ysi5vn0yq5c7pbl62yg2i64fkv54xgj2jf1hn3v6zzyimis";
     };
   }
   {
-    goPackagePath = "github.com/stretchr/testify";
+    goPackagePath  = "github.com/stretchr/objx";
+    fetch = {
+      type = "git";
+      url = "https://github.com/stretchr/objx";
+      rev =  "477a77ecc69700c7cdeb1fa9e129548e1c1c393c";
+      sha256 = "0iph0qmpyqg4kwv8jsx6a56a7hhqq8swrazv40ycxk9rzr0s8yls";
+    };
+  }
+  {
+    goPackagePath  = "github.com/stretchr/testify";
     fetch = {
       type = "git";
       url = "https://github.com/stretchr/testify";
-      rev = "c679ae2cc0cb27ec3293fea7e254e47386f05d69";
-      sha256 = "1rrdn7k83j492rzhqwkh6956sj8m2nbk44d7r1xa9nsn3hfwj691";
+      rev =  "f35b8ab0b5a2cef36673838d662e249dd9c94686";
+      sha256 = "0dlszlshlxbmmfxj5hlwgv3r22x0y1af45gn1vd198nvvs3pnvfs";
+    };
+  }
+  {
+    goPackagePath  = "github.com/ugorji/go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ugorji/go";
+      rev =  "8c0409fcbb70099c748d71f714529204975f6c3f";
+      sha256 = "0z61j0cniq3n5af0q57dbpyfmidihzimrwnysfphfzwyd0ic4rcv";
     };
   }
   {
-    goPackagePath = "github.com/ulikunitz/xz";
+    goPackagePath  = "github.com/ulikunitz/xz";
     fetch = {
       type = "git";
       url = "https://github.com/ulikunitz/xz";
-      rev = "0c6b41e72360850ca4f98dc341fd999726ea007f";
+      rev =  "0c6b41e72360850ca4f98dc341fd999726ea007f";
       sha256 = "0a6l7sp67ipxim093qh6fvw8knbxj24l7bj5lykcddi5gwfi78n3";
     };
   }
   {
-    goPackagePath = "github.com/urfave/negroni";
+    goPackagePath  = "github.com/urfave/negroni";
     fetch = {
       type = "git";
       url = "https://github.com/urfave/negroni";
-      rev = "22c5532ea862c34fdad414e90f8cc00b4f6f4cab";
-      sha256 = "0jxd10cr3imm96xa01mdgyad4nq6mc7yr49z830fv3vywfr7bac8";
+      rev =  "5dbbc83f748fc3ad38585842b0aedab546d0ea1e";
+      sha256 = "10w4ygc78hgsryxwmjmz8w51d84bjh7jm8j0xfv4vnpz5gscc8dj";
     };
   }
   {
-    goPackagePath = "golang.org/x/net";
+    goPackagePath  = "golang.org/x/crypto";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/crypto";
+      rev =  "a49355c7e3f8fe157a85be2f77e6e269a0f89602";
+      sha256 = "020q1laxjx5kcmnqy4wmdb63zhb0lyq6wpy40axhswzg2nd21s44";
+    };
+  }
+  {
+    goPackagePath  = "golang.org/x/net";
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/net";
-      rev = "640f4622ab692b87c2f3a94265e6f579fe38263d";
-      sha256 = "097m4qhcljhp180171j5fjhq4740iirfkkajfd7yrxqhp4s9hljx";
+      rev =  "97aa3a539ec716117a9d15a4659a911f50d13c3c";
+      sha256 = "1738bi8l50f0iq0il6h4qy1cgy39yh3q4gh1lwp5y5j7jyy33ccd";
     };
   }
   {
-    goPackagePath = "golang.org/x/sys";
+    goPackagePath  = "golang.org/x/sys";
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/sys";
-      rev = "6f686a352de66814cdd080d970febae7767857a3";
-      sha256 = "1z3pwvxlzq8kghjdsd9xmf184iiz13h8h66ipp626k4rc7kydr03";
+      rev =  "7138fd3d9dc8335c567ca206f4333fb75eb05d56";
+      sha256 = "09xgxk0d9b88m18sriy4f2l6qavicznxkgsbvjyv56x24r4kmiq0";
     };
   }
   {
-    goPackagePath = "golang.org/x/text";
+    goPackagePath  = "golang.org/x/text";
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/text";
-      rev = "7922cc490dd5a7dbaa7fd5d6196b49db59ac042f";
-      sha256 = "06sicjc24hv7v9p1l6psaq87w4lycx3mjixd6gsd1wnd4jhqvlnr";
+      rev =  "f21a4dfb5e38f5895301dc265a8def02365cc3d0";
+      sha256 = "0r6x6zjzhr8ksqlpiwm5gdd7s209kwk5p4lw54xjvz10cs3qlq19";
     };
   }
   {
-    goPackagePath = "gopkg.in/yaml.v2";
+    goPackagePath  = "golang.org/x/time";
     fetch = {
       type = "git";
-      url = "https://gopkg.in/yaml.v2";
-      rev = "5420a8b6744d3b0345ab293f6fcba19c978f1183";
-      sha256 = "0dwjrs2lp2gdlscs7bsrmyc5yf6mm4fvgw71bzr9mv2qrd2q73s1";
+      url = "https://go.googlesource.com/time";
+      rev =  "fbb02b2291d28baffd63558aa44b4b56f178d650";
+      sha256 = "0jjqcv6rzihlgg4i797q80g1f6ch5diz2kxqh6488gwkb6nds4h4";
     };
   }
   {
-    goPackagePath = "github.com/sbinet/go-python";
+    goPackagePath  = "google.golang.org/genproto";
     fetch = {
       type = "git";
-      url = "https://github.com/sbinet/go-python";
-      rev = "6d13f941744b9332d6ed00dc2cd2722acd79a47e";
-      sha256 = "0x5q4nyv6gck9q33g54gy2ajmyjksxjmzh0jfqqn97jpgf4qfaym";
+      url = "https://github.com/google/go-genproto";
+      rev =  "ff3583edef7de132f219f0efc00e097cabcc0ec0";
+      sha256 = "0bpzxk85fgvznmdf9356nzh8riqhwzcil9r2a955rbfn27lh4lmy";
     };
   }
   {
-    goPackagePath = "github.com/mitchellh/reflectwalk";
+    goPackagePath  = "google.golang.org/grpc";
     fetch = {
       type = "git";
-      url = "https://github.com/mitchellh/reflectwalk";
-      rev = "63d60e9d0dbc60cf9164e6510889b0db6683d98c";
-      sha256 = "1hpq6sjr6l1h25x68mz13q7sd52dv1mjfxbl5p7m3j7cv85khnvc";
+      url = "https://github.com/grpc/grpc-go";
+      rev =  "168a6198bcb0ef175f7dacec0b8691fc141dc9b8";
+      sha256 = "0d8vj372ri55mrqfc0rhjl3albp5ykwfjhda1s5cgm5n40v70pr3";
+    };
+  }
+  {
+    goPackagePath  = "gopkg.in/Knetic/govaluate.v3";
+    fetch = {
+      type = "git";
+      url = "https://github.com/Knetic/govaluate";
+      rev =  "d216395917cc49052c7c7094cf57f09657ca08a8";
+      sha256 = "1b0sy89hy5d1720i43ikqfcxr4v6p9g9c7rnbif8s6256a7c2rsq";
+    };
+  }
+  {
+    goPackagePath  = "gopkg.in/inf.v0";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-inf/inf";
+      rev =  "d2d2541c53f18d2a059457998ce2876cc8e67cbf";
+      sha256 = "00k5iqjcp371fllqxncv7jkf80hn1zww92zm78cclbcn4ybigkng";
+    };
+  }
+  {
+    goPackagePath  = "gopkg.in/natefinch/lumberjack.v2";
+    fetch = {
+      type = "git";
+      url = "https://github.com/natefinch/lumberjack";
+      rev =  "a96e63847dc3c67d17befa69c303767e2f84e54f";
+      sha256 = "1l3vlv72b7rfkpy1164kwd3qzrqmmjnb67akzxqp2mlvc66k6p3d";
+    };
+  }
+  {
+    goPackagePath  = "gopkg.in/yaml.v2";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-yaml/yaml";
+      rev =  "d670f9405373e636a5a2765eea47fac0c9bc91a4";
+      sha256 = "1w1xid51n8v1mydn2m3vgggw8qgpd5a5sr62snsc77d99fpjsrs0";
+    };
+  }
+  {
+    goPackagePath  = "gopkg.in/zorkian/go-datadog-api.v2";
+    fetch = {
+      type = "git";
+      url = "https://github.com/zorkian/go-datadog-api";
+      rev =  "6c08e2322af96e867e5715aedd6ea194c42cf44f";
+      sha256 = "16ha3azq9981hwpn18sd50ai6d1h85fsawbdxp352c4gi8bhj8zw";
+    };
+  }
+  {
+    goPackagePath  = "k8s.io/api";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kubernetes/api";
+      rev =  "9e5ffd1f1320950b238cfce291b926411f0af722";
+      sha256 = "03992x9n9b8w9rlf70wizn7iqk8cbyksxg0sdc1mm5jyzyvgksgf";
+    };
+  }
+  {
+    goPackagePath  = "k8s.io/apimachinery";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kubernetes/apimachinery";
+      rev =  "e386b2658ed20923da8cc9250e552f082899a1ee";
+      sha256 = "0lgwpsvx0gpnrdnkqc9m96xwkifdq50l7cj9rvh03njws4rbd8jz";
+    };
+  }
+  {
+    goPackagePath  = "k8s.io/apiserver";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kubernetes/apiserver";
+      rev =  "2cf66d2375dce045e1e02e1d7b74a0d1e34fedb3";
+      sha256 = "0x0am99n25njpbd1x20bhyadpv9w6qqjmspp1ahzpmdwjzrnsagg";
+    };
+  }
+  {
+    goPackagePath  = "k8s.io/client-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kubernetes/client-go";
+      rev =  "23781f4d6632d88e869066eaebb743857aa1ef9b";
+      sha256 = "0cazbcv7j7fgjs00arx3a8f0z0ikybmv16ccy0yg0wp0nbc05r6v";
+    };
+  }
+  {
+    goPackagePath  = "k8s.io/kube-openapi";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kubernetes/kube-openapi";
+      rev =  "b742be413d0a6f781c123bed504c8fb39264c57d";
+      sha256 = "13ik6dri0f9fzs8p6987h6n3y2aqjz5cj957826xwkpv4fj2zgq8";
+    };
+  }
+  {
+    goPackagePath  = "k8s.io/metrics";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kubernetes/metrics";
+      rev =  "0d9ea2ac660031c8f2726a735dda29441f396f99";
+      sha256 = "0bcsb7s4wlmrja35zvz4s10cf3w7dfn2ckjv6apxd1ykdjxnsk71";
     };
   }
 ]
diff --git a/pkgs/tools/networking/dhcpcd/default.nix b/pkgs/tools/networking/dhcpcd/default.nix
index 1fe29b8b96ff..a03d2a123932 100644
--- a/pkgs/tools/networking/dhcpcd/default.nix
+++ b/pkgs/tools/networking/dhcpcd/default.nix
@@ -34,10 +34,11 @@ stdenv.mkDerivation rec {
     find $out -type f -print0 | xargs --null sed -i 's|${stdenv.shellPackage}|${runtimeShellPackage}|'
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "A client for the Dynamic Host Configuration Protocol (DHCP)";
     homepage = https://roy.marples.name/projects/dhcpcd;
-    platforms = stdenv.lib.platforms.linux;
-    maintainers = with stdenv.lib.maintainers; [ eelco fpletz ];
+    platforms = platforms.linux;
+    license = licenses.bsd2;
+    maintainers = with maintainers; [ eelco fpletz ];
   };
 }
diff --git a/pkgs/tools/networking/dhcpdump/default.nix b/pkgs/tools/networking/dhcpdump/default.nix
index af4b03ab700b..8ed9d1d1d706 100644
--- a/pkgs/tools/networking/dhcpdump/default.nix
+++ b/pkgs/tools/networking/dhcpdump/default.nix
@@ -17,9 +17,10 @@ stdenv.mkDerivation rec {
     cp dhcpdump $out/bin
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "A tool for visualization of DHCP packets as recorded and output by tcpdump to analyze DHCP server responses";
-    homepage = https://packages.ubuntu.com/ru/lucid/dhcpdump;
-    platforms = stdenv.lib.platforms.linux;
+    homepage = http://www.mavetju.org/unix/dhcpdump-man.php;
+    platforms = platforms.linux;
+    license = licenses.bsd2;
   };
 }
diff --git a/pkgs/tools/networking/dnscrypt-proxy/1.x/default.nix b/pkgs/tools/networking/dnscrypt-proxy/1.x/default.nix
index 6120b821bf41..d555a74ffb1a 100644
--- a/pkgs/tools/networking/dnscrypt-proxy/1.x/default.nix
+++ b/pkgs/tools/networking/dnscrypt-proxy/1.x/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "A tool for securing communications between a client and a DNS resolver";
-    homepage = https://dnscrypt.org/;
+    homepage = https://dnscrypt.info/;
     license = licenses.isc;
     maintainers = with maintainers; [ joachifm jgeerds ];
     # upstream claims OSX support, but Hydra fails
diff --git a/pkgs/tools/networking/dnscrypt-wrapper/default.nix b/pkgs/tools/networking/dnscrypt-wrapper/default.nix
index 4351fd84dcdb..7ed1dbf3220e 100644
--- a/pkgs/tools/networking/dnscrypt-wrapper/default.nix
+++ b/pkgs/tools/networking/dnscrypt-wrapper/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A tool for adding dnscrypt support to any name resolver";
-    homepage = https://dnscrypt.org/;
+    homepage = https://dnscrypt.info/;
     license = licenses.isc;
     maintainers = with maintainers; [ tstrobel joachifm ];
     platforms = platforms.linux;
diff --git a/pkgs/tools/networking/dnsperf/default.nix b/pkgs/tools/networking/dnsperf/default.nix
index 015046f2bdaa..9d6b85092efc 100644
--- a/pkgs/tools/networking/dnsperf/default.nix
+++ b/pkgs/tools/networking/dnsperf/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
     outputsToInstall = outputs; # The man pages and PDFs are likely useful to most.
 
     description = "Tools for DNS benchmaring";
-    homepage = https://nominum.com/measurement-tools/;
+    homepage = https://www.akamai.com/us/en/products/network-operator/measurement-tools.jsp;
     license = licenses.isc;
     platforms = platforms.unix;
     maintainers = [ maintainers.vcunat ];
diff --git a/pkgs/tools/networking/driftnet/default.nix b/pkgs/tools/networking/driftnet/default.nix
index 5b39ca464601..bf0a43ce5153 100644
--- a/pkgs/tools/networking/driftnet/default.nix
+++ b/pkgs/tools/networking/driftnet/default.nix
@@ -26,5 +26,6 @@ stdenv.mkDerivation rec {
     homepage = https://github.com/deiv/driftnet;
     maintainers = with maintainers; [ offline ];
     platforms = platforms.linux;
+    license = licenses.gpl2;
   };
 }
diff --git a/pkgs/tools/networking/fdm/default.nix b/pkgs/tools/networking/fdm/default.nix
index 3984922abe28..54e205390666 100644
--- a/pkgs/tools/networking/fdm/default.nix
+++ b/pkgs/tools/networking/fdm/default.nix
@@ -27,5 +27,6 @@ stdenv.mkDerivation rec {
     platforms = with platforms; linux;
     homepage = https://github.com/nicm/fdm;
     downloadPage = https://github.com/nicm/fdm/releases;
+    license = licenses.isc;
   };
 }
diff --git a/pkgs/tools/networking/gnirehtet/default.nix b/pkgs/tools/networking/gnirehtet/default.nix
index 8a2d32e543b0..d40b85591b59 100644
--- a/pkgs/tools/networking/gnirehtet/default.nix
+++ b/pkgs/tools/networking/gnirehtet/default.nix
@@ -1,11 +1,11 @@
 {stdenv, rustPlatform, fetchFromGitHub, fetchzip, androidenv, substituteAll}:
 let
-version = "2.2.1";
+version = "2.3";
 apk = stdenv.mkDerivation {
   name = "gnirehtet.apk-${version}";
   src = fetchzip {
     url = "https://github.com/Genymobile/gnirehtet/releases/download/v${version}/gnirehtet-rust-linux64-v${version}.zip";
-    sha256 = "1rz2wdjc1y7n8fhskmki1nj0ak80ylxspcsrcdnjkk9r7jbq0kan";
+    sha256 = "08pgmpbz82cd8ndr2syiv25l5xk1gvh9gzji4pgva5gw269bjmpz";
   };
   installPhase = ''
     mkdir $out
@@ -20,10 +20,10 @@ rustPlatform.buildRustPackage rec {
       owner = "Genymobile";
       repo = "gnirehtet";
       rev = "v${version}";
-      sha256 = "1mv8nq4422k2d766qjqqnqp47qzzbbvlwhdni0k6w4nmd3m5cnd9";
+      sha256 = "118ig42qzr2xyra7r8zfxq38xidaxfc98ja9836jwnn9fgbigczr";
   };
   sourceRoot = "source/relay-rust";
-  cargoSha256 = "11qf9n6h6akvb0rbmsgdlfmypkbnas8ss1cs7i8w19mh7524n0v5";
+  cargoSha256 = "0370jbllahcdhs132szbxb2yr675s5smm74sx58qi8jhykbb5qs7";
 
   patchFlags = [ "-p2" ];
   patches = [
diff --git a/pkgs/tools/networking/gnirehtet/paths.patch b/pkgs/tools/networking/gnirehtet/paths.patch
index 72a8445d83b9..e5df4b8e4fe7 100644
--- a/pkgs/tools/networking/gnirehtet/paths.patch
+++ b/pkgs/tools/networking/gnirehtet/paths.patch
@@ -1,7 +1,7 @@
-diff --git a/relay-rust/src/main.rs b/relay-rust/src/main.rs
-index 4f1be53..96d2e78 100644
---- a/relay-rust/src/main.rs
-+++ b/relay-rust/src/main.rs
+Index: gnirehtet/relay-rust/src/main.rs
+===================================================================
+--- gnirehtet.orig/relay-rust/src/main.rs
++++ gnirehtet/relay-rust/src/main.rs
 @@ -299,7 +299,7 @@ impl Command for RelayCommand {
  
  fn cmd_install(serial: Option<&String>) -> Result<(), CommandExecutionError> {
@@ -11,7 +11,7 @@ index 4f1be53..96d2e78 100644
  }
  
  fn cmd_uninstall(serial: Option<&String>) -> Result<(), CommandExecutionError> {
-@@ -467,8 +467,8 @@ fn exec_adb<S: Into<String>>(
+@@ -464,8 +464,8 @@ fn exec_adb<S: Into<String>>(
      args: Vec<S>,
  ) -> Result<(), CommandExecutionError> {
      let adb_args = create_adb_args(serial, args);
@@ -22,7 +22,7 @@ index 4f1be53..96d2e78 100644
          Ok(exit_status) => {
              if exit_status.success() {
                  Ok(())
-@@ -490,8 +490,8 @@ fn must_install_client(serial: Option<&String>) -> Result<bool, CommandExecution
+@@ -487,8 +487,8 @@ fn must_install_client(serial: Option<&S
          serial,
          vec!["shell", "dumpsys", "package", "com.genymobile.gnirehtet"],
      );
@@ -33,3 +33,16 @@ index 4f1be53..96d2e78 100644
          Ok(output) => {
              if output.status.success() {
                  // the "regex" crate makes the binary far bigger, so just parse the versionCode
+Index: gnirehtet/relay-rust/src/adb_monitor.rs
+===================================================================
+--- gnirehtet.orig/relay-rust/src/adb_monitor.rs
++++ gnirehtet/relay-rust/src/adb_monitor.rs
+@@ -206,7 +206,7 @@ impl AdbMonitor {
+
+     fn start_adb_daemon() -> bool {
+         info!(target: TAG, "Restarting adb daemon");
+-        match process::Command::new("adb")
++        match process::Command::new("@adb@")
+             .args(&["start-server"])
+             .status() {
+             Ok(exit_status) => {
diff --git a/pkgs/tools/networking/gvpe/default.nix b/pkgs/tools/networking/gvpe/default.nix
index 07676cb18712..bcc68a2a19f7 100644
--- a/pkgs/tools/networking/gvpe/default.nix
+++ b/pkgs/tools/networking/gvpe/default.nix
@@ -24,9 +24,11 @@ stdenv.mkDerivation rec {
     sed -e 's@/sbin/ifconfig@${nettools}/sbin/ifconfig@g' -i src/device-*.C
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "A protected multinode virtual network";
-    maintainers = [ stdenv.lib.maintainers.raskin ];
-    platforms = with stdenv.lib.platforms; linux ++ freebsd;
+    homepage = http://software.schmorp.de/pkg/gvpe.html;
+    maintainers = [ maintainers.raskin ];
+    platforms = with platforms; linux ++ freebsd;
+    license = licenses.gpl2;
   };
 }
diff --git a/pkgs/tools/networking/libreswan/default.nix b/pkgs/tools/networking/libreswan/default.nix
index fd2461f51719..9a0b8c9ebf54 100644
--- a/pkgs/tools/networking/libreswan/default.nix
+++ b/pkgs/tools/networking/libreswan/default.nix
@@ -76,10 +76,11 @@ stdenv.mkDerivation {
 
   enableParallelBuilding = true;
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = https://libreswan.org;
     description = "A free software implementation of the VPN protocol based on IPSec and the Internet Key Exchange";
-    platforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin ++ stdenv.lib.platforms.freebsd;
-    maintainers = [ stdenv.lib.maintainers.afranchuk ];
+    platforms = platforms.linux ++ platforms.darwin ++ platforms.freebsd;
+    license = licenses.gpl2;
+    maintainers = [ maintainers.afranchuk ];
   };
 }
diff --git a/pkgs/tools/networking/lldpd/default.nix b/pkgs/tools/networking/lldpd/default.nix
index 02e4672a1aee..81456c1b852d 100644
--- a/pkgs/tools/networking/lldpd/default.nix
+++ b/pkgs/tools/networking/lldpd/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchurl, pkgconfig, removeReferencesTo
+{ stdenv, lib, fetchurl, fetchpatch, pkgconfig, removeReferencesTo
 , libevent, readline, net_snmp }:
 
 stdenv.mkDerivation rec {
@@ -10,6 +10,16 @@ stdenv.mkDerivation rec {
     sha256 = "0lgiappbjm95r1m0xyxb6gzz4izcjixknbzq3s7pbqbsmhm642s5";
   };
 
+  patches = [
+    # Fixes #44507: The service fails to start due to a /bin/mkdir call.
+    # Should be included in the upstream release after 1.0.1.
+    # Please remove this patch when updating and ensure the NixOS service starts.
+    (fetchpatch {
+      url = "https://github.com/vincentbernat/lldpd/commit/90a50860ebdcdeb5b7dc85790b18bed23c97ec32.patch";
+      sha256 = "005i4ldc4mfzfmvbnid6849ax2i93mx8nkyf8vjv8k73bfpdza8z";
+    })
+  ];
+
   configureFlags = [
     "--localstatedir=/var"
     "--enable-pie"
diff --git a/pkgs/tools/networking/miniupnpc/default.nix b/pkgs/tools/networking/miniupnpc/default.nix
index 902055e0d798..88b4b7fab88f 100644
--- a/pkgs/tools/networking/miniupnpc/default.nix
+++ b/pkgs/tools/networking/miniupnpc/default.nix
@@ -19,16 +19,17 @@ let
 
       makeFlags = "PREFIX=$(out) INSTALLPREFIX=$(out)";
 
-      meta = {
+      meta = with stdenv.lib; {
         homepage = http://miniupnp.free.fr/;
         description = "A client that implements the UPnP Internet Gateway Device (IGD) specification";
-        platforms = with stdenv.lib.platforms; linux ++ freebsd ++ darwin;
+        platforms = with platforms; linux ++ freebsd ++ darwin;
+        license = licenses.bsd3;
       };
     };
 in {
   miniupnpc_2 = generic {
-    version = "2.0.20180203";
-    sha256 = "1dr0qaf2qz49aawgsnv7l41rda5yvdk3qfz2hd5cv9iwav3sipch";
+    version = "2.1";
+    sha256 = "1ik440yspbp3clr4m01xsl9skwyrzcvzb5nbm3i0g9x53vhbb7z1";
   };
   miniupnpc_1 = generic {
     version = "1.9.20160209";
diff --git a/pkgs/tools/networking/miniupnpd/default.nix b/pkgs/tools/networking/miniupnpd/default.nix
index 07112d1497af..f794a4e27c7a 100644
--- a/pkgs/tools/networking/miniupnpd/default.nix
+++ b/pkgs/tools/networking/miniupnpd/default.nix
@@ -22,5 +22,6 @@ stdenv.mkDerivation rec {
     homepage = http://miniupnp.free.fr/;
     description = "A daemon that implements the UPnP Internet Gateway Device (IGD) specification";
     platforms = platforms.linux;
+    license = licenses.bsd3;
   };
 }
diff --git a/pkgs/tools/networking/mitmproxy/default.nix b/pkgs/tools/networking/mitmproxy/default.nix
index d3b62d3259cc..d06399169707 100644
--- a/pkgs/tools/networking/mitmproxy/default.nix
+++ b/pkgs/tools/networking/mitmproxy/default.nix
@@ -1,18 +1,29 @@
-{ stdenv, fetchFromGitHub, python3Packages, glibcLocales }:
+{ stdenv, fetchFromGitHub, python3Packages, glibcLocales, fetchpatch }:
 
 with python3Packages;
 
 buildPythonPackage rec {
   pname = "mitmproxy";
-  version = "3.0.4";
+  version = "4.0.4";
 
   src = fetchFromGitHub {
     owner  = pname;
     repo   = pname;
     rev    = "v${version}";
-    sha256 = "10l761ds46r1p2kjxlgby9vdxbjjlgq72s6adjypghi41s3qf034";
+    sha256 = "14i9dkafvyl15rq2qa8xldscn5lmkk2g52kbi2hl63nzx9yibx6r";
   };
 
+  patches = [
+    (fetchpatch {
+      # Tests failed due to expired test certificates,
+      # https://github.com/mitmproxy/mitmproxy/issues/3316
+      # TODO: remove on next update
+      name = "test-certificates.patch";
+      url = "https://github.com/mitmproxy/mitmproxy/commit/1b6a8d6acd3d70f9b9627ad4ae9def08103f8250.patch";
+      sha256 = "03y79c25yir7d8xj79czdc81y3irqq1i3ks9ca0mv1az8b7xsvfv";
+    })
+  ];
+
   postPatch = ''
     # remove dependency constraints
     sed 's/>=\([0-9]\.\?\)\+\( \?, \?<\([0-9]\.\?\)\+\)\?//' -i setup.py
@@ -23,8 +34,7 @@ buildPythonPackage rec {
   checkPhase = ''
     export HOME=$(mktemp -d)
     export LC_CTYPE=en_US.UTF-8
-    # test_echo resolves hostnames
-    pytest -k 'not test_echo and not test_find_unclaimed_URLs '
+    pytest -k 'not test_find_unclaimed_URLs'
   '';
 
   propagatedBuildInputs = [
@@ -38,6 +48,7 @@ buildPythonPackage rec {
   checkInputs = [
     beautifulsoup4 flask pytest
     requests glibcLocales
+    asynctest parver pytest-asyncio
   ];
 
   meta = with stdenv.lib; {
diff --git a/pkgs/tools/networking/nbd/default.nix b/pkgs/tools/networking/nbd/default.nix
index 0f7f75b989e2..75e2b45110fe 100644
--- a/pkgs/tools/networking/nbd/default.nix
+++ b/pkgs/tools/networking/nbd/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, glib }:
+{ stdenv, fetchurl, pkgconfig, glib, which }:
 
 stdenv.mkDerivation rec {
   name = "nbd-3.18";
@@ -8,10 +8,11 @@ stdenv.mkDerivation rec {
     sha256 = "0cb0sjiv0j9sh9dk24nrjm7sa0axbrcp2av5hc91g1ryzk764dyq";
   };
 
-  buildInputs =
-    [ pkgconfig glib ]
+  buildInputs = [ glib ]
     ++ stdenv.lib.optional (stdenv ? glibc) stdenv.glibc.linuxHeaders;
 
+  nativeBuildInputs = [ pkgconfig which ];
+
   postInstall = ''
     mkdir -p "$out/share/doc/${name}"
     cp README.md "$out/share/doc/${name}/"
diff --git a/pkgs/tools/networking/ncftp/default.nix b/pkgs/tools/networking/ncftp/default.nix
index 0a0eadbfcba4..90ac44aa375a 100644
--- a/pkgs/tools/networking/ncftp/default.nix
+++ b/pkgs/tools/networking/ncftp/default.nix
@@ -35,5 +35,6 @@ stdenv.mkDerivation rec {
     homepage = https://www.ncftp.com/ncftp/;
     maintainers = with maintainers; [ bjornfor ];
     platforms = platforms.unix;
+    license = licenses.clArtistic;
   };
 }
diff --git a/pkgs/tools/networking/netselect/default.nix b/pkgs/tools/networking/netselect/default.nix
index 6015ff9fbc7c..ef00d8602feb 100644
--- a/pkgs/tools/networking/netselect/default.nix
+++ b/pkgs/tools/networking/netselect/default.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation {
   name = "netselect-0.3";
-  
+
   src = fetchurl {
     url = http://alumnit.ca/~apenwarr/netselect/netselect-0.3.tar.gz;
     sha256 = "0y69z59vylj9x9nk5jqn6ihx7dkzg09gpv2w1q1rs8fmi4jr90gy";
@@ -15,11 +15,11 @@ stdenv.mkDerivation {
       --replace "-g root" "" \
       --replace "4755"    "0755"
   '';
-  
-  meta = {
-    homepage = http://alumnit.ca/~apenwarr/netselect/;
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/apenwarr/netselect;
     description = "An ultrafast intelligent parallelizing binary-search implementation of \"ping\"";
-    license = "BSD";
-    platforms = stdenv.lib.platforms.linux;
+    license = licenses.bsd3;
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/tools/networking/network-manager/applet.nix b/pkgs/tools/networking/network-manager/applet.nix
index d516a2b5ee87..4725b0a7d72f 100644
--- a/pkgs/tools/networking/network-manager/applet.nix
+++ b/pkgs/tools/networking/network-manager/applet.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchurl, meson, ninja, intltool, gtk-doc, pkgconfig, networkmanager, gnome3
 , libnotify, libsecret, polkit, isocodes, modemmanager, libxml2, docbook_xsl, docbook_xml_dtd_43
 , mobile-broadband-provider-info, glib-networking, gsettings-desktop-schemas
-, libgudev, jansson, wrapGAppsHook, gobjectIntrospection
+, libgudev, jansson, wrapGAppsHook, gobjectIntrospection, python3
 , libappindicator-gtk3, withGnome ? false }:
 
 let
@@ -31,7 +31,7 @@ in stdenv.mkDerivation rec {
     libappindicator-gtk3
   ] ++ stdenv.lib.optionals withGnome [ gnome3.gcr ]; # advanced certificate chooser
 
-  nativeBuildInputs = [ meson ninja intltool pkgconfig wrapGAppsHook gobjectIntrospection gtk-doc docbook_xsl docbook_xml_dtd_43 libxml2 ];
+  nativeBuildInputs = [ meson ninja intltool pkgconfig wrapGAppsHook gobjectIntrospection python3 gtk-doc docbook_xsl docbook_xml_dtd_43 libxml2 ];
 
   postPatch = ''
     chmod +x meson_post_install.py # patchShebangs requires executable file
diff --git a/pkgs/tools/networking/p2p/amule/default.nix b/pkgs/tools/networking/p2p/amule/default.nix
index a74242ba5e17..b9a4360abfb9 100644
--- a/pkgs/tools/networking/p2p/amule/default.nix
+++ b/pkgs/tools/networking/p2p/amule/default.nix
@@ -22,6 +22,9 @@ mkDerivation rec {
     ++ lib.optional httpServer libpng
     ++ lib.optional client libX11;
 
+  # See: https://github.com/amule-project/amule/issues/126
+  patches = [ ./upnp-1.8.patch ];
+
   enableParallelBuilding = true;
 
   configureFlags = [
diff --git a/pkgs/tools/networking/p2p/amule/gcc47.patch b/pkgs/tools/networking/p2p/amule/gcc47.patch
deleted file mode 100644
index e776dda3240e..000000000000
--- a/pkgs/tools/networking/p2p/amule/gcc47.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-# http://code.google.com/p/amule/source/detail?r=10772
-diff -ur aMule-2.3.1.orig//src/ObservableQueue.h aMule-2.3.1/src/ObservableQueue.h
---- aMule-2.3.1.orig//src/ObservableQueue.h	2012-04-22 19:40:05.560084120 +0200
-+++ aMule-2.3.1/src/ObservableQueue.h	2012-04-22 19:40:32.479085322 +0200
-@@ -331,14 +331,14 @@
- template <typename ValueType>
- void CObservableQueue<ValueType>::ObserverAdded( ObserverType* o )
- {
--	NotifyObservers( EventType( EventType::STARTING ), o );
-+	this->NotifyObservers( EventType( EventType::STARTING ), o );
- }
- 
- 
- template <typename ValueType>
- void CObservableQueue<ValueType>::ObserverRemoved( ObserverType* o )
- {
--	NotifyObservers( EventType( EventType::STOPPING ), o );
-+	this->NotifyObservers( EventType( EventType::STOPPING ), o );
- }
- 
- 
\ No newline at end of file
diff --git a/pkgs/tools/networking/p2p/amule/upnp-1.8.patch b/pkgs/tools/networking/p2p/amule/upnp-1.8.patch
new file mode 100644
index 000000000000..3f5502582a25
--- /dev/null
+++ b/pkgs/tools/networking/p2p/amule/upnp-1.8.patch
@@ -0,0 +1,230 @@
+--- a/src/UPnPBase.cpp
++++ b/src/UPnPBase.cpp
+@@ -29,22 +29,12 @@
+
+ #ifdef ENABLE_UPNP
+
+-// check for broken Debian-hacked libUPnP
+ #include <upnp.h>
+-#ifdef STRING_H			// defined in UpnpString.h Yes, I would have liked UPNPSTRING_H much better.
+-#define BROKEN_DEBIAN_LIBUPNP
+-#endif
+
+ #include "UPnPBase.h"
+
+ #include <algorithm>		// For transform()
+
+-#ifdef BROKEN_DEBIAN_LIBUPNP
+-  #define GET_UPNP_STRING(a) UpnpString_get_String(a)
+-#else
+-  #define GET_UPNP_STRING(a) (a)
+-#endif
+-
+ std::string stdEmptyString;
+
+ const char s_argument[] = "argument";
+@@ -1127,7 +1117,7 @@
+
+
+ // This function is static
+-int CUPnPControlPoint::Callback(Upnp_EventType EventType, void *Event, void * /*Cookie*/)
++int CUPnPControlPoint::Callback(Upnp_EventType EventType, const void *Event, void * /*Cookie*/)
+ {
+ 	std::ostringstream msg;
+ 	std::ostringstream msg2;
+@@ -1149,24 +1139,24 @@
+ 		msg2<< "UPNP_DISCOVERY_SEARCH_RESULT: ";
+ 		// UPnP Discovery
+ upnpDiscovery:
+-		struct Upnp_Discovery *d_event = (struct Upnp_Discovery *)Event;
++		UpnpDiscovery *d_event = (UpnpDiscovery *)Event;
+ 		IXML_Document *doc = NULL;
+ 		int ret;
+-		if (d_event->ErrCode != UPNP_E_SUCCESS) {
+-			msg << UpnpGetErrorMessage(d_event->ErrCode) << ".";
++		if (UpnpDiscovery_get_ErrCode(d_event) != UPNP_E_SUCCESS) {
++			msg << UpnpGetErrorMessage(UpnpDiscovery_get_ErrCode(d_event)) << ".";
+ 			AddDebugLogLineC(logUPnP, msg);
+ 		}
+ 		// Get the XML tree device description in doc
+-		ret = UpnpDownloadXmlDoc(d_event->Location, &doc);
++		ret = UpnpDownloadXmlDoc(UpnpDiscovery_get_Location_cstr(d_event), &doc);
+ 		if (ret != UPNP_E_SUCCESS) {
+ 			msg << "Error retrieving device description from " <<
+-				d_event->Location << ": " <<
++				UpnpDiscovery_get_Location_cstr(d_event) << ": " <<
+ 				UpnpGetErrorMessage(ret) <<
+ 				"(" << ret << ").";
+ 			AddDebugLogLineC(logUPnP, msg);
+ 		} else {
+ 			msg2 << "Retrieving device description from " <<
+-				d_event->Location << ".";
++				UpnpDiscovery_get_Location_cstr(d_event) << ".";
+ 			AddDebugLogLineN(logUPnP, msg2);
+ 		}
+ 		if (doc) {
+@@ -1195,7 +1185,7 @@
+ 				}
+ 				// Add the root device to our list
+ 				upnpCP->AddRootDevice(rootDevice, urlBase,
+-					d_event->Location, d_event->Expires);
++					UpnpDiscovery_get_Location_cstr(d_event), UpnpDiscovery_get_Expires(d_event));
+ 			}
+ 			// Free the XML doc tree
+ 			IXML::Document::Free(doc);
+@@ -1216,28 +1206,28 @@
+ 	case UPNP_DISCOVERY_ADVERTISEMENT_BYEBYE: {
+ 		//fprintf(stderr, "Callback: UPNP_DISCOVERY_ADVERTISEMENT_BYEBYE\n");
+ 		// UPnP Device Removed
+-		struct Upnp_Discovery *dab_event = (struct Upnp_Discovery *)Event;
+-		if (dab_event->ErrCode != UPNP_E_SUCCESS) {
++		UpnpDiscovery *dab_event = (UpnpDiscovery *)Event;
++		if (UpnpDiscovery_get_ErrCode(dab_event) != UPNP_E_SUCCESS) {
+ 			msg << "error(UPNP_DISCOVERY_ADVERTISEMENT_BYEBYE): " <<
+-				UpnpGetErrorMessage(dab_event->ErrCode) <<
++				UpnpGetErrorMessage(UpnpDiscovery_get_ErrCode(dab_event)) <<
+ 				".";
+ 			AddDebugLogLineC(logUPnP, msg);
+ 		}
+-		std::string devType = dab_event->DeviceType;
++		std::string devType = UpnpDiscovery_get_DeviceType_cstr(dab_event);
+ 		// Check for an InternetGatewayDevice and removes it from the list
+ 		std::transform(devType.begin(), devType.end(), devType.begin(), tolower);
+ 		if (stdStringIsEqualCI(devType, UPnP::Device::IGW)) {
+-			upnpCP->RemoveRootDevice(dab_event->DeviceId);
++			upnpCP->RemoveRootDevice(UpnpDiscovery_get_DeviceID_cstr(dab_event));
+ 		}
+ 		break;
+ 	}
+ 	case UPNP_EVENT_RECEIVED: {
+ 		//fprintf(stderr, "Callback: UPNP_EVENT_RECEIVED\n");
+ 		// Event reveived
+-		struct Upnp_Event *e_event = (struct Upnp_Event *)Event;
+-		const std::string Sid = e_event->Sid;
++		UpnpEvent *e_event = (UpnpEvent *)Event;
++		const std::string Sid = UpnpEvent_get_SID_cstr(e_event);
+ 		// Parses the event
+-		upnpCP->OnEventReceived(Sid, e_event->EventKey, e_event->ChangedVariables);
++		upnpCP->OnEventReceived(Sid, UpnpEvent_get_EventKey(e_event), UpnpEvent_get_ChangedVariables(e_event));
+ 		break;
+ 	}
+ 	case UPNP_EVENT_SUBSCRIBE_COMPLETE:
+@@ -1252,16 +1242,15 @@
+ 		//fprintf(stderr, "Callback: UPNP_EVENT_RENEWAL_COMPLETE\n");
+ 		msg << "error(UPNP_EVENT_RENEWAL_COMPLETE): ";
+ upnpEventRenewalComplete:
+-		struct Upnp_Event_Subscribe *es_event =
+-			(struct Upnp_Event_Subscribe *)Event;
+-		if (es_event->ErrCode != UPNP_E_SUCCESS) {
++		UpnpEventSubscribe *es_event = (UpnpEventSubscribe *)Event;
++		if (UpnpEventSubscribe_get_ErrCode(es_event) != UPNP_E_SUCCESS) {
+ 			msg << "Error in Event Subscribe Callback";
+ 			UPnP::ProcessErrorMessage(
+-				msg.str(), es_event->ErrCode, NULL, NULL);
++				msg.str(), UpnpEventSubscribe_get_ErrCode(es_event), NULL, NULL);
+ 		} else {
+ #if 0
+ 			TvCtrlPointHandleSubscribeUpdate(
+-				GET_UPNP_STRING(es_event->PublisherUrl),
++				UpnpEventSubscribe_get_PublisherUrl_cstr(es_event),
+ 				es_event->Sid,
+ 				es_event->TimeOut );
+ #endif
+@@ -1280,29 +1269,29 @@
+ 		msg << "error(UPNP_EVENT_SUBSCRIPTION_EXPIRED): ";
+ 		msg2 << "UPNP_EVENT_SUBSCRIPTION_EXPIRED: ";
+ upnpEventSubscriptionExpired:
+-		struct Upnp_Event_Subscribe *es_event =
+-			(struct Upnp_Event_Subscribe *)Event;
++		UpnpEventSubscribe *es_event = (UpnpEventSubscribe *)Event;
+ 		Upnp_SID newSID;
+ 		memset(newSID, 0, sizeof(Upnp_SID));
+ 		int TimeOut = 1801;
+ 		int ret = UpnpSubscribe(
+ 			upnpCP->m_UPnPClientHandle,
+-			GET_UPNP_STRING(es_event->PublisherUrl),
++
++			UpnpEventSubscribe_get_PublisherUrl_cstr(es_event),
+ 			&TimeOut,
+ 			newSID);
+ 		if (ret != UPNP_E_SUCCESS) {
+ 			msg << "Error Subscribing to EventURL";
+ 			UPnP::ProcessErrorMessage(
+-				msg.str(), es_event->ErrCode, NULL, NULL);
++				msg.str(), UpnpEventSubscribe_get_ErrCode(es_event), NULL, NULL);
+ 		} else {
+ 			ServiceMap::iterator it =
+-				upnpCP->m_ServiceMap.find(GET_UPNP_STRING(es_event->PublisherUrl));
++				upnpCP->m_ServiceMap.find(UpnpEventSubscribe_get_PublisherUrl_cstr(es_event));
+ 			if (it != upnpCP->m_ServiceMap.end()) {
+ 				CUPnPService &service = *(it->second);
+ 				service.SetTimeout(TimeOut);
+ 				service.SetSID(newSID);
+ 				msg2 << "Re-subscribed to EventURL '" <<
+-					GET_UPNP_STRING(es_event->PublisherUrl) <<
++					UpnpEventSubscribe_get_PublisherUrl_cstr(es_event) <<
+ 					"' with SID == '" <<
+ 					newSID << "'.";
+ 				AddDebugLogLineC(logUPnP, msg2);
+@@ -1321,17 +1310,16 @@
+ 	case UPNP_CONTROL_ACTION_COMPLETE: {
+ 		//fprintf(stderr, "Callback: UPNP_CONTROL_ACTION_COMPLETE\n");
+ 		// This is here if we choose to do this asynchronously
+-		struct Upnp_Action_Complete *a_event =
+-			(struct Upnp_Action_Complete *)Event;
+-		if (a_event->ErrCode != UPNP_E_SUCCESS) {
++		UpnpActionComplete *a_event = (UpnpActionComplete *)Event;
++		if (UpnpActionComplete_get_ErrCode(a_event) != UPNP_E_SUCCESS) {
+ 			UPnP::ProcessErrorMessage(
+ 				"UpnpSendActionAsync",
+-				a_event->ErrCode, NULL,
+-				a_event->ActionResult);
++				UpnpActionComplete_get_ErrCode(a_event), NULL,
++				UpnpActionComplete_get_ActionResult(a_event));
+ 		} else {
+ 			// Check the response document
+ 			UPnP::ProcessActionResponse(
+-				a_event->ActionResult,
++				UpnpActionComplete_get_ActionResult(a_event),
+ 				"<UpnpSendActionAsync>");
+ 		}
+ 		/* No need for any processing here, just print out results.
+@@ -1342,12 +1330,11 @@
+ 	case UPNP_CONTROL_GET_VAR_COMPLETE: {
+ 		//fprintf(stderr, "Callback: UPNP_CONTROL_GET_VAR_COMPLETE\n");
+ 		msg << "error(UPNP_CONTROL_GET_VAR_COMPLETE): ";
+-		struct Upnp_State_Var_Complete *sv_event =
+-			(struct Upnp_State_Var_Complete *)Event;
+-		if (sv_event->ErrCode != UPNP_E_SUCCESS) {
++		UpnpStateVarComplete *sv_event = (UpnpStateVarComplete *)Event;
++		if (UpnpStateVarComplete_get_ErrCode(sv_event) != UPNP_E_SUCCESS) {
+ 			msg << "m_UpnpGetServiceVarStatusAsync";
+ 			UPnP::ProcessErrorMessage(
+-				msg.str(), sv_event->ErrCode, NULL, NULL);
++				msg.str(), UpnpStateVarComplete_get_ErrCode(sv_event), NULL, NULL);
+ 		} else {
+ #if 0
+ 			// Warning: The use of UpnpGetServiceVarStatus and
+--- a/src/UPnPBase.h
++++ b/src/UPnPBase.h
+@@ -490,9 +490,19 @@
+ 	// Callback function
+ 	static int Callback(
+ 		Upnp_EventType EventType,
+-		void* Event,
++		const void* Event,
+ 		void* Cookie);
+
++#if UPNP_VERSION < 10800
++	/* in libupnp 1.6 Event is not const */
++	static int Callback(
++		Upnp_EventType EventType,
++		void* Event,
++		void* Cookie) {
++		return Callback(EventType, (const void *)Event, Cookie);
++	}
++#endif
++
+ private:
+ 	void OnEventReceived(
+ 		const std::string &Sid,
\ No newline at end of file
diff --git a/pkgs/tools/networking/philter/default.nix b/pkgs/tools/networking/philter/default.nix
index f8f37e05a72e..5dff64e27c5c 100644
--- a/pkgs/tools/networking/philter/default.nix
+++ b/pkgs/tools/networking/philter/default.nix
@@ -18,8 +18,10 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Mail sorter for Maildirs";
+    homepage = http://philter.sourceforge.net;
     maintainers = with maintainers; [ raskin ];
     platforms = platforms.linux;
+    license = licenses.gpl2;
   };
 
   passthru = {
diff --git a/pkgs/tools/networking/pirate-get/default.nix b/pkgs/tools/networking/pirate-get/default.nix
index 5258d53a18ae..3acf625fd00b 100644
--- a/pkgs/tools/networking/pirate-get/default.nix
+++ b/pkgs/tools/networking/pirate-get/default.nix
@@ -4,13 +4,13 @@ with python3Packages;
 
 buildPythonApplication rec {
   pname = "pirate-get";
-  version = "0.3.1";
+  version = "0.3.2";
 
   doCheck = false;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "9d7cc4b15dd8c6a82f9e03a666372e38613ccafdc846ad4c1226ba936beea68d";
+    sha256 = "1iirip12zrxm2nqsib5wfqqnlfmhh432y3kkyih9crk4q2p914df";
   };
 
   propagatedBuildInputs = [ colorama veryprettytable beautifulsoup4 pyperclip ];
diff --git a/pkgs/tools/networking/polygraph/default.nix b/pkgs/tools/networking/polygraph/default.nix
index c05e44fb1c07..0b679bc60b53 100644
--- a/pkgs/tools/networking/polygraph/default.nix
+++ b/pkgs/tools/networking/polygraph/default.nix
@@ -9,11 +9,12 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = [ openssl zlib ncurses ];
-  
+
   meta = with stdenv.lib; {
     homepage = http://www.web-polygraph.org;
     description = "Performance testing tool for caching proxies, origin server accelerators, L4/7 switches, content filters, and other Web intermediaries";
     platforms = platforms.linux;
+    license = licenses.asl20;
     maintainers = [ maintainers.lethalman ];
   };
 }
diff --git a/pkgs/tools/networking/polysh/default.nix b/pkgs/tools/networking/polysh/default.nix
index b94ec8e429fa..2a70218f2879 100644
--- a/pkgs/tools/networking/polysh/default.nix
+++ b/pkgs/tools/networking/polysh/default.nix
@@ -11,14 +11,15 @@ buildPythonApplication rec {
           sha256 = "0kxhp38c8a8hc8l86y53l2z5zpzxc4b8lx5zyzmq1badcrfc4mh4";
         };
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "A tool to aggregate several remote shells into one";
     longDescription = ''
       Polysh is a tool to aggregate several remote shells into one. It
       is used to launch an interactive remote shell on many machines
       at once.
     '';
-    maintainers = with stdenv.lib.maintainers; [ astsmtl ];
+    maintainers = [ maintainers.astsmtl ];
     homepage = http://guichaz.free.fr/polysh/;
+    license = licenses.gpl2;
   };
 }
diff --git a/pkgs/tools/networking/pptpd/default.nix b/pkgs/tools/networking/pptpd/default.nix
index d5464b97a335..4c29cd949ee6 100644
--- a/pkgs/tools/networking/pptpd/default.nix
+++ b/pkgs/tools/networking/pptpd/default.nix
@@ -21,5 +21,6 @@ stdenv.mkDerivation rec {
     description = "The PPTP Server for Linux";
     platforms   = platforms.linux;
     maintainers = with maintainers; [ obadz ];
+    license = licenses.gpl2;
   };
 }
diff --git a/pkgs/tools/networking/prettyping/default.nix b/pkgs/tools/networking/prettyping/default.nix
new file mode 100644
index 000000000000..36700195a1bd
--- /dev/null
+++ b/pkgs/tools/networking/prettyping/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, lib, fetchFromGitHub }:
+
+stdenv.mkDerivation rec {
+  name = "${program}-${version}";
+  program = "prettyping";
+  version = "1.0.1";
+  src = fetchFromGitHub {
+    owner = "denilsonsa";
+    repo = program;
+    rev = "v${version}";
+    sha256 = "05vfaq9y52z40245j47yjk1xaiwrazv15sgjq64w91dfyahjffxf";
+  };
+
+  installPhase = ''
+    install -Dt $out/bin prettyping
+  '';
+
+  meta = with lib; {
+    homepage = https://github.com/denilsonsa/prettyping;
+    description = "A wrapper around the standard ping tool with the objective of making the output prettier, more colorful, more compact, and easier to read";
+    license = with licenses; [ mit ];
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ qoelet ];
+  };
+}
diff --git a/pkgs/tools/networking/quicktun/default.nix b/pkgs/tools/networking/quicktun/default.nix
index ceee8cca1aae..3d7dc68e3578 100644
--- a/pkgs/tools/networking/quicktun/default.nix
+++ b/pkgs/tools/networking/quicktun/default.nix
@@ -27,5 +27,6 @@ stdenv.mkDerivation rec {
     homepage = http://wiki.ucis.nl/QuickTun;
     maintainers = [ maintainers.fpletz ];
     platforms = platforms.unix;
+    license = licenses.bsd2;
   };
 }
diff --git a/pkgs/tools/networking/rp-pppoe/default.nix b/pkgs/tools/networking/rp-pppoe/default.nix
index b2584a4f4974..2beb8aec3893 100644
--- a/pkgs/tools/networking/rp-pppoe/default.nix
+++ b/pkgs/tools/networking/rp-pppoe/default.nix
@@ -21,9 +21,10 @@ stdenv.mkDerivation rec {
     sed -i Makefile -e 's@PPPOESERVER_PPPD_OPTIONS=@&$(out)@'
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "Roaring Penguin Point-to-Point over Ethernet tool";
-    platforms = stdenv.lib.platforms.linux;
+    platforms = platforms.linux;
     homepage = https://www.roaringpenguin.com/products/pppoe;
+    license = licenses.gpl2Plus;
   };
 }
diff --git a/pkgs/tools/networking/s6-dns/default.nix b/pkgs/tools/networking/s6-dns/default.nix
index 29d66e4be2ce..f422dabaff64 100644
--- a/pkgs/tools/networking/s6-dns/default.nix
+++ b/pkgs/tools/networking/s6-dns/default.nix
@@ -1,27 +1,17 @@
-{ stdenv, fetchgit, skalibs }:
+{ stdenv, skawarePackages }:
 
-let
+with skawarePackages;
 
-  version = "2.3.0.0";
+buildPackage {
+  pname = "s6-dns";
+  version = "2.3.0.1";
+  sha256 = "16ymalc4yxbwc0kapwmissxlw2bdk4sx3b33zp1gwx3n6hkcgh8c";
 
-in stdenv.mkDerivation rec {
-
-  name = "s6-dns-${version}";
-
-  src = fetchgit {
-    url = "git://git.skarnet.org/s6-dns";
-    rev = "refs/tags/v${version}";
-    sha256 = "1hczdg3dzi9z6f0wicm2qa2239fiax915zp66xspdz6qd23nqrxb";
-  };
+  description = "A suite of DNS client programs and libraries for Unix systems";
 
   outputs = [ "bin" "lib" "dev" "doc" "out" ];
 
-  dontDisableStatic = true;
-
-  enableParallelBuilding = true;
-
   configureFlags = [
-    "--enable-absolute-paths"
     "--libdir=\${lib}/lib"
     "--libexecdir=\${lib}/libexec"
     "--dynlibdir=\${lib}/lib"
@@ -31,21 +21,15 @@ in stdenv.mkDerivation rec {
     "--with-include=${skalibs.dev}/include"
     "--with-lib=${skalibs.lib}/lib"
     "--with-dynlib=${skalibs.lib}/lib"
-  ]
-  ++ (if stdenv.isDarwin then [ "--disable-shared" ] else [ "--enable-shared" ])
-  ++ (stdenv.lib.optional stdenv.isDarwin "--build=${stdenv.hostPlatform.system}");
+  ];
 
   postInstall = ''
-    mkdir -p $doc/share/doc/s6-dns/
+    # remove all s6-dns executables from build directory
+    rm $(find -type f -mindepth 1 -maxdepth 1 -executable)
+    rm libs6dns.*
+    rm libskadns.*
+
     mv doc $doc/share/doc/s6-dns/html
   '';
 
-  meta = {
-    homepage = http://www.skarnet.org/software/s6-dns/;
-    description = "A suite of DNS client programs and libraries for Unix systems";
-    platforms = stdenv.lib.platforms.all;
-    license = stdenv.lib.licenses.isc;
-    maintainers = with stdenv.lib.maintainers; [ pmahoney Profpatsch ];
-  };
-
 }
diff --git a/pkgs/tools/networking/s6-networking/default.nix b/pkgs/tools/networking/s6-networking/default.nix
index f7278d5c6a24..3f0e83ad9ce0 100644
--- a/pkgs/tools/networking/s6-networking/default.nix
+++ b/pkgs/tools/networking/s6-networking/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, execline, fetchgit, s6, s6-dns, skalibs
+{ stdenv, skawarePackages
 
 # Whether to build the TLS/SSL tools and what library to use
 # acceptable values: "libressl", false
@@ -6,11 +6,9 @@
 , sslSupport ? "libressl" , libressl
 }:
 
+with skawarePackages;
 let
   inherit (stdenv) lib;
-
-  version = "2.3.0.2";
-
   sslSupportEnabled = sslSupport != false;
   sslLibs = {
     "libressl" = libressl;
@@ -19,24 +17,18 @@ let
 in
 assert sslSupportEnabled -> sslLibs ? ${sslSupport};
 
-stdenv.mkDerivation rec {
 
-  name = "s6-networking-${version}";
+buildPackage {
+  pname = "s6-networking";
+  version = "2.3.0.3";
+  sha256 = "1kfjl7da6wkmyq1mvq9irkbzk2wbi0axjfbcw5cym5y11mqswsjs";
 
-  src = fetchgit {
-    url = "git://git.skarnet.org/s6-networking";
-    rev = "refs/tags/v${version}";
-    sha256 = "1qrhca8yjaysrqf7nx3yjfyfi9yly3rxpgrd2sqj0a0ckk73rv42";
-  };
+  description = "A suite of small networking utilities for Unix systems";
 
   outputs = [ "bin" "lib" "dev" "doc" "out" ];
 
-  dontDisableStatic = true;
-
-  enableParallelBuilding = true;
-
+  # TODO: nsss support
   configureFlags = [
-    "--enable-absolute-paths"
     "--libdir=\${lib}/lib"
     "--libexecdir=\${lib}/libexec"
     "--dynlibdir=\${lib}/lib"
@@ -60,20 +52,16 @@ stdenv.mkDerivation rec {
        "--enable-ssl=${sslSupport}"
        "--with-include=${lib.getDev sslLibs.${sslSupport}}/include"
        "--with-lib=${lib.getLib sslLibs.${sslSupport}}/lib"
-     ])
-  ++ (lib.optional stdenv.isDarwin "--build=${stdenv.hostPlatform.system}");
+       "--with-dynlib=${lib.getLib sslLibs.${sslSupport}}/lib"
+     ]);
 
   postInstall = ''
-    mkdir -p $doc/share/doc/s6-networking/
+    # remove all s6 executables from build directory
+    rm $(find -name "s6-*" -type f -mindepth 1 -maxdepth 1 -executable)
+    rm minidentd
+    rm libs6net.* libstls.*
+
     mv doc $doc/share/doc/s6-networking/html
   '';
 
-  meta = {
-    homepage = http://www.skarnet.org/software/s6-networking/;
-    description = "A suite of small networking utilities for Unix systems";
-    platforms = lib.platforms.all;
-    license = lib.licenses.isc;
-    maintainers = with stdenv.lib.maintainers; [ pmahoney Profpatsch ];
-  };
-
 }
diff --git a/pkgs/tools/networking/strongswan/default.nix b/pkgs/tools/networking/strongswan/default.nix
index 2f19294784ec..d176c08829e5 100644
--- a/pkgs/tools/networking/strongswan/default.nix
+++ b/pkgs/tools/networking/strongswan/default.nix
@@ -78,7 +78,10 @@ stdenv.mkDerivation rec {
          "--with-tss=trousers"
          "--enable-aikgen"
          "--enable-sqlite" ]
-    ++ optional enableNetworkManager "--enable-nm";
+    ++ optionals enableNetworkManager [
+         "--enable-nm"
+         "--with-nm-ca-dir=/etc/ssl/certs"
+    ];
 
   postInstall = ''
     # this is needed for l2tp
diff --git a/pkgs/tools/networking/stunnel/default.nix b/pkgs/tools/networking/stunnel/default.nix
index bbef1f285c33..d2b9a54183d0 100644
--- a/pkgs/tools/networking/stunnel/default.nix
+++ b/pkgs/tools/networking/stunnel/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name    = "stunnel-${version}";
-  version = "5.46";
+  version = "5.49";
 
   src = fetchurl {
     url    = "https://www.stunnel.org/downloads/${name}.tar.gz";
-    sha256 = "1iw4gap9ysag8iww2ik029scmdllk7jdzcpnnbj7hgbl526b9akn";
+    sha256 = "0plmdnwmhjjganhprsw9a8w3h5w43hyirpizy8cmq5w278hl2rix";
     # please use the contents of "https://www.stunnel.org/downloads/${name}.tar.gz.sha256",
     # not the output of `nix-prefetch-url`
   };
diff --git a/pkgs/tools/networking/tinyproxy/default.nix b/pkgs/tools/networking/tinyproxy/default.nix
index 8ecc85544354..809286cefe96 100644
--- a/pkgs/tools/networking/tinyproxy/default.nix
+++ b/pkgs/tools/networking/tinyproxy/default.nix
@@ -3,10 +3,10 @@
 
 stdenv.mkDerivation rec{
   name = "tinyproxy-${version}";
-  version = "1.8.4";
+  version = "1.10.0";
 
   src = fetchFromGitHub {
-    sha256 = "043mfqin5bsba9igm1lqbkp2spibk4j3niyjqc868cnzgx60709c";
+    sha256 = "0gzapnllzyc005l3rs6iarjk1p5fc8mf9ysbck1mbzbd8xg6w35s";
     rev = "${version}";
     repo = "tinyproxy";
     owner = "tinyproxy";
diff --git a/pkgs/tools/networking/urlwatch/default.nix b/pkgs/tools/networking/urlwatch/default.nix
index ecaf498da42d..850a33db58cf 100644
--- a/pkgs/tools/networking/urlwatch/default.nix
+++ b/pkgs/tools/networking/urlwatch/default.nix
@@ -2,21 +2,22 @@
 
 python3Packages.buildPythonApplication rec {
   name = "urlwatch-${version}";
-  version = "2.13";
+  version = "2.14";
 
   src = fetchFromGitHub {
     owner  = "thp";
     repo   = "urlwatch";
     rev    = version;
-    sha256 = "0rspb5j02mmb0r2dnfryx7jaczvb22lsnysgrr1l9iag0djcgdf5";
+    sha256 = "1m7qdh2lk5napncmfnk86dj4wqcahq8y24xnylxa4qlx2ivwkr6b";
   };
 
   propagatedBuildInputs = with python3Packages; [
     appdirs
     keyring
+    lxml
     minidb
-    pyyaml
     pycodestyle
+    pyyaml
     requests
   ];
 
diff --git a/pkgs/tools/networking/vde2/default.nix b/pkgs/tools/networking/vde2/default.nix
index 39674d22aa1d..ac87a5c10e9f 100644
--- a/pkgs/tools/networking/vde2/default.nix
+++ b/pkgs/tools/networking/vde2/default.nix
@@ -20,9 +20,10 @@ stdenv.mkDerivation rec {
 
   hardeningDisable = [ "format" ];
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = http://vde.sourceforge.net/;
     description = "Virtual Distributed Ethernet, an Ethernet compliant virtual network";
-    platforms = stdenv.lib.platforms.unix;
+    platforms = platforms.unix;
+    license = licenses.gpl2;
   };
 }
diff --git a/pkgs/tools/networking/vlan/default.nix b/pkgs/tools/networking/vlan/default.nix
index 41ece0537ab4..1684da45ccc3 100644
--- a/pkgs/tools/networking/vlan/default.nix
+++ b/pkgs/tools/networking/vlan/default.nix
@@ -25,8 +25,9 @@ stdenv.mkDerivation rec {
       cp vconfig.8 $out/share/man/man8/
     '';
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "User mode programs to enable VLANs on Ethernet devices";
-    platforms = stdenv.lib.platforms.linux;
+    platforms = platforms.linux;
+    license = licenses.gpl2Plus;
   };
 }
diff --git a/pkgs/tools/networking/webalizer/default.nix b/pkgs/tools/networking/webalizer/default.nix
index 67a95f32b619..e9b9452c7563 100644
--- a/pkgs/tools/networking/webalizer/default.nix
+++ b/pkgs/tools/networking/webalizer/default.nix
@@ -11,10 +11,10 @@ stdenv.mkDerivation {
   preConfigure =
     ''
       substituteInPlace ./configure \
-        --replace "--static" "" 
+        --replace "--static" ""
     '';
 
-  buildInputs = [zlib libpng gd geoip db]; 
+  buildInputs = [zlib libpng gd geoip db];
 
   configureFlags = [
     "--enable-dns"
@@ -23,7 +23,10 @@ stdenv.mkDerivation {
     "--enable-shared"
   ];
 
-  meta = {
-    platforms = stdenv.lib.platforms.unix;
+  meta = with stdenv.lib; {
+    description = "Web server log file analysis program";
+    homepage = http://www.webalizer.org;
+    platforms = platforms.unix;
+    license = licenses.gpl2;
   };
 }
diff --git a/pkgs/tools/networking/wireguard-tools/default.nix b/pkgs/tools/networking/wireguard-tools/default.nix
index 96e2a094ac0a..f93596b8e8fb 100644
--- a/pkgs/tools/networking/wireguard-tools/default.nix
+++ b/pkgs/tools/networking/wireguard-tools/default.nix
@@ -4,11 +4,11 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   name = "wireguard-tools-${version}";
-  version = "0.0.20180809";
+  version = "0.0.20180904";
 
   src = fetchzip {
     url = "https://git.zx2c4.com/WireGuard/snapshot/WireGuard-${version}.tar.xz";
-    sha256 = "07sbaignf8l4lndfxypgacaf2qmgyfkv1j5z7kn0cw5mgfsphmkx";
+    sha256 = "0slf6lchzhb2san1hsqnny1sdmxq8rzqwz355f33zsgaj6qh1gmk";
   };
 
   sourceRoot = "source/src/tools";
diff --git a/pkgs/tools/networking/x11-ssh-askpass/default.nix b/pkgs/tools/networking/x11-ssh-askpass/default.nix
index 4061d5284aa6..896a2ff4daaa 100644
--- a/pkgs/tools/networking/x11-ssh-askpass/default.nix
+++ b/pkgs/tools/networking/x11-ssh-askpass/default.nix
@@ -6,8 +6,8 @@ stdenv.mkDerivation {
   outputs = [ "out" "man" ];
 
   src = fetchurl {
-    url = http://www.jmknoble.net/software/x11-ssh-askpass/x11-ssh-askpass-1.2.4.1.tar.gz;
-    sha1 = "78c992951685d4dbffb77536f37b83ae2a6eafc7";
+    url = http://pkgs.fedoraproject.org/repo/pkgs/openssh/x11-ssh-askpass-1.2.4.1.tar.gz/8f2e41f3f7eaa8543a2440454637f3c3/x11-ssh-askpass-1.2.4.1.tar.gz;
+    sha256 = "620de3c32ae72185a2c9aeaec03af24242b9621964e38eb625afb6cdb30b8c88";
   };
 
   nativeBuildInputs = [ imake ];
@@ -24,11 +24,10 @@ stdenv.mkDerivation {
 
   installTargets = [ "install" "install.man" ];
 
-  meta = {
-    homepage = http://www.jmknoble.net/software/x11-ssh-askpass/;
+  meta = with stdenv.lib; {
+    homepage = https://github.com/sigmavirus24/x11-ssh-askpass;
     description = "Lightweight passphrase dialog for OpenSSH or other open variants of SSH";
-
-    platforms = stdenv.lib.platforms.unix;
-    maintainers = [];
+    license = licenses.mit;
+    platforms = platforms.unix;
   };
 }
diff --git a/pkgs/tools/package-management/bunny/default.nix b/pkgs/tools/package-management/bunny/default.nix
index c73f3fb524cd..cb99e5af055b 100644
--- a/pkgs/tools/package-management/bunny/default.nix
+++ b/pkgs/tools/package-management/bunny/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "bunny-${version}";
-  version = "1.1";
+  version = "1.3";
 
   src = fetchFromGitLab {
     owner = "tim241";
     repo = "bunny";
     rev = version;
-    sha256 = "0mxhj23fscbyqb9hfpmimgjn6nbx1lx3dl2msgwdy281zs25w8ki";
+    sha256 = "0nh2h5kj9b0nkb6yrzf4if7anfdmy9vijzy4bl3s7qck0nzbpy8s";
   };
 
   dontBuild = true;
diff --git a/pkgs/tools/package-management/cargo-download/Cargo.nix b/pkgs/tools/package-management/cargo-download/Cargo.nix
new file mode 100644
index 000000000000..9735bde199dc
--- /dev/null
+++ b/pkgs/tools/package-management/cargo-download/Cargo.nix
@@ -0,0 +1,3138 @@
+# Generated by carnix 0.7.2: carnix nix
+{ lib, buildPlatform, buildRustCrate, fetchgit }:
+let kernel = buildPlatform.parsed.kernel.name;
+    abi = buildPlatform.parsed.abi.name;
+    include = includedFiles: src: builtins.filterSource (path: type:
+      lib.lists.any (f:
+        let p = toString (src + ("/" + f)); in
+        (path == p) || (type == "directory" && lib.strings.hasPrefix path p)
+      ) includedFiles
+    ) src;
+    updateFeatures = f: up: functions: builtins.deepSeq f (lib.lists.foldl' (features: fun: fun features) (lib.attrsets.recursiveUpdate f up) functions);
+    mapFeatures = features: map (fun: fun { features = features; });
+    mkFeatures = feat: lib.lists.foldl (features: featureName:
+      if feat.${featureName} or false then
+        [ featureName ] ++ features
+      else
+        features
+    ) [] (builtins.attrNames feat);
+in
+rec {
+  cargo_download = f: cargo_download_0_1_1 { features = cargo_download_0_1_1_features { cargo_download_0_1_1 = f; }; };
+  __all = [ (cargo_download {}) ];
+  adler32_1_0_3_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "adler32";
+    version = "1.0.3";
+    authors = [ "Remi Rampin <remirampin@gmail.com>" ];
+    sha256 = "1z3mvjgw02mbqk98kizzibrca01d5wfkpazsrp3vkkv3i56pn6fb";
+    inherit dependencies buildDependencies features;
+  };
+  aho_corasick_0_5_3_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "aho-corasick";
+    version = "0.5.3";
+    authors = [ "Andrew Gallant <jamslam@gmail.com>" ];
+    sha256 = "1igab46mvgknga3sxkqc917yfff0wsjxjzabdigmh240p5qxqlnn";
+    libName = "aho_corasick";
+    crateBin = [ {  name = "aho-corasick-dot"; } ];
+    inherit dependencies buildDependencies features;
+  };
+  ansi_term_0_9_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "ansi_term";
+    version = "0.9.0";
+    authors = [ "ogham@bsago.me" "Ryan Scheel (Havvy) <ryan.havvy@gmail.com>" ];
+    sha256 = "1vcd8m2hglrdi4zmqnkkz5zy3c73ifgii245k7vj6qr5dzpn9hij";
+    inherit dependencies buildDependencies features;
+  };
+  ansi_term_0_11_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "ansi_term";
+    version = "0.11.0";
+    authors = [ "ogham@bsago.me" "Ryan Scheel (Havvy) <ryan.havvy@gmail.com>" "Josh Triplett <josh@joshtriplett.org>" ];
+    sha256 = "08fk0p2xvkqpmz3zlrwnf6l8sj2vngw464rvzspzp31sbgxbwm4v";
+    inherit dependencies buildDependencies features;
+  };
+  arrayvec_0_4_7_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "arrayvec";
+    version = "0.4.7";
+    authors = [ "bluss" ];
+    sha256 = "0fzgv7z1x1qnyd7j32vdcadk4k9wfx897y06mr3bw1yi52iqf4z4";
+    inherit dependencies buildDependencies features;
+  };
+  atty_0_2_11_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "atty";
+    version = "0.2.11";
+    authors = [ "softprops <d.tangren@gmail.com>" ];
+    sha256 = "0by1bj2km9jxi4i4g76zzi76fc2rcm9934jpnyrqd95zw344pb20";
+    inherit dependencies buildDependencies features;
+  };
+  base64_0_9_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "base64";
+    version = "0.9.2";
+    authors = [ "Alice Maz <alice@alicemaz.com>" "Marshall Pierce <marshall@mpierce.org>" ];
+    sha256 = "0g4xxl8jhwjhvr69qlxdmbzd521xcn5j67lhkr20nh7ajvl6k0l1";
+    inherit dependencies buildDependencies features;
+  };
+  bitflags_0_9_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "bitflags";
+    version = "0.9.1";
+    authors = [ "The Rust Project Developers" ];
+    sha256 = "18h073l5jd88rx4qdr95fjddr9rk79pb1aqnshzdnw16cfmb9rws";
+    inherit dependencies buildDependencies features;
+  };
+  bitflags_1_0_3_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "bitflags";
+    version = "1.0.3";
+    authors = [ "The Rust Project Developers" ];
+    sha256 = "162p4w4h1ad76awq6b5yivmls3d50m9cl27d8g588lsps6g8s5rw";
+    inherit dependencies buildDependencies features;
+  };
+  build_const_0_2_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "build_const";
+    version = "0.2.1";
+    authors = [ "Garrett Berg <vitiral@gmail.com>" ];
+    sha256 = "15249xzi3qlm72p4glxgavwyq70fx2sp4df6ii0sdlrixrrp77pl";
+    inherit dependencies buildDependencies features;
+  };
+  byteorder_1_2_3_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "byteorder";
+    version = "1.2.3";
+    authors = [ "Andrew Gallant <jamslam@gmail.com>" ];
+    sha256 = "1xghv5f5rydzsam8lnfqhfk090i8a1knb77ikbs0ik44bvrw2ij3";
+    inherit dependencies buildDependencies features;
+  };
+  bytes_0_4_9_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "bytes";
+    version = "0.4.9";
+    authors = [ "Carl Lerche <me@carllerche.com>" ];
+    sha256 = "1jiqc94j85la9vs165vqpf6s1sah8n3ivnhsfapcjrvbhjawi6i6";
+    inherit dependencies buildDependencies features;
+  };
+  cargo_download_0_1_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "cargo-download";
+    version = "0.1.1";
+    authors = [ "Karol Kuczmarski <karol.kuczmarski@gmail.com>" ];
+    sha256 = "1xiffk4df6i9cvwimzwyf1finv6w8f8gr0zjp21fzbiz5c0ksx65";
+    crateBin = [ {  name = "cargo-download"; } ];
+    inherit dependencies buildDependencies features;
+  };
+  case_0_1_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "case";
+    version = "0.1.0";
+    authors = [ "Skyler Lipthay <skyler.lipthay@gmail.com>" ];
+    sha256 = "06i1x3wqv30rkvlgj134qf9vzxhzz28bz41mm0rgki0i0f7gf96n";
+    inherit dependencies buildDependencies features;
+  };
+  cc_1_0_18_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "cc";
+    version = "1.0.18";
+    authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
+    sha256 = "0wcnpa54qvm5921wwrrkn8cwxd5y0p5f4gb1qgyh5imii7rdhpjx";
+    inherit dependencies buildDependencies features;
+  };
+  cfg_if_0_1_4_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "cfg-if";
+    version = "0.1.4";
+    authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
+    sha256 = "0n5baxk53dvqjymzwynq55wb805b24390qx1n16zi8fjzq90j7k4";
+    inherit dependencies buildDependencies features;
+  };
+  chrono_0_2_25_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "chrono";
+    version = "0.2.25";
+    authors = [ "Kang Seonghoon <public+rust@mearie.org>" ];
+    sha256 = "0gsvqk8cnmm43qj3xyngqvfqh50cbdbqas7ik0wjgnvknirmmca7";
+    inherit dependencies buildDependencies features;
+  };
+  clap_2_32_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "clap";
+    version = "2.32.0";
+    authors = [ "Kevin K. <kbknapp@gmail.com>" ];
+    sha256 = "1hdjf0janvpjkwrjdjx1mm2aayzr54k72w6mriyr0n5anjkcj1lx";
+    inherit dependencies buildDependencies features;
+  };
+  conv_0_3_3_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "conv";
+    version = "0.3.3";
+    authors = [ "Daniel Keep <daniel.keep@gmail.com>" ];
+    sha256 = "08rl72k1a48xah0ar5l9v1bw19pp8jdw2pdkd3vvj9ijsyyg9yik";
+    inherit dependencies buildDependencies features;
+  };
+  core_foundation_0_2_3_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "core-foundation";
+    version = "0.2.3";
+    authors = [ "The Servo Project Developers" ];
+    sha256 = "1g0vpya5h2wa0nlz4a74jar6y8z09f0p76zbzfqrm3dbfsrld1pm";
+    inherit dependencies buildDependencies features;
+  };
+  core_foundation_sys_0_2_3_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "core-foundation-sys";
+    version = "0.2.3";
+    authors = [ "The Servo Project Developers" ];
+    sha256 = "19s0d03294m9s5j8cvy345db3gkhs2y02j5268ap0c6ky5apl53s";
+    build = "build.rs";
+    inherit dependencies buildDependencies features;
+  };
+  crc_1_8_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "crc";
+    version = "1.8.1";
+    authors = [ "Rui Hu <code@mrhooray.com>" ];
+    sha256 = "00m9jjqrddp3bqyanvyxv0hf6s56bx1wy51vcdcxg4n2jdhg109s";
+    inherit dependencies buildDependencies features;
+  };
+  crossbeam_0_2_12_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "crossbeam";
+    version = "0.2.12";
+    authors = [ "Aaron Turon <aturon@mozilla.com>" ];
+    sha256 = "0jkm95is7bwv4parwfq4aim6cigiwd4w9hz09cpild4hp5ry625i";
+    inherit dependencies buildDependencies features;
+  };
+  crossbeam_deque_0_3_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "crossbeam-deque";
+    version = "0.3.1";
+    authors = [ "The Crossbeam Project Developers" ];
+    sha256 = "1km0mavyp9ddwb7k7kcdmyryi3bwxf0nmr6jqcpyjzvzmxjlkqap";
+    inherit dependencies buildDependencies features;
+  };
+  crossbeam_epoch_0_4_3_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "crossbeam-epoch";
+    version = "0.4.3";
+    authors = [ "The Crossbeam Project Developers" ];
+    sha256 = "18xfgi7h9aq4lqqrqzy366xg885z1hlkbhvycl2i3zhkhkvadhv3";
+    inherit dependencies buildDependencies features;
+  };
+  crossbeam_utils_0_3_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "crossbeam-utils";
+    version = "0.3.2";
+    authors = [ "The Crossbeam Project Developers" ];
+    sha256 = "1byx31nkxl48la58571h40ssk94faky26jwz15w40v2gba3v4fql";
+    inherit dependencies buildDependencies features;
+  };
+  custom_derive_0_1_7_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "custom_derive";
+    version = "0.1.7";
+    authors = [ "Daniel Keep <daniel.keep@gmail.com>" ];
+    sha256 = "160q3pzri2fgrr6czfdkwy1sbddki2za96r7ivvyii52qp1523zs";
+    inherit dependencies buildDependencies features;
+  };
+  derive_error_0_0_3_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "derive-error";
+    version = "0.0.3";
+    authors = [ "rushmorem <rushmore@webenchanter.com>" ];
+    sha256 = "0239vzxn5xr9nm3i4d6hmqy7dv8llcjblgh1xixfk5dcgcqan77y";
+    procMacro = true;
+    inherit dependencies buildDependencies features;
+  };
+  dtoa_0_4_3_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "dtoa";
+    version = "0.4.3";
+    authors = [ "David Tolnay <dtolnay@gmail.com>" ];
+    sha256 = "1xysdxdm24sk5ysim7lps4r2qaxfnj0sbakhmps4d42yssx30cw8";
+    inherit dependencies buildDependencies features;
+  };
+  either_1_5_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "either";
+    version = "1.5.0";
+    authors = [ "bluss" ];
+    sha256 = "1f7kl2ln01y02m8fpd2zrdjiwqmgfvl9nxxrfry3k19d1gd2bsvz";
+    inherit dependencies buildDependencies features;
+  };
+  encoding_rs_0_7_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "encoding_rs";
+    version = "0.7.2";
+    authors = [ "Henri Sivonen <hsivonen@hsivonen.fi>" ];
+    sha256 = "1c23bi3q4qmi2ci8g7p5j4b4i5abyggvyg6hkl7w4p4r527c9g3q";
+    inherit dependencies buildDependencies features;
+  };
+  exitcode_1_1_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "exitcode";
+    version = "1.1.2";
+    authors = [ "Ben Wilber <benwilber@gmail.com>" ];
+    sha256 = "1cw9p4vzbscvyrbzv7z68gv2cairrns2d4wcb4nkahkcjk25phip";
+    inherit dependencies buildDependencies features;
+  };
+  filetime_0_2_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "filetime";
+    version = "0.2.1";
+    authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
+    sha256 = "1wmbj3jnpl39851lymw64j9ac1nmy1z96h1wymvlvypspl68w5y0";
+    inherit dependencies buildDependencies features;
+  };
+  flate2_0_2_20_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "flate2";
+    version = "0.2.20";
+    authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
+    sha256 = "1am0d2vmqym1vcg7rvv516vpcrbhdn1jisy0q03r3nbzdzh54ppl";
+    inherit dependencies buildDependencies features;
+  };
+  foreign_types_0_3_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "foreign-types";
+    version = "0.3.2";
+    authors = [ "Steven Fackler <sfackler@gmail.com>" ];
+    sha256 = "105n8sp2djb1s5lzrw04p7ss3dchr5qa3canmynx396nh3vwm2p8";
+    inherit dependencies buildDependencies features;
+  };
+  foreign_types_shared_0_1_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "foreign-types-shared";
+    version = "0.1.1";
+    authors = [ "Steven Fackler <sfackler@gmail.com>" ];
+    sha256 = "0b6cnvqbflws8dxywk4589vgbz80049lz4x1g9dfy4s1ppd3g4z5";
+    inherit dependencies buildDependencies features;
+  };
+  fuchsia_zircon_0_3_3_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "fuchsia-zircon";
+    version = "0.3.3";
+    authors = [ "Raph Levien <raph@google.com>" ];
+    sha256 = "0jrf4shb1699r4la8z358vri8318w4mdi6qzfqy30p2ymjlca4gk";
+    inherit dependencies buildDependencies features;
+  };
+  fuchsia_zircon_sys_0_3_3_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "fuchsia-zircon-sys";
+    version = "0.3.3";
+    authors = [ "Raph Levien <raph@google.com>" ];
+    sha256 = "08jp1zxrm9jbrr6l26bjal4dbm8bxfy57ickdgibsqxr1n9j3hf5";
+    inherit dependencies buildDependencies features;
+  };
+  futures_0_1_23_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "futures";
+    version = "0.1.23";
+    authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
+    sha256 = "075s7sv1iqzf2r3lvb4hk81k5c9xzfcyb8q92h2s35fnypxyqd21";
+    inherit dependencies buildDependencies features;
+  };
+  futures_cpupool_0_1_8_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "futures-cpupool";
+    version = "0.1.8";
+    authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
+    sha256 = "0ficd31n5ljiixy6x0vjglhq4fp0v1p4qzxm3v6ymsrb3z080l5c";
+    inherit dependencies buildDependencies features;
+  };
+  httparse_1_3_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "httparse";
+    version = "1.3.2";
+    authors = [ "Sean McArthur <sean@seanmonstar.com>" ];
+    sha256 = "1mm10m2hv1inxzzvm85s6fdmwl9a3q9vik0nzh5qrx2hx5x8fcwl";
+    build = "build.rs";
+    inherit dependencies buildDependencies features;
+  };
+  hyper_0_11_27_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "hyper";
+    version = "0.11.27";
+    authors = [ "Sean McArthur <sean@seanmonstar.com>" ];
+    sha256 = "0q5as4lhvh31bzk4qm7j84snrmxyxyaqk040rfk72b42dn98mryi";
+    inherit dependencies buildDependencies features;
+  };
+  hyper_tls_0_1_3_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "hyper-tls";
+    version = "0.1.3";
+    authors = [ "Sean McArthur <sean.monstar@gmail.com>" ];
+    sha256 = "1dr5arj79pdyz9f2jggqmna1qpc578f9pdgsf2ana5amjpsp0j89";
+    inherit dependencies buildDependencies features;
+  };
+  idna_0_1_5_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "idna";
+    version = "0.1.5";
+    authors = [ "The rust-url developers" ];
+    sha256 = "1gwgl19rz5vzi67rrhamczhxy050f5ynx4ybabfapyalv7z1qmjy";
+    inherit dependencies buildDependencies features;
+  };
+  iovec_0_1_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "iovec";
+    version = "0.1.2";
+    authors = [ "Carl Lerche <me@carllerche.com>" ];
+    sha256 = "0vjymmb7wj4v4kza5jjn48fcdb85j3k37y7msjl3ifz0p9yiyp2r";
+    inherit dependencies buildDependencies features;
+  };
+  isatty_0_1_8_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "isatty";
+    version = "0.1.8";
+    authors = [ "David Tolnay <dtolnay@gmail.com>" ];
+    sha256 = "1n5wzzkb1kxkfbcyv5vfrsybika0a1k01sp06ngad73ljx4kwj5h";
+    inherit dependencies buildDependencies features;
+  };
+  itertools_0_6_5_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "itertools";
+    version = "0.6.5";
+    authors = [ "bluss" ];
+    sha256 = "0gbhgn7s8qkxxw10i514fzpqnc3aissn4kcgylm2cvnv9zmg8mw1";
+    inherit dependencies buildDependencies features;
+  };
+  itoa_0_4_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "itoa";
+    version = "0.4.2";
+    authors = [ "David Tolnay <dtolnay@gmail.com>" ];
+    sha256 = "193a744yd74rmk13hl8xvd9p2hqhdkyf8xkvi1mxm5s10bby0h8v";
+    inherit dependencies buildDependencies features;
+  };
+  kernel32_sys_0_2_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "kernel32-sys";
+    version = "0.2.2";
+    authors = [ "Peter Atashian <retep998@gmail.com>" ];
+    sha256 = "1lrw1hbinyvr6cp28g60z97w32w8vsk6pahk64pmrv2fmby8srfj";
+    libName = "kernel32";
+    build = "build.rs";
+    inherit dependencies buildDependencies features;
+  };
+  language_tags_0_2_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "language-tags";
+    version = "0.2.2";
+    authors = [ "Pyfisch <pyfisch@gmail.com>" ];
+    sha256 = "1zkrdzsqzzc7509kd7nngdwrp461glm2g09kqpzaqksp82frjdvy";
+    inherit dependencies buildDependencies features;
+  };
+  lazy_static_0_2_11_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "lazy_static";
+    version = "0.2.11";
+    authors = [ "Marvin Löbel <loebel.marvin@gmail.com>" ];
+    sha256 = "1x6871cvpy5b96yv4c7jvpq316fp5d4609s9py7qk6cd6x9k34vm";
+    inherit dependencies buildDependencies features;
+  };
+  lazy_static_1_0_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "lazy_static";
+    version = "1.0.2";
+    authors = [ "Marvin Löbel <loebel.marvin@gmail.com>" ];
+    sha256 = "0ix4dmy6zb4v3m75l4alg84fk06y145z52z9pyysc9labw2x5r3r";
+    inherit dependencies buildDependencies features;
+  };
+  lazycell_0_6_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "lazycell";
+    version = "0.6.0";
+    authors = [ "Alex Crichton <alex@alexcrichton.com>" "Nikita Pekin <contact@nikitapek.in>" ];
+    sha256 = "1ax148clinbvp6alxcih8s5i2bg3mc5mi69n3hvzvzbwlm6k532r";
+    inherit dependencies buildDependencies features;
+  };
+  libc_0_2_42_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "libc";
+    version = "0.2.42";
+    authors = [ "The Rust Project Developers" ];
+    sha256 = "064v49hz1zpl081w8c4vwikrkhaxp06y4i9l7x7wx6bjpwp19pjx";
+    inherit dependencies buildDependencies features;
+  };
+  libflate_0_1_16_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "libflate";
+    version = "0.1.16";
+    authors = [ "Takeru Ohta <phjgt308@gmail.com>" ];
+    sha256 = "0l15g61h10bznxsjirwq9c43w17mjpqx6wz0357agskardkdh14n";
+    inherit dependencies buildDependencies features;
+  };
+  log_0_3_9_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "log";
+    version = "0.3.9";
+    authors = [ "The Rust Project Developers" ];
+    sha256 = "19i9pwp7lhaqgzangcpw00kc3zsgcqcx84crv07xgz3v7d3kvfa2";
+    inherit dependencies buildDependencies features;
+  };
+  log_0_4_3_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "log";
+    version = "0.4.3";
+    authors = [ "The Rust Project Developers" ];
+    sha256 = "1gdmwrbm7s18zcdz4lcdhz975m4gwhi854c7j1rvj1gsr8aca250";
+    inherit dependencies buildDependencies features;
+  };
+  maplit_0_1_6_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "maplit";
+    version = "0.1.6";
+    authors = [ "bluss" ];
+    sha256 = "1f8kf5v7xra8ssvh5c10qlacbk4l0z2817pkscflx5s5q6y7925h";
+    inherit dependencies buildDependencies features;
+  };
+  matches_0_1_7_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "matches";
+    version = "0.1.7";
+    authors = [ "Simon Sapin <simon.sapin@exyr.org>" ];
+    sha256 = "0zx9gi5flyzkh9nx52fyc3k2zz08b9ww1c4yndlfrw72kr8m7yfy";
+    libPath = "lib.rs";
+    inherit dependencies buildDependencies features;
+  };
+  memchr_0_1_11_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "memchr";
+    version = "0.1.11";
+    authors = [ "Andrew Gallant <jamslam@gmail.com>" "bluss" ];
+    sha256 = "0x73jghamvxxq5fsw9wb0shk5m6qp3q6fsf0nibn0i6bbqkw91s8";
+    inherit dependencies buildDependencies features;
+  };
+  memoffset_0_2_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "memoffset";
+    version = "0.2.1";
+    authors = [ "Gilad Naaman <gilad.naaman@gmail.com>" ];
+    sha256 = "00vym01jk9slibq2nsiilgffp7n6k52a4q3n4dqp0xf5kzxvffcf";
+    inherit dependencies buildDependencies features;
+  };
+  mime_0_3_8_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "mime";
+    version = "0.3.8";
+    authors = [ "Sean McArthur <sean@seanmonstar.com>" ];
+    sha256 = "1577adg9zvkd1qdb2nqqg1ryap33p5r4qsw01n9pw162xpisqjm3";
+    inherit dependencies buildDependencies features;
+  };
+  mime_guess_2_0_0_alpha_6_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "mime_guess";
+    version = "2.0.0-alpha.6";
+    authors = [ "Austin Bonander <austin.bonander@gmail.com>" ];
+    sha256 = "1k2mdq43gi2qr63b7m5zs624rfi40ysk33cay49jlhq97jwnk9db";
+    inherit dependencies buildDependencies features;
+  };
+  miniz_sys_0_1_10_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "miniz-sys";
+    version = "0.1.10";
+    authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
+    sha256 = "11vg6phafxil87nbxgrlhcx5hjr3145wsbwwkfmibvnmzxfdmvln";
+    libPath = "lib.rs";
+    libName = "miniz_sys";
+    build = "build.rs";
+    inherit dependencies buildDependencies features;
+  };
+  mio_0_6_15_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "mio";
+    version = "0.6.15";
+    authors = [ "Carl Lerche <me@carllerche.com>" ];
+    sha256 = "0a93wxsmkh8x38wxivhn6qdj08pj9f0j3y46p4wv3xclbq8i4aaa";
+    inherit dependencies buildDependencies features;
+  };
+  miow_0_2_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "miow";
+    version = "0.2.1";
+    authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
+    sha256 = "14f8zkc6ix7mkyis1vsqnim8m29b6l55abkba3p2yz7j1ibcvrl0";
+    inherit dependencies buildDependencies features;
+  };
+  native_tls_0_1_5_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "native-tls";
+    version = "0.1.5";
+    authors = [ "Steven Fackler <sfackler@gmail.com>" ];
+    sha256 = "11f75qmbny5pnn6zp0vlvadrvc9ph9qsxiyn4n6q02xyd93pxxlf";
+    inherit dependencies buildDependencies features;
+  };
+  net2_0_2_33_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "net2";
+    version = "0.2.33";
+    authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
+    sha256 = "1qnmajafgybj5wyxz9iffa8x5wgbwd2znfklmhqj7vl6lw1m65mq";
+    inherit dependencies buildDependencies features;
+  };
+  nodrop_0_1_12_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "nodrop";
+    version = "0.1.12";
+    authors = [ "bluss" ];
+    sha256 = "1b9rxvdg8061gxjc239l9slndf0ds3m6fy2sf3gs8f9kknqgl49d";
+    inherit dependencies buildDependencies features;
+  };
+  num_0_1_42_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "num";
+    version = "0.1.42";
+    authors = [ "The Rust Project Developers" ];
+    sha256 = "1632gczzrmmxdsj3jignwcr793jq8vxw3qkdzpdvbip3vaf1ljgq";
+    inherit dependencies buildDependencies features;
+  };
+  num_integer_0_1_39_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "num-integer";
+    version = "0.1.39";
+    authors = [ "The Rust Project Developers" ];
+    sha256 = "1f42ls46cghs13qfzgbd7syib2zc6m7hlmv1qlar6c9mdxapvvbg";
+    build = "build.rs";
+    inherit dependencies buildDependencies features;
+  };
+  num_iter_0_1_37_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "num-iter";
+    version = "0.1.37";
+    authors = [ "The Rust Project Developers" ];
+    sha256 = "1rglyvi4yjfxfvfm2s7i60g1dkl5xmsyi77g6vy53jb11r6wl8ly";
+    build = "build.rs";
+    inherit dependencies buildDependencies features;
+  };
+  num_traits_0_2_5_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "num-traits";
+    version = "0.2.5";
+    authors = [ "The Rust Project Developers" ];
+    sha256 = "0ql203ca6lzppksy4fsfnpz3kq96vwlwvyn3ahvnd9g6k9f5ncj0";
+    build = "build.rs";
+    inherit dependencies buildDependencies features;
+  };
+  num_cpus_1_8_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "num_cpus";
+    version = "1.8.0";
+    authors = [ "Sean McArthur <sean@seanmonstar.com>" ];
+    sha256 = "1y6qnd9r8ga6y8mvlabdrr73nc8cshjjlzbvnanzyj9b8zzkfwk2";
+    inherit dependencies buildDependencies features;
+  };
+  openssl_0_9_24_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "openssl";
+    version = "0.9.24";
+    authors = [ "Steven Fackler <sfackler@gmail.com>" ];
+    sha256 = "0wzm3c11g3ndaqyzq36mcdcm1q4a8pmsyi33ibybhjz28g2z0f79";
+    build = "build.rs";
+    inherit dependencies buildDependencies features;
+  };
+  openssl_sys_0_9_33_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "openssl-sys";
+    version = "0.9.33";
+    authors = [ "Alex Crichton <alex@alexcrichton.com>" "Steven Fackler <sfackler@gmail.com>" ];
+    sha256 = "1q5f7ykkxgniwjrqifx1ssrqjzcf8fi4fzh770xrbyp8n6v14qr6";
+    build = "build/main.rs";
+    inherit dependencies buildDependencies features;
+  };
+  percent_encoding_1_0_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "percent-encoding";
+    version = "1.0.1";
+    authors = [ "The rust-url developers" ];
+    sha256 = "04ahrp7aw4ip7fmadb0bknybmkfav0kk0gw4ps3ydq5w6hr0ib5i";
+    libPath = "lib.rs";
+    inherit dependencies buildDependencies features;
+  };
+  phf_0_7_22_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "phf";
+    version = "0.7.22";
+    authors = [ "Steven Fackler <sfackler@gmail.com>" ];
+    sha256 = "0b58l863rhmqyqsfj2d89nmdzc21g9yvvvq1m4c3a615zpcykb3i";
+    libPath = "src/lib.rs";
+    inherit dependencies buildDependencies features;
+  };
+  phf_codegen_0_7_22_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "phf_codegen";
+    version = "0.7.22";
+    authors = [ "Steven Fackler <sfackler@gmail.com>" ];
+    sha256 = "0k8yx4gr9m6cfrvh21s6bhnh1azz13j4xih88bvm06r6blfl89fs";
+    inherit dependencies buildDependencies features;
+  };
+  phf_generator_0_7_22_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "phf_generator";
+    version = "0.7.22";
+    authors = [ "Steven Fackler <sfackler@gmail.com>" ];
+    sha256 = "093gla320qb6rbk8z7wqqxl79zrh874sa7sxir31q2p7mrw4b70k";
+    inherit dependencies buildDependencies features;
+  };
+  phf_shared_0_7_22_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "phf_shared";
+    version = "0.7.22";
+    authors = [ "Steven Fackler <sfackler@gmail.com>" ];
+    sha256 = "0ij9flicfi0ab5vpzdwbizpdyxhk891qxa8nxsqlv4sg4abqang6";
+    libPath = "src/lib.rs";
+    inherit dependencies buildDependencies features;
+  };
+  pkg_config_0_3_12_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "pkg-config";
+    version = "0.3.12";
+    authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
+    sha256 = "0k343rlyv9qmplxwxn8clzkyx1zbplhnvm0psjl6s111fjqmgsgh";
+    inherit dependencies buildDependencies features;
+  };
+  quote_0_3_15_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "quote";
+    version = "0.3.15";
+    authors = [ "David Tolnay <dtolnay@gmail.com>" ];
+    sha256 = "09il61jv4kd1360spaj46qwyl21fv1qz18fsv2jra8wdnlgl5jsg";
+    inherit dependencies buildDependencies features;
+  };
+  rand_0_3_22_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "rand";
+    version = "0.3.22";
+    authors = [ "The Rust Project Developers" ];
+    sha256 = "0wrj12acx7l4hr7ag3nz8b50yhp8ancyq988bzmnnsxln67rsys0";
+    inherit dependencies buildDependencies features;
+  };
+  rand_0_4_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "rand";
+    version = "0.4.2";
+    authors = [ "The Rust Project Developers" ];
+    sha256 = "0h8pkg23wb67i8904sm76iyr1jlmhklb85vbpz9c9191a24xzkfm";
+    inherit dependencies buildDependencies features;
+  };
+  redox_syscall_0_1_40_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "redox_syscall";
+    version = "0.1.40";
+    authors = [ "Jeremy Soller <jackpot51@gmail.com>" ];
+    sha256 = "132rnhrq49l3z7gjrwj2zfadgw6q0355s6a7id7x7c0d7sk72611";
+    libName = "syscall";
+    inherit dependencies buildDependencies features;
+  };
+  redox_termios_0_1_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "redox_termios";
+    version = "0.1.1";
+    authors = [ "Jeremy Soller <jackpot51@gmail.com>" ];
+    sha256 = "04s6yyzjca552hdaqlvqhp3vw0zqbc304md5czyd3axh56iry8wh";
+    libPath = "src/lib.rs";
+    inherit dependencies buildDependencies features;
+  };
+  regex_0_1_80_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "regex";
+    version = "0.1.80";
+    authors = [ "The Rust Project Developers" ];
+    sha256 = "0y4s8ghhx6sgzb35irwivm3w0l2hhqhmdcd2px9hirqnkagal9l6";
+    inherit dependencies buildDependencies features;
+  };
+  regex_syntax_0_3_9_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "regex-syntax";
+    version = "0.3.9";
+    authors = [ "The Rust Project Developers" ];
+    sha256 = "1mzhphkbwppwd1zam2jkgjk550cqgf6506i87bw2yzrvcsraiw7m";
+    inherit dependencies buildDependencies features;
+  };
+  relay_0_1_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "relay";
+    version = "0.1.1";
+    authors = [ "Sean McArthur <sean@seanmonstar.com>" ];
+    sha256 = "16csfaslbmj25iaxs88p8wcfh2zfpkh9isg9adid0nxjxvknh07r";
+    inherit dependencies buildDependencies features;
+  };
+  remove_dir_all_0_5_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "remove_dir_all";
+    version = "0.5.1";
+    authors = [ "Aaronepower <theaaronepower@gmail.com>" ];
+    sha256 = "1chx3yvfbj46xjz4bzsvps208l46hfbcy0sm98gpiya454n4rrl7";
+    inherit dependencies buildDependencies features;
+  };
+  reqwest_0_8_6_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "reqwest";
+    version = "0.8.6";
+    authors = [ "Sean McArthur <sean@seanmonstar.com>" ];
+    sha256 = "0ka9ndgybhf65fn44badnjbasn1fi0mvjfa3sfiw485mgg21n3a0";
+    inherit dependencies buildDependencies features;
+  };
+  safemem_0_2_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "safemem";
+    version = "0.2.0";
+    authors = [ "Austin Bonander <austin.bonander@gmail.com>" ];
+    sha256 = "058m251q202n479ip1h6s91yw3plg66vsk5mpaflssn6rs5hijdm";
+    inherit dependencies buildDependencies features;
+  };
+  schannel_0_1_13_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "schannel";
+    version = "0.1.13";
+    authors = [ "Steven Fackler <sfackler@gmail.com>" "Steffen Butzer <steffen.butzer@outlook.com>" ];
+    sha256 = "033zavvq2k6z5akk38vzaglzbxzljaixgmhj9am27nr21dgaj6b3";
+    inherit dependencies buildDependencies features;
+  };
+  scoped_tls_0_1_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "scoped-tls";
+    version = "0.1.2";
+    authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
+    sha256 = "0nblksgki698cqsclsnd6f1pq4yy34350dn2slaah9dlmx9z5xla";
+    inherit dependencies buildDependencies features;
+  };
+  scopeguard_0_3_3_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "scopeguard";
+    version = "0.3.3";
+    authors = [ "bluss" ];
+    sha256 = "0i1l013csrqzfz6c68pr5pi01hg5v5yahq8fsdmaxy6p8ygsjf3r";
+    inherit dependencies buildDependencies features;
+  };
+  security_framework_0_1_16_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "security-framework";
+    version = "0.1.16";
+    authors = [ "Steven Fackler <sfackler@gmail.com>" ];
+    sha256 = "1kxczsaj8gz4922jl5af2gkxh71rasb6khaf3dp7ldlnw9qf2sbm";
+    inherit dependencies buildDependencies features;
+  };
+  security_framework_sys_0_1_16_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "security-framework-sys";
+    version = "0.1.16";
+    authors = [ "Steven Fackler <sfackler@gmail.com>" ];
+    sha256 = "0ai2pivdr5fyc7czbkpcrwap0imyy0r8ndarrl3n5kiv0jha1js3";
+    build = "build.rs";
+    inherit dependencies buildDependencies features;
+  };
+  semver_0_9_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "semver";
+    version = "0.9.0";
+    authors = [ "Steve Klabnik <steve@steveklabnik.com>" "The Rust Project Developers" ];
+    sha256 = "0azak2lb2wc36s3x15az886kck7rpnksrw14lalm157rg9sc9z63";
+    inherit dependencies buildDependencies features;
+  };
+  semver_parser_0_7_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "semver-parser";
+    version = "0.7.0";
+    authors = [ "Steve Klabnik <steve@steveklabnik.com>" ];
+    sha256 = "1da66c8413yakx0y15k8c055yna5lyb6fr0fw9318kdwkrk5k12h";
+    inherit dependencies buildDependencies features;
+  };
+  serde_1_0_70_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "serde";
+    version = "1.0.70";
+    authors = [ "Erick Tryzelaar <erick.tryzelaar@gmail.com>" "David Tolnay <dtolnay@gmail.com>" ];
+    sha256 = "1z1gyjf5rrs1k3j1civfzqjqs790651bwf8m31bw2pagclhnazs4";
+    build = "build.rs";
+    inherit dependencies buildDependencies features;
+  };
+  serde_json_1_0_24_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "serde_json";
+    version = "1.0.24";
+    authors = [ "Erick Tryzelaar <erick.tryzelaar@gmail.com>" "David Tolnay <dtolnay@gmail.com>" ];
+    sha256 = "1wvvc3y0202my2p00ah8ygl1794nspar9pf39fz1525jd6m6k8a1";
+    inherit dependencies buildDependencies features;
+  };
+  serde_urlencoded_0_5_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "serde_urlencoded";
+    version = "0.5.2";
+    authors = [ "Anthony Ramine <n.oxyde@gmail.com>" ];
+    sha256 = "0m5pigng0665qrk4ii1z84pb4lchbsswhgb863yglljskmm056m0";
+    inherit dependencies buildDependencies features;
+  };
+  siphasher_0_2_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "siphasher";
+    version = "0.2.2";
+    authors = [ "Frank Denis <github@pureftpd.org>" ];
+    sha256 = "0iyx7nlzfny9ly1634a6zcq0yvrinhxhypwas4p8ry3zqnn76qqr";
+    inherit dependencies buildDependencies features;
+  };
+  slab_0_3_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "slab";
+    version = "0.3.0";
+    authors = [ "Carl Lerche <me@carllerche.com>" ];
+    sha256 = "0y6lhjggksh57hyfd3l6p9wgv5nhvw9c6djrysq7jnalz8fih21k";
+    inherit dependencies buildDependencies features;
+  };
+  slab_0_4_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "slab";
+    version = "0.4.0";
+    authors = [ "Carl Lerche <me@carllerche.com>" ];
+    sha256 = "1qy2vkgwqgj5z4ygdkh040n9yh1vz80v5flxb1xrvw3i4wxs7yx0";
+    inherit dependencies buildDependencies features;
+  };
+  slog_1_7_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "slog";
+    version = "1.7.1";
+    authors = [ "Dawid Ciężarkiewicz <dpc@dpc.pw>" ];
+    sha256 = "1qhnwv2gbxmnwasaa0vlhddq6cdhq6n3l8d6h3ql73367h7aav65";
+    inherit dependencies buildDependencies features;
+  };
+  slog_envlogger_0_5_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "slog-envlogger";
+    version = "0.5.0";
+    authors = [ "The Rust Project Developers" "Dawid Ciężarkiewicz <dpc@dpc.pw>" ];
+    sha256 = "0ry9k2ppj7z6prdz2kf924w7l9y2kbysrigca6shni1kz2j163qb";
+    libPath = "src/lib.rs";
+    inherit dependencies buildDependencies features;
+  };
+  slog_extra_0_1_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "slog-extra";
+    version = "0.1.2";
+    authors = [ "Dawid Ciężarkiewicz <dpc@dpc.pw>" ];
+    sha256 = "0jrw0xcc81wwcl59xx9qglfcv5l3ad5kbpcyp6ygk94p9kxfrhyj";
+    libPath = "lib.rs";
+    inherit dependencies buildDependencies features;
+  };
+  slog_stdlog_1_1_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "slog-stdlog";
+    version = "1.1.0";
+    authors = [ "Dawid Ciężarkiewicz <dpc@dpc.pw>" ];
+    sha256 = "0ig4mjixr4y3dn3s53rlnrpplwkqb8b0z2zkaiiiwyv7nhjxdg46";
+    libPath = "lib.rs";
+    inherit dependencies buildDependencies features;
+  };
+  slog_stream_1_2_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "slog-stream";
+    version = "1.2.1";
+    authors = [ "Dawid Ciężarkiewicz <dpc@dpc.pw>" ];
+    sha256 = "03dwzbydaamfzjpr16gm065i696lk86gqcpspv5qaqyv938fm2yj";
+    libPath = "lib.rs";
+    inherit dependencies buildDependencies features;
+  };
+  slog_term_1_5_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "slog-term";
+    version = "1.5.0";
+    authors = [ "Dawid Ciężarkiewicz <dpc@dpc.pw>" ];
+    sha256 = "0zq2kyvm7jhqj6sc09w540wqfrrpa46yxf9sgzq7jqpkr66wsiar";
+    libPath = "lib.rs";
+    inherit dependencies buildDependencies features;
+  };
+  smallvec_0_2_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "smallvec";
+    version = "0.2.1";
+    authors = [ "Simon Sapin <simon.sapin@exyr.org>" ];
+    sha256 = "0rnsll9af52bpjngz0067dpm1ndqmh76i64a58fc118l4lvnjxw2";
+    libPath = "lib.rs";
+    inherit dependencies buildDependencies features;
+  };
+  strsim_0_7_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "strsim";
+    version = "0.7.0";
+    authors = [ "Danny Guo <dannyguo91@gmail.com>" ];
+    sha256 = "0fy0k5f2705z73mb3x9459bpcvrx4ky8jpr4zikcbiwan4bnm0iv";
+    inherit dependencies buildDependencies features;
+  };
+  syn_0_11_11_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "syn";
+    version = "0.11.11";
+    authors = [ "David Tolnay <dtolnay@gmail.com>" ];
+    sha256 = "0yw8ng7x1dn5a6ykg0ib49y7r9nhzgpiq2989rqdp7rdz3n85502";
+    inherit dependencies buildDependencies features;
+  };
+  synom_0_11_3_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "synom";
+    version = "0.11.3";
+    authors = [ "David Tolnay <dtolnay@gmail.com>" ];
+    sha256 = "1l6d1s9qjfp6ng2s2z8219igvlv7gyk8gby97sdykqc1r93d8rhc";
+    inherit dependencies buildDependencies features;
+  };
+  take_0_1_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "take";
+    version = "0.1.0";
+    authors = [ "Carl Lerche <me@carllerche.com>" ];
+    sha256 = "17rfh39di5n8w9aghpic2r94cndi3dr04l60nkjylmxfxr3iwlhd";
+    inherit dependencies buildDependencies features;
+  };
+  tar_0_4_16_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "tar";
+    version = "0.4.16";
+    authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
+    sha256 = "0s36d0nzn2hs20y805wpmpc4asd1jhrpabqwcpqf5ha442fa7f3b";
+    inherit dependencies buildDependencies features;
+  };
+  tempdir_0_3_7_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "tempdir";
+    version = "0.3.7";
+    authors = [ "The Rust Project Developers" ];
+    sha256 = "0y53sxybyljrr7lh0x0ysrsa7p7cljmwv9v80acy3rc6n97g67vy";
+    inherit dependencies buildDependencies features;
+  };
+  termion_1_5_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "termion";
+    version = "1.5.1";
+    authors = [ "ticki <Ticki@users.noreply.github.com>" "gycos <alexandre.bury@gmail.com>" "IGI-111 <igi-111@protonmail.com>" ];
+    sha256 = "02gq4vd8iws1f3gjrgrgpajsk2bk43nds5acbbb4s8dvrdvr8nf1";
+    inherit dependencies buildDependencies features;
+  };
+  textwrap_0_10_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "textwrap";
+    version = "0.10.0";
+    authors = [ "Martin Geisler <martin@geisler.net>" ];
+    sha256 = "1s8d5cna12smhgj0x2y1xphklyk2an1yzbadnj89p1vy5vnjpsas";
+    inherit dependencies buildDependencies features;
+  };
+  thread_id_2_0_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "thread-id";
+    version = "2.0.0";
+    authors = [ "Ruud van Asseldonk <dev@veniogames.com>" ];
+    sha256 = "06i3c8ckn97i5rp16civ2vpqbknlkx66dkrl070iw60nawi0kjc3";
+    inherit dependencies buildDependencies features;
+  };
+  thread_local_0_2_7_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "thread_local";
+    version = "0.2.7";
+    authors = [ "Amanieu d'Antras <amanieu@gmail.com>" ];
+    sha256 = "19p0zrs24rdwjvpi10jig5ms3sxj00pv8shkr9cpddri8cdghqp7";
+    inherit dependencies buildDependencies features;
+  };
+  thread_local_0_3_5_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "thread_local";
+    version = "0.3.5";
+    authors = [ "Amanieu d'Antras <amanieu@gmail.com>" ];
+    sha256 = "0mkp0sp91aqsk7brgygai4igv751r1754rsxn37mig3ag5rx8np6";
+    inherit dependencies buildDependencies features;
+  };
+  time_0_1_40_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "time";
+    version = "0.1.40";
+    authors = [ "The Rust Project Developers" ];
+    sha256 = "0wgnbjamljz6bqxsd5axc4p2mmhkqfrryj4gf2yswjaxiw5dd01m";
+    inherit dependencies buildDependencies features;
+  };
+  tokio_0_1_7_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "tokio";
+    version = "0.1.7";
+    authors = [ "Carl Lerche <me@carllerche.com>" ];
+    sha256 = "0d5fj90wk05m5vbd924irg1pl1d4fn86jjw5napzanh6vbwsnr66";
+    inherit dependencies buildDependencies features;
+  };
+  tokio_codec_0_1_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "tokio-codec";
+    version = "0.1.0";
+    authors = [ "Carl Lerche <me@carllerche.com>" "Bryan Burgers <bryan@burgers.io>" ];
+    sha256 = "0347ygccbj05yn9krjk4ifcy5xbv41xk7yyi9cl2cnxrc285xnm7";
+    inherit dependencies buildDependencies features;
+  };
+  tokio_core_0_1_17_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "tokio-core";
+    version = "0.1.17";
+    authors = [ "Carl Lerche <me@carllerche.com>" ];
+    sha256 = "1j6c5q3aakvb1hjx4r95xwl5ms8rp19k4qsr6v6ngwbvr6f9z6rs";
+    inherit dependencies buildDependencies features;
+  };
+  tokio_executor_0_1_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "tokio-executor";
+    version = "0.1.2";
+    authors = [ "Carl Lerche <me@carllerche.com>" ];
+    sha256 = "1y4mwqjw438x6jskigz1knvfbpbinxfv6h43s60w6wdb80xmyg48";
+    inherit dependencies buildDependencies features;
+  };
+  tokio_fs_0_1_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "tokio-fs";
+    version = "0.1.2";
+    authors = [ "Carl Lerche <me@carllerche.com>" ];
+    sha256 = "18rxwslv2hdmij6alpqfcm8aywcd28vw12s826ajgvkskh8jsdh2";
+    inherit dependencies buildDependencies features;
+  };
+  tokio_io_0_1_7_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "tokio-io";
+    version = "0.1.7";
+    authors = [ "Carl Lerche <me@carllerche.com>" ];
+    sha256 = "08r46b5lp7929agwal1iaabdhfv309wyvd6cld1g39x5ml8x7hp2";
+    inherit dependencies buildDependencies features;
+  };
+  tokio_proto_0_1_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "tokio-proto";
+    version = "0.1.1";
+    authors = [ "Carl Lerche <me@carllerche.com>" ];
+    sha256 = "030q9h8pn1ngm80klff5irglxxki60hf5maw0mppmmr46k773z66";
+    inherit dependencies buildDependencies features;
+  };
+  tokio_reactor_0_1_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "tokio-reactor";
+    version = "0.1.2";
+    authors = [ "Carl Lerche <me@carllerche.com>" ];
+    sha256 = "11yx7fvyv1c5h097lspfrim1r67axl8y8m22y5mgny8nhly56s4m";
+    inherit dependencies buildDependencies features;
+  };
+  tokio_service_0_1_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "tokio-service";
+    version = "0.1.0";
+    authors = [ "Carl Lerche <me@carllerche.com>" ];
+    sha256 = "0c85wm5qz9fabg0k6k763j89m43n6max72d3a8sxcs940id6qmih";
+    inherit dependencies buildDependencies features;
+  };
+  tokio_tcp_0_1_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "tokio-tcp";
+    version = "0.1.0";
+    authors = [ "Carl Lerche <me@carllerche.com>" ];
+    sha256 = "19cyajkqvvbn3qqnak0qzivdq6amfjymbc30k7bbqhx4y1pcgqvh";
+    inherit dependencies buildDependencies features;
+  };
+  tokio_threadpool_0_1_5_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "tokio-threadpool";
+    version = "0.1.5";
+    authors = [ "Carl Lerche <me@carllerche.com>" ];
+    sha256 = "04nzjdjlir33s0z5nh3vh2h4v3vb1rwzv45jdjridrk92rqpb2vc";
+    inherit dependencies buildDependencies features;
+  };
+  tokio_timer_0_2_4_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "tokio-timer";
+    version = "0.2.4";
+    authors = [ "Carl Lerche <me@carllerche.com>" ];
+    sha256 = "0imv1k4g583hh61qkh6mpx06ik9accyl4582vq0z61rr484050gi";
+    inherit dependencies buildDependencies features;
+  };
+  tokio_tls_0_1_4_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "tokio-tls";
+    version = "0.1.4";
+    authors = [ "Carl Lerche <me@carllerche.com>" "Alex Crichton <alex@alexcrichton.com>" ];
+    sha256 = "07rwv3q6jbg65ln1ahzb4g648l8lcn4hvc0ax3r12bnsi1py7agp";
+    inherit dependencies buildDependencies features;
+  };
+  tokio_udp_0_1_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "tokio-udp";
+    version = "0.1.1";
+    authors = [ "Carl Lerche <me@carllerche.com>" ];
+    sha256 = "1zsq3bny959dq7cnhdjrlaglrdcm63zn82jpkjs6nrrcfhb9l6z9";
+    inherit dependencies buildDependencies features;
+  };
+  try_lock_0_1_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "try-lock";
+    version = "0.1.0";
+    authors = [ "Sean McArthur <sean@seanmonstar.com>" ];
+    sha256 = "0kfrqrb2xkjig54s3qfy80dpldknr19p3rmp0n82yk5929j879k3";
+    inherit dependencies buildDependencies features;
+  };
+  unicase_1_4_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "unicase";
+    version = "1.4.2";
+    authors = [ "Sean McArthur <sean.monstar@gmail.com>" ];
+    sha256 = "0rbnhw2mnhcwrij3vczp0sl8zdfmvf2dlh8hly81kj7132kfj0mf";
+    build = "build.rs";
+    inherit dependencies buildDependencies features;
+  };
+  unicase_2_1_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "unicase";
+    version = "2.1.0";
+    authors = [ "Sean McArthur <sean@seanmonstar.com>" ];
+    sha256 = "1zzn16hh8fdx5pnbbnl32q8m2mh4vpd1jm9pdcv969ik83dw4byp";
+    build = "build.rs";
+    inherit dependencies buildDependencies features;
+  };
+  unicode_bidi_0_3_4_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "unicode-bidi";
+    version = "0.3.4";
+    authors = [ "The Servo Project Developers" ];
+    sha256 = "0lcd6jasrf8p9p0q20qyf10c6xhvw40m2c4rr105hbk6zy26nj1q";
+    libName = "unicode_bidi";
+    inherit dependencies buildDependencies features;
+  };
+  unicode_normalization_0_1_7_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "unicode-normalization";
+    version = "0.1.7";
+    authors = [ "kwantam <kwantam@gmail.com>" ];
+    sha256 = "1da2hv800pd0wilmn4idwpgv5p510hjxizjcfv6xzb40xcsjd8gs";
+    inherit dependencies buildDependencies features;
+  };
+  unicode_width_0_1_5_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "unicode-width";
+    version = "0.1.5";
+    authors = [ "kwantam <kwantam@gmail.com>" ];
+    sha256 = "0886lc2aymwgy0lhavwn6s48ik3c61ykzzd3za6prgnw51j7bi4w";
+    inherit dependencies buildDependencies features;
+  };
+  unicode_xid_0_0_4_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "unicode-xid";
+    version = "0.0.4";
+    authors = [ "erick.tryzelaar <erick.tryzelaar@gmail.com>" "kwantam <kwantam@gmail.com>" ];
+    sha256 = "1dc8wkkcd3s6534s5aw4lbjn8m67flkkbnajp5bl8408wdg8rh9v";
+    inherit dependencies buildDependencies features;
+  };
+  unreachable_1_0_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "unreachable";
+    version = "1.0.0";
+    authors = [ "Jonathan Reem <jonathan.reem@gmail.com>" ];
+    sha256 = "1am8czbk5wwr25gbp2zr007744fxjshhdqjz9liz7wl4pnv3whcf";
+    inherit dependencies buildDependencies features;
+  };
+  url_1_7_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "url";
+    version = "1.7.1";
+    authors = [ "The rust-url developers" ];
+    sha256 = "1l36pbvlwdnh3zqz4wp5n6jg332wkis9pi2g3vy12xr8k4nfyk8i";
+    inherit dependencies buildDependencies features;
+  };
+  utf8_ranges_0_1_3_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "utf8-ranges";
+    version = "0.1.3";
+    authors = [ "Andrew Gallant <jamslam@gmail.com>" ];
+    sha256 = "1cj548a91a93j8375p78qikaiam548xh84cb0ck8y119adbmsvbp";
+    inherit dependencies buildDependencies features;
+  };
+  uuid_0_6_5_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "uuid";
+    version = "0.6.5";
+    authors = [ "Ashley Mannix<ashleymannix@live.com.au>" "Christopher Armstrong" "Dylan DPC<dylan.dpc@gmail.com>" "Hunar Roop Kahlon<hunar.roop@gmail.com>" ];
+    sha256 = "1jy15m4yxxwma0jsy070garhbgfprky23i77rawjkk75vqhnnhlf";
+    inherit dependencies buildDependencies features;
+  };
+  vcpkg_0_2_4_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "vcpkg";
+    version = "0.2.4";
+    authors = [ "Jim McGrath <jimmc2@gmail.com>" ];
+    sha256 = "0xgk5axv1qhj4rfn2rca7768wnvzihccnajkgc6im8ndsx371nml";
+    inherit dependencies buildDependencies features;
+  };
+  vec_map_0_8_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "vec_map";
+    version = "0.8.1";
+    authors = [ "Alex Crichton <alex@alexcrichton.com>" "Jorge Aparicio <japaricious@gmail.com>" "Alexis Beingessner <a.beingessner@gmail.com>" "Brian Anderson <>" "tbu- <>" "Manish Goregaokar <>" "Aaron Turon <aturon@mozilla.com>" "Adolfo Ochagavía <>" "Niko Matsakis <>" "Steven Fackler <>" "Chase Southwood <csouth3@illinois.edu>" "Eduard Burtescu <>" "Florian Wilkens <>" "Félix Raimundo <>" "Tibor Benke <>" "Markus Siemens <markus@m-siemens.de>" "Josh Branchaud <jbranchaud@gmail.com>" "Huon Wilson <dbau.pp@gmail.com>" "Corey Farwell <coref@rwell.org>" "Aaron Liblong <>" "Nick Cameron <nrc@ncameron.org>" "Patrick Walton <pcwalton@mimiga.net>" "Felix S Klock II <>" "Andrew Paseltiner <apaseltiner@gmail.com>" "Sean McArthur <sean.monstar@gmail.com>" "Vadim Petrochenkov <>" ];
+    sha256 = "1jj2nrg8h3l53d43rwkpkikq5a5x15ms4rf1rw92hp5lrqhi8mpi";
+    inherit dependencies buildDependencies features;
+  };
+  version_check_0_1_4_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "version_check";
+    version = "0.1.4";
+    authors = [ "Sergio Benitez <sb@sergio.bz>" ];
+    sha256 = "1ghi6bw2qsj53x2vyprs883dbrq8cjzmshlamjsxvmwd2zp13bck";
+    inherit dependencies buildDependencies features;
+  };
+  void_1_0_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "void";
+    version = "1.0.2";
+    authors = [ "Jonathan Reem <jonathan.reem@gmail.com>" ];
+    sha256 = "0h1dm0dx8dhf56a83k68mijyxigqhizpskwxfdrs1drwv2cdclv3";
+    inherit dependencies buildDependencies features;
+  };
+  want_0_0_4_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "want";
+    version = "0.0.4";
+    authors = [ "Sean McArthur <sean@seanmonstar.com>" ];
+    sha256 = "1l1qy4pvg5q71nrzfjldw9xzqhhgicj4slly1bal89hr2aaibpy0";
+    inherit dependencies buildDependencies features;
+  };
+  winapi_0_2_8_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "winapi";
+    version = "0.2.8";
+    authors = [ "Peter Atashian <retep998@gmail.com>" ];
+    sha256 = "0a45b58ywf12vb7gvj6h3j264nydynmzyqz8d8rqxsj6icqv82as";
+    inherit dependencies buildDependencies features;
+  };
+  winapi_0_3_5_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "winapi";
+    version = "0.3.5";
+    authors = [ "Peter Atashian <retep998@gmail.com>" ];
+    sha256 = "0cfdsxa5yf832r5i2z7dhdvnryyvhfp3nb32gpcaq502zgjdm3w6";
+    build = "build.rs";
+    inherit dependencies buildDependencies features;
+  };
+  winapi_build_0_1_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "winapi-build";
+    version = "0.1.1";
+    authors = [ "Peter Atashian <retep998@gmail.com>" ];
+    sha256 = "1lxlpi87rkhxcwp2ykf1ldw3p108hwm24nywf3jfrvmff4rjhqga";
+    libName = "build";
+    inherit dependencies buildDependencies features;
+  };
+  winapi_i686_pc_windows_gnu_0_4_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "winapi-i686-pc-windows-gnu";
+    version = "0.4.0";
+    authors = [ "Peter Atashian <retep998@gmail.com>" ];
+    sha256 = "05ihkij18r4gamjpxj4gra24514can762imjzlmak5wlzidplzrp";
+    build = "build.rs";
+    inherit dependencies buildDependencies features;
+  };
+  winapi_x86_64_pc_windows_gnu_0_4_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "winapi-x86_64-pc-windows-gnu";
+    version = "0.4.0";
+    authors = [ "Peter Atashian <retep998@gmail.com>" ];
+    sha256 = "0n1ylmlsb8yg1v583i4xy0qmqg42275flvbc51hdqjjfjcl9vlbj";
+    build = "build.rs";
+    inherit dependencies buildDependencies features;
+  };
+  ws2_32_sys_0_2_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "ws2_32-sys";
+    version = "0.2.1";
+    authors = [ "Peter Atashian <retep998@gmail.com>" ];
+    sha256 = "1zpy9d9wk11sj17fczfngcj28w4xxjs3b4n036yzpy38dxp4f7kc";
+    libName = "ws2_32";
+    build = "build.rs";
+    inherit dependencies buildDependencies features;
+  };
+  xattr_0_2_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+    crateName = "xattr";
+    version = "0.2.2";
+    authors = [ "Steven Allen <steven@stebalien.com>" ];
+    sha256 = "01zqnn6bhrd58hvpj3y1nqnbmlswrvsdapn2zbi7h1bh5lspiyk5";
+    inherit dependencies buildDependencies features;
+  };
+  adler32_1_0_3 = { features?(adler32_1_0_3_features {}) }: adler32_1_0_3_ {};
+  adler32_1_0_3_features = f: updateFeatures f (rec {
+    adler32_1_0_3.default = (f.adler32_1_0_3.default or true);
+  }) [];
+  aho_corasick_0_5_3 = { features?(aho_corasick_0_5_3_features {}) }: aho_corasick_0_5_3_ {
+    dependencies = mapFeatures features ([ memchr_0_1_11 ]);
+  };
+  aho_corasick_0_5_3_features = f: updateFeatures f (rec {
+    aho_corasick_0_5_3.default = (f.aho_corasick_0_5_3.default or true);
+    memchr_0_1_11.default = true;
+  }) [ memchr_0_1_11_features ];
+  ansi_term_0_9_0 = { features?(ansi_term_0_9_0_features {}) }: ansi_term_0_9_0_ {};
+  ansi_term_0_9_0_features = f: updateFeatures f (rec {
+    ansi_term_0_9_0.default = (f.ansi_term_0_9_0.default or true);
+  }) [];
+  ansi_term_0_11_0 = { features?(ansi_term_0_11_0_features {}) }: ansi_term_0_11_0_ {
+    dependencies = (if kernel == "windows" then mapFeatures features ([ winapi_0_3_5 ]) else []);
+  };
+  ansi_term_0_11_0_features = f: updateFeatures f (rec {
+    ansi_term_0_11_0.default = (f.ansi_term_0_11_0.default or true);
+    winapi_0_3_5.consoleapi = true;
+    winapi_0_3_5.default = true;
+    winapi_0_3_5.errhandlingapi = true;
+    winapi_0_3_5.processenv = true;
+  }) [ winapi_0_3_5_features ];
+  arrayvec_0_4_7 = { features?(arrayvec_0_4_7_features {}) }: arrayvec_0_4_7_ {
+    dependencies = mapFeatures features ([ nodrop_0_1_12 ]);
+    features = mkFeatures (features.arrayvec_0_4_7 or {});
+  };
+  arrayvec_0_4_7_features = f: updateFeatures f (rec {
+    arrayvec_0_4_7.default = (f.arrayvec_0_4_7.default or true);
+    arrayvec_0_4_7.serde =
+      (f.arrayvec_0_4_7.serde or false) ||
+      (f.arrayvec_0_4_7.serde-1 or false) ||
+      (arrayvec_0_4_7.serde-1 or false);
+    arrayvec_0_4_7.std =
+      (f.arrayvec_0_4_7.std or false) ||
+      (f.arrayvec_0_4_7.default or false) ||
+      (arrayvec_0_4_7.default or false);
+    nodrop_0_1_12.default = (f.nodrop_0_1_12.default or false);
+  }) [ nodrop_0_1_12_features ];
+  atty_0_2_11 = { features?(atty_0_2_11_features {}) }: atty_0_2_11_ {
+    dependencies = (if kernel == "redox" then mapFeatures features ([ termion_1_5_1 ]) else [])
+      ++ (if (kernel == "linux" || kernel == "darwin") then mapFeatures features ([ libc_0_2_42 ]) else [])
+      ++ (if kernel == "windows" then mapFeatures features ([ winapi_0_3_5 ]) else []);
+  };
+  atty_0_2_11_features = f: updateFeatures f (rec {
+    atty_0_2_11.default = (f.atty_0_2_11.default or true);
+    libc_0_2_42.default = (f.libc_0_2_42.default or false);
+    termion_1_5_1.default = true;
+    winapi_0_3_5.consoleapi = true;
+    winapi_0_3_5.default = true;
+    winapi_0_3_5.minwinbase = true;
+    winapi_0_3_5.minwindef = true;
+    winapi_0_3_5.processenv = true;
+    winapi_0_3_5.winbase = true;
+  }) [ termion_1_5_1_features libc_0_2_42_features winapi_0_3_5_features ];
+  base64_0_9_2 = { features?(base64_0_9_2_features {}) }: base64_0_9_2_ {
+    dependencies = mapFeatures features ([ byteorder_1_2_3 safemem_0_2_0 ]);
+  };
+  base64_0_9_2_features = f: updateFeatures f (rec {
+    base64_0_9_2.default = (f.base64_0_9_2.default or true);
+    byteorder_1_2_3.default = true;
+    safemem_0_2_0.default = true;
+  }) [ byteorder_1_2_3_features safemem_0_2_0_features ];
+  bitflags_0_9_1 = { features?(bitflags_0_9_1_features {}) }: bitflags_0_9_1_ {
+    features = mkFeatures (features.bitflags_0_9_1 or {});
+  };
+  bitflags_0_9_1_features = f: updateFeatures f (rec {
+    bitflags_0_9_1.default = (f.bitflags_0_9_1.default or true);
+    bitflags_0_9_1.example_generated =
+      (f.bitflags_0_9_1.example_generated or false) ||
+      (f.bitflags_0_9_1.default or false) ||
+      (bitflags_0_9_1.default or false);
+  }) [];
+  bitflags_1_0_3 = { features?(bitflags_1_0_3_features {}) }: bitflags_1_0_3_ {
+    features = mkFeatures (features.bitflags_1_0_3 or {});
+  };
+  bitflags_1_0_3_features = f: updateFeatures f (rec {
+    bitflags_1_0_3.default = (f.bitflags_1_0_3.default or true);
+  }) [];
+  build_const_0_2_1 = { features?(build_const_0_2_1_features {}) }: build_const_0_2_1_ {
+    features = mkFeatures (features.build_const_0_2_1 or {});
+  };
+  build_const_0_2_1_features = f: updateFeatures f (rec {
+    build_const_0_2_1.default = (f.build_const_0_2_1.default or true);
+    build_const_0_2_1.std =
+      (f.build_const_0_2_1.std or false) ||
+      (f.build_const_0_2_1.default or false) ||
+      (build_const_0_2_1.default or false);
+  }) [];
+  byteorder_1_2_3 = { features?(byteorder_1_2_3_features {}) }: byteorder_1_2_3_ {
+    features = mkFeatures (features.byteorder_1_2_3 or {});
+  };
+  byteorder_1_2_3_features = f: updateFeatures f (rec {
+    byteorder_1_2_3.default = (f.byteorder_1_2_3.default or true);
+    byteorder_1_2_3.std =
+      (f.byteorder_1_2_3.std or false) ||
+      (f.byteorder_1_2_3.default or false) ||
+      (byteorder_1_2_3.default or false);
+  }) [];
+  bytes_0_4_9 = { features?(bytes_0_4_9_features {}) }: bytes_0_4_9_ {
+    dependencies = mapFeatures features ([ byteorder_1_2_3 iovec_0_1_2 ]);
+    features = mkFeatures (features.bytes_0_4_9 or {});
+  };
+  bytes_0_4_9_features = f: updateFeatures f (rec {
+    byteorder_1_2_3.default = true;
+    byteorder_1_2_3.i128 =
+      (f.byteorder_1_2_3.i128 or false) ||
+      (bytes_0_4_9.i128 or false) ||
+      (f.bytes_0_4_9.i128 or false);
+    bytes_0_4_9.default = (f.bytes_0_4_9.default or true);
+    iovec_0_1_2.default = true;
+  }) [ byteorder_1_2_3_features iovec_0_1_2_features ];
+  cargo_download_0_1_1 = { features?(cargo_download_0_1_1_features {}) }: cargo_download_0_1_1_ {
+    dependencies = mapFeatures features ([ ansi_term_0_9_0 clap_2_32_0 conv_0_3_3 derive_error_0_0_3 exitcode_1_1_2 flate2_0_2_20 isatty_0_1_8 itertools_0_6_5 lazy_static_0_2_11 log_0_3_9 maplit_0_1_6 reqwest_0_8_6 semver_0_9_0 serde_json_1_0_24 slog_1_7_1 slog_envlogger_0_5_0 slog_stdlog_1_1_0 slog_stream_1_2_1 tar_0_4_16 time_0_1_40 ]);
+  };
+  cargo_download_0_1_1_features = f: updateFeatures f (rec {
+    ansi_term_0_9_0.default = true;
+    cargo_download_0_1_1.default = (f.cargo_download_0_1_1.default or true);
+    clap_2_32_0.default = true;
+    conv_0_3_3.default = true;
+    derive_error_0_0_3.default = true;
+    exitcode_1_1_2.default = true;
+    flate2_0_2_20.default = true;
+    isatty_0_1_8.default = true;
+    itertools_0_6_5.default = true;
+    lazy_static_0_2_11.default = true;
+    log_0_3_9.default = true;
+    maplit_0_1_6.default = true;
+    reqwest_0_8_6.default = true;
+    semver_0_9_0.default = true;
+    serde_json_1_0_24.default = true;
+    slog_1_7_1.default = true;
+    slog_envlogger_0_5_0.default = true;
+    slog_stdlog_1_1_0.default = true;
+    slog_stream_1_2_1.default = true;
+    tar_0_4_16.default = true;
+    time_0_1_40.default = true;
+  }) [ ansi_term_0_9_0_features clap_2_32_0_features conv_0_3_3_features derive_error_0_0_3_features exitcode_1_1_2_features flate2_0_2_20_features isatty_0_1_8_features itertools_0_6_5_features lazy_static_0_2_11_features log_0_3_9_features maplit_0_1_6_features reqwest_0_8_6_features semver_0_9_0_features serde_json_1_0_24_features slog_1_7_1_features slog_envlogger_0_5_0_features slog_stdlog_1_1_0_features slog_stream_1_2_1_features tar_0_4_16_features time_0_1_40_features ];
+  case_0_1_0 = { features?(case_0_1_0_features {}) }: case_0_1_0_ {};
+  case_0_1_0_features = f: updateFeatures f (rec {
+    case_0_1_0.default = (f.case_0_1_0.default or true);
+  }) [];
+  cc_1_0_18 = { features?(cc_1_0_18_features {}) }: cc_1_0_18_ {
+    dependencies = mapFeatures features ([]);
+    features = mkFeatures (features.cc_1_0_18 or {});
+  };
+  cc_1_0_18_features = f: updateFeatures f (rec {
+    cc_1_0_18.default = (f.cc_1_0_18.default or true);
+    cc_1_0_18.rayon =
+      (f.cc_1_0_18.rayon or false) ||
+      (f.cc_1_0_18.parallel or false) ||
+      (cc_1_0_18.parallel or false);
+  }) [];
+  cfg_if_0_1_4 = { features?(cfg_if_0_1_4_features {}) }: cfg_if_0_1_4_ {};
+  cfg_if_0_1_4_features = f: updateFeatures f (rec {
+    cfg_if_0_1_4.default = (f.cfg_if_0_1_4.default or true);
+  }) [];
+  chrono_0_2_25 = { features?(chrono_0_2_25_features {}) }: chrono_0_2_25_ {
+    dependencies = mapFeatures features ([ num_0_1_42 time_0_1_40 ]);
+  };
+  chrono_0_2_25_features = f: updateFeatures f (rec {
+    chrono_0_2_25.default = (f.chrono_0_2_25.default or true);
+    num_0_1_42.default = (f.num_0_1_42.default or false);
+    time_0_1_40.default = true;
+  }) [ num_0_1_42_features time_0_1_40_features ];
+  clap_2_32_0 = { features?(clap_2_32_0_features {}) }: clap_2_32_0_ {
+    dependencies = mapFeatures features ([ bitflags_1_0_3 textwrap_0_10_0 unicode_width_0_1_5 ]
+      ++ (if features.clap_2_32_0.atty or false then [ atty_0_2_11 ] else [])
+      ++ (if features.clap_2_32_0.strsim or false then [ strsim_0_7_0 ] else [])
+      ++ (if features.clap_2_32_0.vec_map or false then [ vec_map_0_8_1 ] else []))
+      ++ (if !(kernel == "windows") then mapFeatures features ([ ]
+      ++ (if features.clap_2_32_0.ansi_term or false then [ ansi_term_0_11_0 ] else [])) else []);
+    features = mkFeatures (features.clap_2_32_0 or {});
+  };
+  clap_2_32_0_features = f: updateFeatures f (rec {
+    ansi_term_0_11_0.default = true;
+    atty_0_2_11.default = true;
+    bitflags_1_0_3.default = true;
+    clap_2_32_0.ansi_term =
+      (f.clap_2_32_0.ansi_term or false) ||
+      (f.clap_2_32_0.color or false) ||
+      (clap_2_32_0.color or false);
+    clap_2_32_0.atty =
+      (f.clap_2_32_0.atty or false) ||
+      (f.clap_2_32_0.color or false) ||
+      (clap_2_32_0.color or false);
+    clap_2_32_0.clippy =
+      (f.clap_2_32_0.clippy or false) ||
+      (f.clap_2_32_0.lints or false) ||
+      (clap_2_32_0.lints or false);
+    clap_2_32_0.color =
+      (f.clap_2_32_0.color or false) ||
+      (f.clap_2_32_0.default or false) ||
+      (clap_2_32_0.default or false);
+    clap_2_32_0.default = (f.clap_2_32_0.default or true);
+    clap_2_32_0.strsim =
+      (f.clap_2_32_0.strsim or false) ||
+      (f.clap_2_32_0.suggestions or false) ||
+      (clap_2_32_0.suggestions or false);
+    clap_2_32_0.suggestions =
+      (f.clap_2_32_0.suggestions or false) ||
+      (f.clap_2_32_0.default or false) ||
+      (clap_2_32_0.default or false);
+    clap_2_32_0.term_size =
+      (f.clap_2_32_0.term_size or false) ||
+      (f.clap_2_32_0.wrap_help or false) ||
+      (clap_2_32_0.wrap_help or false);
+    clap_2_32_0.vec_map =
+      (f.clap_2_32_0.vec_map or false) ||
+      (f.clap_2_32_0.default or false) ||
+      (clap_2_32_0.default or false);
+    clap_2_32_0.yaml =
+      (f.clap_2_32_0.yaml or false) ||
+      (f.clap_2_32_0.doc or false) ||
+      (clap_2_32_0.doc or false);
+    clap_2_32_0.yaml-rust =
+      (f.clap_2_32_0.yaml-rust or false) ||
+      (f.clap_2_32_0.yaml or false) ||
+      (clap_2_32_0.yaml or false);
+    strsim_0_7_0.default = true;
+    textwrap_0_10_0.default = true;
+    textwrap_0_10_0.term_size =
+      (f.textwrap_0_10_0.term_size or false) ||
+      (clap_2_32_0.wrap_help or false) ||
+      (f.clap_2_32_0.wrap_help or false);
+    unicode_width_0_1_5.default = true;
+    vec_map_0_8_1.default = true;
+  }) [ atty_0_2_11_features bitflags_1_0_3_features strsim_0_7_0_features textwrap_0_10_0_features unicode_width_0_1_5_features vec_map_0_8_1_features ansi_term_0_11_0_features ];
+  conv_0_3_3 = { features?(conv_0_3_3_features {}) }: conv_0_3_3_ {
+    dependencies = mapFeatures features ([ custom_derive_0_1_7 ]);
+  };
+  conv_0_3_3_features = f: updateFeatures f (rec {
+    conv_0_3_3.default = (f.conv_0_3_3.default or true);
+    custom_derive_0_1_7.default = true;
+  }) [ custom_derive_0_1_7_features ];
+  core_foundation_0_2_3 = { features?(core_foundation_0_2_3_features {}) }: core_foundation_0_2_3_ {
+    dependencies = mapFeatures features ([ core_foundation_sys_0_2_3 libc_0_2_42 ]);
+  };
+  core_foundation_0_2_3_features = f: updateFeatures f (rec {
+    core_foundation_0_2_3.default = (f.core_foundation_0_2_3.default or true);
+    core_foundation_sys_0_2_3.default = true;
+    libc_0_2_42.default = true;
+  }) [ core_foundation_sys_0_2_3_features libc_0_2_42_features ];
+  core_foundation_sys_0_2_3 = { features?(core_foundation_sys_0_2_3_features {}) }: core_foundation_sys_0_2_3_ {
+    dependencies = mapFeatures features ([ libc_0_2_42 ]);
+  };
+  core_foundation_sys_0_2_3_features = f: updateFeatures f (rec {
+    core_foundation_sys_0_2_3.default = (f.core_foundation_sys_0_2_3.default or true);
+    libc_0_2_42.default = true;
+  }) [ libc_0_2_42_features ];
+  crc_1_8_1 = { features?(crc_1_8_1_features {}) }: crc_1_8_1_ {
+    buildDependencies = mapFeatures features ([ build_const_0_2_1 ]);
+    features = mkFeatures (features.crc_1_8_1 or {});
+  };
+  crc_1_8_1_features = f: updateFeatures f (rec {
+    build_const_0_2_1.default = true;
+    crc_1_8_1.default = (f.crc_1_8_1.default or true);
+    crc_1_8_1.std =
+      (f.crc_1_8_1.std or false) ||
+      (f.crc_1_8_1.default or false) ||
+      (crc_1_8_1.default or false);
+  }) [ build_const_0_2_1_features ];
+  crossbeam_0_2_12 = { features?(crossbeam_0_2_12_features {}) }: crossbeam_0_2_12_ {
+    features = mkFeatures (features.crossbeam_0_2_12 or {});
+  };
+  crossbeam_0_2_12_features = f: updateFeatures f (rec {
+    crossbeam_0_2_12.default = (f.crossbeam_0_2_12.default or true);
+  }) [];
+  crossbeam_deque_0_3_1 = { features?(crossbeam_deque_0_3_1_features {}) }: crossbeam_deque_0_3_1_ {
+    dependencies = mapFeatures features ([ crossbeam_epoch_0_4_3 crossbeam_utils_0_3_2 ]);
+  };
+  crossbeam_deque_0_3_1_features = f: updateFeatures f (rec {
+    crossbeam_deque_0_3_1.default = (f.crossbeam_deque_0_3_1.default or true);
+    crossbeam_epoch_0_4_3.default = true;
+    crossbeam_utils_0_3_2.default = true;
+  }) [ crossbeam_epoch_0_4_3_features crossbeam_utils_0_3_2_features ];
+  crossbeam_epoch_0_4_3 = { features?(crossbeam_epoch_0_4_3_features {}) }: crossbeam_epoch_0_4_3_ {
+    dependencies = mapFeatures features ([ arrayvec_0_4_7 cfg_if_0_1_4 crossbeam_utils_0_3_2 memoffset_0_2_1 scopeguard_0_3_3 ]
+      ++ (if features.crossbeam_epoch_0_4_3.lazy_static or false then [ lazy_static_1_0_2 ] else []));
+    features = mkFeatures (features.crossbeam_epoch_0_4_3 or {});
+  };
+  crossbeam_epoch_0_4_3_features = f: updateFeatures f (rec {
+    arrayvec_0_4_7.default = (f.arrayvec_0_4_7.default or false);
+    arrayvec_0_4_7.use_union =
+      (f.arrayvec_0_4_7.use_union or false) ||
+      (crossbeam_epoch_0_4_3.nightly or false) ||
+      (f.crossbeam_epoch_0_4_3.nightly or false);
+    cfg_if_0_1_4.default = true;
+    crossbeam_epoch_0_4_3.default = (f.crossbeam_epoch_0_4_3.default or true);
+    crossbeam_epoch_0_4_3.lazy_static =
+      (f.crossbeam_epoch_0_4_3.lazy_static or false) ||
+      (f.crossbeam_epoch_0_4_3.use_std or false) ||
+      (crossbeam_epoch_0_4_3.use_std or false);
+    crossbeam_epoch_0_4_3.use_std =
+      (f.crossbeam_epoch_0_4_3.use_std or false) ||
+      (f.crossbeam_epoch_0_4_3.default or false) ||
+      (crossbeam_epoch_0_4_3.default or false);
+    crossbeam_utils_0_3_2.default = (f.crossbeam_utils_0_3_2.default or false);
+    crossbeam_utils_0_3_2.use_std =
+      (f.crossbeam_utils_0_3_2.use_std or false) ||
+      (crossbeam_epoch_0_4_3.use_std or false) ||
+      (f.crossbeam_epoch_0_4_3.use_std or false);
+    lazy_static_1_0_2.default = true;
+    memoffset_0_2_1.default = true;
+    scopeguard_0_3_3.default = (f.scopeguard_0_3_3.default or false);
+  }) [ arrayvec_0_4_7_features cfg_if_0_1_4_features crossbeam_utils_0_3_2_features lazy_static_1_0_2_features memoffset_0_2_1_features scopeguard_0_3_3_features ];
+  crossbeam_utils_0_3_2 = { features?(crossbeam_utils_0_3_2_features {}) }: crossbeam_utils_0_3_2_ {
+    dependencies = mapFeatures features ([ cfg_if_0_1_4 ]);
+    features = mkFeatures (features.crossbeam_utils_0_3_2 or {});
+  };
+  crossbeam_utils_0_3_2_features = f: updateFeatures f (rec {
+    cfg_if_0_1_4.default = true;
+    crossbeam_utils_0_3_2.default = (f.crossbeam_utils_0_3_2.default or true);
+    crossbeam_utils_0_3_2.use_std =
+      (f.crossbeam_utils_0_3_2.use_std or false) ||
+      (f.crossbeam_utils_0_3_2.default or false) ||
+      (crossbeam_utils_0_3_2.default or false);
+  }) [ cfg_if_0_1_4_features ];
+  custom_derive_0_1_7 = { features?(custom_derive_0_1_7_features {}) }: custom_derive_0_1_7_ {
+    features = mkFeatures (features.custom_derive_0_1_7 or {});
+  };
+  custom_derive_0_1_7_features = f: updateFeatures f (rec {
+    custom_derive_0_1_7.default = (f.custom_derive_0_1_7.default or true);
+    custom_derive_0_1_7.std =
+      (f.custom_derive_0_1_7.std or false) ||
+      (f.custom_derive_0_1_7.default or false) ||
+      (custom_derive_0_1_7.default or false);
+  }) [];
+  derive_error_0_0_3 = { features?(derive_error_0_0_3_features {}) }: derive_error_0_0_3_ {
+    dependencies = mapFeatures features ([ case_0_1_0 quote_0_3_15 syn_0_11_11 ]);
+  };
+  derive_error_0_0_3_features = f: updateFeatures f (rec {
+    case_0_1_0.default = true;
+    derive_error_0_0_3.default = (f.derive_error_0_0_3.default or true);
+    quote_0_3_15.default = true;
+    syn_0_11_11.default = true;
+  }) [ case_0_1_0_features quote_0_3_15_features syn_0_11_11_features ];
+  dtoa_0_4_3 = { features?(dtoa_0_4_3_features {}) }: dtoa_0_4_3_ {};
+  dtoa_0_4_3_features = f: updateFeatures f (rec {
+    dtoa_0_4_3.default = (f.dtoa_0_4_3.default or true);
+  }) [];
+  either_1_5_0 = { features?(either_1_5_0_features {}) }: either_1_5_0_ {
+    dependencies = mapFeatures features ([]);
+    features = mkFeatures (features.either_1_5_0 or {});
+  };
+  either_1_5_0_features = f: updateFeatures f (rec {
+    either_1_5_0.default = (f.either_1_5_0.default or true);
+    either_1_5_0.use_std =
+      (f.either_1_5_0.use_std or false) ||
+      (f.either_1_5_0.default or false) ||
+      (either_1_5_0.default or false);
+  }) [];
+  encoding_rs_0_7_2 = { features?(encoding_rs_0_7_2_features {}) }: encoding_rs_0_7_2_ {
+    dependencies = mapFeatures features ([ cfg_if_0_1_4 ]);
+    features = mkFeatures (features.encoding_rs_0_7_2 or {});
+  };
+  encoding_rs_0_7_2_features = f: updateFeatures f (rec {
+    cfg_if_0_1_4.default = true;
+    encoding_rs_0_7_2.default = (f.encoding_rs_0_7_2.default or true);
+    encoding_rs_0_7_2.simd =
+      (f.encoding_rs_0_7_2.simd or false) ||
+      (f.encoding_rs_0_7_2.simd-accel or false) ||
+      (encoding_rs_0_7_2.simd-accel or false);
+  }) [ cfg_if_0_1_4_features ];
+  exitcode_1_1_2 = { features?(exitcode_1_1_2_features {}) }: exitcode_1_1_2_ {};
+  exitcode_1_1_2_features = f: updateFeatures f (rec {
+    exitcode_1_1_2.default = (f.exitcode_1_1_2.default or true);
+  }) [];
+  filetime_0_2_1 = { features?(filetime_0_2_1_features {}) }: filetime_0_2_1_ {
+    dependencies = mapFeatures features ([ cfg_if_0_1_4 ])
+      ++ (if kernel == "redox" then mapFeatures features ([ redox_syscall_0_1_40 ]) else [])
+      ++ (if (kernel == "linux" || kernel == "darwin") then mapFeatures features ([ libc_0_2_42 ]) else []);
+  };
+  filetime_0_2_1_features = f: updateFeatures f (rec {
+    cfg_if_0_1_4.default = true;
+    filetime_0_2_1.default = (f.filetime_0_2_1.default or true);
+    libc_0_2_42.default = true;
+    redox_syscall_0_1_40.default = true;
+  }) [ cfg_if_0_1_4_features redox_syscall_0_1_40_features libc_0_2_42_features ];
+  flate2_0_2_20 = { features?(flate2_0_2_20_features {}) }: flate2_0_2_20_ {
+    dependencies = mapFeatures features ([ libc_0_2_42 ]
+      ++ (if features.flate2_0_2_20.miniz-sys or false then [ miniz_sys_0_1_10 ] else []));
+    features = mkFeatures (features.flate2_0_2_20 or {});
+  };
+  flate2_0_2_20_features = f: updateFeatures f (rec {
+    flate2_0_2_20.default = (f.flate2_0_2_20.default or true);
+    flate2_0_2_20.futures =
+      (f.flate2_0_2_20.futures or false) ||
+      (f.flate2_0_2_20.tokio or false) ||
+      (flate2_0_2_20.tokio or false);
+    flate2_0_2_20.libz-sys =
+      (f.flate2_0_2_20.libz-sys or false) ||
+      (f.flate2_0_2_20.zlib or false) ||
+      (flate2_0_2_20.zlib or false);
+    flate2_0_2_20.miniz-sys =
+      (f.flate2_0_2_20.miniz-sys or false) ||
+      (f.flate2_0_2_20.default or false) ||
+      (flate2_0_2_20.default or false);
+    flate2_0_2_20.tokio-io =
+      (f.flate2_0_2_20.tokio-io or false) ||
+      (f.flate2_0_2_20.tokio or false) ||
+      (flate2_0_2_20.tokio or false);
+    libc_0_2_42.default = true;
+    miniz_sys_0_1_10.default = true;
+  }) [ libc_0_2_42_features miniz_sys_0_1_10_features ];
+  foreign_types_0_3_2 = { features?(foreign_types_0_3_2_features {}) }: foreign_types_0_3_2_ {
+    dependencies = mapFeatures features ([ foreign_types_shared_0_1_1 ]);
+  };
+  foreign_types_0_3_2_features = f: updateFeatures f (rec {
+    foreign_types_0_3_2.default = (f.foreign_types_0_3_2.default or true);
+    foreign_types_shared_0_1_1.default = true;
+  }) [ foreign_types_shared_0_1_1_features ];
+  foreign_types_shared_0_1_1 = { features?(foreign_types_shared_0_1_1_features {}) }: foreign_types_shared_0_1_1_ {};
+  foreign_types_shared_0_1_1_features = f: updateFeatures f (rec {
+    foreign_types_shared_0_1_1.default = (f.foreign_types_shared_0_1_1.default or true);
+  }) [];
+  fuchsia_zircon_0_3_3 = { features?(fuchsia_zircon_0_3_3_features {}) }: fuchsia_zircon_0_3_3_ {
+    dependencies = mapFeatures features ([ bitflags_1_0_3 fuchsia_zircon_sys_0_3_3 ]);
+  };
+  fuchsia_zircon_0_3_3_features = f: updateFeatures f (rec {
+    bitflags_1_0_3.default = true;
+    fuchsia_zircon_0_3_3.default = (f.fuchsia_zircon_0_3_3.default or true);
+    fuchsia_zircon_sys_0_3_3.default = true;
+  }) [ bitflags_1_0_3_features fuchsia_zircon_sys_0_3_3_features ];
+  fuchsia_zircon_sys_0_3_3 = { features?(fuchsia_zircon_sys_0_3_3_features {}) }: fuchsia_zircon_sys_0_3_3_ {};
+  fuchsia_zircon_sys_0_3_3_features = f: updateFeatures f (rec {
+    fuchsia_zircon_sys_0_3_3.default = (f.fuchsia_zircon_sys_0_3_3.default or true);
+  }) [];
+  futures_0_1_23 = { features?(futures_0_1_23_features {}) }: futures_0_1_23_ {
+    features = mkFeatures (features.futures_0_1_23 or {});
+  };
+  futures_0_1_23_features = f: updateFeatures f (rec {
+    futures_0_1_23.default = (f.futures_0_1_23.default or true);
+    futures_0_1_23.use_std =
+      (f.futures_0_1_23.use_std or false) ||
+      (f.futures_0_1_23.default or false) ||
+      (futures_0_1_23.default or false);
+    futures_0_1_23.with-deprecated =
+      (f.futures_0_1_23.with-deprecated or false) ||
+      (f.futures_0_1_23.default or false) ||
+      (futures_0_1_23.default or false);
+  }) [];
+  futures_cpupool_0_1_8 = { features?(futures_cpupool_0_1_8_features {}) }: futures_cpupool_0_1_8_ {
+    dependencies = mapFeatures features ([ futures_0_1_23 num_cpus_1_8_0 ]);
+    features = mkFeatures (features.futures_cpupool_0_1_8 or {});
+  };
+  futures_cpupool_0_1_8_features = f: updateFeatures f (rec {
+    futures_0_1_23.default = (f.futures_0_1_23.default or false);
+    futures_0_1_23.use_std = true;
+    futures_0_1_23.with-deprecated =
+      (f.futures_0_1_23.with-deprecated or false) ||
+      (futures_cpupool_0_1_8.with-deprecated or false) ||
+      (f.futures_cpupool_0_1_8.with-deprecated or false);
+    futures_cpupool_0_1_8.default = (f.futures_cpupool_0_1_8.default or true);
+    futures_cpupool_0_1_8.with-deprecated =
+      (f.futures_cpupool_0_1_8.with-deprecated or false) ||
+      (f.futures_cpupool_0_1_8.default or false) ||
+      (futures_cpupool_0_1_8.default or false);
+    num_cpus_1_8_0.default = true;
+  }) [ futures_0_1_23_features num_cpus_1_8_0_features ];
+  httparse_1_3_2 = { features?(httparse_1_3_2_features {}) }: httparse_1_3_2_ {
+    features = mkFeatures (features.httparse_1_3_2 or {});
+  };
+  httparse_1_3_2_features = f: updateFeatures f (rec {
+    httparse_1_3_2.default = (f.httparse_1_3_2.default or true);
+    httparse_1_3_2.std =
+      (f.httparse_1_3_2.std or false) ||
+      (f.httparse_1_3_2.default or false) ||
+      (httparse_1_3_2.default or false);
+  }) [];
+  hyper_0_11_27 = { features?(hyper_0_11_27_features {}) }: hyper_0_11_27_ {
+    dependencies = mapFeatures features ([ base64_0_9_2 bytes_0_4_9 futures_0_1_23 futures_cpupool_0_1_8 httparse_1_3_2 iovec_0_1_2 language_tags_0_2_2 log_0_4_3 mime_0_3_8 net2_0_2_33 percent_encoding_1_0_1 relay_0_1_1 time_0_1_40 tokio_core_0_1_17 tokio_io_0_1_7 tokio_service_0_1_0 unicase_2_1_0 want_0_0_4 ]
+      ++ (if features.hyper_0_11_27.tokio-proto or false then [ tokio_proto_0_1_1 ] else []));
+    features = mkFeatures (features.hyper_0_11_27 or {});
+  };
+  hyper_0_11_27_features = f: updateFeatures f (rec {
+    base64_0_9_2.default = true;
+    bytes_0_4_9.default = true;
+    futures_0_1_23.default = true;
+    futures_cpupool_0_1_8.default = true;
+    httparse_1_3_2.default = true;
+    hyper_0_11_27.default = (f.hyper_0_11_27.default or true);
+    hyper_0_11_27.http =
+      (f.hyper_0_11_27.http or false) ||
+      (f.hyper_0_11_27.compat or false) ||
+      (hyper_0_11_27.compat or false);
+    hyper_0_11_27.server-proto =
+      (f.hyper_0_11_27.server-proto or false) ||
+      (f.hyper_0_11_27.default or false) ||
+      (hyper_0_11_27.default or false);
+    hyper_0_11_27.tokio-proto =
+      (f.hyper_0_11_27.tokio-proto or false) ||
+      (f.hyper_0_11_27.server-proto or false) ||
+      (hyper_0_11_27.server-proto or false);
+    iovec_0_1_2.default = true;
+    language_tags_0_2_2.default = true;
+    log_0_4_3.default = true;
+    mime_0_3_8.default = true;
+    net2_0_2_33.default = true;
+    percent_encoding_1_0_1.default = true;
+    relay_0_1_1.default = true;
+    time_0_1_40.default = true;
+    tokio_core_0_1_17.default = true;
+    tokio_io_0_1_7.default = true;
+    tokio_proto_0_1_1.default = true;
+    tokio_service_0_1_0.default = true;
+    unicase_2_1_0.default = true;
+    want_0_0_4.default = true;
+  }) [ base64_0_9_2_features bytes_0_4_9_features futures_0_1_23_features futures_cpupool_0_1_8_features httparse_1_3_2_features iovec_0_1_2_features language_tags_0_2_2_features log_0_4_3_features mime_0_3_8_features net2_0_2_33_features percent_encoding_1_0_1_features relay_0_1_1_features time_0_1_40_features tokio_core_0_1_17_features tokio_io_0_1_7_features tokio_proto_0_1_1_features tokio_service_0_1_0_features unicase_2_1_0_features want_0_0_4_features ];
+  hyper_tls_0_1_3 = { features?(hyper_tls_0_1_3_features {}) }: hyper_tls_0_1_3_ {
+    dependencies = mapFeatures features ([ futures_0_1_23 hyper_0_11_27 native_tls_0_1_5 tokio_core_0_1_17 tokio_io_0_1_7 tokio_service_0_1_0 tokio_tls_0_1_4 ]);
+  };
+  hyper_tls_0_1_3_features = f: updateFeatures f (rec {
+    futures_0_1_23.default = true;
+    hyper_0_11_27.default = true;
+    hyper_tls_0_1_3.default = (f.hyper_tls_0_1_3.default or true);
+    native_tls_0_1_5.default = true;
+    tokio_core_0_1_17.default = true;
+    tokio_io_0_1_7.default = true;
+    tokio_service_0_1_0.default = true;
+    tokio_tls_0_1_4.default = true;
+  }) [ futures_0_1_23_features hyper_0_11_27_features native_tls_0_1_5_features tokio_core_0_1_17_features tokio_io_0_1_7_features tokio_service_0_1_0_features tokio_tls_0_1_4_features ];
+  idna_0_1_5 = { features?(idna_0_1_5_features {}) }: idna_0_1_5_ {
+    dependencies = mapFeatures features ([ matches_0_1_7 unicode_bidi_0_3_4 unicode_normalization_0_1_7 ]);
+  };
+  idna_0_1_5_features = f: updateFeatures f (rec {
+    idna_0_1_5.default = (f.idna_0_1_5.default or true);
+    matches_0_1_7.default = true;
+    unicode_bidi_0_3_4.default = true;
+    unicode_normalization_0_1_7.default = true;
+  }) [ matches_0_1_7_features unicode_bidi_0_3_4_features unicode_normalization_0_1_7_features ];
+  iovec_0_1_2 = { features?(iovec_0_1_2_features {}) }: iovec_0_1_2_ {
+    dependencies = (if (kernel == "linux" || kernel == "darwin") then mapFeatures features ([ libc_0_2_42 ]) else [])
+      ++ (if kernel == "windows" then mapFeatures features ([ winapi_0_2_8 ]) else []);
+  };
+  iovec_0_1_2_features = f: updateFeatures f (rec {
+    iovec_0_1_2.default = (f.iovec_0_1_2.default or true);
+    libc_0_2_42.default = true;
+    winapi_0_2_8.default = true;
+  }) [ libc_0_2_42_features winapi_0_2_8_features ];
+  isatty_0_1_8 = { features?(isatty_0_1_8_features {}) }: isatty_0_1_8_ {
+    dependencies = (if kernel == "redox" then mapFeatures features ([ redox_syscall_0_1_40 ]) else [])
+      ++ (if (kernel == "linux" || kernel == "darwin") then mapFeatures features ([ libc_0_2_42 ]) else [])
+      ++ (if kernel == "windows" then mapFeatures features ([ winapi_0_3_5 ]) else []);
+  };
+  isatty_0_1_8_features = f: updateFeatures f (rec {
+    isatty_0_1_8.default = (f.isatty_0_1_8.default or true);
+    libc_0_2_42.default = true;
+    redox_syscall_0_1_40.default = true;
+    winapi_0_3_5.consoleapi = true;
+    winapi_0_3_5.default = true;
+    winapi_0_3_5.fileapi = true;
+    winapi_0_3_5.minwinbase = true;
+    winapi_0_3_5.minwindef = true;
+    winapi_0_3_5.processenv = true;
+    winapi_0_3_5.winbase = true;
+    winapi_0_3_5.winnt = true;
+  }) [ redox_syscall_0_1_40_features libc_0_2_42_features winapi_0_3_5_features ];
+  itertools_0_6_5 = { features?(itertools_0_6_5_features {}) }: itertools_0_6_5_ {
+    dependencies = mapFeatures features ([ either_1_5_0 ]);
+  };
+  itertools_0_6_5_features = f: updateFeatures f (rec {
+    either_1_5_0.default = (f.either_1_5_0.default or false);
+    itertools_0_6_5.default = (f.itertools_0_6_5.default or true);
+  }) [ either_1_5_0_features ];
+  itoa_0_4_2 = { features?(itoa_0_4_2_features {}) }: itoa_0_4_2_ {
+    features = mkFeatures (features.itoa_0_4_2 or {});
+  };
+  itoa_0_4_2_features = f: updateFeatures f (rec {
+    itoa_0_4_2.default = (f.itoa_0_4_2.default or true);
+    itoa_0_4_2.std =
+      (f.itoa_0_4_2.std or false) ||
+      (f.itoa_0_4_2.default or false) ||
+      (itoa_0_4_2.default or false);
+  }) [];
+  kernel32_sys_0_2_2 = { features?(kernel32_sys_0_2_2_features {}) }: kernel32_sys_0_2_2_ {
+    dependencies = mapFeatures features ([ winapi_0_2_8 ]);
+    buildDependencies = mapFeatures features ([ winapi_build_0_1_1 ]);
+  };
+  kernel32_sys_0_2_2_features = f: updateFeatures f (rec {
+    kernel32_sys_0_2_2.default = (f.kernel32_sys_0_2_2.default or true);
+    winapi_0_2_8.default = true;
+    winapi_build_0_1_1.default = true;
+  }) [ winapi_0_2_8_features winapi_build_0_1_1_features ];
+  language_tags_0_2_2 = { features?(language_tags_0_2_2_features {}) }: language_tags_0_2_2_ {
+    dependencies = mapFeatures features ([]);
+    features = mkFeatures (features.language_tags_0_2_2 or {});
+  };
+  language_tags_0_2_2_features = f: updateFeatures f (rec {
+    language_tags_0_2_2.default = (f.language_tags_0_2_2.default or true);
+    language_tags_0_2_2.heapsize =
+      (f.language_tags_0_2_2.heapsize or false) ||
+      (f.language_tags_0_2_2.heap_size or false) ||
+      (language_tags_0_2_2.heap_size or false);
+    language_tags_0_2_2.heapsize_plugin =
+      (f.language_tags_0_2_2.heapsize_plugin or false) ||
+      (f.language_tags_0_2_2.heap_size or false) ||
+      (language_tags_0_2_2.heap_size or false);
+  }) [];
+  lazy_static_0_2_11 = { features?(lazy_static_0_2_11_features {}) }: lazy_static_0_2_11_ {
+    dependencies = mapFeatures features ([]);
+    features = mkFeatures (features.lazy_static_0_2_11 or {});
+  };
+  lazy_static_0_2_11_features = f: updateFeatures f (rec {
+    lazy_static_0_2_11.compiletest_rs =
+      (f.lazy_static_0_2_11.compiletest_rs or false) ||
+      (f.lazy_static_0_2_11.compiletest or false) ||
+      (lazy_static_0_2_11.compiletest or false);
+    lazy_static_0_2_11.default = (f.lazy_static_0_2_11.default or true);
+    lazy_static_0_2_11.nightly =
+      (f.lazy_static_0_2_11.nightly or false) ||
+      (f.lazy_static_0_2_11.spin_no_std or false) ||
+      (lazy_static_0_2_11.spin_no_std or false);
+    lazy_static_0_2_11.spin =
+      (f.lazy_static_0_2_11.spin or false) ||
+      (f.lazy_static_0_2_11.spin_no_std or false) ||
+      (lazy_static_0_2_11.spin_no_std or false);
+  }) [];
+  lazy_static_1_0_2 = { features?(lazy_static_1_0_2_features {}) }: lazy_static_1_0_2_ {
+    dependencies = mapFeatures features ([]);
+    features = mkFeatures (features.lazy_static_1_0_2 or {});
+  };
+  lazy_static_1_0_2_features = f: updateFeatures f (rec {
+    lazy_static_1_0_2.default = (f.lazy_static_1_0_2.default or true);
+    lazy_static_1_0_2.nightly =
+      (f.lazy_static_1_0_2.nightly or false) ||
+      (f.lazy_static_1_0_2.spin_no_std or false) ||
+      (lazy_static_1_0_2.spin_no_std or false);
+    lazy_static_1_0_2.spin =
+      (f.lazy_static_1_0_2.spin or false) ||
+      (f.lazy_static_1_0_2.spin_no_std or false) ||
+      (lazy_static_1_0_2.spin_no_std or false);
+  }) [];
+  lazycell_0_6_0 = { features?(lazycell_0_6_0_features {}) }: lazycell_0_6_0_ {
+    dependencies = mapFeatures features ([]);
+    features = mkFeatures (features.lazycell_0_6_0 or {});
+  };
+  lazycell_0_6_0_features = f: updateFeatures f (rec {
+    lazycell_0_6_0.clippy =
+      (f.lazycell_0_6_0.clippy or false) ||
+      (f.lazycell_0_6_0.nightly-testing or false) ||
+      (lazycell_0_6_0.nightly-testing or false);
+    lazycell_0_6_0.default = (f.lazycell_0_6_0.default or true);
+    lazycell_0_6_0.nightly =
+      (f.lazycell_0_6_0.nightly or false) ||
+      (f.lazycell_0_6_0.nightly-testing or false) ||
+      (lazycell_0_6_0.nightly-testing or false);
+  }) [];
+  libc_0_2_42 = { features?(libc_0_2_42_features {}) }: libc_0_2_42_ {
+    features = mkFeatures (features.libc_0_2_42 or {});
+  };
+  libc_0_2_42_features = f: updateFeatures f (rec {
+    libc_0_2_42.default = (f.libc_0_2_42.default or true);
+    libc_0_2_42.use_std =
+      (f.libc_0_2_42.use_std or false) ||
+      (f.libc_0_2_42.default or false) ||
+      (libc_0_2_42.default or false);
+  }) [];
+  libflate_0_1_16 = { features?(libflate_0_1_16_features {}) }: libflate_0_1_16_ {
+    dependencies = mapFeatures features ([ adler32_1_0_3 byteorder_1_2_3 crc_1_8_1 ]);
+  };
+  libflate_0_1_16_features = f: updateFeatures f (rec {
+    adler32_1_0_3.default = true;
+    byteorder_1_2_3.default = true;
+    crc_1_8_1.default = true;
+    libflate_0_1_16.default = (f.libflate_0_1_16.default or true);
+  }) [ adler32_1_0_3_features byteorder_1_2_3_features crc_1_8_1_features ];
+  log_0_3_9 = { features?(log_0_3_9_features {}) }: log_0_3_9_ {
+    dependencies = mapFeatures features ([ log_0_4_3 ]);
+    features = mkFeatures (features.log_0_3_9 or {});
+  };
+  log_0_3_9_features = f: updateFeatures f (rec {
+    log_0_3_9.default = (f.log_0_3_9.default or true);
+    log_0_3_9.use_std =
+      (f.log_0_3_9.use_std or false) ||
+      (f.log_0_3_9.default or false) ||
+      (log_0_3_9.default or false);
+    log_0_4_3.default = true;
+    log_0_4_3.max_level_debug =
+      (f.log_0_4_3.max_level_debug or false) ||
+      (log_0_3_9.max_level_debug or false) ||
+      (f.log_0_3_9.max_level_debug or false);
+    log_0_4_3.max_level_error =
+      (f.log_0_4_3.max_level_error or false) ||
+      (log_0_3_9.max_level_error or false) ||
+      (f.log_0_3_9.max_level_error or false);
+    log_0_4_3.max_level_info =
+      (f.log_0_4_3.max_level_info or false) ||
+      (log_0_3_9.max_level_info or false) ||
+      (f.log_0_3_9.max_level_info or false);
+    log_0_4_3.max_level_off =
+      (f.log_0_4_3.max_level_off or false) ||
+      (log_0_3_9.max_level_off or false) ||
+      (f.log_0_3_9.max_level_off or false);
+    log_0_4_3.max_level_trace =
+      (f.log_0_4_3.max_level_trace or false) ||
+      (log_0_3_9.max_level_trace or false) ||
+      (f.log_0_3_9.max_level_trace or false);
+    log_0_4_3.max_level_warn =
+      (f.log_0_4_3.max_level_warn or false) ||
+      (log_0_3_9.max_level_warn or false) ||
+      (f.log_0_3_9.max_level_warn or false);
+    log_0_4_3.release_max_level_debug =
+      (f.log_0_4_3.release_max_level_debug or false) ||
+      (log_0_3_9.release_max_level_debug or false) ||
+      (f.log_0_3_9.release_max_level_debug or false);
+    log_0_4_3.release_max_level_error =
+      (f.log_0_4_3.release_max_level_error or false) ||
+      (log_0_3_9.release_max_level_error or false) ||
+      (f.log_0_3_9.release_max_level_error or false);
+    log_0_4_3.release_max_level_info =
+      (f.log_0_4_3.release_max_level_info or false) ||
+      (log_0_3_9.release_max_level_info or false) ||
+      (f.log_0_3_9.release_max_level_info or false);
+    log_0_4_3.release_max_level_off =
+      (f.log_0_4_3.release_max_level_off or false) ||
+      (log_0_3_9.release_max_level_off or false) ||
+      (f.log_0_3_9.release_max_level_off or false);
+    log_0_4_3.release_max_level_trace =
+      (f.log_0_4_3.release_max_level_trace or false) ||
+      (log_0_3_9.release_max_level_trace or false) ||
+      (f.log_0_3_9.release_max_level_trace or false);
+    log_0_4_3.release_max_level_warn =
+      (f.log_0_4_3.release_max_level_warn or false) ||
+      (log_0_3_9.release_max_level_warn or false) ||
+      (f.log_0_3_9.release_max_level_warn or false);
+    log_0_4_3.std =
+      (f.log_0_4_3.std or false) ||
+      (log_0_3_9.use_std or false) ||
+      (f.log_0_3_9.use_std or false);
+  }) [ log_0_4_3_features ];
+  log_0_4_3 = { features?(log_0_4_3_features {}) }: log_0_4_3_ {
+    dependencies = mapFeatures features ([ cfg_if_0_1_4 ]);
+    features = mkFeatures (features.log_0_4_3 or {});
+  };
+  log_0_4_3_features = f: updateFeatures f (rec {
+    cfg_if_0_1_4.default = true;
+    log_0_4_3.default = (f.log_0_4_3.default or true);
+  }) [ cfg_if_0_1_4_features ];
+  maplit_0_1_6 = { features?(maplit_0_1_6_features {}) }: maplit_0_1_6_ {};
+  maplit_0_1_6_features = f: updateFeatures f (rec {
+    maplit_0_1_6.default = (f.maplit_0_1_6.default or true);
+  }) [];
+  matches_0_1_7 = { features?(matches_0_1_7_features {}) }: matches_0_1_7_ {};
+  matches_0_1_7_features = f: updateFeatures f (rec {
+    matches_0_1_7.default = (f.matches_0_1_7.default or true);
+  }) [];
+  memchr_0_1_11 = { features?(memchr_0_1_11_features {}) }: memchr_0_1_11_ {
+    dependencies = mapFeatures features ([ libc_0_2_42 ]);
+  };
+  memchr_0_1_11_features = f: updateFeatures f (rec {
+    libc_0_2_42.default = true;
+    memchr_0_1_11.default = (f.memchr_0_1_11.default or true);
+  }) [ libc_0_2_42_features ];
+  memoffset_0_2_1 = { features?(memoffset_0_2_1_features {}) }: memoffset_0_2_1_ {};
+  memoffset_0_2_1_features = f: updateFeatures f (rec {
+    memoffset_0_2_1.default = (f.memoffset_0_2_1.default or true);
+  }) [];
+  mime_0_3_8 = { features?(mime_0_3_8_features {}) }: mime_0_3_8_ {
+    dependencies = mapFeatures features ([ unicase_2_1_0 ]);
+  };
+  mime_0_3_8_features = f: updateFeatures f (rec {
+    mime_0_3_8.default = (f.mime_0_3_8.default or true);
+    unicase_2_1_0.default = true;
+  }) [ unicase_2_1_0_features ];
+  mime_guess_2_0_0_alpha_6 = { features?(mime_guess_2_0_0_alpha_6_features {}) }: mime_guess_2_0_0_alpha_6_ {
+    dependencies = mapFeatures features ([ mime_0_3_8 phf_0_7_22 unicase_1_4_2 ]);
+    buildDependencies = mapFeatures features ([ phf_codegen_0_7_22 unicase_1_4_2 ]);
+    features = mkFeatures (features.mime_guess_2_0_0_alpha_6 or {});
+  };
+  mime_guess_2_0_0_alpha_6_features = f: updateFeatures f (rec {
+    mime_0_3_8.default = true;
+    mime_guess_2_0_0_alpha_6.default = (f.mime_guess_2_0_0_alpha_6.default or true);
+    phf_0_7_22.default = true;
+    phf_0_7_22.unicase = true;
+    phf_codegen_0_7_22.default = true;
+    unicase_1_4_2.default = true;
+  }) [ mime_0_3_8_features phf_0_7_22_features unicase_1_4_2_features phf_codegen_0_7_22_features unicase_1_4_2_features ];
+  miniz_sys_0_1_10 = { features?(miniz_sys_0_1_10_features {}) }: miniz_sys_0_1_10_ {
+    dependencies = mapFeatures features ([ libc_0_2_42 ]);
+    buildDependencies = mapFeatures features ([ cc_1_0_18 ]);
+  };
+  miniz_sys_0_1_10_features = f: updateFeatures f (rec {
+    cc_1_0_18.default = true;
+    libc_0_2_42.default = true;
+    miniz_sys_0_1_10.default = (f.miniz_sys_0_1_10.default or true);
+  }) [ libc_0_2_42_features cc_1_0_18_features ];
+  mio_0_6_15 = { features?(mio_0_6_15_features {}) }: mio_0_6_15_ {
+    dependencies = mapFeatures features ([ iovec_0_1_2 lazycell_0_6_0 log_0_4_3 net2_0_2_33 slab_0_4_0 ])
+      ++ (if kernel == "fuchsia" then mapFeatures features ([ fuchsia_zircon_0_3_3 fuchsia_zircon_sys_0_3_3 ]) else [])
+      ++ (if (kernel == "linux" || kernel == "darwin") then mapFeatures features ([ libc_0_2_42 ]) else [])
+      ++ (if kernel == "windows" then mapFeatures features ([ kernel32_sys_0_2_2 miow_0_2_1 winapi_0_2_8 ]) else []);
+    features = mkFeatures (features.mio_0_6_15 or {});
+  };
+  mio_0_6_15_features = f: updateFeatures f (rec {
+    fuchsia_zircon_0_3_3.default = true;
+    fuchsia_zircon_sys_0_3_3.default = true;
+    iovec_0_1_2.default = true;
+    kernel32_sys_0_2_2.default = true;
+    lazycell_0_6_0.default = true;
+    libc_0_2_42.default = true;
+    log_0_4_3.default = true;
+    mio_0_6_15.default = (f.mio_0_6_15.default or true);
+    mio_0_6_15.with-deprecated =
+      (f.mio_0_6_15.with-deprecated or false) ||
+      (f.mio_0_6_15.default or false) ||
+      (mio_0_6_15.default or false);
+    miow_0_2_1.default = true;
+    net2_0_2_33.default = true;
+    slab_0_4_0.default = true;
+    winapi_0_2_8.default = true;
+  }) [ iovec_0_1_2_features lazycell_0_6_0_features log_0_4_3_features net2_0_2_33_features slab_0_4_0_features fuchsia_zircon_0_3_3_features fuchsia_zircon_sys_0_3_3_features libc_0_2_42_features kernel32_sys_0_2_2_features miow_0_2_1_features winapi_0_2_8_features ];
+  miow_0_2_1 = { features?(miow_0_2_1_features {}) }: miow_0_2_1_ {
+    dependencies = mapFeatures features ([ kernel32_sys_0_2_2 net2_0_2_33 winapi_0_2_8 ws2_32_sys_0_2_1 ]);
+  };
+  miow_0_2_1_features = f: updateFeatures f (rec {
+    kernel32_sys_0_2_2.default = true;
+    miow_0_2_1.default = (f.miow_0_2_1.default or true);
+    net2_0_2_33.default = (f.net2_0_2_33.default or false);
+    winapi_0_2_8.default = true;
+    ws2_32_sys_0_2_1.default = true;
+  }) [ kernel32_sys_0_2_2_features net2_0_2_33_features winapi_0_2_8_features ws2_32_sys_0_2_1_features ];
+  native_tls_0_1_5 = { features?(native_tls_0_1_5_features {}) }: native_tls_0_1_5_ {
+    dependencies = mapFeatures features ([ lazy_static_0_2_11 ])
+      ++ (if kernel == "darwin" || kernel == "ios" then mapFeatures features ([ libc_0_2_42 security_framework_0_1_16 security_framework_sys_0_1_16 tempdir_0_3_7 ]) else [])
+      ++ (if !(kernel == "windows" || kernel == "darwin" || kernel == "ios") then mapFeatures features ([ openssl_0_9_24 ]) else [])
+      ++ (if kernel == "windows" then mapFeatures features ([ schannel_0_1_13 ]) else []);
+  };
+  native_tls_0_1_5_features = f: updateFeatures f (rec {
+    lazy_static_0_2_11.default = true;
+    libc_0_2_42.default = true;
+    native_tls_0_1_5.default = (f.native_tls_0_1_5.default or true);
+    openssl_0_9_24.default = true;
+    schannel_0_1_13.default = true;
+    security_framework_0_1_16.OSX_10_8 = true;
+    security_framework_0_1_16.default = true;
+    security_framework_sys_0_1_16.default = true;
+    tempdir_0_3_7.default = true;
+  }) [ lazy_static_0_2_11_features libc_0_2_42_features security_framework_0_1_16_features security_framework_sys_0_1_16_features tempdir_0_3_7_features openssl_0_9_24_features schannel_0_1_13_features ];
+  net2_0_2_33 = { features?(net2_0_2_33_features {}) }: net2_0_2_33_ {
+    dependencies = mapFeatures features ([ cfg_if_0_1_4 ])
+      ++ (if kernel == "redox" || (kernel == "linux" || kernel == "darwin") then mapFeatures features ([ libc_0_2_42 ]) else [])
+      ++ (if kernel == "windows" then mapFeatures features ([ winapi_0_3_5 ]) else []);
+    features = mkFeatures (features.net2_0_2_33 or {});
+  };
+  net2_0_2_33_features = f: updateFeatures f (rec {
+    cfg_if_0_1_4.default = true;
+    libc_0_2_42.default = true;
+    net2_0_2_33.default = (f.net2_0_2_33.default or true);
+    net2_0_2_33.duration =
+      (f.net2_0_2_33.duration or false) ||
+      (f.net2_0_2_33.default or false) ||
+      (net2_0_2_33.default or false);
+    winapi_0_3_5.default = true;
+    winapi_0_3_5.handleapi = true;
+    winapi_0_3_5.winsock2 = true;
+    winapi_0_3_5.ws2def = true;
+    winapi_0_3_5.ws2ipdef = true;
+    winapi_0_3_5.ws2tcpip = true;
+  }) [ cfg_if_0_1_4_features libc_0_2_42_features winapi_0_3_5_features ];
+  nodrop_0_1_12 = { features?(nodrop_0_1_12_features {}) }: nodrop_0_1_12_ {
+    dependencies = mapFeatures features ([]);
+    features = mkFeatures (features.nodrop_0_1_12 or {});
+  };
+  nodrop_0_1_12_features = f: updateFeatures f (rec {
+    nodrop_0_1_12.default = (f.nodrop_0_1_12.default or true);
+    nodrop_0_1_12.nodrop-union =
+      (f.nodrop_0_1_12.nodrop-union or false) ||
+      (f.nodrop_0_1_12.use_union or false) ||
+      (nodrop_0_1_12.use_union or false);
+    nodrop_0_1_12.std =
+      (f.nodrop_0_1_12.std or false) ||
+      (f.nodrop_0_1_12.default or false) ||
+      (nodrop_0_1_12.default or false);
+  }) [];
+  num_0_1_42 = { features?(num_0_1_42_features {}) }: num_0_1_42_ {
+    dependencies = mapFeatures features ([ num_integer_0_1_39 num_iter_0_1_37 num_traits_0_2_5 ]);
+    features = mkFeatures (features.num_0_1_42 or {});
+  };
+  num_0_1_42_features = f: updateFeatures f (rec {
+    num_0_1_42.bigint =
+      (f.num_0_1_42.bigint or false) ||
+      (f.num_0_1_42.default or false) ||
+      (num_0_1_42.default or false);
+    num_0_1_42.complex =
+      (f.num_0_1_42.complex or false) ||
+      (f.num_0_1_42.default or false) ||
+      (num_0_1_42.default or false);
+    num_0_1_42.default = (f.num_0_1_42.default or true);
+    num_0_1_42.num-bigint =
+      (f.num_0_1_42.num-bigint or false) ||
+      (f.num_0_1_42.bigint or false) ||
+      (num_0_1_42.bigint or false);
+    num_0_1_42.num-complex =
+      (f.num_0_1_42.num-complex or false) ||
+      (f.num_0_1_42.complex or false) ||
+      (num_0_1_42.complex or false);
+    num_0_1_42.num-rational =
+      (f.num_0_1_42.num-rational or false) ||
+      (f.num_0_1_42.rational or false) ||
+      (num_0_1_42.rational or false);
+    num_0_1_42.rational =
+      (f.num_0_1_42.rational or false) ||
+      (f.num_0_1_42.default or false) ||
+      (num_0_1_42.default or false);
+    num_0_1_42.rustc-serialize =
+      (f.num_0_1_42.rustc-serialize or false) ||
+      (f.num_0_1_42.default or false) ||
+      (num_0_1_42.default or false);
+    num_integer_0_1_39.default = true;
+    num_iter_0_1_37.default = true;
+    num_traits_0_2_5.default = true;
+  }) [ num_integer_0_1_39_features num_iter_0_1_37_features num_traits_0_2_5_features ];
+  num_integer_0_1_39 = { features?(num_integer_0_1_39_features {}) }: num_integer_0_1_39_ {
+    dependencies = mapFeatures features ([ num_traits_0_2_5 ]);
+    features = mkFeatures (features.num_integer_0_1_39 or {});
+  };
+  num_integer_0_1_39_features = f: updateFeatures f (rec {
+    num_integer_0_1_39.default = (f.num_integer_0_1_39.default or true);
+    num_integer_0_1_39.std =
+      (f.num_integer_0_1_39.std or false) ||
+      (f.num_integer_0_1_39.default or false) ||
+      (num_integer_0_1_39.default or false);
+    num_traits_0_2_5.default = (f.num_traits_0_2_5.default or false);
+    num_traits_0_2_5.i128 =
+      (f.num_traits_0_2_5.i128 or false) ||
+      (num_integer_0_1_39.i128 or false) ||
+      (f.num_integer_0_1_39.i128 or false);
+    num_traits_0_2_5.std =
+      (f.num_traits_0_2_5.std or false) ||
+      (num_integer_0_1_39.std or false) ||
+      (f.num_integer_0_1_39.std or false);
+  }) [ num_traits_0_2_5_features ];
+  num_iter_0_1_37 = { features?(num_iter_0_1_37_features {}) }: num_iter_0_1_37_ {
+    dependencies = mapFeatures features ([ num_integer_0_1_39 num_traits_0_2_5 ]);
+    features = mkFeatures (features.num_iter_0_1_37 or {});
+  };
+  num_iter_0_1_37_features = f: updateFeatures f (rec {
+    num_integer_0_1_39.default = (f.num_integer_0_1_39.default or false);
+    num_integer_0_1_39.i128 =
+      (f.num_integer_0_1_39.i128 or false) ||
+      (num_iter_0_1_37.i128 or false) ||
+      (f.num_iter_0_1_37.i128 or false);
+    num_integer_0_1_39.std =
+      (f.num_integer_0_1_39.std or false) ||
+      (num_iter_0_1_37.std or false) ||
+      (f.num_iter_0_1_37.std or false);
+    num_iter_0_1_37.default = (f.num_iter_0_1_37.default or true);
+    num_iter_0_1_37.std =
+      (f.num_iter_0_1_37.std or false) ||
+      (f.num_iter_0_1_37.default or false) ||
+      (num_iter_0_1_37.default or false);
+    num_traits_0_2_5.default = (f.num_traits_0_2_5.default or false);
+    num_traits_0_2_5.i128 =
+      (f.num_traits_0_2_5.i128 or false) ||
+      (num_iter_0_1_37.i128 or false) ||
+      (f.num_iter_0_1_37.i128 or false);
+    num_traits_0_2_5.std =
+      (f.num_traits_0_2_5.std or false) ||
+      (num_iter_0_1_37.std or false) ||
+      (f.num_iter_0_1_37.std or false);
+  }) [ num_integer_0_1_39_features num_traits_0_2_5_features ];
+  num_traits_0_2_5 = { features?(num_traits_0_2_5_features {}) }: num_traits_0_2_5_ {
+    features = mkFeatures (features.num_traits_0_2_5 or {});
+  };
+  num_traits_0_2_5_features = f: updateFeatures f (rec {
+    num_traits_0_2_5.default = (f.num_traits_0_2_5.default or true);
+    num_traits_0_2_5.std =
+      (f.num_traits_0_2_5.std or false) ||
+      (f.num_traits_0_2_5.default or false) ||
+      (num_traits_0_2_5.default or false);
+  }) [];
+  num_cpus_1_8_0 = { features?(num_cpus_1_8_0_features {}) }: num_cpus_1_8_0_ {
+    dependencies = mapFeatures features ([ libc_0_2_42 ]);
+  };
+  num_cpus_1_8_0_features = f: updateFeatures f (rec {
+    libc_0_2_42.default = true;
+    num_cpus_1_8_0.default = (f.num_cpus_1_8_0.default or true);
+  }) [ libc_0_2_42_features ];
+  openssl_0_9_24 = { features?(openssl_0_9_24_features {}) }: openssl_0_9_24_ {
+    dependencies = mapFeatures features ([ bitflags_0_9_1 foreign_types_0_3_2 lazy_static_1_0_2 libc_0_2_42 openssl_sys_0_9_33 ]);
+    features = mkFeatures (features.openssl_0_9_24 or {});
+  };
+  openssl_0_9_24_features = f: updateFeatures f (rec {
+    bitflags_0_9_1.default = true;
+    foreign_types_0_3_2.default = true;
+    lazy_static_1_0_2.default = true;
+    libc_0_2_42.default = true;
+    openssl_0_9_24.default = (f.openssl_0_9_24.default or true);
+    openssl_sys_0_9_33.default = true;
+  }) [ bitflags_0_9_1_features foreign_types_0_3_2_features lazy_static_1_0_2_features libc_0_2_42_features openssl_sys_0_9_33_features ];
+  openssl_sys_0_9_33 = { features?(openssl_sys_0_9_33_features {}) }: openssl_sys_0_9_33_ {
+    dependencies = mapFeatures features ([ libc_0_2_42 ])
+      ++ (if abi == "msvc" then mapFeatures features ([]) else []);
+    buildDependencies = mapFeatures features ([ cc_1_0_18 pkg_config_0_3_12 ]);
+  };
+  openssl_sys_0_9_33_features = f: updateFeatures f (rec {
+    cc_1_0_18.default = true;
+    libc_0_2_42.default = true;
+    openssl_sys_0_9_33.default = (f.openssl_sys_0_9_33.default or true);
+    pkg_config_0_3_12.default = true;
+  }) [ libc_0_2_42_features cc_1_0_18_features pkg_config_0_3_12_features ];
+  percent_encoding_1_0_1 = { features?(percent_encoding_1_0_1_features {}) }: percent_encoding_1_0_1_ {};
+  percent_encoding_1_0_1_features = f: updateFeatures f (rec {
+    percent_encoding_1_0_1.default = (f.percent_encoding_1_0_1.default or true);
+  }) [];
+  phf_0_7_22 = { features?(phf_0_7_22_features {}) }: phf_0_7_22_ {
+    dependencies = mapFeatures features ([ phf_shared_0_7_22 ]);
+    features = mkFeatures (features.phf_0_7_22 or {});
+  };
+  phf_0_7_22_features = f: updateFeatures f (rec {
+    phf_0_7_22.default = (f.phf_0_7_22.default or true);
+    phf_shared_0_7_22.core =
+      (f.phf_shared_0_7_22.core or false) ||
+      (phf_0_7_22.core or false) ||
+      (f.phf_0_7_22.core or false);
+    phf_shared_0_7_22.default = true;
+    phf_shared_0_7_22.unicase =
+      (f.phf_shared_0_7_22.unicase or false) ||
+      (phf_0_7_22.unicase or false) ||
+      (f.phf_0_7_22.unicase or false);
+  }) [ phf_shared_0_7_22_features ];
+  phf_codegen_0_7_22 = { features?(phf_codegen_0_7_22_features {}) }: phf_codegen_0_7_22_ {
+    dependencies = mapFeatures features ([ phf_generator_0_7_22 phf_shared_0_7_22 ]);
+  };
+  phf_codegen_0_7_22_features = f: updateFeatures f (rec {
+    phf_codegen_0_7_22.default = (f.phf_codegen_0_7_22.default or true);
+    phf_generator_0_7_22.default = true;
+    phf_shared_0_7_22.default = true;
+  }) [ phf_generator_0_7_22_features phf_shared_0_7_22_features ];
+  phf_generator_0_7_22 = { features?(phf_generator_0_7_22_features {}) }: phf_generator_0_7_22_ {
+    dependencies = mapFeatures features ([ phf_shared_0_7_22 rand_0_4_2 ]);
+  };
+  phf_generator_0_7_22_features = f: updateFeatures f (rec {
+    phf_generator_0_7_22.default = (f.phf_generator_0_7_22.default or true);
+    phf_shared_0_7_22.default = true;
+    rand_0_4_2.default = true;
+  }) [ phf_shared_0_7_22_features rand_0_4_2_features ];
+  phf_shared_0_7_22 = { features?(phf_shared_0_7_22_features {}) }: phf_shared_0_7_22_ {
+    dependencies = mapFeatures features ([ siphasher_0_2_2 ]
+      ++ (if features.phf_shared_0_7_22.unicase or false then [ unicase_1_4_2 ] else []));
+    features = mkFeatures (features.phf_shared_0_7_22 or {});
+  };
+  phf_shared_0_7_22_features = f: updateFeatures f (rec {
+    phf_shared_0_7_22.default = (f.phf_shared_0_7_22.default or true);
+    siphasher_0_2_2.default = true;
+    unicase_1_4_2.default = true;
+  }) [ siphasher_0_2_2_features unicase_1_4_2_features ];
+  pkg_config_0_3_12 = { features?(pkg_config_0_3_12_features {}) }: pkg_config_0_3_12_ {};
+  pkg_config_0_3_12_features = f: updateFeatures f (rec {
+    pkg_config_0_3_12.default = (f.pkg_config_0_3_12.default or true);
+  }) [];
+  quote_0_3_15 = { features?(quote_0_3_15_features {}) }: quote_0_3_15_ {};
+  quote_0_3_15_features = f: updateFeatures f (rec {
+    quote_0_3_15.default = (f.quote_0_3_15.default or true);
+  }) [];
+  rand_0_3_22 = { features?(rand_0_3_22_features {}) }: rand_0_3_22_ {
+    dependencies = mapFeatures features ([ libc_0_2_42 rand_0_4_2 ])
+      ++ (if kernel == "fuchsia" then mapFeatures features ([ fuchsia_zircon_0_3_3 ]) else []);
+    features = mkFeatures (features.rand_0_3_22 or {});
+  };
+  rand_0_3_22_features = f: updateFeatures f (rec {
+    fuchsia_zircon_0_3_3.default = true;
+    libc_0_2_42.default = true;
+    rand_0_3_22.default = (f.rand_0_3_22.default or true);
+    rand_0_3_22.i128_support =
+      (f.rand_0_3_22.i128_support or false) ||
+      (f.rand_0_3_22.nightly or false) ||
+      (rand_0_3_22.nightly or false);
+    rand_0_4_2.default = true;
+  }) [ libc_0_2_42_features rand_0_4_2_features fuchsia_zircon_0_3_3_features ];
+  rand_0_4_2 = { features?(rand_0_4_2_features {}) }: rand_0_4_2_ {
+    dependencies = (if kernel == "fuchsia" then mapFeatures features ([ fuchsia_zircon_0_3_3 ]) else [])
+      ++ (if (kernel == "linux" || kernel == "darwin") then mapFeatures features ([ ]
+      ++ (if features.rand_0_4_2.libc or false then [ libc_0_2_42 ] else [])) else [])
+      ++ (if kernel == "windows" then mapFeatures features ([ winapi_0_3_5 ]) else []);
+    features = mkFeatures (features.rand_0_4_2 or {});
+  };
+  rand_0_4_2_features = f: updateFeatures f (rec {
+    fuchsia_zircon_0_3_3.default = true;
+    libc_0_2_42.default = true;
+    rand_0_4_2.default = (f.rand_0_4_2.default or true);
+    rand_0_4_2.i128_support =
+      (f.rand_0_4_2.i128_support or false) ||
+      (f.rand_0_4_2.nightly or false) ||
+      (rand_0_4_2.nightly or false);
+    rand_0_4_2.libc =
+      (f.rand_0_4_2.libc or false) ||
+      (f.rand_0_4_2.std or false) ||
+      (rand_0_4_2.std or false);
+    rand_0_4_2.std =
+      (f.rand_0_4_2.std or false) ||
+      (f.rand_0_4_2.default or false) ||
+      (rand_0_4_2.default or false);
+    winapi_0_3_5.default = true;
+    winapi_0_3_5.minwindef = true;
+    winapi_0_3_5.ntsecapi = true;
+    winapi_0_3_5.profileapi = true;
+    winapi_0_3_5.winnt = true;
+  }) [ fuchsia_zircon_0_3_3_features libc_0_2_42_features winapi_0_3_5_features ];
+  redox_syscall_0_1_40 = { features?(redox_syscall_0_1_40_features {}) }: redox_syscall_0_1_40_ {};
+  redox_syscall_0_1_40_features = f: updateFeatures f (rec {
+    redox_syscall_0_1_40.default = (f.redox_syscall_0_1_40.default or true);
+  }) [];
+  redox_termios_0_1_1 = { features?(redox_termios_0_1_1_features {}) }: redox_termios_0_1_1_ {
+    dependencies = mapFeatures features ([ redox_syscall_0_1_40 ]);
+  };
+  redox_termios_0_1_1_features = f: updateFeatures f (rec {
+    redox_syscall_0_1_40.default = true;
+    redox_termios_0_1_1.default = (f.redox_termios_0_1_1.default or true);
+  }) [ redox_syscall_0_1_40_features ];
+  regex_0_1_80 = { features?(regex_0_1_80_features {}) }: regex_0_1_80_ {
+    dependencies = mapFeatures features ([ aho_corasick_0_5_3 memchr_0_1_11 regex_syntax_0_3_9 thread_local_0_2_7 utf8_ranges_0_1_3 ]);
+    features = mkFeatures (features.regex_0_1_80 or {});
+  };
+  regex_0_1_80_features = f: updateFeatures f (rec {
+    aho_corasick_0_5_3.default = true;
+    memchr_0_1_11.default = true;
+    regex_0_1_80.default = (f.regex_0_1_80.default or true);
+    regex_0_1_80.simd =
+      (f.regex_0_1_80.simd or false) ||
+      (f.regex_0_1_80.simd-accel or false) ||
+      (regex_0_1_80.simd-accel or false);
+    regex_syntax_0_3_9.default = true;
+    thread_local_0_2_7.default = true;
+    utf8_ranges_0_1_3.default = true;
+  }) [ aho_corasick_0_5_3_features memchr_0_1_11_features regex_syntax_0_3_9_features thread_local_0_2_7_features utf8_ranges_0_1_3_features ];
+  regex_syntax_0_3_9 = { features?(regex_syntax_0_3_9_features {}) }: regex_syntax_0_3_9_ {};
+  regex_syntax_0_3_9_features = f: updateFeatures f (rec {
+    regex_syntax_0_3_9.default = (f.regex_syntax_0_3_9.default or true);
+  }) [];
+  relay_0_1_1 = { features?(relay_0_1_1_features {}) }: relay_0_1_1_ {
+    dependencies = mapFeatures features ([ futures_0_1_23 ]);
+  };
+  relay_0_1_1_features = f: updateFeatures f (rec {
+    futures_0_1_23.default = true;
+    relay_0_1_1.default = (f.relay_0_1_1.default or true);
+  }) [ futures_0_1_23_features ];
+  remove_dir_all_0_5_1 = { features?(remove_dir_all_0_5_1_features {}) }: remove_dir_all_0_5_1_ {
+    dependencies = (if kernel == "windows" then mapFeatures features ([ winapi_0_3_5 ]) else []);
+  };
+  remove_dir_all_0_5_1_features = f: updateFeatures f (rec {
+    remove_dir_all_0_5_1.default = (f.remove_dir_all_0_5_1.default or true);
+    winapi_0_3_5.default = true;
+    winapi_0_3_5.errhandlingapi = true;
+    winapi_0_3_5.fileapi = true;
+    winapi_0_3_5.std = true;
+    winapi_0_3_5.winbase = true;
+    winapi_0_3_5.winerror = true;
+  }) [ winapi_0_3_5_features ];
+  reqwest_0_8_6 = { features?(reqwest_0_8_6_features {}) }: reqwest_0_8_6_ {
+    dependencies = mapFeatures features ([ bytes_0_4_9 encoding_rs_0_7_2 futures_0_1_23 hyper_0_11_27 hyper_tls_0_1_3 libflate_0_1_16 log_0_4_3 mime_guess_2_0_0_alpha_6 native_tls_0_1_5 serde_1_0_70 serde_json_1_0_24 serde_urlencoded_0_5_2 tokio_core_0_1_17 tokio_io_0_1_7 tokio_tls_0_1_4 url_1_7_1 uuid_0_6_5 ]);
+    features = mkFeatures (features.reqwest_0_8_6 or {});
+  };
+  reqwest_0_8_6_features = f: updateFeatures f (rec {
+    bytes_0_4_9.default = true;
+    encoding_rs_0_7_2.default = true;
+    futures_0_1_23.default = true;
+    hyper_0_11_27.default = true;
+    hyper_tls_0_1_3.default = true;
+    libflate_0_1_16.default = true;
+    log_0_4_3.default = true;
+    mime_guess_2_0_0_alpha_6.default = true;
+    native_tls_0_1_5.default = true;
+    reqwest_0_8_6.default = (f.reqwest_0_8_6.default or true);
+    serde_1_0_70.default = true;
+    serde_json_1_0_24.default = true;
+    serde_urlencoded_0_5_2.default = true;
+    tokio_core_0_1_17.default = true;
+    tokio_io_0_1_7.default = true;
+    tokio_tls_0_1_4.default = true;
+    url_1_7_1.default = true;
+    uuid_0_6_5.default = true;
+    uuid_0_6_5.v4 = true;
+  }) [ bytes_0_4_9_features encoding_rs_0_7_2_features futures_0_1_23_features hyper_0_11_27_features hyper_tls_0_1_3_features libflate_0_1_16_features log_0_4_3_features mime_guess_2_0_0_alpha_6_features native_tls_0_1_5_features serde_1_0_70_features serde_json_1_0_24_features serde_urlencoded_0_5_2_features tokio_core_0_1_17_features tokio_io_0_1_7_features tokio_tls_0_1_4_features url_1_7_1_features uuid_0_6_5_features ];
+  safemem_0_2_0 = { features?(safemem_0_2_0_features {}) }: safemem_0_2_0_ {};
+  safemem_0_2_0_features = f: updateFeatures f (rec {
+    safemem_0_2_0.default = (f.safemem_0_2_0.default or true);
+  }) [];
+  schannel_0_1_13 = { features?(schannel_0_1_13_features {}) }: schannel_0_1_13_ {
+    dependencies = mapFeatures features ([ lazy_static_1_0_2 winapi_0_3_5 ]);
+  };
+  schannel_0_1_13_features = f: updateFeatures f (rec {
+    lazy_static_1_0_2.default = true;
+    schannel_0_1_13.default = (f.schannel_0_1_13.default or true);
+    winapi_0_3_5.default = true;
+    winapi_0_3_5.lmcons = true;
+    winapi_0_3_5.minschannel = true;
+    winapi_0_3_5.schannel = true;
+    winapi_0_3_5.securitybaseapi = true;
+    winapi_0_3_5.sysinfoapi = true;
+    winapi_0_3_5.timezoneapi = true;
+    winapi_0_3_5.winbase = true;
+    winapi_0_3_5.wincrypt = true;
+    winapi_0_3_5.winerror = true;
+  }) [ lazy_static_1_0_2_features winapi_0_3_5_features ];
+  scoped_tls_0_1_2 = { features?(scoped_tls_0_1_2_features {}) }: scoped_tls_0_1_2_ {
+    features = mkFeatures (features.scoped_tls_0_1_2 or {});
+  };
+  scoped_tls_0_1_2_features = f: updateFeatures f (rec {
+    scoped_tls_0_1_2.default = (f.scoped_tls_0_1_2.default or true);
+  }) [];
+  scopeguard_0_3_3 = { features?(scopeguard_0_3_3_features {}) }: scopeguard_0_3_3_ {
+    features = mkFeatures (features.scopeguard_0_3_3 or {});
+  };
+  scopeguard_0_3_3_features = f: updateFeatures f (rec {
+    scopeguard_0_3_3.default = (f.scopeguard_0_3_3.default or true);
+    scopeguard_0_3_3.use_std =
+      (f.scopeguard_0_3_3.use_std or false) ||
+      (f.scopeguard_0_3_3.default or false) ||
+      (scopeguard_0_3_3.default or false);
+  }) [];
+  security_framework_0_1_16 = { features?(security_framework_0_1_16_features {}) }: security_framework_0_1_16_ {
+    dependencies = mapFeatures features ([ core_foundation_0_2_3 core_foundation_sys_0_2_3 libc_0_2_42 security_framework_sys_0_1_16 ]);
+    features = mkFeatures (features.security_framework_0_1_16 or {});
+  };
+  security_framework_0_1_16_features = f: updateFeatures f (rec {
+    core_foundation_0_2_3.default = true;
+    core_foundation_sys_0_2_3.default = true;
+    libc_0_2_42.default = true;
+    security_framework_0_1_16.OSX_10_10 =
+      (f.security_framework_0_1_16.OSX_10_10 or false) ||
+      (f.security_framework_0_1_16.OSX_10_11 or false) ||
+      (security_framework_0_1_16.OSX_10_11 or false);
+    security_framework_0_1_16.OSX_10_11 =
+      (f.security_framework_0_1_16.OSX_10_11 or false) ||
+      (f.security_framework_0_1_16.OSX_10_12 or false) ||
+      (security_framework_0_1_16.OSX_10_12 or false);
+    security_framework_0_1_16.OSX_10_8 =
+      (f.security_framework_0_1_16.OSX_10_8 or false) ||
+      (f.security_framework_0_1_16.OSX_10_9 or false) ||
+      (security_framework_0_1_16.OSX_10_9 or false);
+    security_framework_0_1_16.OSX_10_9 =
+      (f.security_framework_0_1_16.OSX_10_9 or false) ||
+      (f.security_framework_0_1_16.OSX_10_10 or false) ||
+      (security_framework_0_1_16.OSX_10_10 or false);
+    security_framework_0_1_16.default = (f.security_framework_0_1_16.default or true);
+    security_framework_sys_0_1_16.OSX_10_10 =
+      (f.security_framework_sys_0_1_16.OSX_10_10 or false) ||
+      (security_framework_0_1_16.OSX_10_10 or false) ||
+      (f.security_framework_0_1_16.OSX_10_10 or false);
+    security_framework_sys_0_1_16.OSX_10_11 =
+      (f.security_framework_sys_0_1_16.OSX_10_11 or false) ||
+      (security_framework_0_1_16.OSX_10_11 or false) ||
+      (f.security_framework_0_1_16.OSX_10_11 or false) ||
+      (security_framework_0_1_16.OSX_10_12 or false) ||
+      (f.security_framework_0_1_16.OSX_10_12 or false);
+    security_framework_sys_0_1_16.OSX_10_8 =
+      (f.security_framework_sys_0_1_16.OSX_10_8 or false) ||
+      (security_framework_0_1_16.OSX_10_8 or false) ||
+      (f.security_framework_0_1_16.OSX_10_8 or false);
+    security_framework_sys_0_1_16.OSX_10_9 =
+      (f.security_framework_sys_0_1_16.OSX_10_9 or false) ||
+      (security_framework_0_1_16.OSX_10_9 or false) ||
+      (f.security_framework_0_1_16.OSX_10_9 or false);
+    security_framework_sys_0_1_16.default = true;
+  }) [ core_foundation_0_2_3_features core_foundation_sys_0_2_3_features libc_0_2_42_features security_framework_sys_0_1_16_features ];
+  security_framework_sys_0_1_16 = { features?(security_framework_sys_0_1_16_features {}) }: security_framework_sys_0_1_16_ {
+    dependencies = mapFeatures features ([ core_foundation_sys_0_2_3 libc_0_2_42 ]);
+    features = mkFeatures (features.security_framework_sys_0_1_16 or {});
+  };
+  security_framework_sys_0_1_16_features = f: updateFeatures f (rec {
+    core_foundation_sys_0_2_3.default = true;
+    libc_0_2_42.default = true;
+    security_framework_sys_0_1_16.OSX_10_10 =
+      (f.security_framework_sys_0_1_16.OSX_10_10 or false) ||
+      (f.security_framework_sys_0_1_16.OSX_10_11 or false) ||
+      (security_framework_sys_0_1_16.OSX_10_11 or false);
+    security_framework_sys_0_1_16.OSX_10_11 =
+      (f.security_framework_sys_0_1_16.OSX_10_11 or false) ||
+      (f.security_framework_sys_0_1_16.OSX_10_12 or false) ||
+      (security_framework_sys_0_1_16.OSX_10_12 or false);
+    security_framework_sys_0_1_16.OSX_10_8 =
+      (f.security_framework_sys_0_1_16.OSX_10_8 or false) ||
+      (f.security_framework_sys_0_1_16.OSX_10_9 or false) ||
+      (security_framework_sys_0_1_16.OSX_10_9 or false);
+    security_framework_sys_0_1_16.OSX_10_9 =
+      (f.security_framework_sys_0_1_16.OSX_10_9 or false) ||
+      (f.security_framework_sys_0_1_16.OSX_10_10 or false) ||
+      (security_framework_sys_0_1_16.OSX_10_10 or false);
+    security_framework_sys_0_1_16.default = (f.security_framework_sys_0_1_16.default or true);
+  }) [ core_foundation_sys_0_2_3_features libc_0_2_42_features ];
+  semver_0_9_0 = { features?(semver_0_9_0_features {}) }: semver_0_9_0_ {
+    dependencies = mapFeatures features ([ semver_parser_0_7_0 ]);
+    features = mkFeatures (features.semver_0_9_0 or {});
+  };
+  semver_0_9_0_features = f: updateFeatures f (rec {
+    semver_0_9_0.default = (f.semver_0_9_0.default or true);
+    semver_0_9_0.serde =
+      (f.semver_0_9_0.serde or false) ||
+      (f.semver_0_9_0.ci or false) ||
+      (semver_0_9_0.ci or false);
+    semver_parser_0_7_0.default = true;
+  }) [ semver_parser_0_7_0_features ];
+  semver_parser_0_7_0 = { features?(semver_parser_0_7_0_features {}) }: semver_parser_0_7_0_ {};
+  semver_parser_0_7_0_features = f: updateFeatures f (rec {
+    semver_parser_0_7_0.default = (f.semver_parser_0_7_0.default or true);
+  }) [];
+  serde_1_0_70 = { features?(serde_1_0_70_features {}) }: serde_1_0_70_ {
+    dependencies = mapFeatures features ([]);
+    features = mkFeatures (features.serde_1_0_70 or {});
+  };
+  serde_1_0_70_features = f: updateFeatures f (rec {
+    serde_1_0_70.default = (f.serde_1_0_70.default or true);
+    serde_1_0_70.serde_derive =
+      (f.serde_1_0_70.serde_derive or false) ||
+      (f.serde_1_0_70.derive or false) ||
+      (serde_1_0_70.derive or false);
+    serde_1_0_70.std =
+      (f.serde_1_0_70.std or false) ||
+      (f.serde_1_0_70.default or false) ||
+      (serde_1_0_70.default or false);
+    serde_1_0_70.unstable =
+      (f.serde_1_0_70.unstable or false) ||
+      (f.serde_1_0_70.alloc or false) ||
+      (serde_1_0_70.alloc or false);
+  }) [];
+  serde_json_1_0_24 = { features?(serde_json_1_0_24_features {}) }: serde_json_1_0_24_ {
+    dependencies = mapFeatures features ([ dtoa_0_4_3 itoa_0_4_2 serde_1_0_70 ]);
+    features = mkFeatures (features.serde_json_1_0_24 or {});
+  };
+  serde_json_1_0_24_features = f: updateFeatures f (rec {
+    dtoa_0_4_3.default = true;
+    itoa_0_4_2.default = true;
+    serde_1_0_70.default = true;
+    serde_json_1_0_24.default = (f.serde_json_1_0_24.default or true);
+    serde_json_1_0_24.indexmap =
+      (f.serde_json_1_0_24.indexmap or false) ||
+      (f.serde_json_1_0_24.preserve_order or false) ||
+      (serde_json_1_0_24.preserve_order or false);
+  }) [ dtoa_0_4_3_features itoa_0_4_2_features serde_1_0_70_features ];
+  serde_urlencoded_0_5_2 = { features?(serde_urlencoded_0_5_2_features {}) }: serde_urlencoded_0_5_2_ {
+    dependencies = mapFeatures features ([ dtoa_0_4_3 itoa_0_4_2 serde_1_0_70 url_1_7_1 ]);
+  };
+  serde_urlencoded_0_5_2_features = f: updateFeatures f (rec {
+    dtoa_0_4_3.default = true;
+    itoa_0_4_2.default = true;
+    serde_1_0_70.default = true;
+    serde_urlencoded_0_5_2.default = (f.serde_urlencoded_0_5_2.default or true);
+    url_1_7_1.default = true;
+  }) [ dtoa_0_4_3_features itoa_0_4_2_features serde_1_0_70_features url_1_7_1_features ];
+  siphasher_0_2_2 = { features?(siphasher_0_2_2_features {}) }: siphasher_0_2_2_ {
+    dependencies = mapFeatures features ([]);
+  };
+  siphasher_0_2_2_features = f: updateFeatures f (rec {
+    siphasher_0_2_2.default = (f.siphasher_0_2_2.default or true);
+  }) [];
+  slab_0_3_0 = { features?(slab_0_3_0_features {}) }: slab_0_3_0_ {};
+  slab_0_3_0_features = f: updateFeatures f (rec {
+    slab_0_3_0.default = (f.slab_0_3_0.default or true);
+  }) [];
+  slab_0_4_0 = { features?(slab_0_4_0_features {}) }: slab_0_4_0_ {};
+  slab_0_4_0_features = f: updateFeatures f (rec {
+    slab_0_4_0.default = (f.slab_0_4_0.default or true);
+  }) [];
+  slog_1_7_1 = { features?(slog_1_7_1_features {}) }: slog_1_7_1_ {
+    features = mkFeatures (features.slog_1_7_1 or {});
+  };
+  slog_1_7_1_features = f: updateFeatures f (rec {
+    slog_1_7_1.default = (f.slog_1_7_1.default or true);
+    slog_1_7_1.std =
+      (f.slog_1_7_1.std or false) ||
+      (f.slog_1_7_1.default or false) ||
+      (slog_1_7_1.default or false);
+  }) [];
+  slog_envlogger_0_5_0 = { features?(slog_envlogger_0_5_0_features {}) }: slog_envlogger_0_5_0_ {
+    dependencies = mapFeatures features ([ log_0_3_9 regex_0_1_80 slog_1_7_1 slog_stdlog_1_1_0 slog_term_1_5_0 ]);
+  };
+  slog_envlogger_0_5_0_features = f: updateFeatures f (rec {
+    log_0_3_9.default = true;
+    regex_0_1_80.default = true;
+    slog_1_7_1.default = true;
+    slog_envlogger_0_5_0.default = (f.slog_envlogger_0_5_0.default or true);
+    slog_stdlog_1_1_0.default = true;
+    slog_term_1_5_0.default = true;
+  }) [ log_0_3_9_features regex_0_1_80_features slog_1_7_1_features slog_stdlog_1_1_0_features slog_term_1_5_0_features ];
+  slog_extra_0_1_2 = { features?(slog_extra_0_1_2_features {}) }: slog_extra_0_1_2_ {
+    dependencies = mapFeatures features ([ slog_1_7_1 thread_local_0_3_5 ]);
+  };
+  slog_extra_0_1_2_features = f: updateFeatures f (rec {
+    slog_1_7_1.default = true;
+    slog_extra_0_1_2.default = (f.slog_extra_0_1_2.default or true);
+    thread_local_0_3_5.default = true;
+  }) [ slog_1_7_1_features thread_local_0_3_5_features ];
+  slog_stdlog_1_1_0 = { features?(slog_stdlog_1_1_0_features {}) }: slog_stdlog_1_1_0_ {
+    dependencies = mapFeatures features ([ crossbeam_0_2_12 lazy_static_0_2_11 log_0_3_9 slog_1_7_1 slog_term_1_5_0 ]);
+  };
+  slog_stdlog_1_1_0_features = f: updateFeatures f (rec {
+    crossbeam_0_2_12.default = true;
+    lazy_static_0_2_11.default = true;
+    log_0_3_9.default = true;
+    slog_1_7_1.default = true;
+    slog_stdlog_1_1_0.default = (f.slog_stdlog_1_1_0.default or true);
+    slog_term_1_5_0.default = true;
+  }) [ crossbeam_0_2_12_features lazy_static_0_2_11_features log_0_3_9_features slog_1_7_1_features slog_term_1_5_0_features ];
+  slog_stream_1_2_1 = { features?(slog_stream_1_2_1_features {}) }: slog_stream_1_2_1_ {
+    dependencies = mapFeatures features ([ slog_1_7_1 slog_extra_0_1_2 thread_local_0_3_5 ]);
+  };
+  slog_stream_1_2_1_features = f: updateFeatures f (rec {
+    slog_1_7_1.default = true;
+    slog_extra_0_1_2.default = true;
+    slog_stream_1_2_1.default = (f.slog_stream_1_2_1.default or true);
+    thread_local_0_3_5.default = true;
+  }) [ slog_1_7_1_features slog_extra_0_1_2_features thread_local_0_3_5_features ];
+  slog_term_1_5_0 = { features?(slog_term_1_5_0_features {}) }: slog_term_1_5_0_ {
+    dependencies = mapFeatures features ([ chrono_0_2_25 isatty_0_1_8 slog_1_7_1 slog_stream_1_2_1 thread_local_0_3_5 ]);
+  };
+  slog_term_1_5_0_features = f: updateFeatures f (rec {
+    chrono_0_2_25.default = true;
+    isatty_0_1_8.default = true;
+    slog_1_7_1.default = true;
+    slog_stream_1_2_1.default = true;
+    slog_term_1_5_0.default = (f.slog_term_1_5_0.default or true);
+    thread_local_0_3_5.default = true;
+  }) [ chrono_0_2_25_features isatty_0_1_8_features slog_1_7_1_features slog_stream_1_2_1_features thread_local_0_3_5_features ];
+  smallvec_0_2_1 = { features?(smallvec_0_2_1_features {}) }: smallvec_0_2_1_ {};
+  smallvec_0_2_1_features = f: updateFeatures f (rec {
+    smallvec_0_2_1.default = (f.smallvec_0_2_1.default or true);
+  }) [];
+  strsim_0_7_0 = { features?(strsim_0_7_0_features {}) }: strsim_0_7_0_ {};
+  strsim_0_7_0_features = f: updateFeatures f (rec {
+    strsim_0_7_0.default = (f.strsim_0_7_0.default or true);
+  }) [];
+  syn_0_11_11 = { features?(syn_0_11_11_features {}) }: syn_0_11_11_ {
+    dependencies = mapFeatures features ([ ]
+      ++ (if features.syn_0_11_11.quote or false then [ quote_0_3_15 ] else [])
+      ++ (if features.syn_0_11_11.synom or false then [ synom_0_11_3 ] else [])
+      ++ (if features.syn_0_11_11.unicode-xid or false then [ unicode_xid_0_0_4 ] else []));
+    features = mkFeatures (features.syn_0_11_11 or {});
+  };
+  syn_0_11_11_features = f: updateFeatures f (rec {
+    quote_0_3_15.default = true;
+    syn_0_11_11.default = (f.syn_0_11_11.default or true);
+    syn_0_11_11.parsing =
+      (f.syn_0_11_11.parsing or false) ||
+      (f.syn_0_11_11.default or false) ||
+      (syn_0_11_11.default or false);
+    syn_0_11_11.printing =
+      (f.syn_0_11_11.printing or false) ||
+      (f.syn_0_11_11.default or false) ||
+      (syn_0_11_11.default or false);
+    syn_0_11_11.quote =
+      (f.syn_0_11_11.quote or false) ||
+      (f.syn_0_11_11.printing or false) ||
+      (syn_0_11_11.printing or false);
+    syn_0_11_11.synom =
+      (f.syn_0_11_11.synom or false) ||
+      (f.syn_0_11_11.parsing or false) ||
+      (syn_0_11_11.parsing or false);
+    syn_0_11_11.unicode-xid =
+      (f.syn_0_11_11.unicode-xid or false) ||
+      (f.syn_0_11_11.parsing or false) ||
+      (syn_0_11_11.parsing or false);
+    synom_0_11_3.default = true;
+    unicode_xid_0_0_4.default = true;
+  }) [ quote_0_3_15_features synom_0_11_3_features unicode_xid_0_0_4_features ];
+  synom_0_11_3 = { features?(synom_0_11_3_features {}) }: synom_0_11_3_ {
+    dependencies = mapFeatures features ([ unicode_xid_0_0_4 ]);
+  };
+  synom_0_11_3_features = f: updateFeatures f (rec {
+    synom_0_11_3.default = (f.synom_0_11_3.default or true);
+    unicode_xid_0_0_4.default = true;
+  }) [ unicode_xid_0_0_4_features ];
+  take_0_1_0 = { features?(take_0_1_0_features {}) }: take_0_1_0_ {};
+  take_0_1_0_features = f: updateFeatures f (rec {
+    take_0_1_0.default = (f.take_0_1_0.default or true);
+  }) [];
+  tar_0_4_16 = { features?(tar_0_4_16_features {}) }: tar_0_4_16_ {
+    dependencies = mapFeatures features ([ filetime_0_2_1 ])
+      ++ (if kernel == "redox" then mapFeatures features ([ redox_syscall_0_1_40 ]) else [])
+      ++ (if (kernel == "linux" || kernel == "darwin") then mapFeatures features ([ libc_0_2_42 ]
+      ++ (if features.tar_0_4_16.xattr or false then [ xattr_0_2_2 ] else [])) else []);
+    features = mkFeatures (features.tar_0_4_16 or {});
+  };
+  tar_0_4_16_features = f: updateFeatures f (rec {
+    filetime_0_2_1.default = true;
+    libc_0_2_42.default = true;
+    redox_syscall_0_1_40.default = true;
+    tar_0_4_16.default = (f.tar_0_4_16.default or true);
+    tar_0_4_16.xattr =
+      (f.tar_0_4_16.xattr or false) ||
+      (f.tar_0_4_16.default or false) ||
+      (tar_0_4_16.default or false);
+    xattr_0_2_2.default = true;
+  }) [ filetime_0_2_1_features redox_syscall_0_1_40_features libc_0_2_42_features xattr_0_2_2_features ];
+  tempdir_0_3_7 = { features?(tempdir_0_3_7_features {}) }: tempdir_0_3_7_ {
+    dependencies = mapFeatures features ([ rand_0_4_2 remove_dir_all_0_5_1 ]);
+  };
+  tempdir_0_3_7_features = f: updateFeatures f (rec {
+    rand_0_4_2.default = true;
+    remove_dir_all_0_5_1.default = true;
+    tempdir_0_3_7.default = (f.tempdir_0_3_7.default or true);
+  }) [ rand_0_4_2_features remove_dir_all_0_5_1_features ];
+  termion_1_5_1 = { features?(termion_1_5_1_features {}) }: termion_1_5_1_ {
+    dependencies = (if !(kernel == "redox") then mapFeatures features ([ libc_0_2_42 ]) else [])
+      ++ (if kernel == "redox" then mapFeatures features ([ redox_syscall_0_1_40 redox_termios_0_1_1 ]) else []);
+  };
+  termion_1_5_1_features = f: updateFeatures f (rec {
+    libc_0_2_42.default = true;
+    redox_syscall_0_1_40.default = true;
+    redox_termios_0_1_1.default = true;
+    termion_1_5_1.default = (f.termion_1_5_1.default or true);
+  }) [ libc_0_2_42_features redox_syscall_0_1_40_features redox_termios_0_1_1_features ];
+  textwrap_0_10_0 = { features?(textwrap_0_10_0_features {}) }: textwrap_0_10_0_ {
+    dependencies = mapFeatures features ([ unicode_width_0_1_5 ]);
+  };
+  textwrap_0_10_0_features = f: updateFeatures f (rec {
+    textwrap_0_10_0.default = (f.textwrap_0_10_0.default or true);
+    unicode_width_0_1_5.default = true;
+  }) [ unicode_width_0_1_5_features ];
+  thread_id_2_0_0 = { features?(thread_id_2_0_0_features {}) }: thread_id_2_0_0_ {
+    dependencies = mapFeatures features ([ kernel32_sys_0_2_2 libc_0_2_42 ]);
+  };
+  thread_id_2_0_0_features = f: updateFeatures f (rec {
+    kernel32_sys_0_2_2.default = true;
+    libc_0_2_42.default = true;
+    thread_id_2_0_0.default = (f.thread_id_2_0_0.default or true);
+  }) [ kernel32_sys_0_2_2_features libc_0_2_42_features ];
+  thread_local_0_2_7 = { features?(thread_local_0_2_7_features {}) }: thread_local_0_2_7_ {
+    dependencies = mapFeatures features ([ thread_id_2_0_0 ]);
+  };
+  thread_local_0_2_7_features = f: updateFeatures f (rec {
+    thread_id_2_0_0.default = true;
+    thread_local_0_2_7.default = (f.thread_local_0_2_7.default or true);
+  }) [ thread_id_2_0_0_features ];
+  thread_local_0_3_5 = { features?(thread_local_0_3_5_features {}) }: thread_local_0_3_5_ {
+    dependencies = mapFeatures features ([ lazy_static_1_0_2 unreachable_1_0_0 ]);
+  };
+  thread_local_0_3_5_features = f: updateFeatures f (rec {
+    lazy_static_1_0_2.default = true;
+    thread_local_0_3_5.default = (f.thread_local_0_3_5.default or true);
+    unreachable_1_0_0.default = true;
+  }) [ lazy_static_1_0_2_features unreachable_1_0_0_features ];
+  time_0_1_40 = { features?(time_0_1_40_features {}) }: time_0_1_40_ {
+    dependencies = mapFeatures features ([ libc_0_2_42 ])
+      ++ (if kernel == "redox" then mapFeatures features ([ redox_syscall_0_1_40 ]) else [])
+      ++ (if kernel == "windows" then mapFeatures features ([ winapi_0_3_5 ]) else []);
+  };
+  time_0_1_40_features = f: updateFeatures f (rec {
+    libc_0_2_42.default = true;
+    redox_syscall_0_1_40.default = true;
+    time_0_1_40.default = (f.time_0_1_40.default or true);
+    winapi_0_3_5.default = true;
+    winapi_0_3_5.minwinbase = true;
+    winapi_0_3_5.minwindef = true;
+    winapi_0_3_5.ntdef = true;
+    winapi_0_3_5.profileapi = true;
+    winapi_0_3_5.std = true;
+    winapi_0_3_5.sysinfoapi = true;
+    winapi_0_3_5.timezoneapi = true;
+  }) [ libc_0_2_42_features redox_syscall_0_1_40_features winapi_0_3_5_features ];
+  tokio_0_1_7 = { features?(tokio_0_1_7_features {}) }: tokio_0_1_7_ {
+    dependencies = mapFeatures features ([ futures_0_1_23 mio_0_6_15 tokio_executor_0_1_2 tokio_fs_0_1_2 tokio_io_0_1_7 tokio_reactor_0_1_2 tokio_tcp_0_1_0 tokio_threadpool_0_1_5 tokio_timer_0_2_4 tokio_udp_0_1_1 ]);
+  };
+  tokio_0_1_7_features = f: updateFeatures f (rec {
+    futures_0_1_23.default = true;
+    mio_0_6_15.default = true;
+    tokio_0_1_7.default = (f.tokio_0_1_7.default or true);
+    tokio_executor_0_1_2.default = true;
+    tokio_fs_0_1_2.default = true;
+    tokio_io_0_1_7.default = true;
+    tokio_reactor_0_1_2.default = true;
+    tokio_tcp_0_1_0.default = true;
+    tokio_threadpool_0_1_5.default = true;
+    tokio_timer_0_2_4.default = true;
+    tokio_udp_0_1_1.default = true;
+  }) [ futures_0_1_23_features mio_0_6_15_features tokio_executor_0_1_2_features tokio_fs_0_1_2_features tokio_io_0_1_7_features tokio_reactor_0_1_2_features tokio_tcp_0_1_0_features tokio_threadpool_0_1_5_features tokio_timer_0_2_4_features tokio_udp_0_1_1_features ];
+  tokio_codec_0_1_0 = { features?(tokio_codec_0_1_0_features {}) }: tokio_codec_0_1_0_ {
+    dependencies = mapFeatures features ([ bytes_0_4_9 futures_0_1_23 tokio_io_0_1_7 ]);
+  };
+  tokio_codec_0_1_0_features = f: updateFeatures f (rec {
+    bytes_0_4_9.default = true;
+    futures_0_1_23.default = true;
+    tokio_codec_0_1_0.default = (f.tokio_codec_0_1_0.default or true);
+    tokio_io_0_1_7.default = true;
+  }) [ bytes_0_4_9_features futures_0_1_23_features tokio_io_0_1_7_features ];
+  tokio_core_0_1_17 = { features?(tokio_core_0_1_17_features {}) }: tokio_core_0_1_17_ {
+    dependencies = mapFeatures features ([ bytes_0_4_9 futures_0_1_23 iovec_0_1_2 log_0_4_3 mio_0_6_15 scoped_tls_0_1_2 tokio_0_1_7 tokio_executor_0_1_2 tokio_io_0_1_7 tokio_reactor_0_1_2 tokio_timer_0_2_4 ]);
+  };
+  tokio_core_0_1_17_features = f: updateFeatures f (rec {
+    bytes_0_4_9.default = true;
+    futures_0_1_23.default = true;
+    iovec_0_1_2.default = true;
+    log_0_4_3.default = true;
+    mio_0_6_15.default = true;
+    scoped_tls_0_1_2.default = true;
+    tokio_0_1_7.default = true;
+    tokio_core_0_1_17.default = (f.tokio_core_0_1_17.default or true);
+    tokio_executor_0_1_2.default = true;
+    tokio_io_0_1_7.default = true;
+    tokio_reactor_0_1_2.default = true;
+    tokio_timer_0_2_4.default = true;
+  }) [ bytes_0_4_9_features futures_0_1_23_features iovec_0_1_2_features log_0_4_3_features mio_0_6_15_features scoped_tls_0_1_2_features tokio_0_1_7_features tokio_executor_0_1_2_features tokio_io_0_1_7_features tokio_reactor_0_1_2_features tokio_timer_0_2_4_features ];
+  tokio_executor_0_1_2 = { features?(tokio_executor_0_1_2_features {}) }: tokio_executor_0_1_2_ {
+    dependencies = mapFeatures features ([ futures_0_1_23 ]);
+    features = mkFeatures (features.tokio_executor_0_1_2 or {});
+  };
+  tokio_executor_0_1_2_features = f: updateFeatures f (rec {
+    futures_0_1_23.default = true;
+    tokio_executor_0_1_2.default = (f.tokio_executor_0_1_2.default or true);
+    tokio_executor_0_1_2.futures2 =
+      (f.tokio_executor_0_1_2.futures2 or false) ||
+      (f.tokio_executor_0_1_2.unstable-futures or false) ||
+      (tokio_executor_0_1_2.unstable-futures or false);
+  }) [ futures_0_1_23_features ];
+  tokio_fs_0_1_2 = { features?(tokio_fs_0_1_2_features {}) }: tokio_fs_0_1_2_ {
+    dependencies = mapFeatures features ([ futures_0_1_23 tokio_io_0_1_7 tokio_threadpool_0_1_5 ]);
+  };
+  tokio_fs_0_1_2_features = f: updateFeatures f (rec {
+    futures_0_1_23.default = true;
+    tokio_fs_0_1_2.default = (f.tokio_fs_0_1_2.default or true);
+    tokio_io_0_1_7.default = true;
+    tokio_threadpool_0_1_5.default = true;
+  }) [ futures_0_1_23_features tokio_io_0_1_7_features tokio_threadpool_0_1_5_features ];
+  tokio_io_0_1_7 = { features?(tokio_io_0_1_7_features {}) }: tokio_io_0_1_7_ {
+    dependencies = mapFeatures features ([ bytes_0_4_9 futures_0_1_23 log_0_4_3 ]);
+  };
+  tokio_io_0_1_7_features = f: updateFeatures f (rec {
+    bytes_0_4_9.default = true;
+    futures_0_1_23.default = true;
+    log_0_4_3.default = true;
+    tokio_io_0_1_7.default = (f.tokio_io_0_1_7.default or true);
+  }) [ bytes_0_4_9_features futures_0_1_23_features log_0_4_3_features ];
+  tokio_proto_0_1_1 = { features?(tokio_proto_0_1_1_features {}) }: tokio_proto_0_1_1_ {
+    dependencies = mapFeatures features ([ futures_0_1_23 log_0_3_9 net2_0_2_33 rand_0_3_22 slab_0_3_0 smallvec_0_2_1 take_0_1_0 tokio_core_0_1_17 tokio_io_0_1_7 tokio_service_0_1_0 ]);
+  };
+  tokio_proto_0_1_1_features = f: updateFeatures f (rec {
+    futures_0_1_23.default = true;
+    log_0_3_9.default = true;
+    net2_0_2_33.default = true;
+    rand_0_3_22.default = true;
+    slab_0_3_0.default = true;
+    smallvec_0_2_1.default = true;
+    take_0_1_0.default = true;
+    tokio_core_0_1_17.default = true;
+    tokio_io_0_1_7.default = true;
+    tokio_proto_0_1_1.default = (f.tokio_proto_0_1_1.default or true);
+    tokio_service_0_1_0.default = true;
+  }) [ futures_0_1_23_features log_0_3_9_features net2_0_2_33_features rand_0_3_22_features slab_0_3_0_features smallvec_0_2_1_features take_0_1_0_features tokio_core_0_1_17_features tokio_io_0_1_7_features tokio_service_0_1_0_features ];
+  tokio_reactor_0_1_2 = { features?(tokio_reactor_0_1_2_features {}) }: tokio_reactor_0_1_2_ {
+    dependencies = mapFeatures features ([ futures_0_1_23 log_0_4_3 mio_0_6_15 slab_0_4_0 tokio_executor_0_1_2 tokio_io_0_1_7 ]);
+  };
+  tokio_reactor_0_1_2_features = f: updateFeatures f (rec {
+    futures_0_1_23.default = true;
+    log_0_4_3.default = true;
+    mio_0_6_15.default = true;
+    slab_0_4_0.default = true;
+    tokio_executor_0_1_2.default = true;
+    tokio_io_0_1_7.default = true;
+    tokio_reactor_0_1_2.default = (f.tokio_reactor_0_1_2.default or true);
+  }) [ futures_0_1_23_features log_0_4_3_features mio_0_6_15_features slab_0_4_0_features tokio_executor_0_1_2_features tokio_io_0_1_7_features ];
+  tokio_service_0_1_0 = { features?(tokio_service_0_1_0_features {}) }: tokio_service_0_1_0_ {
+    dependencies = mapFeatures features ([ futures_0_1_23 ]);
+  };
+  tokio_service_0_1_0_features = f: updateFeatures f (rec {
+    futures_0_1_23.default = true;
+    tokio_service_0_1_0.default = (f.tokio_service_0_1_0.default or true);
+  }) [ futures_0_1_23_features ];
+  tokio_tcp_0_1_0 = { features?(tokio_tcp_0_1_0_features {}) }: tokio_tcp_0_1_0_ {
+    dependencies = mapFeatures features ([ bytes_0_4_9 futures_0_1_23 iovec_0_1_2 mio_0_6_15 tokio_io_0_1_7 tokio_reactor_0_1_2 ]);
+    features = mkFeatures (features.tokio_tcp_0_1_0 or {});
+  };
+  tokio_tcp_0_1_0_features = f: updateFeatures f (rec {
+    bytes_0_4_9.default = true;
+    futures_0_1_23.default = true;
+    iovec_0_1_2.default = true;
+    mio_0_6_15.default = true;
+    tokio_io_0_1_7.default = true;
+    tokio_reactor_0_1_2.default = true;
+    tokio_tcp_0_1_0.default = (f.tokio_tcp_0_1_0.default or true);
+    tokio_tcp_0_1_0.futures2 =
+      (f.tokio_tcp_0_1_0.futures2 or false) ||
+      (f.tokio_tcp_0_1_0.unstable-futures or false) ||
+      (tokio_tcp_0_1_0.unstable-futures or false);
+  }) [ bytes_0_4_9_features futures_0_1_23_features iovec_0_1_2_features mio_0_6_15_features tokio_io_0_1_7_features tokio_reactor_0_1_2_features ];
+  tokio_threadpool_0_1_5 = { features?(tokio_threadpool_0_1_5_features {}) }: tokio_threadpool_0_1_5_ {
+    dependencies = mapFeatures features ([ crossbeam_deque_0_3_1 futures_0_1_23 log_0_4_3 num_cpus_1_8_0 rand_0_4_2 tokio_executor_0_1_2 ]);
+  };
+  tokio_threadpool_0_1_5_features = f: updateFeatures f (rec {
+    crossbeam_deque_0_3_1.default = true;
+    futures_0_1_23.default = true;
+    log_0_4_3.default = true;
+    num_cpus_1_8_0.default = true;
+    rand_0_4_2.default = true;
+    tokio_executor_0_1_2.default = true;
+    tokio_threadpool_0_1_5.default = (f.tokio_threadpool_0_1_5.default or true);
+  }) [ crossbeam_deque_0_3_1_features futures_0_1_23_features log_0_4_3_features num_cpus_1_8_0_features rand_0_4_2_features tokio_executor_0_1_2_features ];
+  tokio_timer_0_2_4 = { features?(tokio_timer_0_2_4_features {}) }: tokio_timer_0_2_4_ {
+    dependencies = mapFeatures features ([ futures_0_1_23 tokio_executor_0_1_2 ]);
+  };
+  tokio_timer_0_2_4_features = f: updateFeatures f (rec {
+    futures_0_1_23.default = true;
+    tokio_executor_0_1_2.default = true;
+    tokio_timer_0_2_4.default = (f.tokio_timer_0_2_4.default or true);
+  }) [ futures_0_1_23_features tokio_executor_0_1_2_features ];
+  tokio_tls_0_1_4 = { features?(tokio_tls_0_1_4_features {}) }: tokio_tls_0_1_4_ {
+    dependencies = mapFeatures features ([ futures_0_1_23 native_tls_0_1_5 tokio_core_0_1_17 tokio_io_0_1_7 ])
+      ++ (if !(kernel == "darwin") && !(kernel == "windows") && !(kernel == "ios") then mapFeatures features ([]) else [])
+      ++ (if kernel == "darwin" || kernel == "ios" then mapFeatures features ([]) else [])
+      ++ (if kernel == "windows" then mapFeatures features ([]) else []);
+  };
+  tokio_tls_0_1_4_features = f: updateFeatures f (rec {
+    futures_0_1_23.default = true;
+    native_tls_0_1_5.default = true;
+    tokio_core_0_1_17.default = true;
+    tokio_io_0_1_7.default = true;
+    tokio_tls_0_1_4.default = (f.tokio_tls_0_1_4.default or true);
+  }) [ futures_0_1_23_features native_tls_0_1_5_features tokio_core_0_1_17_features tokio_io_0_1_7_features ];
+  tokio_udp_0_1_1 = { features?(tokio_udp_0_1_1_features {}) }: tokio_udp_0_1_1_ {
+    dependencies = mapFeatures features ([ bytes_0_4_9 futures_0_1_23 log_0_4_3 mio_0_6_15 tokio_codec_0_1_0 tokio_io_0_1_7 tokio_reactor_0_1_2 ]);
+  };
+  tokio_udp_0_1_1_features = f: updateFeatures f (rec {
+    bytes_0_4_9.default = true;
+    futures_0_1_23.default = true;
+    log_0_4_3.default = true;
+    mio_0_6_15.default = true;
+    tokio_codec_0_1_0.default = true;
+    tokio_io_0_1_7.default = true;
+    tokio_reactor_0_1_2.default = true;
+    tokio_udp_0_1_1.default = (f.tokio_udp_0_1_1.default or true);
+  }) [ bytes_0_4_9_features futures_0_1_23_features log_0_4_3_features mio_0_6_15_features tokio_codec_0_1_0_features tokio_io_0_1_7_features tokio_reactor_0_1_2_features ];
+  try_lock_0_1_0 = { features?(try_lock_0_1_0_features {}) }: try_lock_0_1_0_ {};
+  try_lock_0_1_0_features = f: updateFeatures f (rec {
+    try_lock_0_1_0.default = (f.try_lock_0_1_0.default or true);
+  }) [];
+  unicase_1_4_2 = { features?(unicase_1_4_2_features {}) }: unicase_1_4_2_ {
+    dependencies = mapFeatures features ([]);
+    buildDependencies = mapFeatures features ([ version_check_0_1_4 ]);
+    features = mkFeatures (features.unicase_1_4_2 or {});
+  };
+  unicase_1_4_2_features = f: updateFeatures f (rec {
+    unicase_1_4_2.default = (f.unicase_1_4_2.default or true);
+    unicase_1_4_2.heapsize =
+      (f.unicase_1_4_2.heapsize or false) ||
+      (f.unicase_1_4_2.heap_size or false) ||
+      (unicase_1_4_2.heap_size or false);
+    unicase_1_4_2.heapsize_plugin =
+      (f.unicase_1_4_2.heapsize_plugin or false) ||
+      (f.unicase_1_4_2.heap_size or false) ||
+      (unicase_1_4_2.heap_size or false);
+    version_check_0_1_4.default = true;
+  }) [ version_check_0_1_4_features ];
+  unicase_2_1_0 = { features?(unicase_2_1_0_features {}) }: unicase_2_1_0_ {
+    buildDependencies = mapFeatures features ([ version_check_0_1_4 ]);
+    features = mkFeatures (features.unicase_2_1_0 or {});
+  };
+  unicase_2_1_0_features = f: updateFeatures f (rec {
+    unicase_2_1_0.default = (f.unicase_2_1_0.default or true);
+    version_check_0_1_4.default = true;
+  }) [ version_check_0_1_4_features ];
+  unicode_bidi_0_3_4 = { features?(unicode_bidi_0_3_4_features {}) }: unicode_bidi_0_3_4_ {
+    dependencies = mapFeatures features ([ matches_0_1_7 ]);
+    features = mkFeatures (features.unicode_bidi_0_3_4 or {});
+  };
+  unicode_bidi_0_3_4_features = f: updateFeatures f (rec {
+    matches_0_1_7.default = true;
+    unicode_bidi_0_3_4.default = (f.unicode_bidi_0_3_4.default or true);
+    unicode_bidi_0_3_4.flame =
+      (f.unicode_bidi_0_3_4.flame or false) ||
+      (f.unicode_bidi_0_3_4.flame_it or false) ||
+      (unicode_bidi_0_3_4.flame_it or false);
+    unicode_bidi_0_3_4.flamer =
+      (f.unicode_bidi_0_3_4.flamer or false) ||
+      (f.unicode_bidi_0_3_4.flame_it or false) ||
+      (unicode_bidi_0_3_4.flame_it or false);
+    unicode_bidi_0_3_4.serde =
+      (f.unicode_bidi_0_3_4.serde or false) ||
+      (f.unicode_bidi_0_3_4.with_serde or false) ||
+      (unicode_bidi_0_3_4.with_serde or false);
+  }) [ matches_0_1_7_features ];
+  unicode_normalization_0_1_7 = { features?(unicode_normalization_0_1_7_features {}) }: unicode_normalization_0_1_7_ {};
+  unicode_normalization_0_1_7_features = f: updateFeatures f (rec {
+    unicode_normalization_0_1_7.default = (f.unicode_normalization_0_1_7.default or true);
+  }) [];
+  unicode_width_0_1_5 = { features?(unicode_width_0_1_5_features {}) }: unicode_width_0_1_5_ {
+    features = mkFeatures (features.unicode_width_0_1_5 or {});
+  };
+  unicode_width_0_1_5_features = f: updateFeatures f (rec {
+    unicode_width_0_1_5.default = (f.unicode_width_0_1_5.default or true);
+  }) [];
+  unicode_xid_0_0_4 = { features?(unicode_xid_0_0_4_features {}) }: unicode_xid_0_0_4_ {
+    features = mkFeatures (features.unicode_xid_0_0_4 or {});
+  };
+  unicode_xid_0_0_4_features = f: updateFeatures f (rec {
+    unicode_xid_0_0_4.default = (f.unicode_xid_0_0_4.default or true);
+  }) [];
+  unreachable_1_0_0 = { features?(unreachable_1_0_0_features {}) }: unreachable_1_0_0_ {
+    dependencies = mapFeatures features ([ void_1_0_2 ]);
+  };
+  unreachable_1_0_0_features = f: updateFeatures f (rec {
+    unreachable_1_0_0.default = (f.unreachable_1_0_0.default or true);
+    void_1_0_2.default = (f.void_1_0_2.default or false);
+  }) [ void_1_0_2_features ];
+  url_1_7_1 = { features?(url_1_7_1_features {}) }: url_1_7_1_ {
+    dependencies = mapFeatures features ([ idna_0_1_5 matches_0_1_7 percent_encoding_1_0_1 ]);
+    features = mkFeatures (features.url_1_7_1 or {});
+  };
+  url_1_7_1_features = f: updateFeatures f (rec {
+    idna_0_1_5.default = true;
+    matches_0_1_7.default = true;
+    percent_encoding_1_0_1.default = true;
+    url_1_7_1.default = (f.url_1_7_1.default or true);
+    url_1_7_1.encoding =
+      (f.url_1_7_1.encoding or false) ||
+      (f.url_1_7_1.query_encoding or false) ||
+      (url_1_7_1.query_encoding or false);
+    url_1_7_1.heapsize =
+      (f.url_1_7_1.heapsize or false) ||
+      (f.url_1_7_1.heap_size or false) ||
+      (url_1_7_1.heap_size or false);
+  }) [ idna_0_1_5_features matches_0_1_7_features percent_encoding_1_0_1_features ];
+  utf8_ranges_0_1_3 = { features?(utf8_ranges_0_1_3_features {}) }: utf8_ranges_0_1_3_ {};
+  utf8_ranges_0_1_3_features = f: updateFeatures f (rec {
+    utf8_ranges_0_1_3.default = (f.utf8_ranges_0_1_3.default or true);
+  }) [];
+  uuid_0_6_5 = { features?(uuid_0_6_5_features {}) }: uuid_0_6_5_ {
+    dependencies = mapFeatures features ([ cfg_if_0_1_4 ]
+      ++ (if features.uuid_0_6_5.rand or false then [ rand_0_4_2 ] else []));
+    features = mkFeatures (features.uuid_0_6_5 or {});
+  };
+  uuid_0_6_5_features = f: updateFeatures f (rec {
+    cfg_if_0_1_4.default = true;
+    rand_0_4_2.default = true;
+    uuid_0_6_5.byteorder =
+      (f.uuid_0_6_5.byteorder or false) ||
+      (f.uuid_0_6_5.u128 or false) ||
+      (uuid_0_6_5.u128 or false);
+    uuid_0_6_5.default = (f.uuid_0_6_5.default or true);
+    uuid_0_6_5.md5 =
+      (f.uuid_0_6_5.md5 or false) ||
+      (f.uuid_0_6_5.v3 or false) ||
+      (uuid_0_6_5.v3 or false);
+    uuid_0_6_5.nightly =
+      (f.uuid_0_6_5.nightly or false) ||
+      (f.uuid_0_6_5.const_fn or false) ||
+      (uuid_0_6_5.const_fn or false);
+    uuid_0_6_5.rand =
+      (f.uuid_0_6_5.rand or false) ||
+      (f.uuid_0_6_5.v3 or false) ||
+      (uuid_0_6_5.v3 or false) ||
+      (f.uuid_0_6_5.v4 or false) ||
+      (uuid_0_6_5.v4 or false) ||
+      (f.uuid_0_6_5.v5 or false) ||
+      (uuid_0_6_5.v5 or false);
+    uuid_0_6_5.sha1 =
+      (f.uuid_0_6_5.sha1 or false) ||
+      (f.uuid_0_6_5.v5 or false) ||
+      (uuid_0_6_5.v5 or false);
+    uuid_0_6_5.std =
+      (f.uuid_0_6_5.std or false) ||
+      (f.uuid_0_6_5.default or false) ||
+      (uuid_0_6_5.default or false) ||
+      (f.uuid_0_6_5.use_std or false) ||
+      (uuid_0_6_5.use_std or false);
+  }) [ cfg_if_0_1_4_features rand_0_4_2_features ];
+  vcpkg_0_2_4 = { features?(vcpkg_0_2_4_features {}) }: vcpkg_0_2_4_ {};
+  vcpkg_0_2_4_features = f: updateFeatures f (rec {
+    vcpkg_0_2_4.default = (f.vcpkg_0_2_4.default or true);
+  }) [];
+  vec_map_0_8_1 = { features?(vec_map_0_8_1_features {}) }: vec_map_0_8_1_ {
+    dependencies = mapFeatures features ([]);
+    features = mkFeatures (features.vec_map_0_8_1 or {});
+  };
+  vec_map_0_8_1_features = f: updateFeatures f (rec {
+    vec_map_0_8_1.default = (f.vec_map_0_8_1.default or true);
+    vec_map_0_8_1.serde =
+      (f.vec_map_0_8_1.serde or false) ||
+      (f.vec_map_0_8_1.eders or false) ||
+      (vec_map_0_8_1.eders or false);
+  }) [];
+  version_check_0_1_4 = { features?(version_check_0_1_4_features {}) }: version_check_0_1_4_ {};
+  version_check_0_1_4_features = f: updateFeatures f (rec {
+    version_check_0_1_4.default = (f.version_check_0_1_4.default or true);
+  }) [];
+  void_1_0_2 = { features?(void_1_0_2_features {}) }: void_1_0_2_ {
+    features = mkFeatures (features.void_1_0_2 or {});
+  };
+  void_1_0_2_features = f: updateFeatures f (rec {
+    void_1_0_2.default = (f.void_1_0_2.default or true);
+    void_1_0_2.std =
+      (f.void_1_0_2.std or false) ||
+      (f.void_1_0_2.default or false) ||
+      (void_1_0_2.default or false);
+  }) [];
+  want_0_0_4 = { features?(want_0_0_4_features {}) }: want_0_0_4_ {
+    dependencies = mapFeatures features ([ futures_0_1_23 log_0_4_3 try_lock_0_1_0 ]);
+  };
+  want_0_0_4_features = f: updateFeatures f (rec {
+    futures_0_1_23.default = true;
+    log_0_4_3.default = true;
+    try_lock_0_1_0.default = true;
+    want_0_0_4.default = (f.want_0_0_4.default or true);
+  }) [ futures_0_1_23_features log_0_4_3_features try_lock_0_1_0_features ];
+  winapi_0_2_8 = { features?(winapi_0_2_8_features {}) }: winapi_0_2_8_ {};
+  winapi_0_2_8_features = f: updateFeatures f (rec {
+    winapi_0_2_8.default = (f.winapi_0_2_8.default or true);
+  }) [];
+  winapi_0_3_5 = { features?(winapi_0_3_5_features {}) }: winapi_0_3_5_ {
+    dependencies = (if kernel == "i686-pc-windows-gnu" then mapFeatures features ([ winapi_i686_pc_windows_gnu_0_4_0 ]) else [])
+      ++ (if kernel == "x86_64-pc-windows-gnu" then mapFeatures features ([ winapi_x86_64_pc_windows_gnu_0_4_0 ]) else []);
+    features = mkFeatures (features.winapi_0_3_5 or {});
+  };
+  winapi_0_3_5_features = f: updateFeatures f (rec {
+    winapi_0_3_5.default = (f.winapi_0_3_5.default or true);
+    winapi_i686_pc_windows_gnu_0_4_0.default = true;
+    winapi_x86_64_pc_windows_gnu_0_4_0.default = true;
+  }) [ winapi_i686_pc_windows_gnu_0_4_0_features winapi_x86_64_pc_windows_gnu_0_4_0_features ];
+  winapi_build_0_1_1 = { features?(winapi_build_0_1_1_features {}) }: winapi_build_0_1_1_ {};
+  winapi_build_0_1_1_features = f: updateFeatures f (rec {
+    winapi_build_0_1_1.default = (f.winapi_build_0_1_1.default or true);
+  }) [];
+  winapi_i686_pc_windows_gnu_0_4_0 = { features?(winapi_i686_pc_windows_gnu_0_4_0_features {}) }: winapi_i686_pc_windows_gnu_0_4_0_ {};
+  winapi_i686_pc_windows_gnu_0_4_0_features = f: updateFeatures f (rec {
+    winapi_i686_pc_windows_gnu_0_4_0.default = (f.winapi_i686_pc_windows_gnu_0_4_0.default or true);
+  }) [];
+  winapi_x86_64_pc_windows_gnu_0_4_0 = { features?(winapi_x86_64_pc_windows_gnu_0_4_0_features {}) }: winapi_x86_64_pc_windows_gnu_0_4_0_ {};
+  winapi_x86_64_pc_windows_gnu_0_4_0_features = f: updateFeatures f (rec {
+    winapi_x86_64_pc_windows_gnu_0_4_0.default = (f.winapi_x86_64_pc_windows_gnu_0_4_0.default or true);
+  }) [];
+  ws2_32_sys_0_2_1 = { features?(ws2_32_sys_0_2_1_features {}) }: ws2_32_sys_0_2_1_ {
+    dependencies = mapFeatures features ([ winapi_0_2_8 ]);
+    buildDependencies = mapFeatures features ([ winapi_build_0_1_1 ]);
+  };
+  ws2_32_sys_0_2_1_features = f: updateFeatures f (rec {
+    winapi_0_2_8.default = true;
+    winapi_build_0_1_1.default = true;
+    ws2_32_sys_0_2_1.default = (f.ws2_32_sys_0_2_1.default or true);
+  }) [ winapi_0_2_8_features winapi_build_0_1_1_features ];
+  xattr_0_2_2 = { features?(xattr_0_2_2_features {}) }: xattr_0_2_2_ {
+    dependencies = mapFeatures features ([ libc_0_2_42 ]);
+    features = mkFeatures (features.xattr_0_2_2 or {});
+  };
+  xattr_0_2_2_features = f: updateFeatures f (rec {
+    libc_0_2_42.default = true;
+    xattr_0_2_2.default = (f.xattr_0_2_2.default or true);
+    xattr_0_2_2.unsupported =
+      (f.xattr_0_2_2.unsupported or false) ||
+      (f.xattr_0_2_2.default or false) ||
+      (xattr_0_2_2.default or false);
+  }) [ libc_0_2_42_features ];
+}
diff --git a/pkgs/tools/package-management/cargo-download/default.nix b/pkgs/tools/package-management/cargo-download/default.nix
new file mode 100644
index 000000000000..398e007c3702
--- /dev/null
+++ b/pkgs/tools/package-management/cargo-download/default.nix
@@ -0,0 +1,11 @@
+{ stdenv, lib, fetchgit, darwin, buildPlatform
+, buildRustCrate, defaultCrateOverrides }:
+
+((import ./Cargo.nix { inherit lib buildPlatform buildRustCrate fetchgit; }).cargo_download {}).override {
+  crateOverrides = defaultCrateOverrides // {
+    cargo-download = attrs: {
+      buildInputs = lib.optional stdenv.isDarwin
+        darwin.apple_sdk.frameworks.Security;
+    };
+  };
+}
diff --git a/pkgs/tools/package-management/cargo-edit/cargo-edit.nix b/pkgs/tools/package-management/cargo-edit/cargo-edit.nix
deleted file mode 100644
index 7224c11f183f..000000000000
--- a/pkgs/tools/package-management/cargo-edit/cargo-edit.nix
+++ /dev/null
@@ -1,1905 +0,0 @@
-# Generated by carnix 0.6.6: carnix -o cargo-edit.nix --src ./. Cargo.lock --standalone
-{ pkgs }:
-
-with pkgs;
-let kernel = stdenv.buildPlatform.parsed.kernel.name;
-    updateFeatures = f: up: functions: builtins.deepSeq f (lib.lists.foldl' (features: fun: fun features) (lib.attrsets.recursiveUpdate f up) functions);
-    mapFeatures = features: map (fun: fun { features = features; });
-    mkFeatures = feat: lib.lists.foldl (features: featureName:
-      if feat.${featureName} or false then
-        [ featureName ] ++ features
-      else
-        features
-    ) [] (builtins.attrNames feat);
-in
-rec {
-  cargo_edit = f: cargo_edit_0_2_0 { features = cargo_edit_0_2_0_features { cargo_edit_0_2_0 = f; }; };
-  adler32_1_0_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "adler32";
-    version = "1.0.0";
-    authors = [ "Remi Rampin <remirampin@gmail.com>" ];
-    sha256 = "0pj35a7m4apn5xjg9n63gsdj6w8iw76zg4p9znrij43xnfqp084w";
-    inherit dependencies buildDependencies features;
-  };
-  advapi32_sys_0_2_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "advapi32-sys";
-    version = "0.2.0";
-    authors = [ "Peter Atashian <retep998@gmail.com>" ];
-    sha256 = "1l6789hkz2whd9gklwz1m379kcvyizaj8nnzj3rn4a5h79yg59v7";
-    libName = "advapi32";
-    build = "build.rs";
-    inherit dependencies buildDependencies features;
-  };
-  aho_corasick_0_6_3_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "aho-corasick";
-    version = "0.6.3";
-    authors = [ "Andrew Gallant <jamslam@gmail.com>" ];
-    sha256 = "1cpqzf6acj8lm06z3f1cg41wn6c2n9l3v49nh0dvimv4055qib6k";
-    libName = "aho_corasick";
-    crateBin = [ {  name = "aho-corasick-dot"; } ];
-    inherit dependencies buildDependencies features;
-  };
-  assert_cli_0_4_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "assert_cli";
-    version = "0.4.0";
-    authors = [ "Pascal Hertleif <killercup@gmail.com>" ];
-    sha256 = "0jq138q0wma5b149ixjv43al19xnzwgp67s908mh4cma1ar4rxbn";
-    build = "build.rs";
-    inherit dependencies buildDependencies features;
-  };
-  backtrace_0_3_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "backtrace";
-    version = "0.3.2";
-    authors = [ "Alex Crichton <alex@alexcrichton.com>" "The Rust Project Developers" ];
-    sha256 = "0cj0ynv5p2f5ghisw58yjwrw4gvpji6sh12kk9j0228j7bhjznv7";
-    inherit dependencies buildDependencies features;
-  };
-  backtrace_sys_0_1_11_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "backtrace-sys";
-    version = "0.1.11";
-    authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
-    sha256 = "06c6s9hsygix25awgcfa1gnzvihc7kvv5apnmf6p15l4phwzz6x6";
-    build = "build.rs";
-    inherit dependencies buildDependencies features;
-  };
-  base64_0_6_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "base64";
-    version = "0.6.0";
-    authors = [ "Alice Maz <alice@alicemaz.com>" "Marshall Pierce <marshall@mpierce.org>" ];
-    sha256 = "0ql1rmczbnww3iszc0pfc6mqa47ravpsdf525vp6s8r32nyzspl5";
-    inherit dependencies buildDependencies features;
-  };
-  bitflags_0_9_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "bitflags";
-    version = "0.9.1";
-    authors = [ "The Rust Project Developers" ];
-    sha256 = "18h073l5jd88rx4qdr95fjddr9rk79pb1aqnshzdnw16cfmb9rws";
-    inherit dependencies buildDependencies features;
-  };
-  byteorder_1_1_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "byteorder";
-    version = "1.1.0";
-    authors = [ "Andrew Gallant <jamslam@gmail.com>" ];
-    sha256 = "1i2n0161jm00zvzh4bncgv9zrwa6ydbxdn5j4bx0wwn7rvi9zycp";
-    inherit dependencies buildDependencies features;
-  };
-  bytes_0_4_4_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "bytes";
-    version = "0.4.4";
-    authors = [ "Carl Lerche <me@carllerche.com>" ];
-    sha256 = "028l4zlrjbr62y92slr84zil8h1bypqr7g545i566gf7cbss7hsp";
-    inherit dependencies buildDependencies features;
-  };
-  cargo_edit_0_2_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "cargo-edit";
-    version = "0.2.0";
-    authors = [ "Without Boats <lee@libertad.ucsd.edu>" "Pascal Hertleif <killercup@gmail.com>" "Sebastian Garrido <sebasgarcep@gmail.com>" "Jonas Platte <mail@jonasplatte.de>" "Benjamin Gill <git@bgill.eu>" "Andronik Ordian <write@reusable.software>" ];
-    src = ./.;
-    crateBin = [ {  name = "cargo-add";  path = "src/bin/add/main.rs"; } {  name = "cargo-rm";  path = "src/bin/rm/main.rs"; } {  name = "cargo-upgrade";  path = "src/bin/upgrade/main.rs"; } ];
-    inherit dependencies buildDependencies features;
-  };
-  cfg_if_0_1_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "cfg-if";
-    version = "0.1.2";
-    authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
-    sha256 = "0x06hvrrqy96m97593823vvxcgvjaxckghwyy2jcyc8qc7c6cyhi";
-    inherit dependencies buildDependencies features;
-  };
-  colored_1_5_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "colored";
-    version = "1.5.2";
-    authors = [ "Thomas Wickham <mackwic@gmail.com>" ];
-    sha256 = "0d7c6vpqzlabph7qr29hdjgsks8z9hqcarzl8z5dfb8cnnrfrhzn";
-    inherit dependencies buildDependencies features;
-  };
-  core_foundation_0_2_3_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "core-foundation";
-    version = "0.2.3";
-    authors = [ "The Servo Project Developers" ];
-    sha256 = "1g0vpya5h2wa0nlz4a74jar6y8z09f0p76zbzfqrm3dbfsrld1pm";
-    inherit dependencies buildDependencies features;
-  };
-  core_foundation_sys_0_2_3_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "core-foundation-sys";
-    version = "0.2.3";
-    authors = [ "The Servo Project Developers" ];
-    sha256 = "19s0d03294m9s5j8cvy345db3gkhs2y02j5268ap0c6ky5apl53s";
-    build = "build.rs";
-    inherit dependencies buildDependencies features;
-  };
-  crypt32_sys_0_2_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "crypt32-sys";
-    version = "0.2.0";
-    authors = [ "Peter Atashian <retep998@gmail.com>" ];
-    sha256 = "1vy1q3ayc7f4wiwyxw31hd12cvs7791x3by6ka9wbxhm5gzfs3d0";
-    libName = "crypt32";
-    build = "build.rs";
-    inherit dependencies buildDependencies features;
-  };
-  dbghelp_sys_0_2_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "dbghelp-sys";
-    version = "0.2.0";
-    authors = [ "Peter Atashian <retep998@gmail.com>" ];
-    sha256 = "0ylpi3bbiy233m57hnisn1df1v0lbl7nsxn34b0anzsgg440hqpq";
-    libName = "dbghelp";
-    build = "build.rs";
-    inherit dependencies buildDependencies features;
-  };
-  difference_1_0_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "difference";
-    version = "1.0.0";
-    authors = [ "Johann Hofmann <mail@johann-hofmann.com>" ];
-    sha256 = "0r1p2diin8zykfiifv6v9i3ajimdb1rg6qzxkrfw2n2iy57846qn";
-    crateBin = [ {  name = "difference"; } ];
-    inherit dependencies buildDependencies features;
-  };
-  docopt_0_8_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "docopt";
-    version = "0.8.1";
-    authors = [ "Andrew Gallant <jamslam@gmail.com>" ];
-    sha256 = "0kmqy534qgcc2hh81nd248jmnvdjb5y4wclddd7y2jjm27rzibss";
-    crateBin = [ {  name = "docopt-wordlist";  path = "src/wordlist.rs"; } ];
-    inherit dependencies buildDependencies features;
-  };
-  dtoa_0_4_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "dtoa";
-    version = "0.4.1";
-    authors = [ "David Tolnay <dtolnay@gmail.com>" ];
-    sha256 = "0mgg4r90yby68qg7y8csbclhsm53ac26vsyq615viq535plllhzw";
-    inherit dependencies buildDependencies features;
-  };
-  error_chain_0_10_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "error-chain";
-    version = "0.10.0";
-    authors = [ "Brian Anderson <banderson@mozilla.com>" "Paul Colomiets <paul@colomiets.name>" "Colin Kiegel <kiegel@gmx.de>" "Yamakaky <yamakaky@yamaworld.fr>" ];
-    sha256 = "1xxbzd8cjlpzsb9fsih7mdnndhzrvykj0w77yg90qc85az1xwy5z";
-    inherit dependencies buildDependencies features;
-  };
-  foreign_types_0_2_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "foreign-types";
-    version = "0.2.0";
-    authors = [ "Steven Fackler <sfackler@gmail.com>" ];
-    sha256 = "1sznwg2py4xi7hyrx0gg1sirlwgh87wsanvjx3zb475g6c4139jh";
-    inherit dependencies buildDependencies features;
-  };
-  futures_0_1_14_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "futures";
-    version = "0.1.14";
-    authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
-    sha256 = "1s53l50dy9abbycc88ghz1s76yfacygrxr3vnkl132m9ja0qi9nl";
-    inherit dependencies buildDependencies features;
-  };
-  futures_cpupool_0_1_5_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "futures-cpupool";
-    version = "0.1.5";
-    authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
-    sha256 = "1i001y0qv8pvvqd2ch1gsxw97286bcf789mlnhaindjzhm7x8fi6";
-    inherit dependencies buildDependencies features;
-  };
-  gcc_0_3_51_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "gcc";
-    version = "0.3.51";
-    authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
-    sha256 = "0h2lnfakbvyn7lzpi5x41y30d5pzwz3172bdjzxxm4j59ipby563";
-    inherit dependencies buildDependencies features;
-  };
-  getopts_0_2_14_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "getopts";
-    version = "0.2.14";
-    authors = [ "The Rust Project Developers" ];
-    sha256 = "1wdz34vls97g9868h8kiw4wmwkbyxg4xm3xzvr1542hc3w4c7z0a";
-    inherit dependencies buildDependencies features;
-  };
-  httparse_1_2_3_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "httparse";
-    version = "1.2.3";
-    authors = [ "Sean McArthur <sean.monstar@gmail.com>" ];
-    sha256 = "13x17y9bip0bija06y4vwpgh8jdmdi2gsvjq02kyfy0fbp5cqa93";
-    inherit dependencies buildDependencies features;
-  };
-  hyper_0_11_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "hyper";
-    version = "0.11.1";
-    authors = [ "Sean McArthur <sean.monstar@gmail.com>" ];
-    sha256 = "0al73rns6d18f09v872hasr5sf56mpzg4cpzi9g0118fy6v2z21a";
-    inherit dependencies buildDependencies features;
-  };
-  hyper_tls_0_1_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "hyper-tls";
-    version = "0.1.2";
-    authors = [ "Sean McArthur <sean.monstar@gmail.com>" ];
-    sha256 = "0n39sb8sc2pzdg501nshmv35q0r9pnrfjh8r1pdlygwxgcni9n3d";
-    inherit dependencies buildDependencies features;
-  };
-  idna_0_1_4_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "idna";
-    version = "0.1.4";
-    authors = [ "The rust-url developers" ];
-    sha256 = "15j44qgjx1skwg9i7f4cm36ni4n99b1ayx23yxx7axxcw8vjf336";
-    inherit dependencies buildDependencies features;
-  };
-  iovec_0_1_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "iovec";
-    version = "0.1.0";
-    authors = [ "Carl Lerche <me@carllerche.com>" ];
-    sha256 = "01gmbcaamfms70ll964wj3akqbj5bf6zzi7nfj5y2hvzjxd959sj";
-    inherit dependencies buildDependencies features;
-  };
-  itoa_0_3_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "itoa";
-    version = "0.3.1";
-    authors = [ "David Tolnay <dtolnay@gmail.com>" ];
-    sha256 = "0jp1wvfw0qqbyz0whbycp7xr5nx1ds5plh4wsfyj503xmjf9ab4k";
-    inherit dependencies buildDependencies features;
-  };
-  kernel32_sys_0_2_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "kernel32-sys";
-    version = "0.2.2";
-    authors = [ "Peter Atashian <retep998@gmail.com>" ];
-    sha256 = "1lrw1hbinyvr6cp28g60z97w32w8vsk6pahk64pmrv2fmby8srfj";
-    libName = "kernel32";
-    build = "build.rs";
-    inherit dependencies buildDependencies features;
-  };
-  language_tags_0_2_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "language-tags";
-    version = "0.2.2";
-    authors = [ "Pyfisch <pyfisch@gmail.com>" ];
-    sha256 = "1zkrdzsqzzc7509kd7nngdwrp461glm2g09kqpzaqksp82frjdvy";
-    inherit dependencies buildDependencies features;
-  };
-  lazy_static_0_2_8_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "lazy_static";
-    version = "0.2.8";
-    authors = [ "Marvin Löbel <loebel.marvin@gmail.com>" ];
-    sha256 = "1xbpxx7cd5kl60g87g43q80jxyrsildhxfjc42jb1x4jncknpwbl";
-    inherit dependencies buildDependencies features;
-  };
-  lazycell_0_4_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "lazycell";
-    version = "0.4.0";
-    authors = [ "Alex Crichton <alex@alexcrichton.com>" "Nikita Pekin <contact@nikitapek.in>" ];
-    sha256 = "1vgxv62l8qh3m8gvjyrd7wkx44hih724ivssc1mwj7vq9gnhgl0d";
-    inherit dependencies buildDependencies features;
-  };
-  libc_0_2_26_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "libc";
-    version = "0.2.26";
-    authors = [ "The Rust Project Developers" ];
-    sha256 = "0938y1yh2sr08zy8vpgj9wqk3nildip4ngpy2krvarzc8aqgvxrc";
-    inherit dependencies buildDependencies features;
-  };
-  libflate_0_1_10_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "libflate";
-    version = "0.1.10";
-    authors = [ "Takeru Ohta <phjgt308@gmail.com>" ];
-    sha256 = "123m6wz1qvczv8fnak0k71hb7gj2kkiw3sj3rv55gfmir2kgf6gk";
-    inherit dependencies buildDependencies features;
-  };
-  log_0_3_8_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "log";
-    version = "0.3.8";
-    authors = [ "The Rust Project Developers" ];
-    sha256 = "1c43z4z85sxrsgir4s1hi84558ab5ic7jrn5qgmsiqcv90vvn006";
-    inherit dependencies buildDependencies features;
-  };
-  matches_0_1_6_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "matches";
-    version = "0.1.6";
-    authors = [ "Simon Sapin <simon.sapin@exyr.org>" ];
-    sha256 = "1zlrqlbvzxdil8z8ial2ihvxjwvlvg3g8dr0lcdpsjclkclasjan";
-    libPath = "lib.rs";
-    inherit dependencies buildDependencies features;
-  };
-  memchr_1_0_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "memchr";
-    version = "1.0.1";
-    authors = [ "Andrew Gallant <jamslam@gmail.com>" "bluss" ];
-    sha256 = "071m5y0zm9p1k7pzqm20f44ixvmycf71xsrpayqaypxrjwchnkxm";
-    inherit dependencies buildDependencies features;
-  };
-  mime_0_3_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "mime";
-    version = "0.3.2";
-    authors = [ "Sean McArthur <sean.monstar@gmail.com>" ];
-    sha256 = "10yv7sq2gbq8xdh4imrga3wqiar652y8y31f8jqxw313pwsks3m5";
-    inherit dependencies buildDependencies features;
-  };
-  mio_0_6_9_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "mio";
-    version = "0.6.9";
-    authors = [ "Carl Lerche <me@carllerche.com>" ];
-    sha256 = "0fbx9mxqqzcp0jzm1xkg9h4l4l43vphv3zca4zpdc8ahadvfw6qh";
-    inherit dependencies buildDependencies features;
-  };
-  miow_0_2_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "miow";
-    version = "0.2.1";
-    authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
-    sha256 = "14f8zkc6ix7mkyis1vsqnim8m29b6l55abkba3p2yz7j1ibcvrl0";
-    inherit dependencies buildDependencies features;
-  };
-  native_tls_0_1_4_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "native-tls";
-    version = "0.1.4";
-    authors = [ "Steven Fackler <sfackler@gmail.com>" ];
-    sha256 = "0q5y5i96mfpjbhx8y7w9rdq65mksw67m60bw4xqlybc8y6jkr99v";
-    inherit dependencies buildDependencies features;
-  };
-  net2_0_2_30_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "net2";
-    version = "0.2.30";
-    authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
-    sha256 = "1gd7r0d646sa3fdj7rwyyx43fj7m9amqvmn0h4gv6sqcwgb7rlad";
-    inherit dependencies buildDependencies features;
-  };
-  num_traits_0_1_40_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "num-traits";
-    version = "0.1.40";
-    authors = [ "The Rust Project Developers" ];
-    sha256 = "1fr8ghp4i97q3agki54i0hpmqxv3s65i2mqd1pinc7w7arc3fplw";
-    inherit dependencies buildDependencies features;
-  };
-  num_cpus_1_6_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "num_cpus";
-    version = "1.6.2";
-    authors = [ "Sean McArthur <sean.monstar@gmail.com>" ];
-    sha256 = "0wxfzxsk05xbkph5qcvdqyi334zn0pnpahzi7n7iagxbb68145rm";
-    inherit dependencies buildDependencies features;
-  };
-  openssl_0_9_14_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "openssl";
-    version = "0.9.14";
-    authors = [ "Steven Fackler <sfackler@gmail.com>" ];
-    sha256 = "0z8bza11x7fbhzsa3xrp4hzv4sl83102yxaiigmsdh2a480xg6jl";
-    build = "build.rs";
-    inherit dependencies buildDependencies features;
-  };
-  openssl_sys_0_9_14_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "openssl-sys";
-    version = "0.9.14";
-    authors = [ "Alex Crichton <alex@alexcrichton.com>" "Steven Fackler <sfackler@gmail.com>" ];
-    sha256 = "0wq8hanw6lsm7h49ql62b3z5immbk8dcbp61vddd0pi5rk53cb2w";
-    build = "build.rs";
-    inherit dependencies buildDependencies features;
-  };
-  pad_0_1_4_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "pad";
-    version = "0.1.4";
-    authors = [ "Ben S <ogham@bsago.me>" ];
-    sha256 = "1ca30d5s6yx1cb5qa3hwxgl53m69cnn037disw3kr6cv7sy7mw1n";
-    inherit dependencies buildDependencies features;
-  };
-  percent_encoding_1_0_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "percent-encoding";
-    version = "1.0.0";
-    authors = [ "The rust-url developers" ];
-    sha256 = "0c91wp8inj7z270i2kilxjl00kcagqalxxnnjg7fsdlimdwb7q1z";
-    libPath = "lib.rs";
-    inherit dependencies buildDependencies features;
-  };
-  pkg_config_0_3_9_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "pkg-config";
-    version = "0.3.9";
-    authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
-    sha256 = "06k8fxgrsrxj8mjpjcq1n7mn2p1shpxif4zg9y5h09c7vy20s146";
-    inherit dependencies buildDependencies features;
-  };
-  pretty_assertions_0_2_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "pretty_assertions";
-    version = "0.2.1";
-    authors = [ "Colin Kiegel <kiegel@gmx.de>" ];
-    sha256 = "06i0q8xjs1kbv3g0amx997axm93znwvpmj560vxrzn7s55hb9a8i";
-    inherit dependencies buildDependencies features;
-  };
-  pulldown_cmark_0_0_3_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "pulldown-cmark";
-    version = "0.0.3";
-    authors = [ "Raph Levien <raph@google.com>" ];
-    sha256 = "08wgdjqjnaz8yjvamdwcf1cqz18z795frkmbal9rgp9g2i1yrzwy";
-    inherit dependencies buildDependencies features;
-  };
-  quick_error_1_2_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "quick-error";
-    version = "1.2.0";
-    authors = [ "Paul Colomiets <paul@colomiets.name>" "Colin Kiegel <kiegel@gmx.de>" ];
-    sha256 = "1gc95wll0algrl2cqrym6x97sg07hslczn6wkbnkxfikrfissmga";
-    inherit dependencies buildDependencies features;
-  };
-  quote_0_3_15_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "quote";
-    version = "0.3.15";
-    authors = [ "David Tolnay <dtolnay@gmail.com>" ];
-    sha256 = "09il61jv4kd1360spaj46qwyl21fv1qz18fsv2jra8wdnlgl5jsg";
-    inherit dependencies buildDependencies features;
-  };
-  rand_0_3_15_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "rand";
-    version = "0.3.15";
-    authors = [ "The Rust Project Developers" ];
-    sha256 = "1fs30rc1xic40s1n7l3y7pxzfifpy03mgrvhy5ggp5p7zjfv3rr8";
-    inherit dependencies buildDependencies features;
-  };
-  redox_syscall_0_1_26_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "redox_syscall";
-    version = "0.1.26";
-    authors = [ "Jeremy Soller <jackpot51@gmail.com>" ];
-    sha256 = "0hfnc05jwlkkkjpvzzfbx8anzgc2n81n92pmvb065hkqlarbjz85";
-    libName = "syscall";
-    inherit dependencies buildDependencies features;
-  };
-  regex_0_2_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "regex";
-    version = "0.2.2";
-    authors = [ "The Rust Project Developers" ];
-    sha256 = "1f1zrrynfylg0vcfyfp60bybq4rp5g1yk2k7lc7fyz7mmc7k2qr7";
-    inherit dependencies buildDependencies features;
-  };
-  regex_syntax_0_4_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "regex-syntax";
-    version = "0.4.1";
-    authors = [ "The Rust Project Developers" ];
-    sha256 = "01yrsm68lj86ad1whgg1z95c2pfsvv58fz8qjcgw7mlszc0c08ls";
-    inherit dependencies buildDependencies features;
-  };
-  reqwest_0_7_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "reqwest";
-    version = "0.7.1";
-    authors = [ "Sean McArthur <sean.monstar@gmail.com>" ];
-    sha256 = "0w3x0f6wmha09jcv83dkw00gpl11afi2k4gsavl43ccfdfa4b2nh";
-    inherit dependencies buildDependencies features;
-  };
-  rustc_demangle_0_1_4_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "rustc-demangle";
-    version = "0.1.4";
-    authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
-    sha256 = "0q7myf1m5r7cilayw5r2n5qraxwlcpdr7s2mq8c63pxrz48h24qv";
-    inherit dependencies buildDependencies features;
-  };
-  rustc_version_0_1_7_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "rustc_version";
-    version = "0.1.7";
-    authors = [ "Marvin Löbel <loebel.marvin@gmail.com>" ];
-    sha256 = "0plm9pbyvcwfibd0kbhzil9xmr1bvqi8fgwlfw0x4vali8s6s99p";
-    inherit dependencies buildDependencies features;
-  };
-  safemem_0_2_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "safemem";
-    version = "0.2.0";
-    authors = [ "Austin Bonander <austin.bonander@gmail.com>" ];
-    sha256 = "058m251q202n479ip1h6s91yw3plg66vsk5mpaflssn6rs5hijdm";
-    inherit dependencies buildDependencies features;
-  };
-  schannel_0_1_7_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "schannel";
-    version = "0.1.7";
-    authors = [ "Steven Fackler <sfackler@gmail.com>" "Steffen Butzer <steffen.butzer@outlook.com>" ];
-    sha256 = "1np6wzxwj8r4kqmmz0a3w9dfs2zfwh0m7mrv7xpzxkpm4c4hcn5f";
-    build = "build.rs";
-    inherit dependencies buildDependencies features;
-  };
-  scoped_tls_0_1_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "scoped-tls";
-    version = "0.1.0";
-    authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
-    sha256 = "1j8azxa15srljafrg7wc221npvxb3700sbfk6jjav0rw2zclsnf5";
-    inherit dependencies buildDependencies features;
-  };
-  secur32_sys_0_2_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "secur32-sys";
-    version = "0.2.0";
-    authors = [ "Peter Atashian <retep998@gmail.com>" ];
-    sha256 = "0sp46ix9mx1156bidpfiq30xxsgmpva5jffls3259kxjqlxifcnx";
-    libName = "secur32";
-    build = "build.rs";
-    inherit dependencies buildDependencies features;
-  };
-  security_framework_0_1_14_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "security-framework";
-    version = "0.1.14";
-    authors = [ "Steven Fackler <sfackler@gmail.com>" ];
-    sha256 = "0xxxasrqls0ssflxjl2bf6bvljig0piy13pscbgkxd4zqw7w8i7q";
-    inherit dependencies buildDependencies features;
-  };
-  security_framework_sys_0_1_14_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "security-framework-sys";
-    version = "0.1.14";
-    authors = [ "Steven Fackler <sfackler@gmail.com>" ];
-    sha256 = "15ggkd39aq01yzrg0fxchciz9gf5wncl7k3mgvqmi7vk7hfhkcw7";
-    build = "build.rs";
-    inherit dependencies buildDependencies features;
-  };
-  semver_0_1_20_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "semver";
-    version = "0.1.20";
-    authors = [ "The Rust Project Developers" ];
-    sha256 = "05cdig0071hls2k8lxbqmyqpl0zjmc53i2d43mwzps033b8njh4n";
-    inherit dependencies buildDependencies features;
-  };
-  semver_0_7_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "semver";
-    version = "0.7.0";
-    authors = [ "Steve Klabnik <steve@steveklabnik.com>" "The Rust Project Developers" ];
-    sha256 = "079944bh20ldr41i96nk9b31igj555dl2d8mg51m4h0ccwric4l8";
-    inherit dependencies buildDependencies features;
-  };
-  semver_parser_0_7_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "semver-parser";
-    version = "0.7.0";
-    authors = [ "Steve Klabnik <steve@steveklabnik.com>" ];
-    sha256 = "1da66c8413yakx0y15k8c055yna5lyb6fr0fw9318kdwkrk5k12h";
-    inherit dependencies buildDependencies features;
-  };
-  serde_1_0_10_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "serde";
-    version = "1.0.10";
-    authors = [ "Erick Tryzelaar <erick.tryzelaar@gmail.com>" "David Tolnay <dtolnay@gmail.com>" ];
-    sha256 = "1p71hm8xpa7gfmhr2hzb4ah1ajhsmf3gh3i1fknf9ch8dn0qfycv";
-    inherit dependencies buildDependencies features;
-  };
-  serde_derive_1_0_10_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "serde_derive";
-    version = "1.0.10";
-    authors = [ "Erick Tryzelaar <erick.tryzelaar@gmail.com>" "David Tolnay <dtolnay@gmail.com>" ];
-    sha256 = "1m5if144vqsjx9fk6g7b9x0cy8mam6w78yghv3fykngminklcjw6";
-    procMacro = true;
-    inherit dependencies buildDependencies features;
-  };
-  serde_derive_internals_0_15_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "serde_derive_internals";
-    version = "0.15.1";
-    authors = [ "Erick Tryzelaar <erick.tryzelaar@gmail.com>" "David Tolnay <dtolnay@gmail.com>" ];
-    sha256 = "0s2i03rv2sppywan0z5qiif65b2wqc6lp5r5l71mz4nigrh04zrj";
-    inherit dependencies buildDependencies features;
-  };
-  serde_json_1_0_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "serde_json";
-    version = "1.0.2";
-    authors = [ "Erick Tryzelaar <erick.tryzelaar@gmail.com>" "David Tolnay <dtolnay@gmail.com>" ];
-    sha256 = "0vabw2zciy8vy0hgj0khm1vwbvng4whwry7ylfl3ypd0inx84mn6";
-    inherit dependencies buildDependencies features;
-  };
-  serde_urlencoded_0_5_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "serde_urlencoded";
-    version = "0.5.1";
-    authors = [ "Anthony Ramine <n.oxyde@gmail.com>" ];
-    sha256 = "0zh2wlnapmcwqhxnnq1mdlmg8vily7j54wvj01s7cvapzg5jphdl";
-    inherit dependencies buildDependencies features;
-  };
-  skeptic_0_5_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "skeptic";
-    version = "0.5.0";
-    authors = [ "Brian Anderson <banderson@mozilla.com>" ];
-    sha256 = "06vf19309psngmx61sg33czbkx1cg9bmw0wr66n9mqdhvwa4y52d";
-    libPath = "lib.rs";
-    inherit dependencies buildDependencies features;
-  };
-  slab_0_3_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "slab";
-    version = "0.3.0";
-    authors = [ "Carl Lerche <me@carllerche.com>" ];
-    sha256 = "0y6lhjggksh57hyfd3l6p9wgv5nhvw9c6djrysq7jnalz8fih21k";
-    inherit dependencies buildDependencies features;
-  };
-  smallvec_0_2_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "smallvec";
-    version = "0.2.1";
-    authors = [ "Simon Sapin <simon.sapin@exyr.org>" ];
-    sha256 = "0rnsll9af52bpjngz0067dpm1ndqmh76i64a58fc118l4lvnjxw2";
-    libPath = "lib.rs";
-    inherit dependencies buildDependencies features;
-  };
-  strsim_0_6_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "strsim";
-    version = "0.6.0";
-    authors = [ "Danny Guo <dannyguo91@gmail.com>" ];
-    sha256 = "1lz85l6y68hr62lv4baww29yy7g8pg20dlr0lbaswxmmcb0wl7gd";
-    inherit dependencies buildDependencies features;
-  };
-  syn_0_11_11_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "syn";
-    version = "0.11.11";
-    authors = [ "David Tolnay <dtolnay@gmail.com>" ];
-    sha256 = "0yw8ng7x1dn5a6ykg0ib49y7r9nhzgpiq2989rqdp7rdz3n85502";
-    inherit dependencies buildDependencies features;
-  };
-  synom_0_11_3_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "synom";
-    version = "0.11.3";
-    authors = [ "David Tolnay <dtolnay@gmail.com>" ];
-    sha256 = "1l6d1s9qjfp6ng2s2z8219igvlv7gyk8gby97sdykqc1r93d8rhc";
-    inherit dependencies buildDependencies features;
-  };
-  take_0_1_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "take";
-    version = "0.1.0";
-    authors = [ "Carl Lerche <me@carllerche.com>" ];
-    sha256 = "17rfh39di5n8w9aghpic2r94cndi3dr04l60nkjylmxfxr3iwlhd";
-    inherit dependencies buildDependencies features;
-  };
-  tempdir_0_3_5_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "tempdir";
-    version = "0.3.5";
-    authors = [ "The Rust Project Developers" ];
-    sha256 = "0rirc5prqppzgd15fm8ayan349lgk2k5iqdkrbwrwrv5pm4znsnz";
-    inherit dependencies buildDependencies features;
-  };
-  thread_local_0_3_4_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "thread_local";
-    version = "0.3.4";
-    authors = [ "Amanieu d'Antras <amanieu@gmail.com>" ];
-    sha256 = "1y6cwyhhx2nkz4b3dziwhqdvgq830z8wjp32b40pjd8r0hxqv2jr";
-    inherit dependencies buildDependencies features;
-  };
-  time_0_1_38_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "time";
-    version = "0.1.38";
-    authors = [ "The Rust Project Developers" ];
-    sha256 = "1ws283vvz7c6jfiwn53rmc6kybapr4pjaahfxxrz232b0qzw7gcp";
-    inherit dependencies buildDependencies features;
-  };
-  tokio_core_0_1_8_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "tokio-core";
-    version = "0.1.8";
-    authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
-    sha256 = "1wikhmk648j13dxy4dpi435dm943ph5bf4ldfhpxn23cbzlr2kcp";
-    inherit dependencies buildDependencies features;
-  };
-  tokio_io_0_1_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "tokio-io";
-    version = "0.1.2";
-    authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
-    sha256 = "07ab05gmzq0xmi5h26wpvjzircax5bwfjgc3zzn62ll4rarz4pva";
-    inherit dependencies buildDependencies features;
-  };
-  tokio_proto_0_1_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "tokio-proto";
-    version = "0.1.1";
-    authors = [ "Carl Lerche <me@carllerche.com>" ];
-    sha256 = "030q9h8pn1ngm80klff5irglxxki60hf5maw0mppmmr46k773z66";
-    inherit dependencies buildDependencies features;
-  };
-  tokio_service_0_1_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "tokio-service";
-    version = "0.1.0";
-    authors = [ "Carl Lerche <me@carllerche.com>" ];
-    sha256 = "0c85wm5qz9fabg0k6k763j89m43n6max72d3a8sxcs940id6qmih";
-    inherit dependencies buildDependencies features;
-  };
-  tokio_tls_0_1_3_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "tokio-tls";
-    version = "0.1.3";
-    authors = [ "Carl Lerche <me@carllerche.com>" "Alex Crichton <alex@alexcrichton.com>" ];
-    sha256 = "0ib58y81qr64m3gg0pn7k06b71r8b05cmvakzpgfqdsw0qj08sva";
-    inherit dependencies buildDependencies features;
-  };
-  toml_0_4_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "toml";
-    version = "0.4.2";
-    authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
-    sha256 = "12v5l461czglhspc0crn29brb9p67xx7n6karrrs87slvq4xc7f1";
-    inherit dependencies buildDependencies features;
-  };
-  unicase_2_0_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "unicase";
-    version = "2.0.0";
-    authors = [ "Sean McArthur <sean.monstar@gmail.com>" ];
-    sha256 = "1nmidnfn5cwp6dr6aln2ffk8yvdfsf3si3bq1znss5swi3i5v64w";
-    build = "build.rs";
-    inherit dependencies buildDependencies features;
-  };
-  unicode_bidi_0_3_4_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "unicode-bidi";
-    version = "0.3.4";
-    authors = [ "The Servo Project Developers" ];
-    sha256 = "0lcd6jasrf8p9p0q20qyf10c6xhvw40m2c4rr105hbk6zy26nj1q";
-    libName = "unicode_bidi";
-    inherit dependencies buildDependencies features;
-  };
-  unicode_normalization_0_1_5_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "unicode-normalization";
-    version = "0.1.5";
-    authors = [ "kwantam <kwantam@gmail.com>" ];
-    sha256 = "0hg29g86fca7b65mwk4sm5s838js6bqrl0gabadbazvbsgjam0j5";
-    inherit dependencies buildDependencies features;
-  };
-  unicode_width_0_1_4_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "unicode-width";
-    version = "0.1.4";
-    authors = [ "kwantam <kwantam@gmail.com>" ];
-    sha256 = "1rp7a04icn9y5c0lm74nrd4py0rdl0af8bhdwq7g478n1xifpifl";
-    inherit dependencies buildDependencies features;
-  };
-  unicode_xid_0_0_4_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "unicode-xid";
-    version = "0.0.4";
-    authors = [ "erick.tryzelaar <erick.tryzelaar@gmail.com>" "kwantam <kwantam@gmail.com>" ];
-    sha256 = "1dc8wkkcd3s6534s5aw4lbjn8m67flkkbnajp5bl8408wdg8rh9v";
-    inherit dependencies buildDependencies features;
-  };
-  unreachable_1_0_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "unreachable";
-    version = "1.0.0";
-    authors = [ "Jonathan Reem <jonathan.reem@gmail.com>" ];
-    sha256 = "1am8czbk5wwr25gbp2zr007744fxjshhdqjz9liz7wl4pnv3whcf";
-    inherit dependencies buildDependencies features;
-  };
-  url_1_5_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "url";
-    version = "1.5.1";
-    authors = [ "The rust-url developers" ];
-    sha256 = "1l2m7jdl2x09fdz60mjk63f61m3fjk1w5ykiadi9lxayg3bvppcw";
-    inherit dependencies buildDependencies features;
-  };
-  utf8_ranges_1_0_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "utf8-ranges";
-    version = "1.0.0";
-    authors = [ "Andrew Gallant <jamslam@gmail.com>" ];
-    sha256 = "0rzmqprwjv9yp1n0qqgahgm24872x6c0xddfym5pfndy7a36vkn0";
-    inherit dependencies buildDependencies features;
-  };
-  void_1_0_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "void";
-    version = "1.0.2";
-    authors = [ "Jonathan Reem <jonathan.reem@gmail.com>" ];
-    sha256 = "0h1dm0dx8dhf56a83k68mijyxigqhizpskwxfdrs1drwv2cdclv3";
-    inherit dependencies buildDependencies features;
-  };
-  winapi_0_2_8_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "winapi";
-    version = "0.2.8";
-    authors = [ "Peter Atashian <retep998@gmail.com>" ];
-    sha256 = "0a45b58ywf12vb7gvj6h3j264nydynmzyqz8d8rqxsj6icqv82as";
-    inherit dependencies buildDependencies features;
-  };
-  winapi_build_0_1_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "winapi-build";
-    version = "0.1.1";
-    authors = [ "Peter Atashian <retep998@gmail.com>" ];
-    sha256 = "1lxlpi87rkhxcwp2ykf1ldw3p108hwm24nywf3jfrvmff4rjhqga";
-    libName = "build";
-    inherit dependencies buildDependencies features;
-  };
-  ws2_32_sys_0_2_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
-    crateName = "ws2_32-sys";
-    version = "0.2.1";
-    authors = [ "Peter Atashian <retep998@gmail.com>" ];
-    sha256 = "1zpy9d9wk11sj17fczfngcj28w4xxjs3b4n036yzpy38dxp4f7kc";
-    libName = "ws2_32";
-    build = "build.rs";
-    inherit dependencies buildDependencies features;
-  };
-  adler32_1_0_0 = { features?(adler32_1_0_0_features {}) }: adler32_1_0_0_ {};
-  adler32_1_0_0_features = f: updateFeatures f (rec {
-    adler32_1_0_0.default = (f.adler32_1_0_0.default or true);
-  }) [];
-  advapi32_sys_0_2_0 = { features?(advapi32_sys_0_2_0_features {}) }: advapi32_sys_0_2_0_ {
-    dependencies = mapFeatures features ([ winapi_0_2_8 ]);
-    buildDependencies = mapFeatures features ([ winapi_build_0_1_1 ]);
-  };
-  advapi32_sys_0_2_0_features = f: updateFeatures f (rec {
-    advapi32_sys_0_2_0.default = (f.advapi32_sys_0_2_0.default or true);
-    winapi_0_2_8.default = true;
-    winapi_build_0_1_1.default = true;
-  }) [ winapi_0_2_8_features winapi_build_0_1_1_features ];
-  aho_corasick_0_6_3 = { features?(aho_corasick_0_6_3_features {}) }: aho_corasick_0_6_3_ {
-    dependencies = mapFeatures features ([ memchr_1_0_1 ]);
-  };
-  aho_corasick_0_6_3_features = f: updateFeatures f (rec {
-    aho_corasick_0_6_3.default = (f.aho_corasick_0_6_3.default or true);
-    memchr_1_0_1.default = true;
-  }) [ memchr_1_0_1_features ];
-  assert_cli_0_4_0 = { features?(assert_cli_0_4_0_features {}) }: assert_cli_0_4_0_ {
-    dependencies = mapFeatures features ([ colored_1_5_2 difference_1_0_0 error_chain_0_10_0 ]);
-    buildDependencies = mapFeatures features ([ skeptic_0_5_0 ]);
-  };
-  assert_cli_0_4_0_features = f: updateFeatures f (rec {
-    assert_cli_0_4_0.default = (f.assert_cli_0_4_0.default or true);
-    colored_1_5_2.default = true;
-    difference_1_0_0.default = true;
-    error_chain_0_10_0.default = true;
-    skeptic_0_5_0.default = true;
-  }) [ colored_1_5_2_features difference_1_0_0_features error_chain_0_10_0_features skeptic_0_5_0_features ];
-  backtrace_0_3_2 = { features?(backtrace_0_3_2_features {}) }: backtrace_0_3_2_ {
-    dependencies = mapFeatures features ([ cfg_if_0_1_2 libc_0_2_26 rustc_demangle_0_1_4 ])
-      ++ (if (kernel == "linux" || kernel == "darwin") && !(kernel == "emscripten") && !(kernel == "darwin") && !(kernel == "ios") then mapFeatures features ([ ]
-      ++ (if features.backtrace_0_3_2.backtrace-sys or false then [ backtrace_sys_0_1_11 ] else [])) else [])
-      ++ (if kernel == "windows" then mapFeatures features ([ ]
-      ++ (if features.backtrace_0_3_2.dbghelp-sys or false then [ dbghelp_sys_0_2_0 ] else [])
-      ++ (if features.backtrace_0_3_2.kernel32-sys or false then [ kernel32_sys_0_2_2 ] else [])
-      ++ (if features.backtrace_0_3_2.winapi or false then [ winapi_0_2_8 ] else [])) else []);
-    features = mkFeatures (features.backtrace_0_3_2 or {});
-  };
-  backtrace_0_3_2_features = f: updateFeatures f (rec {
-    backtrace_0_3_2.backtrace-sys =
-      (f.backtrace_0_3_2.backtrace-sys or false) ||
-      (f.backtrace_0_3_2.libbacktrace or false) ||
-      (backtrace_0_3_2.libbacktrace or false);
-    backtrace_0_3_2.coresymbolication =
-      (f.backtrace_0_3_2.coresymbolication or false) ||
-      (f.backtrace_0_3_2.default or false) ||
-      (backtrace_0_3_2.default or false);
-    backtrace_0_3_2.dbghelp =
-      (f.backtrace_0_3_2.dbghelp or false) ||
-      (f.backtrace_0_3_2.default or false) ||
-      (backtrace_0_3_2.default or false);
-    backtrace_0_3_2.dbghelp-sys =
-      (f.backtrace_0_3_2.dbghelp-sys or false) ||
-      (f.backtrace_0_3_2.dbghelp or false) ||
-      (backtrace_0_3_2.dbghelp or false);
-    backtrace_0_3_2.default = (f.backtrace_0_3_2.default or true);
-    backtrace_0_3_2.dladdr =
-      (f.backtrace_0_3_2.dladdr or false) ||
-      (f.backtrace_0_3_2.default or false) ||
-      (backtrace_0_3_2.default or false);
-    backtrace_0_3_2.kernel32-sys =
-      (f.backtrace_0_3_2.kernel32-sys or false) ||
-      (f.backtrace_0_3_2.dbghelp or false) ||
-      (backtrace_0_3_2.dbghelp or false);
-    backtrace_0_3_2.libbacktrace =
-      (f.backtrace_0_3_2.libbacktrace or false) ||
-      (f.backtrace_0_3_2.default or false) ||
-      (backtrace_0_3_2.default or false);
-    backtrace_0_3_2.libunwind =
-      (f.backtrace_0_3_2.libunwind or false) ||
-      (f.backtrace_0_3_2.default or false) ||
-      (backtrace_0_3_2.default or false);
-    backtrace_0_3_2.rustc-serialize =
-      (f.backtrace_0_3_2.rustc-serialize or false) ||
-      (f.backtrace_0_3_2.serialize-rustc or false) ||
-      (backtrace_0_3_2.serialize-rustc or false);
-    backtrace_0_3_2.serde =
-      (f.backtrace_0_3_2.serde or false) ||
-      (f.backtrace_0_3_2.serialize-serde or false) ||
-      (backtrace_0_3_2.serialize-serde or false);
-    backtrace_0_3_2.serde_derive =
-      (f.backtrace_0_3_2.serde_derive or false) ||
-      (f.backtrace_0_3_2.serialize-serde or false) ||
-      (backtrace_0_3_2.serialize-serde or false);
-    backtrace_0_3_2.winapi =
-      (f.backtrace_0_3_2.winapi or false) ||
-      (f.backtrace_0_3_2.dbghelp or false) ||
-      (backtrace_0_3_2.dbghelp or false);
-    backtrace_sys_0_1_11.default = true;
-    cfg_if_0_1_2.default = true;
-    dbghelp_sys_0_2_0.default = true;
-    kernel32_sys_0_2_2.default = true;
-    libc_0_2_26.default = true;
-    rustc_demangle_0_1_4.default = true;
-    winapi_0_2_8.default = true;
-  }) [ cfg_if_0_1_2_features libc_0_2_26_features rustc_demangle_0_1_4_features backtrace_sys_0_1_11_features dbghelp_sys_0_2_0_features kernel32_sys_0_2_2_features winapi_0_2_8_features ];
-  backtrace_sys_0_1_11 = { features?(backtrace_sys_0_1_11_features {}) }: backtrace_sys_0_1_11_ {
-    dependencies = mapFeatures features ([ libc_0_2_26 ]);
-    buildDependencies = mapFeatures features ([ gcc_0_3_51 ]);
-  };
-  backtrace_sys_0_1_11_features = f: updateFeatures f (rec {
-    backtrace_sys_0_1_11.default = (f.backtrace_sys_0_1_11.default or true);
-    gcc_0_3_51.default = true;
-    libc_0_2_26.default = true;
-  }) [ libc_0_2_26_features gcc_0_3_51_features ];
-  base64_0_6_0 = { features?(base64_0_6_0_features {}) }: base64_0_6_0_ {
-    dependencies = mapFeatures features ([ byteorder_1_1_0 safemem_0_2_0 ]);
-  };
-  base64_0_6_0_features = f: updateFeatures f (rec {
-    base64_0_6_0.default = (f.base64_0_6_0.default or true);
-    byteorder_1_1_0.default = true;
-    safemem_0_2_0.default = true;
-  }) [ byteorder_1_1_0_features safemem_0_2_0_features ];
-  bitflags_0_9_1 = { features?(bitflags_0_9_1_features {}) }: bitflags_0_9_1_ {
-    features = mkFeatures (features.bitflags_0_9_1 or {});
-  };
-  bitflags_0_9_1_features = f: updateFeatures f (rec {
-    bitflags_0_9_1.default = (f.bitflags_0_9_1.default or true);
-    bitflags_0_9_1.example_generated =
-      (f.bitflags_0_9_1.example_generated or false) ||
-      (f.bitflags_0_9_1.default or false) ||
-      (bitflags_0_9_1.default or false);
-  }) [];
-  byteorder_1_1_0 = { features?(byteorder_1_1_0_features {}) }: byteorder_1_1_0_ {
-    features = mkFeatures (features.byteorder_1_1_0 or {});
-  };
-  byteorder_1_1_0_features = f: updateFeatures f (rec {
-    byteorder_1_1_0.default = (f.byteorder_1_1_0.default or true);
-    byteorder_1_1_0.std =
-      (f.byteorder_1_1_0.std or false) ||
-      (f.byteorder_1_1_0.default or false) ||
-      (byteorder_1_1_0.default or false);
-  }) [];
-  bytes_0_4_4 = { features?(bytes_0_4_4_features {}) }: bytes_0_4_4_ {
-    dependencies = mapFeatures features ([ byteorder_1_1_0 iovec_0_1_0 ]);
-  };
-  bytes_0_4_4_features = f: updateFeatures f (rec {
-    byteorder_1_1_0.default = true;
-    bytes_0_4_4.default = (f.bytes_0_4_4.default or true);
-    iovec_0_1_0.default = true;
-  }) [ byteorder_1_1_0_features iovec_0_1_0_features ];
-  cargo_edit_0_2_0 = { features?(cargo_edit_0_2_0_features {}) }: cargo_edit_0_2_0_ {
-    dependencies = mapFeatures features ([ docopt_0_8_1 pad_0_1_4 quick_error_1_2_0 regex_0_2_2 reqwest_0_7_1 semver_0_7_0 serde_1_0_10 serde_derive_1_0_10 serde_json_1_0_2 toml_0_4_2 ]);
-    features = mkFeatures (features.cargo_edit_0_2_0 or {});
-  };
-  cargo_edit_0_2_0_features = f: updateFeatures f (rec {
-    cargo_edit_0_2_0.default = (f.cargo_edit_0_2_0.default or true);
-    docopt_0_8_1.default = true;
-    pad_0_1_4.default = true;
-    quick_error_1_2_0.default = true;
-    regex_0_2_2.default = true;
-    reqwest_0_7_1.default = true;
-    semver_0_7_0.default = true;
-    semver_0_7_0.serde = true;
-    serde_1_0_10.default = true;
-    serde_derive_1_0_10.default = true;
-    serde_json_1_0_2.default = true;
-    toml_0_4_2.default = true;
-  }) [ docopt_0_8_1_features pad_0_1_4_features quick_error_1_2_0_features regex_0_2_2_features reqwest_0_7_1_features semver_0_7_0_features serde_1_0_10_features serde_derive_1_0_10_features serde_json_1_0_2_features toml_0_4_2_features ];
-  cfg_if_0_1_2 = { features?(cfg_if_0_1_2_features {}) }: cfg_if_0_1_2_ {};
-  cfg_if_0_1_2_features = f: updateFeatures f (rec {
-    cfg_if_0_1_2.default = (f.cfg_if_0_1_2.default or true);
-  }) [];
-  colored_1_5_2 = { features?(colored_1_5_2_features {}) }: colored_1_5_2_ {
-    dependencies = mapFeatures features ([ lazy_static_0_2_8 ]);
-    features = mkFeatures (features.colored_1_5_2 or {});
-  };
-  colored_1_5_2_features = f: updateFeatures f (rec {
-    colored_1_5_2.default = (f.colored_1_5_2.default or true);
-    lazy_static_0_2_8.default = true;
-  }) [ lazy_static_0_2_8_features ];
-  core_foundation_0_2_3 = { features?(core_foundation_0_2_3_features {}) }: core_foundation_0_2_3_ {
-    dependencies = mapFeatures features ([ core_foundation_sys_0_2_3 libc_0_2_26 ]);
-  };
-  core_foundation_0_2_3_features = f: updateFeatures f (rec {
-    core_foundation_0_2_3.default = (f.core_foundation_0_2_3.default or true);
-    core_foundation_sys_0_2_3.default = true;
-    libc_0_2_26.default = true;
-  }) [ core_foundation_sys_0_2_3_features libc_0_2_26_features ];
-  core_foundation_sys_0_2_3 = { features?(core_foundation_sys_0_2_3_features {}) }: core_foundation_sys_0_2_3_ {
-    dependencies = mapFeatures features ([ libc_0_2_26 ]);
-  };
-  core_foundation_sys_0_2_3_features = f: updateFeatures f (rec {
-    core_foundation_sys_0_2_3.default = (f.core_foundation_sys_0_2_3.default or true);
-    libc_0_2_26.default = true;
-  }) [ libc_0_2_26_features ];
-  crypt32_sys_0_2_0 = { features?(crypt32_sys_0_2_0_features {}) }: crypt32_sys_0_2_0_ {
-    dependencies = mapFeatures features ([ winapi_0_2_8 ]);
-    buildDependencies = mapFeatures features ([ winapi_build_0_1_1 ]);
-  };
-  crypt32_sys_0_2_0_features = f: updateFeatures f (rec {
-    crypt32_sys_0_2_0.default = (f.crypt32_sys_0_2_0.default or true);
-    winapi_0_2_8.default = true;
-    winapi_build_0_1_1.default = true;
-  }) [ winapi_0_2_8_features winapi_build_0_1_1_features ];
-  dbghelp_sys_0_2_0 = { features?(dbghelp_sys_0_2_0_features {}) }: dbghelp_sys_0_2_0_ {
-    dependencies = mapFeatures features ([ winapi_0_2_8 ]);
-    buildDependencies = mapFeatures features ([ winapi_build_0_1_1 ]);
-  };
-  dbghelp_sys_0_2_0_features = f: updateFeatures f (rec {
-    dbghelp_sys_0_2_0.default = (f.dbghelp_sys_0_2_0.default or true);
-    winapi_0_2_8.default = true;
-    winapi_build_0_1_1.default = true;
-  }) [ winapi_0_2_8_features winapi_build_0_1_1_features ];
-  difference_1_0_0 = { features?(difference_1_0_0_features {}) }: difference_1_0_0_ {
-    dependencies = mapFeatures features ([]);
-    features = mkFeatures (features.difference_1_0_0 or {});
-  };
-  difference_1_0_0_features = f: updateFeatures f (rec {
-    difference_1_0_0.default = (f.difference_1_0_0.default or true);
-    difference_1_0_0.getopts =
-      (f.difference_1_0_0.getopts or false) ||
-      (f.difference_1_0_0.bin or false) ||
-      (difference_1_0_0.bin or false);
-  }) [];
-  docopt_0_8_1 = { features?(docopt_0_8_1_features {}) }: docopt_0_8_1_ {
-    dependencies = mapFeatures features ([ lazy_static_0_2_8 regex_0_2_2 serde_1_0_10 serde_derive_1_0_10 strsim_0_6_0 ]);
-  };
-  docopt_0_8_1_features = f: updateFeatures f (rec {
-    docopt_0_8_1.default = (f.docopt_0_8_1.default or true);
-    lazy_static_0_2_8.default = true;
-    regex_0_2_2.default = true;
-    serde_1_0_10.default = true;
-    serde_derive_1_0_10.default = true;
-    strsim_0_6_0.default = true;
-  }) [ lazy_static_0_2_8_features regex_0_2_2_features serde_1_0_10_features serde_derive_1_0_10_features strsim_0_6_0_features ];
-  dtoa_0_4_1 = { features?(dtoa_0_4_1_features {}) }: dtoa_0_4_1_ {};
-  dtoa_0_4_1_features = f: updateFeatures f (rec {
-    dtoa_0_4_1.default = (f.dtoa_0_4_1.default or true);
-  }) [];
-  error_chain_0_10_0 = { features?(error_chain_0_10_0_features {}) }: error_chain_0_10_0_ {
-    dependencies = mapFeatures features ([ ]
-      ++ (if features.error_chain_0_10_0.backtrace or false then [ backtrace_0_3_2 ] else []));
-    features = mkFeatures (features.error_chain_0_10_0 or {});
-  };
-  error_chain_0_10_0_features = f: updateFeatures f (rec {
-    backtrace_0_3_2.default = true;
-    error_chain_0_10_0.backtrace =
-      (f.error_chain_0_10_0.backtrace or false) ||
-      (f.error_chain_0_10_0.default or false) ||
-      (error_chain_0_10_0.default or false);
-    error_chain_0_10_0.default = (f.error_chain_0_10_0.default or true);
-    error_chain_0_10_0.example_generated =
-      (f.error_chain_0_10_0.example_generated or false) ||
-      (f.error_chain_0_10_0.default or false) ||
-      (error_chain_0_10_0.default or false);
-  }) [ backtrace_0_3_2_features ];
-  foreign_types_0_2_0 = { features?(foreign_types_0_2_0_features {}) }: foreign_types_0_2_0_ {};
-  foreign_types_0_2_0_features = f: updateFeatures f (rec {
-    foreign_types_0_2_0.default = (f.foreign_types_0_2_0.default or true);
-  }) [];
-  futures_0_1_14 = { features?(futures_0_1_14_features {}) }: futures_0_1_14_ {
-    features = mkFeatures (features.futures_0_1_14 or {});
-  };
-  futures_0_1_14_features = f: updateFeatures f (rec {
-    futures_0_1_14.default = (f.futures_0_1_14.default or true);
-    futures_0_1_14.use_std =
-      (f.futures_0_1_14.use_std or false) ||
-      (f.futures_0_1_14.default or false) ||
-      (futures_0_1_14.default or false);
-    futures_0_1_14.with-deprecated =
-      (f.futures_0_1_14.with-deprecated or false) ||
-      (f.futures_0_1_14.default or false) ||
-      (futures_0_1_14.default or false);
-  }) [];
-  futures_cpupool_0_1_5 = { features?(futures_cpupool_0_1_5_features {}) }: futures_cpupool_0_1_5_ {
-    dependencies = mapFeatures features ([ futures_0_1_14 num_cpus_1_6_2 ]);
-    features = mkFeatures (features.futures_cpupool_0_1_5 or {});
-  };
-  futures_cpupool_0_1_5_features = f: updateFeatures f (rec {
-    futures_0_1_14.default = (f.futures_0_1_14.default or false);
-    futures_0_1_14.use_std = true;
-    futures_0_1_14.with-deprecated =
-      (f.futures_0_1_14.with-deprecated or false) ||
-      (futures_cpupool_0_1_5.with-deprecated or false) ||
-      (f.futures_cpupool_0_1_5.with-deprecated or false);
-    futures_cpupool_0_1_5.default = (f.futures_cpupool_0_1_5.default or true);
-    futures_cpupool_0_1_5.with-deprecated =
-      (f.futures_cpupool_0_1_5.with-deprecated or false) ||
-      (f.futures_cpupool_0_1_5.default or false) ||
-      (futures_cpupool_0_1_5.default or false);
-    num_cpus_1_6_2.default = true;
-  }) [ futures_0_1_14_features num_cpus_1_6_2_features ];
-  gcc_0_3_51 = { features?(gcc_0_3_51_features {}) }: gcc_0_3_51_ {
-    dependencies = mapFeatures features ([]);
-    features = mkFeatures (features.gcc_0_3_51 or {});
-  };
-  gcc_0_3_51_features = f: updateFeatures f (rec {
-    gcc_0_3_51.default = (f.gcc_0_3_51.default or true);
-    gcc_0_3_51.rayon =
-      (f.gcc_0_3_51.rayon or false) ||
-      (f.gcc_0_3_51.parallel or false) ||
-      (gcc_0_3_51.parallel or false);
-  }) [];
-  getopts_0_2_14 = { features?(getopts_0_2_14_features {}) }: getopts_0_2_14_ {};
-  getopts_0_2_14_features = f: updateFeatures f (rec {
-    getopts_0_2_14.default = (f.getopts_0_2_14.default or true);
-  }) [];
-  httparse_1_2_3 = { features?(httparse_1_2_3_features {}) }: httparse_1_2_3_ {
-    features = mkFeatures (features.httparse_1_2_3 or {});
-  };
-  httparse_1_2_3_features = f: updateFeatures f (rec {
-    httparse_1_2_3.default = (f.httparse_1_2_3.default or true);
-    httparse_1_2_3.std =
-      (f.httparse_1_2_3.std or false) ||
-      (f.httparse_1_2_3.default or false) ||
-      (httparse_1_2_3.default or false);
-  }) [];
-  hyper_0_11_1 = { features?(hyper_0_11_1_features {}) }: hyper_0_11_1_ {
-    dependencies = mapFeatures features ([ base64_0_6_0 bytes_0_4_4 futures_0_1_14 futures_cpupool_0_1_5 httparse_1_2_3 language_tags_0_2_2 log_0_3_8 mime_0_3_2 percent_encoding_1_0_0 time_0_1_38 tokio_core_0_1_8 tokio_io_0_1_2 tokio_proto_0_1_1 tokio_service_0_1_0 unicase_2_0_0 ]);
-    features = mkFeatures (features.hyper_0_11_1 or {});
-  };
-  hyper_0_11_1_features = f: updateFeatures f (rec {
-    base64_0_6_0.default = true;
-    bytes_0_4_4.default = true;
-    futures_0_1_14.default = true;
-    futures_cpupool_0_1_5.default = true;
-    httparse_1_2_3.default = true;
-    hyper_0_11_1.default = (f.hyper_0_11_1.default or true);
-    language_tags_0_2_2.default = true;
-    log_0_3_8.default = true;
-    mime_0_3_2.default = true;
-    percent_encoding_1_0_0.default = true;
-    time_0_1_38.default = true;
-    tokio_core_0_1_8.default = true;
-    tokio_io_0_1_2.default = true;
-    tokio_proto_0_1_1.default = true;
-    tokio_service_0_1_0.default = true;
-    unicase_2_0_0.default = true;
-  }) [ base64_0_6_0_features bytes_0_4_4_features futures_0_1_14_features futures_cpupool_0_1_5_features httparse_1_2_3_features language_tags_0_2_2_features log_0_3_8_features mime_0_3_2_features percent_encoding_1_0_0_features time_0_1_38_features tokio_core_0_1_8_features tokio_io_0_1_2_features tokio_proto_0_1_1_features tokio_service_0_1_0_features unicase_2_0_0_features ];
-  hyper_tls_0_1_2 = { features?(hyper_tls_0_1_2_features {}) }: hyper_tls_0_1_2_ {
-    dependencies = mapFeatures features ([ futures_0_1_14 hyper_0_11_1 native_tls_0_1_4 tokio_core_0_1_8 tokio_io_0_1_2 tokio_service_0_1_0 tokio_tls_0_1_3 ]);
-  };
-  hyper_tls_0_1_2_features = f: updateFeatures f (rec {
-    futures_0_1_14.default = true;
-    hyper_0_11_1.default = true;
-    hyper_tls_0_1_2.default = (f.hyper_tls_0_1_2.default or true);
-    native_tls_0_1_4.default = true;
-    tokio_core_0_1_8.default = true;
-    tokio_io_0_1_2.default = true;
-    tokio_service_0_1_0.default = true;
-    tokio_tls_0_1_3.default = true;
-  }) [ futures_0_1_14_features hyper_0_11_1_features native_tls_0_1_4_features tokio_core_0_1_8_features tokio_io_0_1_2_features tokio_service_0_1_0_features tokio_tls_0_1_3_features ];
-  idna_0_1_4 = { features?(idna_0_1_4_features {}) }: idna_0_1_4_ {
-    dependencies = mapFeatures features ([ matches_0_1_6 unicode_bidi_0_3_4 unicode_normalization_0_1_5 ]);
-  };
-  idna_0_1_4_features = f: updateFeatures f (rec {
-    idna_0_1_4.default = (f.idna_0_1_4.default or true);
-    matches_0_1_6.default = true;
-    unicode_bidi_0_3_4.default = true;
-    unicode_normalization_0_1_5.default = true;
-  }) [ matches_0_1_6_features unicode_bidi_0_3_4_features unicode_normalization_0_1_5_features ];
-  iovec_0_1_0 = { features?(iovec_0_1_0_features {}) }: iovec_0_1_0_ {
-    dependencies = (if (kernel == "linux" || kernel == "darwin") then mapFeatures features ([ libc_0_2_26 ]) else [])
-      ++ (if kernel == "windows" then mapFeatures features ([ winapi_0_2_8 ]) else []);
-  };
-  iovec_0_1_0_features = f: updateFeatures f (rec {
-    iovec_0_1_0.default = (f.iovec_0_1_0.default or true);
-    libc_0_2_26.default = true;
-    winapi_0_2_8.default = true;
-  }) [ libc_0_2_26_features winapi_0_2_8_features ];
-  itoa_0_3_1 = { features?(itoa_0_3_1_features {}) }: itoa_0_3_1_ {};
-  itoa_0_3_1_features = f: updateFeatures f (rec {
-    itoa_0_3_1.default = (f.itoa_0_3_1.default or true);
-  }) [];
-  kernel32_sys_0_2_2 = { features?(kernel32_sys_0_2_2_features {}) }: kernel32_sys_0_2_2_ {
-    dependencies = mapFeatures features ([ winapi_0_2_8 ]);
-    buildDependencies = mapFeatures features ([ winapi_build_0_1_1 ]);
-  };
-  kernel32_sys_0_2_2_features = f: updateFeatures f (rec {
-    kernel32_sys_0_2_2.default = (f.kernel32_sys_0_2_2.default or true);
-    winapi_0_2_8.default = true;
-    winapi_build_0_1_1.default = true;
-  }) [ winapi_0_2_8_features winapi_build_0_1_1_features ];
-  language_tags_0_2_2 = { features?(language_tags_0_2_2_features {}) }: language_tags_0_2_2_ {
-    dependencies = mapFeatures features ([]);
-    features = mkFeatures (features.language_tags_0_2_2 or {});
-  };
-  language_tags_0_2_2_features = f: updateFeatures f (rec {
-    language_tags_0_2_2.default = (f.language_tags_0_2_2.default or true);
-    language_tags_0_2_2.heapsize =
-      (f.language_tags_0_2_2.heapsize or false) ||
-      (f.language_tags_0_2_2.heap_size or false) ||
-      (language_tags_0_2_2.heap_size or false);
-    language_tags_0_2_2.heapsize_plugin =
-      (f.language_tags_0_2_2.heapsize_plugin or false) ||
-      (f.language_tags_0_2_2.heap_size or false) ||
-      (language_tags_0_2_2.heap_size or false);
-  }) [];
-  lazy_static_0_2_8 = { features?(lazy_static_0_2_8_features {}) }: lazy_static_0_2_8_ {
-    dependencies = mapFeatures features ([]);
-    features = mkFeatures (features.lazy_static_0_2_8 or {});
-  };
-  lazy_static_0_2_8_features = f: updateFeatures f (rec {
-    lazy_static_0_2_8.default = (f.lazy_static_0_2_8.default or true);
-    lazy_static_0_2_8.nightly =
-      (f.lazy_static_0_2_8.nightly or false) ||
-      (f.lazy_static_0_2_8.spin_no_std or false) ||
-      (lazy_static_0_2_8.spin_no_std or false);
-    lazy_static_0_2_8.spin =
-      (f.lazy_static_0_2_8.spin or false) ||
-      (f.lazy_static_0_2_8.spin_no_std or false) ||
-      (lazy_static_0_2_8.spin_no_std or false);
-  }) [];
-  lazycell_0_4_0 = { features?(lazycell_0_4_0_features {}) }: lazycell_0_4_0_ {
-    dependencies = mapFeatures features ([]);
-    features = mkFeatures (features.lazycell_0_4_0 or {});
-  };
-  lazycell_0_4_0_features = f: updateFeatures f (rec {
-    lazycell_0_4_0.clippy =
-      (f.lazycell_0_4_0.clippy or false) ||
-      (f.lazycell_0_4_0.nightly-testing or false) ||
-      (lazycell_0_4_0.nightly-testing or false);
-    lazycell_0_4_0.default = (f.lazycell_0_4_0.default or true);
-    lazycell_0_4_0.nightly =
-      (f.lazycell_0_4_0.nightly or false) ||
-      (f.lazycell_0_4_0.nightly-testing or false) ||
-      (lazycell_0_4_0.nightly-testing or false);
-  }) [];
-  libc_0_2_26 = { features?(libc_0_2_26_features {}) }: libc_0_2_26_ {
-    features = mkFeatures (features.libc_0_2_26 or {});
-  };
-  libc_0_2_26_features = f: updateFeatures f (rec {
-    libc_0_2_26.default = (f.libc_0_2_26.default or true);
-    libc_0_2_26.use_std =
-      (f.libc_0_2_26.use_std or false) ||
-      (f.libc_0_2_26.default or false) ||
-      (libc_0_2_26.default or false);
-  }) [];
-  libflate_0_1_10 = { features?(libflate_0_1_10_features {}) }: libflate_0_1_10_ {
-    dependencies = mapFeatures features ([ adler32_1_0_0 byteorder_1_1_0 ]);
-  };
-  libflate_0_1_10_features = f: updateFeatures f (rec {
-    adler32_1_0_0.default = true;
-    byteorder_1_1_0.default = true;
-    libflate_0_1_10.default = (f.libflate_0_1_10.default or true);
-  }) [ adler32_1_0_0_features byteorder_1_1_0_features ];
-  log_0_3_8 = { features?(log_0_3_8_features {}) }: log_0_3_8_ {
-    features = mkFeatures (features.log_0_3_8 or {});
-  };
-  log_0_3_8_features = f: updateFeatures f (rec {
-    log_0_3_8.default = (f.log_0_3_8.default or true);
-    log_0_3_8.use_std =
-      (f.log_0_3_8.use_std or false) ||
-      (f.log_0_3_8.default or false) ||
-      (log_0_3_8.default or false);
-  }) [];
-  matches_0_1_6 = { features?(matches_0_1_6_features {}) }: matches_0_1_6_ {};
-  matches_0_1_6_features = f: updateFeatures f (rec {
-    matches_0_1_6.default = (f.matches_0_1_6.default or true);
-  }) [];
-  memchr_1_0_1 = { features?(memchr_1_0_1_features {}) }: memchr_1_0_1_ {
-    dependencies = mapFeatures features ([ libc_0_2_26 ]);
-    features = mkFeatures (features.memchr_1_0_1 or {});
-  };
-  memchr_1_0_1_features = f: updateFeatures f (rec {
-    libc_0_2_26.default = (f.libc_0_2_26.default or false);
-    libc_0_2_26.use_std =
-      (f.libc_0_2_26.use_std or false) ||
-      (memchr_1_0_1.use_std or false) ||
-      (f.memchr_1_0_1.use_std or false);
-    memchr_1_0_1.default = (f.memchr_1_0_1.default or true);
-    memchr_1_0_1.use_std =
-      (f.memchr_1_0_1.use_std or false) ||
-      (f.memchr_1_0_1.default or false) ||
-      (memchr_1_0_1.default or false);
-  }) [ libc_0_2_26_features ];
-  mime_0_3_2 = { features?(mime_0_3_2_features {}) }: mime_0_3_2_ {
-    dependencies = mapFeatures features ([ unicase_2_0_0 ]);
-  };
-  mime_0_3_2_features = f: updateFeatures f (rec {
-    mime_0_3_2.default = (f.mime_0_3_2.default or true);
-    unicase_2_0_0.default = true;
-  }) [ unicase_2_0_0_features ];
-  mio_0_6_9 = { features?(mio_0_6_9_features {}) }: mio_0_6_9_ {
-    dependencies = mapFeatures features ([ iovec_0_1_0 lazycell_0_4_0 log_0_3_8 net2_0_2_30 slab_0_3_0 ])
-      ++ (if (kernel == "linux" || kernel == "darwin") then mapFeatures features ([ libc_0_2_26 ]) else [])
-      ++ (if kernel == "windows" then mapFeatures features ([ kernel32_sys_0_2_2 miow_0_2_1 winapi_0_2_8 ]) else []);
-    features = mkFeatures (features.mio_0_6_9 or {});
-  };
-  mio_0_6_9_features = f: updateFeatures f (rec {
-    iovec_0_1_0.default = true;
-    kernel32_sys_0_2_2.default = true;
-    lazycell_0_4_0.default = true;
-    libc_0_2_26.default = true;
-    log_0_3_8.default = true;
-    mio_0_6_9.default = (f.mio_0_6_9.default or true);
-    mio_0_6_9.with-deprecated =
-      (f.mio_0_6_9.with-deprecated or false) ||
-      (f.mio_0_6_9.default or false) ||
-      (mio_0_6_9.default or false);
-    miow_0_2_1.default = true;
-    net2_0_2_30.default = true;
-    slab_0_3_0.default = true;
-    winapi_0_2_8.default = true;
-  }) [ iovec_0_1_0_features lazycell_0_4_0_features log_0_3_8_features net2_0_2_30_features slab_0_3_0_features libc_0_2_26_features kernel32_sys_0_2_2_features miow_0_2_1_features winapi_0_2_8_features ];
-  miow_0_2_1 = { features?(miow_0_2_1_features {}) }: miow_0_2_1_ {
-    dependencies = mapFeatures features ([ kernel32_sys_0_2_2 net2_0_2_30 winapi_0_2_8 ws2_32_sys_0_2_1 ]);
-  };
-  miow_0_2_1_features = f: updateFeatures f (rec {
-    kernel32_sys_0_2_2.default = true;
-    miow_0_2_1.default = (f.miow_0_2_1.default or true);
-    net2_0_2_30.default = (f.net2_0_2_30.default or false);
-    winapi_0_2_8.default = true;
-    ws2_32_sys_0_2_1.default = true;
-  }) [ kernel32_sys_0_2_2_features net2_0_2_30_features winapi_0_2_8_features ws2_32_sys_0_2_1_features ];
-  native_tls_0_1_4 = { features?(native_tls_0_1_4_features {}) }: native_tls_0_1_4_ {
-    dependencies = (if !(kernel == "windows" || kernel == "darwin") then mapFeatures features ([ openssl_0_9_14 ]) else [])
-      ++ (if kernel == "darwin" then mapFeatures features ([ security_framework_0_1_14 security_framework_sys_0_1_14 tempdir_0_3_5 ]) else [])
-      ++ (if kernel == "windows" then mapFeatures features ([ schannel_0_1_7 ]) else []);
-  };
-  native_tls_0_1_4_features = f: updateFeatures f (rec {
-    native_tls_0_1_4.default = (f.native_tls_0_1_4.default or true);
-    openssl_0_9_14.default = true;
-    schannel_0_1_7.default = true;
-    security_framework_0_1_14.OSX_10_8 = true;
-    security_framework_0_1_14.default = true;
-    security_framework_sys_0_1_14.default = true;
-    tempdir_0_3_5.default = true;
-  }) [ openssl_0_9_14_features security_framework_0_1_14_features security_framework_sys_0_1_14_features tempdir_0_3_5_features schannel_0_1_7_features ];
-  net2_0_2_30 = { features?(net2_0_2_30_features {}) }: net2_0_2_30_ {
-    dependencies = mapFeatures features ([ cfg_if_0_1_2 ])
-      ++ (if (kernel == "linux" || kernel == "darwin") then mapFeatures features ([ libc_0_2_26 ]) else [])
-      ++ (if kernel == "windows" then mapFeatures features ([ kernel32_sys_0_2_2 winapi_0_2_8 ws2_32_sys_0_2_1 ]) else [])
-      ++ (if kernel == "i686-apple-darwin" then mapFeatures features ([ libc_0_2_26 ]) else [])
-      ++ (if kernel == "i686-unknown-linux-gnu" then mapFeatures features ([ libc_0_2_26 ]) else [])
-      ++ (if kernel == "x86_64-apple-darwin" then mapFeatures features ([ libc_0_2_26 ]) else [])
-      ++ (if kernel == "x86_64-unknown-linux-gnu" then mapFeatures features ([ libc_0_2_26 ]) else []);
-    features = mkFeatures (features.net2_0_2_30 or {});
-  };
-  net2_0_2_30_features = f: updateFeatures f (rec {
-    cfg_if_0_1_2.default = true;
-    kernel32_sys_0_2_2.default = true;
-    libc_0_2_26.default = true;
-    net2_0_2_30.default = (f.net2_0_2_30.default or true);
-    net2_0_2_30.duration =
-      (f.net2_0_2_30.duration or false) ||
-      (f.net2_0_2_30.default or false) ||
-      (net2_0_2_30.default or false);
-    winapi_0_2_8.default = true;
-    ws2_32_sys_0_2_1.default = true;
-  }) [ cfg_if_0_1_2_features libc_0_2_26_features kernel32_sys_0_2_2_features winapi_0_2_8_features ws2_32_sys_0_2_1_features libc_0_2_26_features libc_0_2_26_features libc_0_2_26_features libc_0_2_26_features ];
-  num_traits_0_1_40 = { features?(num_traits_0_1_40_features {}) }: num_traits_0_1_40_ {};
-  num_traits_0_1_40_features = f: updateFeatures f (rec {
-    num_traits_0_1_40.default = (f.num_traits_0_1_40.default or true);
-  }) [];
-  num_cpus_1_6_2 = { features?(num_cpus_1_6_2_features {}) }: num_cpus_1_6_2_ {
-    dependencies = mapFeatures features ([ libc_0_2_26 ]);
-  };
-  num_cpus_1_6_2_features = f: updateFeatures f (rec {
-    libc_0_2_26.default = true;
-    num_cpus_1_6_2.default = (f.num_cpus_1_6_2.default or true);
-  }) [ libc_0_2_26_features ];
-  openssl_0_9_14 = { features?(openssl_0_9_14_features {}) }: openssl_0_9_14_ {
-    dependencies = mapFeatures features ([ bitflags_0_9_1 foreign_types_0_2_0 lazy_static_0_2_8 libc_0_2_26 openssl_sys_0_9_14 ]);
-    features = mkFeatures (features.openssl_0_9_14 or {});
-  };
-  openssl_0_9_14_features = f: updateFeatures f (rec {
-    bitflags_0_9_1.default = true;
-    foreign_types_0_2_0.default = true;
-    lazy_static_0_2_8.default = true;
-    libc_0_2_26.default = true;
-    openssl_0_9_14.default = (f.openssl_0_9_14.default or true);
-    openssl_sys_0_9_14.default = true;
-  }) [ bitflags_0_9_1_features foreign_types_0_2_0_features lazy_static_0_2_8_features libc_0_2_26_features openssl_sys_0_9_14_features ];
-  openssl_sys_0_9_14 = { features?(openssl_sys_0_9_14_features {}) }: openssl_sys_0_9_14_ {
-    dependencies = mapFeatures features ([ libc_0_2_26 ]);
-    buildDependencies = mapFeatures features ([ gcc_0_3_51 pkg_config_0_3_9 ]);
-  };
-  openssl_sys_0_9_14_features = f: updateFeatures f (rec {
-    gcc_0_3_51.default = true;
-    libc_0_2_26.default = true;
-    openssl_sys_0_9_14.default = (f.openssl_sys_0_9_14.default or true);
-    pkg_config_0_3_9.default = true;
-  }) [ libc_0_2_26_features gcc_0_3_51_features pkg_config_0_3_9_features ];
-  pad_0_1_4 = { features?(pad_0_1_4_features {}) }: pad_0_1_4_ {
-    dependencies = mapFeatures features ([ unicode_width_0_1_4 ]);
-  };
-  pad_0_1_4_features = f: updateFeatures f (rec {
-    pad_0_1_4.default = (f.pad_0_1_4.default or true);
-    unicode_width_0_1_4.default = true;
-  }) [ unicode_width_0_1_4_features ];
-  percent_encoding_1_0_0 = { features?(percent_encoding_1_0_0_features {}) }: percent_encoding_1_0_0_ {};
-  percent_encoding_1_0_0_features = f: updateFeatures f (rec {
-    percent_encoding_1_0_0.default = (f.percent_encoding_1_0_0.default or true);
-  }) [];
-  pkg_config_0_3_9 = { features?(pkg_config_0_3_9_features {}) }: pkg_config_0_3_9_ {};
-  pkg_config_0_3_9_features = f: updateFeatures f (rec {
-    pkg_config_0_3_9.default = (f.pkg_config_0_3_9.default or true);
-  }) [];
-  pretty_assertions_0_2_1 = { features?(pretty_assertions_0_2_1_features {}) }: pretty_assertions_0_2_1_ {
-    dependencies = mapFeatures features ([ difference_1_0_0 ]);
-  };
-  pretty_assertions_0_2_1_features = f: updateFeatures f (rec {
-    difference_1_0_0.default = true;
-    pretty_assertions_0_2_1.default = (f.pretty_assertions_0_2_1.default or true);
-  }) [ difference_1_0_0_features ];
-  pulldown_cmark_0_0_3 = { features?(pulldown_cmark_0_0_3_features {}) }: pulldown_cmark_0_0_3_ {
-    dependencies = mapFeatures features ([ getopts_0_2_14 ]);
-  };
-  pulldown_cmark_0_0_3_features = f: updateFeatures f (rec {
-    getopts_0_2_14.default = true;
-    pulldown_cmark_0_0_3.default = (f.pulldown_cmark_0_0_3.default or true);
-  }) [ getopts_0_2_14_features ];
-  quick_error_1_2_0 = { features?(quick_error_1_2_0_features {}) }: quick_error_1_2_0_ {};
-  quick_error_1_2_0_features = f: updateFeatures f (rec {
-    quick_error_1_2_0.default = (f.quick_error_1_2_0.default or true);
-  }) [];
-  quote_0_3_15 = { features?(quote_0_3_15_features {}) }: quote_0_3_15_ {};
-  quote_0_3_15_features = f: updateFeatures f (rec {
-    quote_0_3_15.default = (f.quote_0_3_15.default or true);
-  }) [];
-  rand_0_3_15 = { features?(rand_0_3_15_features {}) }: rand_0_3_15_ {
-    dependencies = mapFeatures features ([ libc_0_2_26 ]);
-  };
-  rand_0_3_15_features = f: updateFeatures f (rec {
-    libc_0_2_26.default = true;
-    rand_0_3_15.default = (f.rand_0_3_15.default or true);
-  }) [ libc_0_2_26_features ];
-  redox_syscall_0_1_26 = { features?(redox_syscall_0_1_26_features {}) }: redox_syscall_0_1_26_ {};
-  redox_syscall_0_1_26_features = f: updateFeatures f (rec {
-    redox_syscall_0_1_26.default = (f.redox_syscall_0_1_26.default or true);
-  }) [];
-  regex_0_2_2 = { features?(regex_0_2_2_features {}) }: regex_0_2_2_ {
-    dependencies = mapFeatures features ([ aho_corasick_0_6_3 memchr_1_0_1 regex_syntax_0_4_1 thread_local_0_3_4 utf8_ranges_1_0_0 ]);
-    features = mkFeatures (features.regex_0_2_2 or {});
-  };
-  regex_0_2_2_features = f: updateFeatures f (rec {
-    aho_corasick_0_6_3.default = true;
-    memchr_1_0_1.default = true;
-    regex_0_2_2.default = (f.regex_0_2_2.default or true);
-    regex_0_2_2.simd =
-      (f.regex_0_2_2.simd or false) ||
-      (f.regex_0_2_2.simd-accel or false) ||
-      (regex_0_2_2.simd-accel or false);
-    regex_syntax_0_4_1.default = true;
-    thread_local_0_3_4.default = true;
-    utf8_ranges_1_0_0.default = true;
-  }) [ aho_corasick_0_6_3_features memchr_1_0_1_features regex_syntax_0_4_1_features thread_local_0_3_4_features utf8_ranges_1_0_0_features ];
-  regex_syntax_0_4_1 = { features?(regex_syntax_0_4_1_features {}) }: regex_syntax_0_4_1_ {};
-  regex_syntax_0_4_1_features = f: updateFeatures f (rec {
-    regex_syntax_0_4_1.default = (f.regex_syntax_0_4_1.default or true);
-  }) [];
-  reqwest_0_7_1 = { features?(reqwest_0_7_1_features {}) }: reqwest_0_7_1_ {
-    dependencies = mapFeatures features ([ bytes_0_4_4 futures_0_1_14 hyper_0_11_1 hyper_tls_0_1_2 libflate_0_1_10 log_0_3_8 native_tls_0_1_4 serde_1_0_10 serde_json_1_0_2 serde_urlencoded_0_5_1 tokio_core_0_1_8 tokio_io_0_1_2 tokio_tls_0_1_3 url_1_5_1 ]);
-    features = mkFeatures (features.reqwest_0_7_1 or {});
-  };
-  reqwest_0_7_1_features = f: updateFeatures f (rec {
-    bytes_0_4_4.default = true;
-    futures_0_1_14.default = true;
-    hyper_0_11_1.default = true;
-    hyper_tls_0_1_2.default = true;
-    libflate_0_1_10.default = true;
-    log_0_3_8.default = true;
-    native_tls_0_1_4.default = true;
-    reqwest_0_7_1.default = (f.reqwest_0_7_1.default or true);
-    serde_1_0_10.default = true;
-    serde_json_1_0_2.default = true;
-    serde_urlencoded_0_5_1.default = true;
-    tokio_core_0_1_8.default = true;
-    tokio_io_0_1_2.default = true;
-    tokio_tls_0_1_3.default = true;
-    url_1_5_1.default = true;
-  }) [ bytes_0_4_4_features futures_0_1_14_features hyper_0_11_1_features hyper_tls_0_1_2_features libflate_0_1_10_features log_0_3_8_features native_tls_0_1_4_features serde_1_0_10_features serde_json_1_0_2_features serde_urlencoded_0_5_1_features tokio_core_0_1_8_features tokio_io_0_1_2_features tokio_tls_0_1_3_features url_1_5_1_features ];
-  rustc_demangle_0_1_4 = { features?(rustc_demangle_0_1_4_features {}) }: rustc_demangle_0_1_4_ {};
-  rustc_demangle_0_1_4_features = f: updateFeatures f (rec {
-    rustc_demangle_0_1_4.default = (f.rustc_demangle_0_1_4.default or true);
-  }) [];
-  rustc_version_0_1_7 = { features?(rustc_version_0_1_7_features {}) }: rustc_version_0_1_7_ {
-    dependencies = mapFeatures features ([ semver_0_1_20 ]);
-  };
-  rustc_version_0_1_7_features = f: updateFeatures f (rec {
-    rustc_version_0_1_7.default = (f.rustc_version_0_1_7.default or true);
-    semver_0_1_20.default = true;
-  }) [ semver_0_1_20_features ];
-  safemem_0_2_0 = { features?(safemem_0_2_0_features {}) }: safemem_0_2_0_ {};
-  safemem_0_2_0_features = f: updateFeatures f (rec {
-    safemem_0_2_0.default = (f.safemem_0_2_0.default or true);
-  }) [];
-  schannel_0_1_7 = { features?(schannel_0_1_7_features {}) }: schannel_0_1_7_ {
-    dependencies = mapFeatures features ([ advapi32_sys_0_2_0 crypt32_sys_0_2_0 kernel32_sys_0_2_2 lazy_static_0_2_8 secur32_sys_0_2_0 winapi_0_2_8 ]);
-    buildDependencies = mapFeatures features ([ winapi_build_0_1_1 ]);
-  };
-  schannel_0_1_7_features = f: updateFeatures f (rec {
-    advapi32_sys_0_2_0.default = true;
-    crypt32_sys_0_2_0.default = true;
-    kernel32_sys_0_2_2.default = true;
-    lazy_static_0_2_8.default = true;
-    schannel_0_1_7.default = (f.schannel_0_1_7.default or true);
-    secur32_sys_0_2_0.default = true;
-    winapi_0_2_8.default = true;
-    winapi_build_0_1_1.default = true;
-  }) [ advapi32_sys_0_2_0_features crypt32_sys_0_2_0_features kernel32_sys_0_2_2_features lazy_static_0_2_8_features secur32_sys_0_2_0_features winapi_0_2_8_features winapi_build_0_1_1_features ];
-  scoped_tls_0_1_0 = { features?(scoped_tls_0_1_0_features {}) }: scoped_tls_0_1_0_ {};
-  scoped_tls_0_1_0_features = f: updateFeatures f (rec {
-    scoped_tls_0_1_0.default = (f.scoped_tls_0_1_0.default or true);
-  }) [];
-  secur32_sys_0_2_0 = { features?(secur32_sys_0_2_0_features {}) }: secur32_sys_0_2_0_ {
-    dependencies = mapFeatures features ([ winapi_0_2_8 ]);
-    buildDependencies = mapFeatures features ([ winapi_build_0_1_1 ]);
-  };
-  secur32_sys_0_2_0_features = f: updateFeatures f (rec {
-    secur32_sys_0_2_0.default = (f.secur32_sys_0_2_0.default or true);
-    winapi_0_2_8.default = true;
-    winapi_build_0_1_1.default = true;
-  }) [ winapi_0_2_8_features winapi_build_0_1_1_features ];
-  security_framework_0_1_14 = { features?(security_framework_0_1_14_features {}) }: security_framework_0_1_14_ {
-    dependencies = mapFeatures features ([ core_foundation_0_2_3 core_foundation_sys_0_2_3 libc_0_2_26 security_framework_sys_0_1_14 ]);
-    features = mkFeatures (features.security_framework_0_1_14 or {});
-  };
-  security_framework_0_1_14_features = f: updateFeatures f (rec {
-    core_foundation_0_2_3.default = true;
-    core_foundation_sys_0_2_3.default = true;
-    libc_0_2_26.default = true;
-    security_framework_0_1_14.OSX_10_10 =
-      (f.security_framework_0_1_14.OSX_10_10 or false) ||
-      (f.security_framework_0_1_14.OSX_10_11 or false) ||
-      (security_framework_0_1_14.OSX_10_11 or false);
-    security_framework_0_1_14.OSX_10_8 =
-      (f.security_framework_0_1_14.OSX_10_8 or false) ||
-      (f.security_framework_0_1_14.OSX_10_9 or false) ||
-      (security_framework_0_1_14.OSX_10_9 or false);
-    security_framework_0_1_14.OSX_10_9 =
-      (f.security_framework_0_1_14.OSX_10_9 or false) ||
-      (f.security_framework_0_1_14.OSX_10_10 or false) ||
-      (security_framework_0_1_14.OSX_10_10 or false);
-    security_framework_0_1_14.default = (f.security_framework_0_1_14.default or true);
-    security_framework_sys_0_1_14.OSX_10_10 =
-      (f.security_framework_sys_0_1_14.OSX_10_10 or false) ||
-      (security_framework_0_1_14.OSX_10_10 or false) ||
-      (f.security_framework_0_1_14.OSX_10_10 or false);
-    security_framework_sys_0_1_14.OSX_10_11 =
-      (f.security_framework_sys_0_1_14.OSX_10_11 or false) ||
-      (security_framework_0_1_14.OSX_10_11 or false) ||
-      (f.security_framework_0_1_14.OSX_10_11 or false);
-    security_framework_sys_0_1_14.OSX_10_8 =
-      (f.security_framework_sys_0_1_14.OSX_10_8 or false) ||
-      (security_framework_0_1_14.OSX_10_8 or false) ||
-      (f.security_framework_0_1_14.OSX_10_8 or false);
-    security_framework_sys_0_1_14.OSX_10_9 =
-      (f.security_framework_sys_0_1_14.OSX_10_9 or false) ||
-      (security_framework_0_1_14.OSX_10_9 or false) ||
-      (f.security_framework_0_1_14.OSX_10_9 or false);
-    security_framework_sys_0_1_14.default = true;
-  }) [ core_foundation_0_2_3_features core_foundation_sys_0_2_3_features libc_0_2_26_features security_framework_sys_0_1_14_features ];
-  security_framework_sys_0_1_14 = { features?(security_framework_sys_0_1_14_features {}) }: security_framework_sys_0_1_14_ {
-    dependencies = mapFeatures features ([ core_foundation_sys_0_2_3 libc_0_2_26 ]);
-    features = mkFeatures (features.security_framework_sys_0_1_14 or {});
-  };
-  security_framework_sys_0_1_14_features = f: updateFeatures f (rec {
-    core_foundation_sys_0_2_3.default = true;
-    libc_0_2_26.default = true;
-    security_framework_sys_0_1_14.OSX_10_10 =
-      (f.security_framework_sys_0_1_14.OSX_10_10 or false) ||
-      (f.security_framework_sys_0_1_14.OSX_10_11 or false) ||
-      (security_framework_sys_0_1_14.OSX_10_11 or false);
-    security_framework_sys_0_1_14.OSX_10_8 =
-      (f.security_framework_sys_0_1_14.OSX_10_8 or false) ||
-      (f.security_framework_sys_0_1_14.OSX_10_9 or false) ||
-      (security_framework_sys_0_1_14.OSX_10_9 or false);
-    security_framework_sys_0_1_14.OSX_10_9 =
-      (f.security_framework_sys_0_1_14.OSX_10_9 or false) ||
-      (f.security_framework_sys_0_1_14.OSX_10_10 or false) ||
-      (security_framework_sys_0_1_14.OSX_10_10 or false);
-    security_framework_sys_0_1_14.default = (f.security_framework_sys_0_1_14.default or true);
-  }) [ core_foundation_sys_0_2_3_features libc_0_2_26_features ];
-  semver_0_1_20 = { features?(semver_0_1_20_features {}) }: semver_0_1_20_ {};
-  semver_0_1_20_features = f: updateFeatures f (rec {
-    semver_0_1_20.default = (f.semver_0_1_20.default or true);
-  }) [];
-  semver_0_7_0 = { features?(semver_0_7_0_features {}) }: semver_0_7_0_ {
-    dependencies = mapFeatures features ([ semver_parser_0_7_0 ]
-      ++ (if features.semver_0_7_0.serde or false then [ serde_1_0_10 ] else []));
-    features = mkFeatures (features.semver_0_7_0 or {});
-  };
-  semver_0_7_0_features = f: updateFeatures f (rec {
-    semver_0_7_0.default = (f.semver_0_7_0.default or true);
-    semver_0_7_0.serde =
-      (f.semver_0_7_0.serde or false) ||
-      (f.semver_0_7_0.ci or false) ||
-      (semver_0_7_0.ci or false);
-    semver_parser_0_7_0.default = true;
-    serde_1_0_10.default = true;
-  }) [ semver_parser_0_7_0_features serde_1_0_10_features ];
-  semver_parser_0_7_0 = { features?(semver_parser_0_7_0_features {}) }: semver_parser_0_7_0_ {};
-  semver_parser_0_7_0_features = f: updateFeatures f (rec {
-    semver_parser_0_7_0.default = (f.semver_parser_0_7_0.default or true);
-  }) [];
-  serde_1_0_10 = { features?(serde_1_0_10_features {}) }: serde_1_0_10_ {
-    dependencies = mapFeatures features ([]);
-    features = mkFeatures (features.serde_1_0_10 or {});
-  };
-  serde_1_0_10_features = f: updateFeatures f (rec {
-    serde_1_0_10.default = (f.serde_1_0_10.default or true);
-    serde_1_0_10.serde_derive =
-      (f.serde_1_0_10.serde_derive or false) ||
-      (f.serde_1_0_10.derive or false) ||
-      (serde_1_0_10.derive or false) ||
-      (f.serde_1_0_10.playground or false) ||
-      (serde_1_0_10.playground or false);
-    serde_1_0_10.std =
-      (f.serde_1_0_10.std or false) ||
-      (f.serde_1_0_10.default or false) ||
-      (serde_1_0_10.default or false);
-    serde_1_0_10.unstable =
-      (f.serde_1_0_10.unstable or false) ||
-      (f.serde_1_0_10.alloc or false) ||
-      (serde_1_0_10.alloc or false);
-  }) [];
-  serde_derive_1_0_10 = { features?(serde_derive_1_0_10_features {}) }: serde_derive_1_0_10_ {
-    dependencies = mapFeatures features ([ quote_0_3_15 serde_derive_internals_0_15_1 syn_0_11_11 ]);
-  };
-  serde_derive_1_0_10_features = f: updateFeatures f (rec {
-    quote_0_3_15.default = true;
-    serde_derive_1_0_10.default = (f.serde_derive_1_0_10.default or true);
-    serde_derive_internals_0_15_1.default = (f.serde_derive_internals_0_15_1.default or false);
-    syn_0_11_11.default = true;
-    syn_0_11_11.visit = true;
-  }) [ quote_0_3_15_features serde_derive_internals_0_15_1_features syn_0_11_11_features ];
-  serde_derive_internals_0_15_1 = { features?(serde_derive_internals_0_15_1_features {}) }: serde_derive_internals_0_15_1_ {
-    dependencies = mapFeatures features ([ syn_0_11_11 synom_0_11_3 ]);
-  };
-  serde_derive_internals_0_15_1_features = f: updateFeatures f (rec {
-    serde_derive_internals_0_15_1.default = (f.serde_derive_internals_0_15_1.default or true);
-    syn_0_11_11.default = (f.syn_0_11_11.default or false);
-    syn_0_11_11.parsing = true;
-    synom_0_11_3.default = true;
-  }) [ syn_0_11_11_features synom_0_11_3_features ];
-  serde_json_1_0_2 = { features?(serde_json_1_0_2_features {}) }: serde_json_1_0_2_ {
-    dependencies = mapFeatures features ([ dtoa_0_4_1 itoa_0_3_1 num_traits_0_1_40 serde_1_0_10 ]);
-    features = mkFeatures (features.serde_json_1_0_2 or {});
-  };
-  serde_json_1_0_2_features = f: updateFeatures f (rec {
-    dtoa_0_4_1.default = true;
-    itoa_0_3_1.default = true;
-    num_traits_0_1_40.default = true;
-    serde_1_0_10.default = true;
-    serde_json_1_0_2.default = (f.serde_json_1_0_2.default or true);
-    serde_json_1_0_2.linked-hash-map =
-      (f.serde_json_1_0_2.linked-hash-map or false) ||
-      (f.serde_json_1_0_2.preserve_order or false) ||
-      (serde_json_1_0_2.preserve_order or false);
-  }) [ dtoa_0_4_1_features itoa_0_3_1_features num_traits_0_1_40_features serde_1_0_10_features ];
-  serde_urlencoded_0_5_1 = { features?(serde_urlencoded_0_5_1_features {}) }: serde_urlencoded_0_5_1_ {
-    dependencies = mapFeatures features ([ dtoa_0_4_1 itoa_0_3_1 serde_1_0_10 url_1_5_1 ]);
-  };
-  serde_urlencoded_0_5_1_features = f: updateFeatures f (rec {
-    dtoa_0_4_1.default = true;
-    itoa_0_3_1.default = true;
-    serde_1_0_10.default = true;
-    serde_urlencoded_0_5_1.default = (f.serde_urlencoded_0_5_1.default or true);
-    url_1_5_1.default = true;
-  }) [ dtoa_0_4_1_features itoa_0_3_1_features serde_1_0_10_features url_1_5_1_features ];
-  skeptic_0_5_0 = { features?(skeptic_0_5_0_features {}) }: skeptic_0_5_0_ {
-    dependencies = mapFeatures features ([ pulldown_cmark_0_0_3 tempdir_0_3_5 ]);
-  };
-  skeptic_0_5_0_features = f: updateFeatures f (rec {
-    pulldown_cmark_0_0_3.default = true;
-    skeptic_0_5_0.default = (f.skeptic_0_5_0.default or true);
-    tempdir_0_3_5.default = true;
-  }) [ pulldown_cmark_0_0_3_features tempdir_0_3_5_features ];
-  slab_0_3_0 = { features?(slab_0_3_0_features {}) }: slab_0_3_0_ {};
-  slab_0_3_0_features = f: updateFeatures f (rec {
-    slab_0_3_0.default = (f.slab_0_3_0.default or true);
-  }) [];
-  smallvec_0_2_1 = { features?(smallvec_0_2_1_features {}) }: smallvec_0_2_1_ {};
-  smallvec_0_2_1_features = f: updateFeatures f (rec {
-    smallvec_0_2_1.default = (f.smallvec_0_2_1.default or true);
-  }) [];
-  strsim_0_6_0 = { features?(strsim_0_6_0_features {}) }: strsim_0_6_0_ {};
-  strsim_0_6_0_features = f: updateFeatures f (rec {
-    strsim_0_6_0.default = (f.strsim_0_6_0.default or true);
-  }) [];
-  syn_0_11_11 = { features?(syn_0_11_11_features {}) }: syn_0_11_11_ {
-    dependencies = mapFeatures features ([ ]
-      ++ (if features.syn_0_11_11.quote or false then [ quote_0_3_15 ] else [])
-      ++ (if features.syn_0_11_11.synom or false then [ synom_0_11_3 ] else [])
-      ++ (if features.syn_0_11_11.unicode-xid or false then [ unicode_xid_0_0_4 ] else []));
-    features = mkFeatures (features.syn_0_11_11 or {});
-  };
-  syn_0_11_11_features = f: updateFeatures f (rec {
-    quote_0_3_15.default = true;
-    syn_0_11_11.default = (f.syn_0_11_11.default or true);
-    syn_0_11_11.parsing =
-      (f.syn_0_11_11.parsing or false) ||
-      (f.syn_0_11_11.default or false) ||
-      (syn_0_11_11.default or false);
-    syn_0_11_11.printing =
-      (f.syn_0_11_11.printing or false) ||
-      (f.syn_0_11_11.default or false) ||
-      (syn_0_11_11.default or false);
-    syn_0_11_11.quote =
-      (f.syn_0_11_11.quote or false) ||
-      (f.syn_0_11_11.printing or false) ||
-      (syn_0_11_11.printing or false);
-    syn_0_11_11.synom =
-      (f.syn_0_11_11.synom or false) ||
-      (f.syn_0_11_11.parsing or false) ||
-      (syn_0_11_11.parsing or false);
-    syn_0_11_11.unicode-xid =
-      (f.syn_0_11_11.unicode-xid or false) ||
-      (f.syn_0_11_11.parsing or false) ||
-      (syn_0_11_11.parsing or false);
-    synom_0_11_3.default = true;
-    unicode_xid_0_0_4.default = true;
-  }) [ quote_0_3_15_features synom_0_11_3_features unicode_xid_0_0_4_features ];
-  synom_0_11_3 = { features?(synom_0_11_3_features {}) }: synom_0_11_3_ {
-    dependencies = mapFeatures features ([ unicode_xid_0_0_4 ]);
-  };
-  synom_0_11_3_features = f: updateFeatures f (rec {
-    synom_0_11_3.default = (f.synom_0_11_3.default or true);
-    unicode_xid_0_0_4.default = true;
-  }) [ unicode_xid_0_0_4_features ];
-  take_0_1_0 = { features?(take_0_1_0_features {}) }: take_0_1_0_ {};
-  take_0_1_0_features = f: updateFeatures f (rec {
-    take_0_1_0.default = (f.take_0_1_0.default or true);
-  }) [];
-  tempdir_0_3_5 = { features?(tempdir_0_3_5_features {}) }: tempdir_0_3_5_ {
-    dependencies = mapFeatures features ([ rand_0_3_15 ]);
-  };
-  tempdir_0_3_5_features = f: updateFeatures f (rec {
-    rand_0_3_15.default = true;
-    tempdir_0_3_5.default = (f.tempdir_0_3_5.default or true);
-  }) [ rand_0_3_15_features ];
-  thread_local_0_3_4 = { features?(thread_local_0_3_4_features {}) }: thread_local_0_3_4_ {
-    dependencies = mapFeatures features ([ lazy_static_0_2_8 unreachable_1_0_0 ]);
-  };
-  thread_local_0_3_4_features = f: updateFeatures f (rec {
-    lazy_static_0_2_8.default = true;
-    thread_local_0_3_4.default = (f.thread_local_0_3_4.default or true);
-    unreachable_1_0_0.default = true;
-  }) [ lazy_static_0_2_8_features unreachable_1_0_0_features ];
-  time_0_1_38 = { features?(time_0_1_38_features {}) }: time_0_1_38_ {
-    dependencies = mapFeatures features ([ libc_0_2_26 ])
-      ++ (if kernel == "redox" then mapFeatures features ([ redox_syscall_0_1_26 ]) else [])
-      ++ (if kernel == "windows" then mapFeatures features ([ kernel32_sys_0_2_2 winapi_0_2_8 ]) else []);
-  };
-  time_0_1_38_features = f: updateFeatures f (rec {
-    kernel32_sys_0_2_2.default = true;
-    libc_0_2_26.default = true;
-    redox_syscall_0_1_26.default = true;
-    time_0_1_38.default = (f.time_0_1_38.default or true);
-    winapi_0_2_8.default = true;
-  }) [ libc_0_2_26_features redox_syscall_0_1_26_features kernel32_sys_0_2_2_features winapi_0_2_8_features ];
-  tokio_core_0_1_8 = { features?(tokio_core_0_1_8_features {}) }: tokio_core_0_1_8_ {
-    dependencies = mapFeatures features ([ bytes_0_4_4 futures_0_1_14 iovec_0_1_0 log_0_3_8 mio_0_6_9 scoped_tls_0_1_0 slab_0_3_0 tokio_io_0_1_2 ]);
-  };
-  tokio_core_0_1_8_features = f: updateFeatures f (rec {
-    bytes_0_4_4.default = true;
-    futures_0_1_14.default = true;
-    iovec_0_1_0.default = true;
-    log_0_3_8.default = true;
-    mio_0_6_9.default = true;
-    scoped_tls_0_1_0.default = true;
-    slab_0_3_0.default = true;
-    tokio_core_0_1_8.default = (f.tokio_core_0_1_8.default or true);
-    tokio_io_0_1_2.default = true;
-  }) [ bytes_0_4_4_features futures_0_1_14_features iovec_0_1_0_features log_0_3_8_features mio_0_6_9_features scoped_tls_0_1_0_features slab_0_3_0_features tokio_io_0_1_2_features ];
-  tokio_io_0_1_2 = { features?(tokio_io_0_1_2_features {}) }: tokio_io_0_1_2_ {
-    dependencies = mapFeatures features ([ bytes_0_4_4 futures_0_1_14 log_0_3_8 ]);
-  };
-  tokio_io_0_1_2_features = f: updateFeatures f (rec {
-    bytes_0_4_4.default = true;
-    futures_0_1_14.default = true;
-    log_0_3_8.default = true;
-    tokio_io_0_1_2.default = (f.tokio_io_0_1_2.default or true);
-  }) [ bytes_0_4_4_features futures_0_1_14_features log_0_3_8_features ];
-  tokio_proto_0_1_1 = { features?(tokio_proto_0_1_1_features {}) }: tokio_proto_0_1_1_ {
-    dependencies = mapFeatures features ([ futures_0_1_14 log_0_3_8 net2_0_2_30 rand_0_3_15 slab_0_3_0 smallvec_0_2_1 take_0_1_0 tokio_core_0_1_8 tokio_io_0_1_2 tokio_service_0_1_0 ]);
-  };
-  tokio_proto_0_1_1_features = f: updateFeatures f (rec {
-    futures_0_1_14.default = true;
-    log_0_3_8.default = true;
-    net2_0_2_30.default = true;
-    rand_0_3_15.default = true;
-    slab_0_3_0.default = true;
-    smallvec_0_2_1.default = true;
-    take_0_1_0.default = true;
-    tokio_core_0_1_8.default = true;
-    tokio_io_0_1_2.default = true;
-    tokio_proto_0_1_1.default = (f.tokio_proto_0_1_1.default or true);
-    tokio_service_0_1_0.default = true;
-  }) [ futures_0_1_14_features log_0_3_8_features net2_0_2_30_features rand_0_3_15_features slab_0_3_0_features smallvec_0_2_1_features take_0_1_0_features tokio_core_0_1_8_features tokio_io_0_1_2_features tokio_service_0_1_0_features ];
-  tokio_service_0_1_0 = { features?(tokio_service_0_1_0_features {}) }: tokio_service_0_1_0_ {
-    dependencies = mapFeatures features ([ futures_0_1_14 ]);
-  };
-  tokio_service_0_1_0_features = f: updateFeatures f (rec {
-    futures_0_1_14.default = true;
-    tokio_service_0_1_0.default = (f.tokio_service_0_1_0.default or true);
-  }) [ futures_0_1_14_features ];
-  tokio_tls_0_1_3 = { features?(tokio_tls_0_1_3_features {}) }: tokio_tls_0_1_3_ {
-    dependencies = mapFeatures features ([ futures_0_1_14 native_tls_0_1_4 tokio_core_0_1_8 tokio_io_0_1_2 ])
-      ++ (if !(kernel == "darwin") && !(kernel == "windows") && !(kernel == "ios") then mapFeatures features ([]) else [])
-      ++ (if kernel == "darwin" || kernel == "ios" then mapFeatures features ([]) else [])
-      ++ (if kernel == "windows" then mapFeatures features ([]) else []);
-  };
-  tokio_tls_0_1_3_features = f: updateFeatures f (rec {
-    futures_0_1_14.default = true;
-    native_tls_0_1_4.default = true;
-    tokio_core_0_1_8.default = true;
-    tokio_io_0_1_2.default = true;
-    tokio_tls_0_1_3.default = (f.tokio_tls_0_1_3.default or true);
-  }) [ futures_0_1_14_features native_tls_0_1_4_features tokio_core_0_1_8_features tokio_io_0_1_2_features ];
-  toml_0_4_2 = { features?(toml_0_4_2_features {}) }: toml_0_4_2_ {
-    dependencies = mapFeatures features ([ serde_1_0_10 ]);
-  };
-  toml_0_4_2_features = f: updateFeatures f (rec {
-    serde_1_0_10.default = true;
-    toml_0_4_2.default = (f.toml_0_4_2.default or true);
-  }) [ serde_1_0_10_features ];
-  unicase_2_0_0 = { features?(unicase_2_0_0_features {}) }: unicase_2_0_0_ {
-    buildDependencies = mapFeatures features ([ rustc_version_0_1_7 ]);
-    features = mkFeatures (features.unicase_2_0_0 or {});
-  };
-  unicase_2_0_0_features = f: updateFeatures f (rec {
-    rustc_version_0_1_7.default = true;
-    unicase_2_0_0.default = (f.unicase_2_0_0.default or true);
-  }) [ rustc_version_0_1_7_features ];
-  unicode_bidi_0_3_4 = { features?(unicode_bidi_0_3_4_features {}) }: unicode_bidi_0_3_4_ {
-    dependencies = mapFeatures features ([ matches_0_1_6 ]);
-    features = mkFeatures (features.unicode_bidi_0_3_4 or {});
-  };
-  unicode_bidi_0_3_4_features = f: updateFeatures f (rec {
-    matches_0_1_6.default = true;
-    unicode_bidi_0_3_4.default = (f.unicode_bidi_0_3_4.default or true);
-    unicode_bidi_0_3_4.flame =
-      (f.unicode_bidi_0_3_4.flame or false) ||
-      (f.unicode_bidi_0_3_4.flame_it or false) ||
-      (unicode_bidi_0_3_4.flame_it or false);
-    unicode_bidi_0_3_4.flamer =
-      (f.unicode_bidi_0_3_4.flamer or false) ||
-      (f.unicode_bidi_0_3_4.flame_it or false) ||
-      (unicode_bidi_0_3_4.flame_it or false);
-    unicode_bidi_0_3_4.serde =
-      (f.unicode_bidi_0_3_4.serde or false) ||
-      (f.unicode_bidi_0_3_4.with_serde or false) ||
-      (unicode_bidi_0_3_4.with_serde or false);
-  }) [ matches_0_1_6_features ];
-  unicode_normalization_0_1_5 = { features?(unicode_normalization_0_1_5_features {}) }: unicode_normalization_0_1_5_ {};
-  unicode_normalization_0_1_5_features = f: updateFeatures f (rec {
-    unicode_normalization_0_1_5.default = (f.unicode_normalization_0_1_5.default or true);
-  }) [];
-  unicode_width_0_1_4 = { features?(unicode_width_0_1_4_features {}) }: unicode_width_0_1_4_ {
-    features = mkFeatures (features.unicode_width_0_1_4 or {});
-  };
-  unicode_width_0_1_4_features = f: updateFeatures f (rec {
-    unicode_width_0_1_4.default = (f.unicode_width_0_1_4.default or true);
-  }) [];
-  unicode_xid_0_0_4 = { features?(unicode_xid_0_0_4_features {}) }: unicode_xid_0_0_4_ {
-    features = mkFeatures (features.unicode_xid_0_0_4 or {});
-  };
-  unicode_xid_0_0_4_features = f: updateFeatures f (rec {
-    unicode_xid_0_0_4.default = (f.unicode_xid_0_0_4.default or true);
-  }) [];
-  unreachable_1_0_0 = { features?(unreachable_1_0_0_features {}) }: unreachable_1_0_0_ {
-    dependencies = mapFeatures features ([ void_1_0_2 ]);
-  };
-  unreachable_1_0_0_features = f: updateFeatures f (rec {
-    unreachable_1_0_0.default = (f.unreachable_1_0_0.default or true);
-    void_1_0_2.default = (f.void_1_0_2.default or false);
-  }) [ void_1_0_2_features ];
-  url_1_5_1 = { features?(url_1_5_1_features {}) }: url_1_5_1_ {
-    dependencies = mapFeatures features ([ idna_0_1_4 matches_0_1_6 percent_encoding_1_0_0 ]);
-    features = mkFeatures (features.url_1_5_1 or {});
-  };
-  url_1_5_1_features = f: updateFeatures f (rec {
-    idna_0_1_4.default = true;
-    matches_0_1_6.default = true;
-    percent_encoding_1_0_0.default = true;
-    url_1_5_1.default = (f.url_1_5_1.default or true);
-    url_1_5_1.encoding =
-      (f.url_1_5_1.encoding or false) ||
-      (f.url_1_5_1.query_encoding or false) ||
-      (url_1_5_1.query_encoding or false);
-    url_1_5_1.heapsize =
-      (f.url_1_5_1.heapsize or false) ||
-      (f.url_1_5_1.heap_size or false) ||
-      (url_1_5_1.heap_size or false);
-  }) [ idna_0_1_4_features matches_0_1_6_features percent_encoding_1_0_0_features ];
-  utf8_ranges_1_0_0 = { features?(utf8_ranges_1_0_0_features {}) }: utf8_ranges_1_0_0_ {};
-  utf8_ranges_1_0_0_features = f: updateFeatures f (rec {
-    utf8_ranges_1_0_0.default = (f.utf8_ranges_1_0_0.default or true);
-  }) [];
-  void_1_0_2 = { features?(void_1_0_2_features {}) }: void_1_0_2_ {
-    features = mkFeatures (features.void_1_0_2 or {});
-  };
-  void_1_0_2_features = f: updateFeatures f (rec {
-    void_1_0_2.default = (f.void_1_0_2.default or true);
-    void_1_0_2.std =
-      (f.void_1_0_2.std or false) ||
-      (f.void_1_0_2.default or false) ||
-      (void_1_0_2.default or false);
-  }) [];
-  winapi_0_2_8 = { features?(winapi_0_2_8_features {}) }: winapi_0_2_8_ {};
-  winapi_0_2_8_features = f: updateFeatures f (rec {
-    winapi_0_2_8.default = (f.winapi_0_2_8.default or true);
-  }) [];
-  winapi_build_0_1_1 = { features?(winapi_build_0_1_1_features {}) }: winapi_build_0_1_1_ {};
-  winapi_build_0_1_1_features = f: updateFeatures f (rec {
-    winapi_build_0_1_1.default = (f.winapi_build_0_1_1.default or true);
-  }) [];
-  ws2_32_sys_0_2_1 = { features?(ws2_32_sys_0_2_1_features {}) }: ws2_32_sys_0_2_1_ {
-    dependencies = mapFeatures features ([ winapi_0_2_8 ]);
-    buildDependencies = mapFeatures features ([ winapi_build_0_1_1 ]);
-  };
-  ws2_32_sys_0_2_1_features = f: updateFeatures f (rec {
-    winapi_0_2_8.default = true;
-    winapi_build_0_1_1.default = true;
-    ws2_32_sys_0_2_1.default = (f.ws2_32_sys_0_2_1.default or true);
-  }) [ winapi_0_2_8_features winapi_build_0_1_1_features ];
-}
diff --git a/pkgs/tools/package-management/cargo-edit/default.nix b/pkgs/tools/package-management/cargo-edit/default.nix
index 37f543b66b64..e2cc49a3e99a 100644
--- a/pkgs/tools/package-management/cargo-edit/default.nix
+++ b/pkgs/tools/package-management/cargo-edit/default.nix
@@ -1,27 +1,31 @@
-{ stdenv, pkgs, darwin, defaultCrateOverrides, fetchFromGitHub }:
+{ stdenv, lib, darwin
+, rustPlatform, fetchFromGitHub
+, openssl, pkgconfig }:
 
-((import ./cargo-edit.nix { inherit pkgs; }).cargo_edit {}).override {
-  crateOverrides = defaultCrateOverrides // {
-    cargo-edit = attrs: rec {
-      name = "cargo-edit-${version}";
-      version = "0.2.0";
+rustPlatform.buildRustPackage rec {
+  name = "cargo-edit-${version}";
+  version = "0.3.0";
 
-      src = fetchFromGitHub {
-        owner = "killercup";
-        repo = "cargo-edit";
-        rev = "v${version}";
-        sha256 = "1jxppbb7s50pwg24qxf79fqvm1clwm2zdnv0xlkay7y05nd5bc0c";
-      };
+  src = fetchFromGitHub {
+    owner = "killercup";
+    repo = "cargo-edit";
+    rev = "v${version}";
+    sha256 = "0ngxyzqy5pfc0fqbvqw7kd40jhqzp67qvpzvh3yggk9yxa1jzsp0";
+  };
+
+  cargoSha256 = "1j7fqswdx6f2i5wr0pdavdvcv18j1l27a8ighr75p7f54apa27l8";
+
+  nativeBuildInputs = lib.optional (!stdenv.isDarwin) pkgconfig;
+  buildInputs = lib.optional (!stdenv.isDarwin) openssl;
+  propagatedBuildInputs = lib.optional stdenv.isDarwin darwin.apple_sdk.frameworks.Security;
 
-      propagatedBuildInputs = stdenv.lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.Security ];
+  patches = [ ./disable-network-based-test.patch ];
 
-      meta = with stdenv.lib; {
-        description = "A utility for managing cargo dependencies from the command line";
-        homepage = https://github.com/killercup/cargo-edit;
-        license = with licenses; [ mit ];
-        maintainers = with maintainers; [ gerschtli jb55 ];
-        platforms = platforms.all;
-      };
-    };
+  meta = with lib; {
+    description = "A utility for managing cargo dependencies from the command line";
+    homepage = https://github.com/killercup/cargo-edit;
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ gerschtli jb55 ];
+    platforms = platforms.all;
   };
 }
diff --git a/pkgs/tools/package-management/cargo-edit/disable-network-based-test.patch b/pkgs/tools/package-management/cargo-edit/disable-network-based-test.patch
new file mode 100644
index 000000000000..d1044a7fc539
--- /dev/null
+++ b/pkgs/tools/package-management/cargo-edit/disable-network-based-test.patch
@@ -0,0 +1,10 @@
+--- cargo-edit.org/tests/cargo-upgrade.rs	2018-09-11 20:59:04.609532299 +0100
++++ cargo-edit/tests/cargo-upgrade.rs	2018-09-11 20:59:50.829435331 +0100
+@@ -302,6 +302,7 @@
+ }
+ 
+ #[test]
++#[ignore] // requires network
+ fn upgrade_prints_messages() {
+     let (_tmpdir, manifest) = clone_out_test("tests/fixtures/upgrade/Cargo.toml.source");
+ 
diff --git a/pkgs/tools/package-management/cargo-update/default.nix b/pkgs/tools/package-management/cargo-update/default.nix
index 70a14ded7bf3..50dc748e07ef 100644
--- a/pkgs/tools/package-management/cargo-update/default.nix
+++ b/pkgs/tools/package-management/cargo-update/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, callPackage, defaultCrateOverrides, fetchFromGitHub, cmake, libssh2, libgit2, openssl, zlib }:
+{ stdenv, callPackage, defaultCrateOverrides, fetchFromGitHub, cmake, curl, libssh2, libgit2, openssl, zlib }:
 
 ((callPackage ./cargo-update.nix {}).cargo_update {}).override {
   crateOverrides = defaultCrateOverrides // {
@@ -13,7 +13,9 @@
         sha256 = "1bvrdgcw2akzd78wgvsisvghi8pvdk3szyg9s46qxv4km9sf88s7";
       };
 
-      buildInputs = [ cmake libssh2 libgit2 openssl zlib ];
+      nativeBuildInputs = [ cmake ];
+      buildInputs = [ libssh2 libgit2 openssl zlib ]
+        ++ stdenv.lib.optional stdenv.isDarwin curl;
 
       meta = with stdenv.lib; {
         description = "A cargo subcommand for checking and applying updates to installed executables";
diff --git a/pkgs/tools/package-management/clib/default.nix b/pkgs/tools/package-management/clib/default.nix
index 795a605b3b63..158db426c615 100644
--- a/pkgs/tools/package-management/clib/default.nix
+++ b/pkgs/tools/package-management/clib/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchFromGitHub, curl  }:
 
 stdenv.mkDerivation rec {
-  version = "1.8.0";
+  version = "1.8.1";
   name = "clib-${version}";
 
   src = fetchFromGitHub {
     rev    = version;
     owner  = "clibs";
     repo   = "clib";
-    sha256 = "0w1qiwq0jjrk8p848bmwxq4wvzhbd2zghq3qm8ylaj3z0xdw7ppk";
+    sha256 = "1kl8amlw0106jsvv71a7nifhff1jdvgsrxr7l7hfr75i506q8976";
   };
 
   hardeningDisable = [ "fortify" ];
diff --git a/pkgs/tools/package-management/nix-prefetch-scripts/default.nix b/pkgs/tools/package-management/nix-prefetch-scripts/default.nix
index 69e978d3439d..ba47847f28b6 100644
--- a/pkgs/tools/package-management/nix-prefetch-scripts/default.nix
+++ b/pkgs/tools/package-management/nix-prefetch-scripts/default.nix
@@ -1,5 +1,5 @@
 { stdenv, makeWrapper, buildEnv,
-  git, subversion, mercurial, bazaar, cvs, gnused, coreutils, nix
+  git, subversion, mercurial, bazaar, cvs, gnused, coreutils, nix, findutils
 }:
 
 let mkPrefetchScript = tool: src: deps:
@@ -28,7 +28,7 @@ let mkPrefetchScript = tool: src: deps:
 in rec {
   nix-prefetch-bzr = mkPrefetchScript "bzr" ../../../build-support/fetchbzr/nix-prefetch-bzr [ bazaar ];
   nix-prefetch-cvs = mkPrefetchScript "cvs" ../../../build-support/fetchcvs/nix-prefetch-cvs [ cvs ];
-  nix-prefetch-git = mkPrefetchScript "git" ../../../build-support/fetchgit/nix-prefetch-git [ git coreutils ];
+  nix-prefetch-git = mkPrefetchScript "git" ../../../build-support/fetchgit/nix-prefetch-git [ git coreutils findutils ];
   nix-prefetch-hg  = mkPrefetchScript "hg"  ../../../build-support/fetchhg/nix-prefetch-hg   [ mercurial ];
   nix-prefetch-svn = mkPrefetchScript "svn" ../../../build-support/fetchsvn/nix-prefetch-svn [ subversion ];
 
diff --git a/pkgs/tools/package-management/nix/default.nix b/pkgs/tools/package-management/nix/default.nix
index bc07dd457f38..7d78fef39742 100644
--- a/pkgs/tools/package-management/nix/default.nix
+++ b/pkgs/tools/package-management/nix/default.nix
@@ -1,11 +1,12 @@
 { lib, stdenv, fetchurl, fetchFromGitHub, fetchpatch, perl, curl, bzip2, sqlite, openssl ? null, xz
-, pkgconfig, boehmgc, perlPackages, libsodium, aws-sdk-cpp, brotli, boost
+, pkgconfig, boehmgc, perlPackages, libsodium, brotli, boost
 , autoreconfHook, autoconf-archive, bison, flex, libxml2, libxslt, docbook5, docbook_xsl_ns
 , busybox-sandbox-shell
 , storeDir ? "/nix/store"
 , stateDir ? "/nix/var"
 , confDir ? "/etc"
 , withLibseccomp ? libseccomp.meta.available, libseccomp
+, withAWS ? stdenv.isLinux || stdenv.isDarwin, aws-sdk-cpp
 }:
 
 let
@@ -29,9 +30,9 @@ let
 
     buildInputs = [ curl openssl sqlite xz bzip2 ]
       ++ lib.optional (stdenv.isLinux || stdenv.isDarwin) libsodium
-      ++ lib.optionals is20 [ brotli ] # Since 1.12
+      ++ lib.optionals is20 [ brotli boost ]
       ++ lib.optional withLibseccomp libseccomp
-      ++ lib.optional ((stdenv.isLinux || stdenv.isDarwin) && is20)
+      ++ lib.optional (withAWS && is20)
           ((aws-sdk-cpp.override {
             apis = ["s3" "transfer"];
             customMemoryManagement = false;
@@ -40,8 +41,7 @@ let
               url = https://github.com/edolstra/aws-sdk-cpp/commit/7d58e303159b2fb343af9a1ec4512238efa147c7.patch;
               sha256 = "103phn6kyvs1yc7fibyin3lgxz699qakhw671kl207484im55id1";
             })];
-          }))
-      ++ lib.optional fromGit boost;
+          }));
 
     propagatedBuildInputs = [ boehmgc ];
 
@@ -51,7 +51,7 @@ let
     preConfigure =
       # Copy libboost_context so we don't get all of Boost in our closure.
       # https://github.com/NixOS/nixpkgs/issues/45462
-      lib.optionalString fromGit
+      lib.optionalString is20
       ''
         mkdir -p $out/lib
         cp ${boost}/lib/libboost_context* $out/lib
@@ -75,7 +75,7 @@ let
           stdenv.hostPlatform != stdenv.buildPlatform && stdenv.hostPlatform ? nix && stdenv.hostPlatform.nix ? system
       ) ''--with-system=${stdenv.hostPlatform.nix.system}''
          # RISC-V support in progress https://github.com/seccomp/libseccomp/pull/50
-      ++ lib.optional (!libseccomp.meta.available) "--disable-seccomp-sandboxing";
+      ++ lib.optional (!withLibseccomp) "--disable-seccomp-sandboxing";
 
     makeFlags = "profiledir=$(out)/etc/profile.d";
 
@@ -148,12 +148,15 @@ in rec {
   }) // { perl-bindings = nix1; };
 
   nixStable = (common rec {
-    name = "nix-2.0.4";
+    name = "nix-2.1.1";
     src = fetchurl {
       url = "http://nixos.org/releases/nix/${name}/${name}.tar.xz";
-      sha256 = "166540ff7b8bb41449586b67e5fc6ab9e25525f6724b6c6bcbfb0648fbd6496b";
+      sha256 = "63b1d49ea678162ada6996e42abb62cbc6e65cfefa4faa5436ae37100504720b";
     };
-  }) // { perl-bindings = perl-bindings { nix = nixStable; }; };
+  }) // { perl-bindings = perl-bindings {
+    nix = nixStable;
+    needsBoost = true;
+  }; };
 
   nixUnstable = (lib.lowPrio (common rec {
     name = "nix-2.1${suffix}";
diff --git a/pkgs/tools/package-management/pacman/default.nix b/pkgs/tools/package-management/pacman/default.nix
index 8423caa49d59..461e8ff1ec5d 100644
--- a/pkgs/tools/package-management/pacman/default.nix
+++ b/pkgs/tools/package-management/pacman/default.nix
@@ -16,6 +16,11 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
   buildInputs = [ perl libarchive openssl zlib bzip2 lzma ];
 
+  postFixup = ''
+    substituteInPlace $out/bin/repo-add \
+      --replace bsdtar "${libarchive}/bin/bsdtar"
+  '';
+
   meta = with lib; {
     description = "A simple library-based package manager";
     homepage = https://www.archlinux.org/pacman/;
diff --git a/pkgs/tools/security/aws-okta/default.nix b/pkgs/tools/security/aws-okta/default.nix
index 7ec5b024de13..cdb35453d3d2 100644
--- a/pkgs/tools/security/aws-okta/default.nix
+++ b/pkgs/tools/security/aws-okta/default.nix
@@ -1,4 +1,5 @@
 { buildGoPackage, fetchFromGitHub, stdenv }:
+
 buildGoPackage rec {
   name = "aws-okta-${version}";
   version = "0.19.0";
@@ -19,6 +20,7 @@ buildGoPackage rec {
     description = "aws-vault like tool for Okta authentication";
     license = licenses.mit;
     maintainers = [maintainers.imalsogreg];
+    broken = stdenv.isDarwin;  # test with CoreFoundation 10.11
     platforms = platforms.all;
     homepage = https://github.com/segmentio/aws-okta;
     downloadPage = "https://github.com/segmentio/aws-okta";
diff --git a/pkgs/tools/security/duo-unix/default.nix b/pkgs/tools/security/duo-unix/default.nix
index 729f85a73fce..3ef07c44f501 100644
--- a/pkgs/tools/security/duo-unix/default.nix
+++ b/pkgs/tools/security/duo-unix/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "duo-unix-${version}";
-  version = "1.9.20";
+  version = "1.10.4";
 
   src = fetchurl {
     url    = "https://dl.duosecurity.com/duo_unix-${version}.tar.gz";
-    sha256 = "0zxrpdbgi8k8jbqg5yxjv3b0lz9kpk89pglwb3lqlvzscbxdv5qj";
+    sha256 = "1pbl6ii7sh66i277s5mqpnv092jd2q52qis3ar4lwy4mywfvrhjp";
   };
 
   buildInputs = [ pam openssl zlib ];
diff --git a/pkgs/tools/security/lynis/default.nix b/pkgs/tools/security/lynis/default.nix
index bb7a6a0e7724..8158a4fbfd74 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.6.7";
+  version = "2.6.8";
   name = "${pname}-${version}";
 
   src = fetchFromGitHub {
     owner = "CISOfy";
     repo = "${pname}";
     rev = "${version}";
-    sha256 = "0ayil5bzxqaksmr79x0gxy60k8djzg0bs60jfg8qi6128q6srhar";
+    sha256 = "1g7jxjqvzl78fy770vlg6n6l003nvm452i2g3wnrb1fqcwkrm6ax";
   };
 
   nativeBuildInputs = [ makeWrapper perl ];
diff --git a/pkgs/tools/security/masscan/default.nix b/pkgs/tools/security/masscan/default.nix
index 26497659d23d..e33681c45e0e 100644
--- a/pkgs/tools/security/masscan/default.nix
+++ b/pkgs/tools/security/masscan/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "masscan-${version}";
-  version = "1.0.4";
+  version = "1.0.5";
 
   src = fetchFromGitHub {
     owner  = "robertdavidgraham";
     repo   = "masscan";
-    rev    = "39061a5e9ef158dde1e6618f6fbf379739934a73";
-    sha256 = "0mjvwh4i0ncsa3ywavw2s55v5bfv7pyga028c8m8xfash9764wwf";
+    rev    = "${version}";
+    sha256 = "0q0c7bsf0pbl8napry1qyg0gl4pd8wn872h4mz9b56dx4rx90vqg";
   };
 
   nativeBuildInputs = [ makeWrapper ];
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
     mkdir -p $out/etc/masscan
 
     cp data/exclude.conf $out/etc/masscan
-    cp -t $out/share/doc/masscan doc/algorithm.js doc/howto-afl.md doc/bot.hml
+    cp -t $out/share/doc/masscan doc/algorithm.js doc/howto-afl.md doc/bot.html
     cp doc/masscan.8 $out/share/man/man8/masscan.8
     cp LICENSE $out/share/licenses/masscan/LICENSE
 
diff --git a/pkgs/tools/security/monkeysphere/default.nix b/pkgs/tools/security/monkeysphere/default.nix
index d1266ca495ed..f4def72b728c 100644
--- a/pkgs/tools/security/monkeysphere/default.nix
+++ b/pkgs/tools/security/monkeysphere/default.nix
@@ -1,35 +1,53 @@
-{ stdenv, fetchurl, perl, makeWrapper, perlPackages }:
+{ stdenv, fetchurl, makeWrapper
+, perl, libassuan, libgcrypt
+, perlPackages, lockfileProgs, gnupg
+}:
 
 stdenv.mkDerivation rec {
   name = "monkeysphere-${version}";
-  version = "0.37";
+  version = "0.41";
 
   src = fetchurl {
-    url = "http://archive.monkeysphere.info/debian/pool/monkeysphere/m/monkeysphere/monkeysphere_0.37.orig.tar.gz";
-    sha256 = "0nbfd220miflah5l2y20qlmgfpbqi0j8h7qgx1b06h7v2jjbh45m";
+    url = "http://archive.monkeysphere.info/debian/pool/monkeysphere/m/monkeysphere/monkeysphere_${version}.orig.tar.gz";
+    sha256 = "0jz7kwkwgylqprnl8bwvl084s5gjrilza77ln18i3f6x48b2y6li";
   };
 
-  buildInputs = [ makeWrapper perl ];
-
   patches = [ ./monkeysphere.patch ];
 
+  nativeBuildInputs = [ makeWrapper ];
+  buildInputs = [ perl libassuan libgcrypt ];
+
   makeFlags = ''
     PREFIX=/
     DESTDIR=$(out)
   '';
 
-  postInstall = ''
-    wrapProgram $out/bin/openpgp2ssh --prefix PERL5LIB : \
-      "${with perlPackages; stdenv.lib.makePerlPath [
-        CryptOpenSSLRSA
-        CryptOpenSSLBignum
-      ]}"
-    wrapProgram $out/bin/monkeysphere --prefix PERL5LIB :\
-      "${with perlPackages; stdenv.lib.makePerlPath [
-        CryptOpenSSLRSA
-        CryptOpenSSLBignum
-      ]}"
-  '';
+  postFixup =
+    let wrapperArgs = runtimeDeps:
+          "--prefix PERL5LIB : "
+          + (with perlPackages; stdenv.lib.makePerlPath [
+              CryptOpenSSLRSA
+              CryptOpenSSLBignum
+            ])
+          + stdenv.lib.optionalString
+              (builtins.length runtimeDeps > 0)
+              " --prefix PATH : ${stdenv.lib.makeBinPath runtimeDeps}";
+        wrapMonkeysphere = runtimeDeps: program:
+          "wrapProgram $out/bin/${program} ${wrapperArgs runtimeDeps}\n";
+        wrapPrograms = runtimeDeps: programs: stdenv.lib.concatMapStrings
+          (wrapMonkeysphere runtimeDeps)
+          programs;
+    in wrapPrograms [ gnupg ] [ "monkeysphere-authentication" "monkeysphere-host" ]
+      + wrapPrograms [ lockfileProgs ] [ "monkeysphere" ]
+      + ''
+        # These 4 programs depend on the program name ($0):
+        for program in openpgp2pem openpgp2spki openpgp2ssh pem2openpgp; do
+          rm $out/bin/$program
+          ln -sf keytrans $out/share/monkeysphere/$program
+          makeWrapper $out/share/monkeysphere/$program $out/bin/$program \
+            ${wrapperArgs [ ]}
+        done
+      '';
 
   meta = with stdenv.lib; {
     homepage = http://web.monkeysphere.info/;
@@ -43,7 +61,8 @@ stdenv.mkDerivation rec {
       TLS/SSL communications through the normal use of tools you are
       familiar with, such as your web browser0 or secure shell.
     '';
-    license = licenses.gpl3;
+    license = licenses.gpl3Plus;
     platforms = platforms.all;
+    maintainers = with maintainers; [ primeos ];
   };
 }
diff --git a/pkgs/tools/security/monkeysphere/monkeysphere.patch b/pkgs/tools/security/monkeysphere/monkeysphere.patch
index 8b343b93454f..fdf4b9335b19 100644
--- a/pkgs/tools/security/monkeysphere/monkeysphere.patch
+++ b/pkgs/tools/security/monkeysphere/monkeysphere.patch
@@ -1,92 +1,32 @@
-diff -rupN monkeysphere-0.37/Makefile monkeysphere-0.37-patched/Makefile
---- monkeysphere-0.37/Makefile	2014-08-06 19:27:38.000000000 +0200
-+++ monkeysphere-0.37-patched/Makefile	2015-07-31 19:51:57.539373097 +0200
-@@ -42,11 +42,11 @@ install: all installman
- 	mkdir -p $(DESTDIR)$(PREFIX)/share/doc/monkeysphere
- 	printf "Monkeysphere %s\n" $(MONKEYSPHERE_VERSION) > $(DESTDIR)$(PREFIX)/share/monkeysphere/VERSION
- 	install src/monkeysphere $(DESTDIR)$(PREFIX)/bin
--	sed -i 's:__SYSSHAREDIR_PREFIX__:$(PREFIX):' $(DESTDIR)$(PREFIX)/bin/monkeysphere
-+	sed -i 's:__SYSSHAREDIR_PREFIX__:$(DESTDIR):' $(DESTDIR)$(PREFIX)/bin/monkeysphere
- 	install src/monkeysphere-host $(DESTDIR)$(PREFIX)/sbin
--	sed -i 's:__SYSSHAREDIR_PREFIX__:$(PREFIX):' $(DESTDIR)$(PREFIX)/sbin/monkeysphere-host
-+	sed -i 's:__SYSSHAREDIR_PREFIX__:$(DESTDIR):' $(DESTDIR)$(PREFIX)/sbin/monkeysphere-host
- 	install src/monkeysphere-authentication $(DESTDIR)$(PREFIX)/sbin
--	sed -i 's:__SYSSHAREDIR_PREFIX__:$(PREFIX):' $(DESTDIR)$(PREFIX)/sbin/monkeysphere-authentication
-+	sed -i 's:__SYSSHAREDIR_PREFIX__:$(DESTDIR):' $(DESTDIR)$(PREFIX)/sbin/monkeysphere-authentication
- 	install src/monkeysphere-authentication-keys-for-user $(DESTDIR)$(PREFIX)/share/monkeysphere
- 	install -m 0755 src/share/common $(DESTDIR)$(PREFIX)/share/monkeysphere
- 	install -m 0644 src/share/defaultenv $(DESTDIR)$(PREFIX)/share/monkeysphere
-@@ -59,8 +59,8 @@ install: all installman
- 	ln -sf ../share/monkeysphere/keytrans $(DESTDIR)$(PREFIX)/bin/openpgp2pem
- 	ln -sf ../share/monkeysphere/keytrans $(DESTDIR)$(PREFIX)/bin/openpgp2spki
- 	install -m 0744 src/transitions/* $(DESTDIR)$(PREFIX)/share/monkeysphere/transitions
--	sed -i 's:__SYSSHAREDIR_PREFIX__:$(PREFIX):' $(DESTDIR)$(PREFIX)/share/monkeysphere/transitions/0.23
--	sed -i 's:__SYSSHAREDIR_PREFIX__:$(PREFIX):' $(DESTDIR)$(PREFIX)/share/monkeysphere/transitions/0.28
-+	sed -i 's:__SYSSHAREDIR_PREFIX__:$(DESTDIR):' $(DESTDIR)$(PREFIX)/share/monkeysphere/transitions/0.23
-+	sed -i 's:__SYSSHAREDIR_PREFIX__:$(DESTDIR):' $(DESTDIR)$(PREFIX)/share/monkeysphere/transitions/0.28
- 	install -m 0644 src/transitions/README.txt $(DESTDIR)$(PREFIX)/share/monkeysphere/transitions
- 	install -m 0644 src/share/m/* $(DESTDIR)$(PREFIX)/share/monkeysphere/m
- 	install -m 0644 src/share/mh/* $(DESTDIR)$(PREFIX)/share/monkeysphere/mh
-diff -rupN monkeysphere-0.37/src/share/checkperms monkeysphere-0.37-patched/src/share/checkperms
---- monkeysphere-0.37/src/share/checkperms	2014-08-06 19:27:38.000000000 +0200
-+++ monkeysphere-0.37-patched/src/share/checkperms	2015-07-31 19:52:18.170675985 +0200
+diff --git a/Makefile b/Makefile
+--- a/Makefile
++++ b/Makefile
+@@ -52,7 +52,7 @@ clean:
+ replaced/%: %
+ 	mkdir -p $(dir $@)
+ 	sed < $< > $@ \
+-	-e 's:__SYSSHAREDIR_PREFIX__:$(PREFIX):' \
++	-e 's:__SYSSHAREDIR_PREFIX__:$(DESTDIR):' \
+ 	-e 's:__SYSCONFDIR_PREFIX__:$(ETCPREFIX):' \
+ 	-e 's:__SYSDATADIR_PREFIX__:$(LOCALSTATEDIR):'
+ 
+diff --git a/src/share/checkperms b/src/share/checkperms
+--- a/src/share/checkperms
++++ b/src/share/checkperms
 @@ -1,4 +1,4 @@
 -#!/usr/bin/perl -T
 +#!/usr/bin/perl
  
  # checkperms: ensure as best we can that a given file can only be
  # modified by the given user (or the superuser, naturally).  This
-diff -rupN monkeysphere-0.37/src/share/keytrans monkeysphere-0.37-patched/src/share/keytrans
---- monkeysphere-0.37/src/share/keytrans	2014-08-06 19:27:38.000000000 +0200
-+++ monkeysphere-0.37-patched/src/share/keytrans	2015-07-31 20:13:36.664514290 +0200
+diff --git a/src/share/keytrans b/src/share/keytrans
+--- a/src/share/keytrans
++++ b/src/share/keytrans
 @@ -1,4 +1,4 @@
 -#!/usr/bin/perl -T
 +#!/usr/bin/perl
  
  # keytrans: this is an RSA key translation utility; it is capable of
  # transforming RSA keys (both public keys and secret keys) between
-@@ -1069,7 +1069,7 @@ sub packetwalk {
- 
- 
- for (basename($0)) {
--  if (/^pem2openpgp$/) {
-+  if (/pem2openpgp/) {
-     my $rsa;
-     my $stdin;
- 
-@@ -1107,7 +1107,7 @@ for (basename($0)) {
- 		      }
- 		     );
-   }
--  elsif (/^openpgp2ssh$/) {
-+  elsif (/openpgp2ssh/) {
-       my $fpr = shift;
-       my $instream;
-       open($instream,'-');
-@@ -1123,7 +1123,7 @@ for (basename($0)) {
- 	die "No matching key found.\n";
-       }
-   }
--  elsif (/^openpgp2pem$/) {
-+  elsif (/openpgp2pem/) {
-       my $fpr = shift;
-       my $instream;
-       open($instream,'-');
-@@ -1139,7 +1139,7 @@ for (basename($0)) {
- 	die "No matching key found.\n";
-       }
-   }
--  elsif (/^openpgp2spki$/) {
-+  elsif (/openpgp2spki/) {
-       my $fpr = shift;
-       my $instream;
-       open($instream,'-');
-@@ -1151,7 +1151,7 @@ for (basename($0)) {
- 	die "No matching key found.\n";
-       }
-   }
--  elsif (/^keytrans$/) {
-+  elsif (/keytrans/) {
-     # subcommands when keytrans is invoked directly are UNSUPPORTED,
-     # UNDOCUMENTED, and WILL NOT BE MAINTAINED.
-     my $subcommand = shift;
+-- 
+2.16.3
diff --git a/pkgs/tools/security/sops/default.nix b/pkgs/tools/security/sops/default.nix
index bbcfc4c78907..a0c183b3a2ee 100644
--- a/pkgs/tools/security/sops/default.nix
+++ b/pkgs/tools/security/sops/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   name = "sops-${version}";
-  version = "3.0.2";
+  version = "3.1.0";
 
   goPackagePath = "go.mozilla.org/sops";
 
@@ -10,12 +10,12 @@ buildGoPackage rec {
     rev = version;
     owner = "mozilla";
     repo = "sops";
-    sha256 = "0zszlb35cmw9j9dg1bpcbwxwh094wcfxhas4ns58jp5n79rqwv9i";
+    sha256 = "02s85affgs2991p4akff68myx4h7m3jcly6xihv9g2knml7ixrkj";
   };
 
   meta = with stdenv.lib; {
+    inherit (src.meta) homepage;
     description = "Mozilla sops (Secrets OPerationS) is an editor of encrypted files";
-    homepage = https://github.com/mozilla/sops;
     license = licenses.mpl20;
   };
 }
diff --git a/pkgs/tools/security/tor/default.nix b/pkgs/tools/security/tor/default.nix
index bb49e478910d..338afb7b3e17 100644
--- a/pkgs/tools/security/tor/default.nix
+++ b/pkgs/tools/security/tor/default.nix
@@ -14,11 +14,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "tor-0.3.3.9";
+  name = "tor-0.3.4.8";
 
   src = fetchurl {
     url = "https://dist.torproject.org/${name}.tar.gz";
-    sha256 = "0vyf5z0dn5jghp2qjp076aq62lsz9g32qv9jiqf08skf096nnd45";
+    sha256 = "08qhzcmzxp5xr2l5721vagksqnnbrzzzy5hmz5y9r8lrq2r4qsl2";
   };
 
   outputs = [ "out" "geoip" ];
diff --git a/pkgs/tools/security/vault/default.nix b/pkgs/tools/security/vault/default.nix
index a9e8d8fca351..091b17c6ffe1 100644
--- a/pkgs/tools/security/vault/default.nix
+++ b/pkgs/tools/security/vault/default.nix
@@ -9,13 +9,13 @@ let
   };
 in stdenv.mkDerivation rec {
   name = "vault-${version}";
-  version = "0.10.4";
+  version = "0.11.1";
 
   src = fetchFromGitHub {
     owner = "hashicorp";
     repo = "vault";
     rev = "v${version}";
-    sha256 = "1f11arvj7zp8wwkvv3nn7kyga0ci8psdif6djrnzwjksskdgdbx5";
+    sha256 = "1ydnb9z6rd5ck6wza5ir6927xq375i1a9zh5p2xanp29ly6ijiiz";
   };
 
   nativeBuildInputs = [ go gox removeReferencesTo ];
diff --git a/pkgs/tools/system/augeas/default.nix b/pkgs/tools/system/augeas/default.nix
index 93ce48644634..4ba876668223 100644
--- a/pkgs/tools/system/augeas/default.nix
+++ b/pkgs/tools/system/augeas/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "augeas-${version}";
-  version = "1.10.1";
+  version = "1.11.0";
 
   src = fetchurl {
     url = "http://download.augeas.net/${name}.tar.gz";
-    sha256 = "0k9nssn7lk58cl5zv3c8kv2zx9cm2yks3sj7q4fd6qdjz9m2bnsj";
+    sha256 = "1c507qj6dfn2dnsl27w94zs9r45xrgm07y8bqba9ry2s0psfhg1r";
   };
   nativeBuildInputs = [ pkgconfig ];
   buildInputs = [ readline libxml2 ];
diff --git a/pkgs/tools/system/dd_rescue/default.nix b/pkgs/tools/system/dd_rescue/default.nix
index 1ea574dbe8ea..e0d11769fd9f 100644
--- a/pkgs/tools/system/dd_rescue/default.nix
+++ b/pkgs/tools/system/dd_rescue/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
     substituteInPlace Makefile \
       --replace "\$(DESTDIR)/usr" "$out" \
       --replace "-o root" "" \
-      --replace "-g root" "" 
+      --replace "-g root" ""
   '';
   makeFlags = [ "LIBDIR=$out" ];
 
@@ -29,12 +29,13 @@ stdenv.mkDerivation rec {
     tar xf "${dd_rhelp_src}" -C "$out/share/dd_rescue"
     cp "$out/share/dd_rescue"/dd_rhelp*/dd_rhelp "$out/bin"
   '';
-      
+
   meta = with stdenv.lib; {
     description = "A tool to copy data from a damaged block device";
     maintainers = with maintainers; [ raskin domenkozar ];
     platforms = platforms.linux;
-    downloadPage = "http://www.garloff.de/kurt/linux/ddrescue/";
+    homepage = "http://www.garloff.de/kurt/linux/ddrescue/";
+    license = licenses.gpl2Plus;
     inherit version;
     updateWalker = true;
   };
diff --git a/pkgs/tools/system/localtime/default.nix b/pkgs/tools/system/localtime/default.nix
index c49054f3a67c..442b9a42f2b8 100644
--- a/pkgs/tools/system/localtime/default.nix
+++ b/pkgs/tools/system/localtime/default.nix
@@ -9,7 +9,7 @@ stdenv.mkDerivation {
     rev = "2e7b4317c723406bd75b2a1d640219ab9f8090ce";
     sha256 = "04fyna8p7q7skzx9fzmncd6gx7x5pwa9jh8a84hpljlvj0kldfs8";
   };
-  
+
   buildInputs = [ go systemd polkit m4 removeReferencesTo ];
   disallowedRequisites = [ go ];
 
@@ -19,9 +19,10 @@ stdenv.mkDerivation {
     find $out/bin -type f -exec remove-references-to -t ${go} '{}' +
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "A daemon for keeping the system timezone up-to-date based on the current location";
     homepage = https://github.com/Stebalien/localtime;
-    platforms = stdenv.lib.platforms.linux;
+    platforms = platforms.linux;
+    license = licenses.gpl3;
   };
 }
diff --git a/pkgs/tools/system/s6-rc/default.nix b/pkgs/tools/system/s6-rc/default.nix
index 40c999d80f13..2712186ec5d1 100644
--- a/pkgs/tools/system/s6-rc/default.nix
+++ b/pkgs/tools/system/s6-rc/default.nix
@@ -1,27 +1,18 @@
-{ stdenv, execline, fetchgit, skalibs, s6 }:
+{ stdenv, skawarePackages }:
 
-let
+with skawarePackages;
 
-  version = "0.4.0.1";
+buildPackage {
+  pname = "s6-rc";
+  version = "0.4.1.0";
+  sha256 = "1xl37xi509pcm5chcvn8l7gb952sr5mkpxhpkbsxhsllj791bfa2";
 
-in stdenv.mkDerivation rec {
-
-  name = "s6-rc-${version}";
-
-  src = fetchgit {
-    url = "git://git.skarnet.org/s6-rc";
-    rev = "refs/tags/v${version}";
-    sha256 = "10gkkdbvkb4s2yshx425v9diwm7vvbl320a2bm0c3wz71xr94wsw";
-  };
+  description = "A service manager for s6-based systems";
+  platforms = stdenv.lib.platforms.linux;
 
   outputs = [ "bin" "lib" "dev" "doc" "out" ];
 
-  dontDisableStatic = true;
-
-  enableParallelBuilding = true;
-
   configureFlags = [
-    "--enable-absolute-paths"
     "--libdir=\${lib}/lib"
     "--libexecdir=\${lib}/libexec"
     "--dynlibdir=\${lib}/lib"
@@ -37,22 +28,15 @@ in stdenv.mkDerivation rec {
     "--with-dynlib=${skalibs.lib}/lib"
     "--with-dynlib=${execline.lib}/lib"
     "--with-dynlib=${s6.out}/lib"
-  ]
-  ++ (if stdenv.isDarwin then [ "--disable-shared" ] else [ "--enable-shared" ])
-  ++ (stdenv.lib.optional stdenv.isDarwin "--build=${stdenv.hostPlatform.system}");
+  ];
 
   postInstall = ''
-    mkdir -p $doc/share/doc/s6-rc/
+    # remove all s6 executables from build directory
+    rm $(find -name "s6-rc-*" -type f -mindepth 1 -maxdepth 1 -executable)
+    rm s6-rc libs6rc.*
+
     mv doc $doc/share/doc/s6-rc/html
     mv examples $doc/share/doc/s6-rc/examples
   '';
 
-  meta = {
-    homepage = http://skarnet.org/software/s6-rc/;
-    description = "A service manager for s6-based systems";
-    platforms = stdenv.lib.platforms.linux;
-    license = stdenv.lib.licenses.isc;
-    maintainers = with stdenv.lib.maintainers; [ pmahoney Profpatsch ];
-  };
-
 }
diff --git a/pkgs/tools/system/s6/default.nix b/pkgs/tools/system/s6/default.nix
index d7ade3cdb290..031439d56d5c 100644
--- a/pkgs/tools/system/s6/default.nix
+++ b/pkgs/tools/system/s6/default.nix
@@ -1,31 +1,21 @@
-{ stdenv, execline, fetchgit, skalibs }:
+{ stdenv, skawarePackages }:
 
-let
+with skawarePackages;
 
-  version = "2.7.1.1";
+buildPackage {
+  pname = "s6";
+  version = "2.7.2.0";
+  sha256 = "02canrzmhr66gi16ldyylk378jlmyfl73vn72ayr12h2wyxgqm5g";
 
-in stdenv.mkDerivation rec {
-
-  name = "s6-${version}";
-
-  src = fetchgit {
-    url = "git://git.skarnet.org/s6";
-    rev = "refs/tags/v${version}";
-    sha256 = "0dncw3h9wc4cgc9q8zjwicgbcqcn6722yhk8g9bvrhs7h4fkfqav";
-  };
+  description = "skarnet.org's small & secure supervision software suite";
 
   # NOTE lib: cannot split lib from bin at the moment,
   # since some parts of lib depend on executables in bin.
   # (the `*_startf` functions in `libs6`)
-
   outputs = [ /*"bin" "lib"*/ "out" "dev" "doc" ];
 
-  dontDisableStatic = true;
-
-  enableParallelBuilding = true;
-
+  # TODO: nsss support
   configureFlags = [
-    "--enable-absolute-paths"
     "--libdir=\${out}/lib"
     "--libexecdir=\${out}/libexec"
     "--dynlibdir=\${out}/lib"
@@ -38,22 +28,15 @@ in stdenv.mkDerivation rec {
     "--with-lib=${execline.lib}/lib"
     "--with-dynlib=${skalibs.lib}/lib"
     "--with-dynlib=${execline.lib}/lib"
-  ]
-  ++ (if stdenv.isDarwin then [ "--disable-shared" ] else [ "--enable-shared" ])
-  ++ (stdenv.lib.optional stdenv.isDarwin "--build=${stdenv.hostPlatform.system}");
+  ];
 
   postInstall = ''
-    mkdir -p $doc/share/doc/s6/
+    # remove all s6 executables from build directory
+    rm $(find -type f -mindepth 1 -maxdepth 1 -executable)
+    rm libs6.*
+
     mv doc $doc/share/doc/s6/html
     mv examples $doc/share/doc/s6/examples
   '';
 
-  meta = {
-    homepage = http://www.skarnet.org/software/s6/;
-    description = "skarnet.org's small & secure supervision software suite";
-    platforms = stdenv.lib.platforms.all;
-    license = stdenv.lib.licenses.isc;
-    maintainers = with stdenv.lib.maintainers; [ pmahoney Profpatsch ];
-  };
-
 }
diff --git a/pkgs/tools/system/sg3_utils/default.nix b/pkgs/tools/system/sg3_utils/default.nix
index ca1af7a74e4b..8be7203fb3d4 100644
--- a/pkgs/tools/system/sg3_utils/default.nix
+++ b/pkgs/tools/system/sg3_utils/default.nix
@@ -8,10 +8,10 @@ stdenv.mkDerivation rec {
     sha256 = "1wwy7iiz1lvc32c777yd4vp0c0dqfdlm5jrsm3aa62xx141pmjqx";
   };
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = http://sg.danny.cz/sg/;
     description = "Utilities that send SCSI commands to devices";
-    platforms = stdenv.lib.platforms.linux;
-    maintainers = [ ];
+    platforms = platforms.linux;
+    license = with licenses; [ bsd2 gpl2Plus ];
   };
 }
diff --git a/pkgs/tools/system/vbetool/default.nix b/pkgs/tools/system/vbetool/default.nix
index c30a7b14e891..32cf56a1d74e 100644
--- a/pkgs/tools/system/vbetool/default.nix
+++ b/pkgs/tools/system/vbetool/default.nix
@@ -22,5 +22,6 @@ stdenv.mkDerivation rec {
     homepage = http://www.codon.org.uk/~mjg59/vbetool/;
     maintainers = [ maintainers.raskin ];
     platforms = platforms.linux;
+    license = licenses.gpl2;
   };
 }
diff --git a/pkgs/tools/text/ripgrep/default.nix b/pkgs/tools/text/ripgrep/default.nix
index f70f0f3d75b2..81c88ecad9e5 100644
--- a/pkgs/tools/text/ripgrep/default.nix
+++ b/pkgs/tools/text/ripgrep/default.nix
@@ -1,19 +1,26 @@
-{ stdenv, fetchFromGitHub, rustPlatform, asciidoc, docbook_xsl, libxslt  }:
+{ stdenv, fetchFromGitHub, rustPlatform, asciidoc, docbook_xsl, libxslt
+, Security
+, withPCRE2 ? false, pcre2 ? null
+}:
 
 rustPlatform.buildRustPackage rec {
   name = "ripgrep-${version}";
-  version = "0.9.0";
+  version = "0.10.0";
 
   src = fetchFromGitHub {
     owner = "BurntSushi";
     repo = "ripgrep";
     rev = version;
-    sha256 = "089xffrqi4wm0w1lhy5iqxrcb82ca44bxl8qps4ilv0ih91vxwfj";
+    sha256 = "017fz5kv1kv9jz7mb7vcxrklf5vybvfz2x61g6myzshqz4z1v1yb";
   };
 
-  cargoSha256 = "1wsw7s1bc1gnpq4kjzkas5zf2snhpx9f6cyrrf6g5jr8l0hcbyih";
+  cargoSha256 = "0k2b2vbklfdjk2zdc8ip480drc12gy1whlwj94p44hr3402azcgr";
+
+  cargoBuildFlags = stdenv.lib.optional withPCRE2 "--features pcre2";
 
   nativeBuildInputs = [ asciidoc docbook_xsl libxslt ];
+  buildInputs = (stdenv.lib.optional withPCRE2 pcre2)
+    ++ (stdenv.lib.optional stdenv.isDarwin Security);
 
   preFixup = ''
     mkdir -p "$out/man/man1"
diff --git a/pkgs/tools/text/vale/default.nix b/pkgs/tools/text/vale/default.nix
index 84ef164ce248..5fe4ab5d7239 100644
--- a/pkgs/tools/text/vale/default.nix
+++ b/pkgs/tools/text/vale/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   name = "vale-${version}";
-  version = "0.11.2";
+  version = "1.0.3";
   rev    = "v${version}";
 
   goPackagePath = "github.com/errata-ai/vale";
@@ -11,13 +11,13 @@ buildGoPackage rec {
     inherit rev;
     owner  = "errata-ai";
     repo   = "vale";
-    sha256 = "0zs6bdwnc5fpa0skw1xhdwg6jzsc7wcb8lsfj235jc8jd2w13mvm";
+    sha256 = "132zzgry19alcdn3m3q62sp2lm3yxc4kil12lm309jl7b3n0850h";
   };
 
   goDeps = ./deps.nix;
 
   meta = with stdenv.lib; {
-    inherit (src.meta) homepage;
+    homepage = https://errata.ai/vale/getting-started/;
     description = "Vale is an open source linter for prose";
     license = licenses.mit;
     maintainers = [ maintainers.marsam ];
diff --git a/pkgs/tools/text/vale/deps.nix b/pkgs/tools/text/vale/deps.nix
index e63becb5b4b3..c19af2cd4f0f 100644
--- a/pkgs/tools/text/vale/deps.nix
+++ b/pkgs/tools/text/vale/deps.nix
@@ -23,8 +23,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/davecgh/go-spew";
-      rev =  "8991bc29aa16c548c550c7ff78260e27b9ab7c73";
-      sha256 = "0hka6hmyvp701adzag2g26cxdj47g21x6jz4sc6jjz1mn59d474y";
+      rev =  "346938d642f2ec3594ed81d874461961cd0faa76";
+      sha256 = "0d4jfmak5p6lb7n2r6yvf5p1zcw0l8j74kn55ghvr7zr7b7axm6c";
     };
   }
   {
@@ -32,8 +32,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/fatih/color";
-      rev =  "507f6050b8568533fb3f5504de8e5205fa62a114";
-      sha256 = "0k1v9dkhrxiqhg48yqkwzpd7x40xx38gv2pgknswbsy4r8w644i7";
+      rev =  "570b54cabe6b8eb0bc2dfce68d964677d63b5260";
+      sha256 = "1hw9hgkfzbzqjhy29pqpk20xggxaqjv45wx8yn69488mw5ph7khh";
     };
   }
   {
@@ -41,8 +41,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/gobwas/glob";
-      rev =  "f00a7392b43971b2fdb562418faab1f18da2067a";
-      sha256 = "1b7jnb7rx99na25lkm9m9jr583mv7y0lwp57w58sv7ir9iiilx29";
+      rev =  "bea32b9cd2d6f55753d94a28e959b13f0244797a";
+      sha256 = "0dx0f293v1a0d8qi7ik5hdl26dapd8xm0hj9a9gc620vhj7khi9q";
     };
   }
   {
@@ -50,8 +50,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/jdkato/prose";
-      rev =  "e27abfd3f31b84c37bbce37179b0428fcb1384be";
-      sha256 = "04rjqh3jdxaqr9czp4vcj14hqfv7yppv4nb7ynb04c9jcq23ajw7";
+      rev =  "4d68d1b77f66e36b6897a79f59f434d558e5e0c2";
+      sha256 = "1g2wwj6azpcjy6j7pk4dqx868v3hrqwjg5d737p4441a55026prj";
     };
   }
   {
@@ -68,8 +68,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/mattn/go-colorable";
-      rev =  "efa589957cd060542a26d2dd7832fd6a6c6c3ade";
-      sha256 = "0kshi4hvm0ayrsxqxy0599iv81kryhd2fn9lwjyczpj593cq069r";
+      rev =  "941b50ebc6efddf4c41c8e4537a5f68a4e686b24";
+      sha256 = "0dw492z5w0fzv1cxm3xx26n8qpqjaf2ybiwpmvimzyhv65n8nrf8";
     };
   }
   {
@@ -77,8 +77,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/mattn/go-isatty";
-      rev =  "6ca4dbf54d38eea1a992b3c722a76a5d1c4cb25c";
-      sha256 = "0zs92j2cqaw9j8qx1sdxpv3ap0rgbs0vrvi72m40mg8aa36gd39w";
+      rev =  "fc9e8d8ef48496124e79ae0df75490096eccf6fe";
+      sha256 = "1r5f9gkavkb1w6sr0qs5kj16706xirl3qnlq3hqpszkw9w27x65a";
     };
   }
   {
@@ -86,8 +86,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/mattn/go-runewidth";
-      rev =  "ce7b0b5c7b45a81508558cd1dba6bb1e4ddb51bb";
-      sha256 = "0lc39b6xrxv7h3v3y1kgz49cgi5qxwlygs715aam6ba35m48yi7g";
+      rev =  "9e777a8366cce605130a531d2cd6363d07ad7317";
+      sha256 = "0vkrfrz3fzn5n6ix4k8s0cg0b448459sldq8bp4riavsxm932jzb";
     };
   }
   {
@@ -104,8 +104,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/mitchellh/mapstructure";
-      rev =  "00c29f56e2386353d58c599509e8dc3801b0d716";
-      sha256 = "1vw8fvhax0d567amgvxr7glcl12lvzg2sbzs007q5k5bbwn1szyb";
+      rev =  "d0303fe809921458f417bcf828397a65db30a7e4";
+      sha256 = "1fjwi5ghc1ibyx93apz31n4hj6gcq1hzismpdfbg2qxwshyg0ya8";
     };
   }
   {
@@ -113,8 +113,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/montanaflynn/stats";
-      rev =  "1bf9dbcd8cbe1fdb75add3785b1d4a9a646269ab";
-      sha256 = "0qnx3hvd3lhwnmxg7nr4nwl5kbsc7ffnjk9ifyk0f05h61l3v9pz";
+      rev =  "eeaced052adbcfeea372c749c281099ed7fdaa38";
+      sha256 = "0kamcla633692n81w0j0d423ws3qdds97r2c0i193ypsh9xknpq9";
     };
   }
   {
@@ -122,8 +122,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/olekukonko/tablewriter";
-      rev =  "d5dd8a50526aadb3d5f2c9b5233277bc2db90e88";
-      sha256 = "0l7y3mmwkzpa7p56drw6d6416j9zfapznfyr1dab44d6kk48rvjx";
+      rev =  "be5337e7b39e64e5f91445ce7e721888dbab7387";
+      sha256 = "04zg261i4bq29bc460nyx9r2j70mj0sbxlprn87ylk8y5j2m1d1w";
     };
   }
   {
@@ -140,8 +140,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/remeh/sizedwaitgroup";
-      rev =  "5582a674300c427060d06980c142aeb52ed20040";
-      sha256 = "152a1xnaswh9fx6f71llggm513c6ch171gc61jk3b6b0il6npb57";
+      rev =  "4b44541c93591ee0e73747d6081e61bd8c58b5c7";
+      sha256 = "1kz7h8r09c95r3hc8bngznc4lrnkz2vm50lrl96cqxja0pw8jl92";
     };
   }
   {
@@ -149,8 +149,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/russross/blackfriday";
-      rev =  "16ac584625fae401e2778e7af317dc415844c44b";
-      sha256 = "0g0dbqm76aqsc2a43j95i0h5138cmlgnldhkv3blgn0ga6s8ypfg";
+      rev =  "0b647d0506a698cca42caca173e55559b12a69f2";
+      sha256 = "1bv6mvnrqrcrp5d45l5p07q855sval8l3jzw1cf2dajkpcpysqln";
     };
   }
   {
@@ -158,8 +158,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/shogo82148/go-shuffle";
-      rev =  "27e6095f230d6c769aafa7232db643a628bd87ad";
-      sha256 = "0nig0q0f0v6ay2w0k3r0pqlvjp1yg9s06f00qpizp679vc46gqs1";
+      rev =  "4789c7c401f229b3ae1673acbccca451480660cd";
+      sha256 = "1gaii1h51df8vr28ww5np8nhvfcy4plv0nja9b9h0cmcxa3jf1lp";
     };
   }
   {
@@ -167,8 +167,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/shurcooL/sanitized_anchor_name";
-      rev =  "86672fcb3f950f35f2e675df2240550f2a50762f";
-      sha256 = "142m507s9971cl8qdmbcw7sqxnkgi3xqd8wzvfq15p0w7w8i4a3h";
+      rev =  "541ff5ee47f1dddf6a5281af78307d921524bcb5";
+      sha256 = "1fslblamqkd0yrvl1kbq95hnnji78bq9m33nnxiqs7y9w32zylv5";
     };
   }
   {
@@ -176,8 +176,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/stretchr/testify";
-      rev =  "c679ae2cc0cb27ec3293fea7e254e47386f05d69";
-      sha256 = "1rrdn7k83j492rzhqwkh6956sj8m2nbk44d7r1xa9nsn3hfwj691";
+      rev =  "69483b4bd14f5845b5a1e55bca19e954e827f1d0";
+      sha256 = "11lzrwkdzdd8yyag92akncc008h2f9d1bpc489mxiwp0jrmz4ivb";
     };
   }
   {
@@ -185,8 +185,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/urfave/cli";
-      rev =  "8e01ec4cd3e2d84ab2fe90d8210528ffbb06d8ff";
-      sha256 = "0cpr10n4ps3gcdbcink71ry9hzhdb5rrcysmylybs8h2lzxqgc1i";
+      rev =  "0bdeddeeb0f650497d603c4ad7b20cfe685682f6";
+      sha256 = "1ny63c7bfwfrsp7vfkvb4i0xhq4v7yxqnwxa52y4xlfxs4r6v6fg";
     };
   }
   {
@@ -203,8 +203,8 @@
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/net";
-      rev =  "5f9ae10d9af5b1c89ae6904293b14b064d4ada23";
-      sha256 = "10vzmdg8z73krbp2qhsqygvqd0f0s98376mrxm614xdcdljn73dn";
+      rev =  "ab5485076ff3407ad2d02db054635913f017b0ed";
+      sha256 = "10805rk5rfgc3ivx35r9qmnps8hy3k3m57g0j6mz10w96k8i7pk7";
     };
   }
   {
@@ -212,8 +212,8 @@
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/sys";
-      rev =  "bb9c189858d91f42db229b04d45a4c3d23a7662a";
-      sha256 = "0z20pql3hzlplcc8ywfq7a1s8mfixmcp84k656fdkmkdjfyvsl0v";
+      rev =  "14ac33bf8474b62c65cae263af2e4d3b543cc699";
+      sha256 = "1453l5v5kizq142fiq3bg5hka7b0yvnf9fsq8y2ayj4bc9h5vqf3";
     };
   }
   {
@@ -221,8 +221,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/go-ini/ini";
-      rev =  "bda519ae5f4cbc60d391ff8610711627a08b86ae";
-      sha256 = "05vcc3ssxyrk8g3sr4gs888vllgjqfq11na63qz2pvaiy7m0rqrs";
+      rev =  "d3de07a94d22b4a0972deb4b96d790c2c0ce8333";
+      sha256 = "1lpwqhcfhaa6aighd2lpjfswbb6aw5d5bsmyr0vqaqg6g5kz0ikg";
     };
   }
   {
@@ -230,8 +230,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/neurosnap/sentences";
-      rev =  "b0f23a5b35b961fe821f49e51235242d2a8193f3";
-      sha256 = "0f5lmww1g4frd5avmqw120zzklcxk5z4l20r4d8zix7406ry7zrg";
+      rev =  "a7f18ead1433a139742a8b42ce7a059cfb484d60";
+      sha256 = "1b64xv5anfbnq6354jaygxapwgkdhbszzi604b96sm682brwl0p7";
     };
   }
   {
@@ -239,8 +239,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/go-yaml/yaml";
-      rev =  "5420a8b6744d3b0345ab293f6fcba19c978f1183";
-      sha256 = "0dwjrs2lp2gdlscs7bsrmyc5yf6mm4fvgw71bzr9mv2qrd2q73s1";
+      rev =  "25c4ec802a7d637f88d584ab26798e94ad14c13b";
+      sha256 = "053mknsl3xhjscmd552005xnwbfcg0z2iphvbvj3wi0w3pvmlw44";
     };
   }
 ]
\ No newline at end of file
diff --git a/pkgs/tools/typesetting/pdf2htmlEX/default.nix b/pkgs/tools/typesetting/pdf2htmlEX/default.nix
index e0f3681f43d8..ad9684910c0b 100644
--- a/pkgs/tools/typesetting/pdf2htmlEX/default.nix
+++ b/pkgs/tools/typesetting/pdf2htmlEX/default.nix
@@ -43,5 +43,6 @@ stdenv.mkDerivation rec {
     license     = licenses.gpl3Plus;
     maintainers = [ maintainers.taktoa ];
     platforms   = with platforms; linux;
+    broken      = true; # 2018-09-08
   };
 }
diff --git a/pkgs/tools/typesetting/scdoc/default.nix b/pkgs/tools/typesetting/scdoc/default.nix
index 16b7a734c22d..bdf074b558e7 100644
--- a/pkgs/tools/typesetting/scdoc/default.nix
+++ b/pkgs/tools/typesetting/scdoc/default.nix
@@ -2,17 +2,19 @@
 
 stdenv.mkDerivation rec {
   name = "scdoc-${version}";
-  version = "1.4.1";
+  version = "1.4.2";
 
   src = fetchurl {
     url = "https://git.sr.ht/~sircmpwn/scdoc/snapshot/scdoc-${version}.tar.xz";
-    sha256 = "14nabq1hrz5jvilx22yxbqjsd9s4ll0fnl750n1qbyyxw2m6vj9b";
+    sha256 = "1hhvg9cifx1v8b5i91lgq5cjdcskzl3rz7vwmwdq7ad0nqnykz82";
   };
 
   postPatch = ''
     substituteInPlace Makefile \
       --replace "-static" "" \
       --replace "/usr/local" "$out"
+    # It happens from time to time that the version wasn't updated:
+    sed -iE 's/VERSION=[0-9]\.[0-9]\.[0-9]/VERSION=${version}/' Makefile
   '';
 
   doCheck = true;
diff --git a/pkgs/tools/typesetting/tectonic/default.nix b/pkgs/tools/typesetting/tectonic/default.nix
index 0d082eac4bba..bcc69c7b223e 100644
--- a/pkgs/tools/typesetting/tectonic/default.nix
+++ b/pkgs/tools/typesetting/tectonic/default.nix
@@ -3,16 +3,16 @@
 
 rustPlatform.buildRustPackage rec {
   name = "tectonic-${version}";
-  version = "0.1.8";
+  version = "0.1.9";
 
   src = fetchFromGitHub {
     owner = "tectonic-typesetting";
     repo = "tectonic";
     rev = "v${version}";
-    sha256 = "1bm3s2zkyy44xrc804c65hrbc6ixzcr95na671b0dannjrikrx1x";
+    sha256 = "1prrw1npmmqjx966dxrr4jll16scf0cv24nnc70zlbwwb15zhgiq";
   };
 
-  cargoSha256 = "1pyaw72h85ydq794mpgfjfq7dcq3a1dg4infh770swfaycyll6h6";
+  cargoSha256 = "00hcs9k9x23xy1pgf8skgb6i5kjwgipy8c0d27nniaxa3dpy5daq";
 
   nativeBuildInputs = [ pkgconfig ];
 
diff --git a/pkgs/tools/typesetting/tex/texlive/combine.nix b/pkgs/tools/typesetting/tex/texlive/combine.nix
index 8b3e320fd269..41ec8ad52694 100644
--- a/pkgs/tools/typesetting/tex/texlive/combine.nix
+++ b/pkgs/tools/typesetting/tex/texlive/combine.nix
@@ -35,7 +35,7 @@ let
 
   mkUniquePkgs = pkgs: fastUnique (a: b: a < b) # highlighting hack: >
     # here we deal with those dummy packages needed for hyphenation filtering
-    (map (p: if lib.isDerivation p then builtins.toPath p else "") pkgs);
+    (map (p: if lib.isDerivation p then p.outPath else "") pkgs);
 
 in buildEnv {
   name = "texlive-${extraName}-${bin.texliveYear}";
diff --git a/pkgs/tools/video/flvtool2/default.nix b/pkgs/tools/video/flvtool2/default.nix
index 975e13b65da7..037e07c72286 100644
--- a/pkgs/tools/video/flvtool2/default.nix
+++ b/pkgs/tools/video/flvtool2/default.nix
@@ -1,4 +1,4 @@
-{ buildRubyGem, ruby }:
+{ lib, buildRubyGem, ruby }:
 
 buildRubyGem rec {
   inherit ruby;
@@ -12,5 +12,6 @@ buildRubyGem rec {
     homepage = https://github.com/unnu/flvtool2;
     description = "A tool to manipulate Macromedia Flash Video files";
     platforms = ruby.meta.platforms;
+    license = lib.licenses.bsd3;
   };
 }
diff --git a/pkgs/tools/virtualization/euca2ools/default.nix b/pkgs/tools/virtualization/euca2ools/default.nix
index ce628ff84b5e..5b310992afb6 100644
--- a/pkgs/tools/virtualization/euca2ools/default.nix
+++ b/pkgs/tools/virtualization/euca2ools/default.nix
@@ -15,7 +15,7 @@ in buildPythonApplication rec {
   propagatedBuildInputs = [ boto m2crypto ];
 
   meta = {
-    homepage = http://open.eucalyptus.com/downloads;
+    homepage = https://github.com/eucalyptus/euca2ools;
     description = "Tools for interacting with Amazon EC2/S3-compatible cloud computing services";
     maintainers = [ stdenv.lib.maintainers.eelco ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/tools/virtualization/google-compute-engine/default.nix b/pkgs/tools/virtualization/google-compute-engine/default.nix
index e987bc7986b1..bfa8217b9a09 100644
--- a/pkgs/tools/virtualization/google-compute-engine/default.nix
+++ b/pkgs/tools/virtualization/google-compute-engine/default.nix
@@ -10,14 +10,14 @@
 
 buildPythonApplication rec {
   name = "google-compute-engine-${version}";
-  version = "20180129";
+  version = "20180510";
   namePrefix = "";
 
   src = fetchFromGitHub {
     owner = "GoogleCloudPlatform";
     repo = "compute-image-packages";
     rev = version;
-    sha256 = "0380fnr64109hv8l1f3sgdg8a5mf020axj7jh8y25xq6wzkjm20c";
+    sha256 = "13hmg29s1pljcvf40lrv5yickg8x51rcnv68wxhs6zkkg75k448p";
   };
 
   postPatch = ''
diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix
index ae7137d3a6a4..b8298b76d778 100644
--- a/pkgs/top-level/aliases.nix
+++ b/pkgs/top-level/aliases.nix
@@ -81,6 +81,8 @@ mapAliases ({
   dwarf_fortress = dwarf-fortress; # added 2016-01-23
   emacs25Macport_25_1 = emacs25Macport; # added 2018-04-25
   emacsMelpa = emacs25PackagesNg; # for backward compatibility
+  emacsPackagesGen = emacsPackagesFor; # added 2018-08-18
+  emacsPackagesNgGen = emacsPackagesNgFor; # added 2018-08-18
   enblendenfuse = enblend-enfuse; # 2015-09-30
   evolution_data_server = evolution-data-server; # added 2018-02-25
   etcdctl = etcd; # added 2018-04-25
@@ -129,6 +131,7 @@ mapAliases ({
   iana_etc = iana-etc;  # added 2017-03-08
   idea = jetbrains; # added 2017-04-03
   inotifyTools = inotify-tools;
+  jbuilder = dune; # added 2018-09-09
   joseki = apache-jena-fuseki; # added 2016-02-28
   json_glib = json-glib; # added 2018-02-25
   kdiff3-qt5 = kdiff3; # added 2017-02-18
@@ -290,9 +293,12 @@ mapAliases ({
   vimprobable2Wrapper = vimprobable2; # added 2015-01
   virtviewer = virt-viewer; # added 2015-12-24
   vorbisTools = vorbis-tools; # added 2016-01-26
+  weechat-xmpp = weechatScripts.weechat-xmpp; # added 2018-09-06
+  weechat-matrix-bridge = weechatScripts.weechat-matrix-bridge; # added 2018-09-06
   wineStaging = wine-staging; # added 2018-01-08
   winusb = woeusb; # added 2017-12-22
   wireguard = wireguard-tools; # added 2018-05-19
+  morituri = whipper; # added 2018-09-13
   x11 = xlibsWrapper; # added 2015-09
   xbmc = kodi; # added 2018-04-25
   xbmcPlain = kodiPlain; # added 2018-04-25
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index f9df4ea4fb83..af6e8538e8b0 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -129,8 +129,7 @@ with pkgs;
 
   digitalbitbox = libsForQt5.callPackage ../applications/misc/digitalbitbox { };
 
-  # go 1.9 pin until https://github.com/moby/moby/pull/35739
-  dockerTools = callPackage ../build-support/docker { go = go_1_9; };
+  dockerTools = callPackage ../build-support/docker { };
 
   docker_compose = pythonPackages.docker_compose;
 
@@ -152,6 +151,8 @@ with pkgs;
 
   ebook2cw = callPackage ../applications/misc/ebook2cw { };
 
+  etBook = callPackage ../data/fonts/et-book { };
+
   fetchbower = callPackage ../build-support/fetchbower {
     inherit (nodePackages) bower2nix;
   };
@@ -425,6 +426,8 @@ with pkgs;
 
   acct = callPackage ../tools/system/acct { };
 
+  accuraterip-checksum = callPackage ../tools/audio/accuraterip-checksum { };
+
   acme-sh = callPackage ../tools/admin/acme.sh { };
 
   acoustidFingerprinter = callPackage ../tools/audio/acoustid-fingerprinter {
@@ -843,7 +846,9 @@ with pkgs;
 
   bashmount = callPackage ../tools/filesystems/bashmount {};
 
-  bat = callPackage ../tools/misc/bat { };
+  bat = callPackage ../tools/misc/bat {
+    inherit (darwin.apple_sdk.frameworks) Security;
+  };
 
   bc = callPackage ../tools/misc/bc { };
 
@@ -1238,6 +1243,8 @@ with pkgs;
 
   dtrx = callPackage ../tools/compression/dtrx { };
 
+  dune = callPackage ../development/tools/ocaml/dune { };
+
   duperemove = callPackage ../tools/filesystems/duperemove { };
 
   dylibbundler = callPackage ../tools/misc/dylibbundler { };
@@ -1398,8 +1405,6 @@ with pkgs;
 
   interlock = callPackage ../servers/interlock {};
 
-  jbuilder = callPackage ../development/tools/ocaml/jbuilder { };
-
   kapacitor = callPackage ../servers/monitoring/kapacitor { };
 
   kisslicer = callPackage ../tools/misc/kisslicer { };
@@ -1462,6 +1467,8 @@ with pkgs;
 
   noteshrink = callPackage ../tools/misc/noteshrink { };
 
+  noti = callPackage ../tools/misc/noti { };
+
   nrsc5 = callPackage ../applications/misc/nrsc5 { };
 
   nwipe = callPackage ../tools/security/nwipe { };
@@ -1790,6 +1797,8 @@ with pkgs;
 
   cmst = libsForQt5.callPackage ../tools/networking/cmst { };
 
+  codimd = callPackage ../servers/web-apps/codimd { };
+
   colord = callPackage ../tools/misc/colord { };
 
   colord-gtk = callPackage ../tools/misc/colord-gtk { };
@@ -2345,7 +2354,9 @@ with pkgs;
 
   enblend-enfuse = callPackage ../tools/graphics/enblend-enfuse { };
 
-  cryfs = callPackage ../tools/filesystems/cryfs { };
+  cryfs = callPackage ../tools/filesystems/cryfs {
+    spdlog = spdlog_0;
+  };
 
   encfs = callPackage ../tools/filesystems/encfs {
     tinyxml2 = tinyxml-2;
@@ -2385,7 +2396,7 @@ with pkgs;
 
   exempi = callPackage ../development/libraries/exempi { };
 
-  execline = callPackage ../tools/misc/execline { };
+  execline = skawarePackages.execline;
 
   exif = callPackage ../tools/graphics/exif { };
 
@@ -2909,7 +2920,10 @@ with pkgs;
   }) (x: { configureFlags = x.configureFlags ++ ["--with-cgraph=no"];});
 
   grin = callPackage ../tools/text/grin { };
-  ripgrep = callPackage ../tools/text/ripgrep { };
+
+  ripgrep = callPackage ../tools/text/ripgrep {
+    inherit (darwin.apple_sdk.frameworks) Security;
+  };
 
   grive2 = callPackage ../tools/filesystems/grive2 { };
 
@@ -2931,6 +2945,7 @@ with pkgs;
 
   grub = pkgsi686Linux.callPackage ../tools/misc/grub {
     buggyBiosCDSupport = config.grub.buggyBiosCDSupport or true;
+    stdenv = overrideCC stdenv pkgsi686Linux.gcc6;
   };
 
   trustedGrub = pkgsi686Linux.callPackage ../tools/misc/grub/trusted.nix { };
@@ -3082,6 +3097,8 @@ with pkgs;
 
   hdapsd = callPackage ../os-specific/linux/hdapsd { };
 
+  hdaps-gl = callPackage ../tools/misc/hdaps-gl { };
+
   hddtemp = callPackage ../tools/misc/hddtemp { };
 
   hdf4 = callPackage ../tools/misc/hdf4 {
@@ -3192,6 +3209,8 @@ with pkgs;
 
   hwinfo = callPackage ../tools/system/hwinfo { };
 
+  hylafaxplus = callPackage ../servers/hylafaxplus { };
+
   i2c-tools = callPackage ../os-specific/linux/i2c-tools { };
 
   i2p = callPackage ../tools/networking/i2p {};
@@ -3354,7 +3373,7 @@ with pkgs;
   jaaa = callPackage ../applications/audio/jaaa { };
 
   jackett = callPackage ../servers/jackett {
-    mono = mono50;
+    mono = mono5;
   };
 
   jade = callPackage ../tools/text/sgml/jade { };
@@ -3601,8 +3620,6 @@ with pkgs;
 
   mmv = callPackage ../tools/misc/mmv { };
 
-  morituri = callPackage ../applications/audio/morituri { };
-
   most = callPackage ../tools/misc/most { };
 
   motion = callPackage ../applications/video/motion { };
@@ -3678,11 +3695,11 @@ with pkgs;
   nodejs-slim-8_x = callPackage ../development/web/nodejs/v8.nix { enableNpm = false; };
 
   nodejs-10_x = callPackage ../development/web/nodejs/v10.nix {
-    openssl = openssl_1_1_0;
+    openssl = openssl_1_1;
   };
   nodejs-slim-10_x = callPackage ../development/web/nodejs/v10.nix {
     enableNpm = false;
-    openssl = openssl_1_1_0;
+    openssl = openssl_1_1;
   };
 
   nodePackages_10_x = callPackage ../development/node-packages/default-v10.nix {
@@ -3718,7 +3735,7 @@ with pkgs;
   ldapvi = callPackage ../tools/misc/ldapvi { };
 
   ldns = callPackage ../development/libraries/ldns {
-    openssl = openssl_1_1_0;
+    openssl = openssl_1_1;
   };
 
   leafpad = callPackage ../applications/editors/leafpad { };
@@ -4584,6 +4601,8 @@ with pkgs;
 
   pdfcrack = callPackage ../tools/security/pdfcrack { };
 
+  pdftag = callPackage ../tools/graphics/pdftag { };
+
   pdf2svg = callPackage ../tools/graphics/pdf2svg { };
 
   fmodex = callPackage ../games/zandronum/fmod.nix { };
@@ -4736,6 +4755,8 @@ with pkgs;
 
   pptpd = callPackage ../tools/networking/pptpd {};
 
+  prettyping = callPackage ../tools/networking/prettyping { };
+
   prey-bash-client = callPackage ../tools/security/prey { };
 
   profile-cleaner = callPackage ../tools/misc/profile-cleaner { };
@@ -4899,6 +4920,8 @@ with pkgs;
 
   redsocks = callPackage ../tools/networking/redsocks { };
 
+  richgo = callPackage ../development/tools/richgo {  };
+
   rst2html5 = callPackage ../tools/text/rst2html5 { };
 
   rt = callPackage ../servers/rt { };
@@ -5062,13 +5085,13 @@ with pkgs;
 
   s3gof3r = callPackage ../tools/networking/s3gof3r { };
 
-  s6-dns = callPackage ../tools/networking/s6-dns { };
+  s6-dns = skawarePackages.s6-dns;
 
-  s6-linux-utils = callPackage ../os-specific/linux/s6-linux-utils { };
+  s6-linux-utils = skawarePackages.s6-linux-utils;
 
-  s6-networking = callPackage ../tools/networking/s6-networking { };
+  s6-networking = skawarePackages.s6-networking;
 
-  s6-portable-utils = callPackage ../tools/misc/s6-portable-utils { };
+  s6-portable-utils = skawarePackages.s6-portable-utils;
 
   sablotron = callPackage ../tools/text/xml/sablotron { };
 
@@ -5560,7 +5583,7 @@ with pkgs;
   tokei = callPackage ../development/tools/misc/tokei { };
 
   tor = callPackage ../tools/security/tor {
-    openssl = openssl_1_1_0;
+    openssl = openssl_1_1;
     # remove this, when libevent's openssl is upgraded to 1_1_0 or newer.
     libevent = libevent.override {
       sslSupport = false;
@@ -5569,7 +5592,9 @@ with pkgs;
 
   tor-arm = callPackage ../tools/security/tor/tor-arm.nix { };
 
-  tor-browser-bundle-bin = callPackage ../applications/networking/browsers/tor-browser-bundle-bin { };
+  tor-browser-bundle-bin = callPackage ../applications/networking/browsers/tor-browser-bundle-bin {
+    inherit (gnome3) defaultIconTheme;
+  };
 
   tor-browser-bundle = callPackage ../applications/networking/browsers/tor-browser-bundle {
     stdenv = stdenvNoCC;
@@ -5816,6 +5841,8 @@ with pkgs;
 
   welkin = callPackage ../tools/graphics/welkin {};
 
+  whipper = callPackage ../applications/audio/whipper { };
+
   whois = callPackage ../tools/networking/whois { };
 
   wireguard-tools = callPackage ../tools/networking/wireguard-tools { };
@@ -6036,9 +6063,7 @@ with pkgs;
 
   wireguard-go = callPackage ../tools/networking/wireguard-go { };
 
-  wkhtmltopdf = callPackage ../tools/graphics/wkhtmltopdf {
-    overrideDerivation = lib.overrideDerivation;
-  };
+  wkhtmltopdf = callPackage ../tools/graphics/wkhtmltopdf { };
 
   wml = callPackage ../development/web/wml { };
 
@@ -6199,6 +6224,8 @@ with pkgs;
 
   zsh-git-prompt = callPackage ../shells/zsh/zsh-git-prompt { };
 
+  zsh-history-substring-search = callPackage ../shells/zsh/zsh-history-substring-search { };
+
   zsh-navigation-tools = callPackage ../tools/misc/zsh-navigation-tools { };
 
   zsh-syntax-highlighting = callPackage ../shells/zsh/zsh-syntax-highlighting { };
@@ -6220,7 +6247,7 @@ with pkgs;
 
   ### SHELLS
 
-  runtimeShell = "${runtimeShellPackage}/bin/bash";
+  runtimeShell = "${runtimeShellPackage}${runtimeShellPackage.shellPath}";
   runtimeShellPackage = bash;
 
   bash = lowPrio (callPackage ../shells/bash/4.4.nix { });
@@ -6304,10 +6331,6 @@ with pkgs;
 
   binaryen = callPackage ../development/compilers/binaryen { };
 
-  boo = callPackage ../development/compilers/boo {
-    inherit (gnome2) gtksourceview;
-  };
-
   colm = callPackage ../development/compilers/colm { };
 
   fetchegg = callPackage ../build-support/fetchegg { };
@@ -6904,7 +6927,7 @@ with pkgs;
 
   jikes = callPackage ../development/compilers/jikes { };
 
-  julia = callPackage ../development/compilers/julia {
+  julia_06 = callPackage ../development/compilers/julia {
     gmp = gmp6;
     openblas = openblasCompat;
     inherit (darwin.apple_sdk.frameworks) CoreServices ApplicationServices;
@@ -6923,6 +6946,8 @@ with pkgs;
     inherit (darwin.apple_sdk.frameworks) CoreServices ApplicationServices;
   };
 
+  julia = julia_06;
+
   jwasm =  callPackage ../development/compilers/jwasm { };
 
   kotlin = callPackage ../development/compilers/kotlin { };
@@ -7131,7 +7156,8 @@ with pkgs;
 
   opaline = callPackage ../development/tools/ocaml/opaline { };
 
-  opam = callPackage ../development/tools/ocaml/opam {
+  opam = callPackage ../development/tools/ocaml/opam { };
+  opam_1_2 = callPackage ../development/tools/ocaml/opam/1.2.2.nix {
     inherit (ocaml-ng.ocamlPackages_4_05) ocaml;
   };
 
@@ -7158,11 +7184,14 @@ with pkgs;
     });
   inherit (rust) cargo rustc;
 
-  buildRustCrate = callPackage ../build-support/rust/build-rust-crate.nix { };
+  buildRustCrate = callPackage ../build-support/rust/build-rust-crate { };
+  buildRustCrateTests = recurseIntoAttrs (callPackage ../build-support/rust/build-rust-crate/test { }).tests;
 
   cargo-vendor = callPackage ../build-support/rust/cargo-vendor { };
 
-  cargo-web = callPackage ../development/tools/cargo-web { };
+  cargo-web = callPackage ../development/tools/cargo-web {
+    inherit (darwin.apple_sdk.frameworks) CoreServices Security;
+  };
 
   carnix = (callPackage ../build-support/rust/carnix.nix { }).carnix { };
 
@@ -7185,6 +7214,7 @@ with pkgs;
       };
     });
 
+  cargo-download = callPackage ../tools/package-management/cargo-download { };
   cargo-edit = callPackage ../tools/package-management/cargo-edit { };
   cargo-release = callPackage ../tools/package-management/cargo-release { };
   cargo-tree = callPackage ../tools/package-management/cargo-tree { };
@@ -7896,12 +7926,13 @@ with pkgs;
   apacheAnt_1_9 = callPackage ../development/tools/build-managers/apache-ant/1.9.nix { };
   ant = apacheAnt;
 
-  apacheKafka = apacheKafka_1_1;
+  apacheKafka = apacheKafka_2_0;
   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"; };
   apacheKafka_1_0 = callPackage ../servers/apache-kafka { majorVersion = "1.0"; };
   apacheKafka_1_1 = callPackage ../servers/apache-kafka { majorVersion = "1.1"; };
+  apacheKafka_2_0 = callPackage ../servers/apache-kafka { majorVersion = "2.0"; };
 
   kt = callPackage ../tools/misc/kt {};
 
@@ -7949,6 +7980,11 @@ with pkgs;
     inherit (darwin) cctools;
     inherit (darwin.apple_sdk.frameworks) CoreFoundation CoreServices Foundation;
   };
+  bazel_jdk10 = callPackage ../development/tools/build-managers/bazel {
+    inherit (darwin) cctools;
+    inherit (darwin.apple_sdk.frameworks) CoreFoundation CoreServices Foundation;
+    runJdk = jdk10;
+  };
 
   bazel-buildtools = callPackage ../development/tools/build-managers/bazel/buildtools { };
   buildifier = bazel-buildtools;
@@ -8270,7 +8306,7 @@ with pkgs;
 
   funnelweb = callPackage ../development/tools/literate-programming/funnelweb { };
 
-  gede = libsForQt5.callPackage ../development/tools/misc/gede { };
+  gede = libsForQt59.callPackage ../development/tools/misc/gede { };
 
   gdbgui = callPackage ../development/tools/misc/gdbgui { };
 
@@ -8350,7 +8386,9 @@ with pkgs;
     inherit (perlPackages) LocaleGettext;
   };
 
-  heroku = callPackage ../development/tools/heroku { };
+  heroku = callPackage ../development/tools/heroku {
+    nodejs = nodejs-10_x;
+  };
 
   htmlunit-driver = callPackage ../development/tools/selenium/htmlunit-driver { };
 
@@ -8486,14 +8524,12 @@ with pkgs;
 
   nailgun = callPackage ../development/tools/nailgun { };
 
-  nant = callPackage ../development/tools/build-managers/nant { };
-
   ninja = callPackage ../development/tools/build-managers/ninja { };
 
   gn = callPackage ../development/tools/build-managers/gn { };
 
   nixbang = callPackage ../development/tools/misc/nixbang {
-      pythonPackages = python3Packages;
+    pythonPackages = python3Packages;
   };
 
   nexus = callPackage ../development/tools/repository-managers/nexus { };
@@ -8738,13 +8774,9 @@ with pkgs;
   texinfo5 = callPackage ../development/tools/misc/texinfo/5.2.nix { };
   texinfo6 = callPackage ../development/tools/misc/texinfo/6.5.nix { };
   texinfo = texinfo6;
-  texinfoInteractive = appendToName "interactive" (texinfo.override {
-    interactive = true;
-    # doCheck = true -> some xlocale.h problem with perl 5.28.0
-    # (it's mistakenly trying to include the non-existent header)
-    perl = perl526;
-    buildPackages = buildPackages // { perl = buildPackages.perl526; };
-  });
+  texinfoInteractive = appendToName "interactive" (
+    texinfo.override { interactive = true; }
+  );
 
   texi2html = callPackage ../development/tools/misc/texi2html { };
 
@@ -9844,7 +9876,7 @@ with pkgs;
   heimdal = callPackage ../development/libraries/kerberos/heimdal.nix {
     inherit (darwin.apple_sdk.frameworks) CoreFoundation Security SystemConfiguration;
   };
-  libheimdal = heimdal.override { type = "lib"; };
+  libheimdal = heimdal;
 
   harfbuzz = callPackage ../development/libraries/harfbuzz {
     inherit (darwin.apple_sdk.frameworks) ApplicationServices CoreText;
@@ -10388,12 +10420,16 @@ with pkgs;
 
   libgrss = callPackage ../development/libraries/libgrss { };
 
+  libiio = callPackage ../development/libraries/libiio { };
+
   libseccomp = callPackage ../development/libraries/libseccomp { };
 
   libsecret = callPackage ../development/libraries/libsecret { };
 
   libserialport = callPackage ../development/libraries/libserialport { };
 
+  libsignal-protocol-c = callPackage ../development/libraries/libsignal-protocol-c { };
+
   libsoundio = callPackage ../development/libraries/libsoundio {
     inherit (darwin.apple_sdk.frameworks) AudioUnit;
   };
@@ -11243,6 +11279,8 @@ with pkgs;
 
   mtpfs = callPackage ../tools/filesystems/mtpfs { };
 
+  mtxclient = callPackage ../development/libraries/mtxclient { };
+
   mu = callPackage ../tools/networking/mu {
     texinfo = texinfo4;
   };
@@ -11316,6 +11354,8 @@ with pkgs;
 
   nss_wrapper = callPackage ../development/libraries/nss_wrapper { };
 
+  nsss = skawarePackages.nsss;
+
   ntbtls = callPackage ../development/libraries/ntbtls { };
 
   ntk = callPackage ../development/libraries/audio/ntk { };
@@ -11439,7 +11479,7 @@ with pkgs;
       };
     })
     openssl_1_0_2
-    openssl_1_1_0;
+    openssl_1_1;
 
   openssl-chacha = callPackage ../development/libraries/openssl/chacha.nix {
     cryptodevHeaders = linuxPackages.cryptodev.override {
@@ -11712,7 +11752,7 @@ with pkgs;
       kservice ktexteditor ktextwidgets kunitconversion kwallet kwayland
       kwidgetsaddons kwindowsystem kxmlgui kxmlrpcclient modemmanager-qt
       networkmanager-qt plasma-framework prison solid sonnet syntax-highlighting
-      threadweaver kirigami2 kholidays kpurpose;
+      syndication threadweaver kirigami2 kholidays kpurpose;
 
     ### KDE PLASMA 5
 
@@ -12008,7 +12048,24 @@ with pkgs;
 
   shibboleth-sp = callPackage ../development/libraries/shibboleth-sp { };
 
-  skalibs = callPackage ../development/libraries/skalibs { };
+  skalibs = skawarePackages.skalibs;
+
+  skawarePackages = recurseIntoAttrs {
+    buildPackage = callPackage ../build-support/skaware/build-skaware-package.nix { };
+
+    skalibs = callPackage ../development/libraries/skalibs { };
+    execline = callPackage ../tools/misc/execline { };
+
+    s6 = callPackage ../tools/system/s6 { };
+    s6-dns = callPackage ../tools/networking/s6-dns { };
+    s6-linux-utils = callPackage ../os-specific/linux/s6-linux-utils { };
+    s6-networking = callPackage ../tools/networking/s6-networking { };
+    s6-portable-utils = callPackage ../tools/misc/s6-portable-utils { };
+    s6-rc = callPackage ../tools/system/s6-rc { };
+
+    nsss = callPackage ../development/libraries/nsss { };
+
+  };
 
   skydive = callPackage ../tools/networking/skydive { };
 
@@ -12830,8 +12887,8 @@ with pkgs;
 
   rdf4store = callPackage ../servers/http/4store { };
 
-  apacheHttpd = pkgs.apacheHttpd_2_4;
   apacheHttpd_2_4 = callPackage ../servers/http/apache-httpd/2.4.nix { };
+  apacheHttpd = pkgs.apacheHttpd_2_4;
 
   apacheHttpdPackagesFor = apacheHttpd: self: let callPackage = newScope self; in {
     inherit apacheHttpd;
@@ -12855,8 +12912,8 @@ with pkgs;
     subversion = pkgs.subversion.override { httpServer = true; inherit apacheHttpd; };
   };
 
-  apacheHttpdPackages = apacheHttpdPackagesFor pkgs.apacheHttpd pkgs.apacheHttpdPackages;
   apacheHttpdPackages_2_4 = apacheHttpdPackagesFor pkgs.apacheHttpd_2_4 pkgs.apacheHttpdPackages_2_4;
+  apacheHttpdPackages = apacheHttpdPackages_2_4;
 
   appdaemon = callPackage ../servers/home-assistant/appdaemon.nix { };
 
@@ -13104,6 +13161,8 @@ with pkgs;
 
   nas = callPackage ../servers/nas { };
 
+  nats-streaming-server = callPackage ../servers/nats-streaming-server { };
+
   neard = callPackage ../servers/neard { };
 
   nginx = nginxStable;
@@ -13288,6 +13347,8 @@ with pkgs;
 
   newrelic-sysmond = callPackage ../servers/monitoring/newrelic-sysmond { };
 
+  nullidentdmod = callPackage ../servers/identd/nullidentdmod {};
+
   riemann = callPackage ../servers/monitoring/riemann { };
   riemann-dash = callPackage ../servers/monitoring/riemann-dash { };
 
@@ -13312,6 +13373,8 @@ with pkgs;
 
   cbfstool = callPackage ../applications/virtualization/cbfstool { };
 
+  nvramtool = callPackage ../tools/misc/nvramtool { };
+
   vmfs-tools = callPackage ../tools/filesystems/vmfs-tools { };
 
   pgbouncer = callPackage ../servers/sql/pgbouncer { };
@@ -13418,9 +13481,9 @@ with pkgs;
     boost = boost159;
   };
 
-  s6 = callPackage ../tools/system/s6 { };
+  s6 = skawarePackages.s6;
 
-  s6-rc = callPackage ../tools/system/s6-rc { };
+  s6-rc = skawarePackages.s6-rc;
 
   supervise = callPackage ../tools/system/supervise { };
 
@@ -13674,6 +13737,8 @@ with pkgs;
 
   bluez5 = callPackage ../os-specific/linux/bluez { };
 
+  pulseaudio-modules-bt = callPackage ../applications/audio/pulseaudio-modules-bt { };
+
   bluez = bluez5;
 
   inherit (python3Packages) bedup;
@@ -13932,14 +13997,6 @@ with pkgs;
       ];
   };
 
-  linux_copperhead_lts = (linux_4_14.override {
-    kernelPatches = linux_4_14.kernelPatches ++ [
-      kernelPatches.copperhead_4_14
-      kernelPatches.tag_hardened
-     ];
-    modDirVersionArg = linux_4_14.modDirVersion + "-hardened";
-  });
-
   # linux mptcp is based on the 4.4 kernel
   linux_mptcp = callPackage ../os-specific/linux/kernel/linux-mptcp.nix {
     kernelPatches =
@@ -14010,16 +14067,6 @@ with pkgs;
       ];
   };
 
-  linux_4_17 = callPackage ../os-specific/linux/kernel/linux-4.17.nix {
-    kernelPatches =
-      [ kernelPatches.bridge_stp_helper
-        # See pkgs/os-specific/linux/kernel/cpu-cgroup-v2-patches/README.md
-        # when adding a new linux version
-        # kernelPatches.cpu-cgroup-v2."4.11"
-        kernelPatches.modinst_arg_list_too_long
-      ];
-  };
-
   linux_4_18 = callPackage ../os-specific/linux/kernel/linux-4.18.nix {
     kernelPatches =
       [ kernelPatches.bridge_stp_helper
@@ -14027,6 +14074,18 @@ with pkgs;
         # when adding a new linux version
         # kernelPatches.cpu-cgroup-v2."4.11"
         kernelPatches.modinst_arg_list_too_long
+
+        # https://github.com/NixOS/nixpkgs/issues/45165
+        # TODO: remove this patch once it is merged upstream and released.
+        (rec {
+          name = "hid-core-fix-grouping-by-application";
+          patch = fetchpatch {
+            name = name + ".patch";
+            # https://patchwork.kernel.org/patch/10587369/
+            url = https://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid.git/patch/?id=0d6c3011409135ea84e2a231b013a22017ff999a;
+            sha256 = "0bdrv0aqjh0rdjlaaaqpdgrnd9452fa4ggaa1nq2kmik3q00cq4m";
+          };
+        })
       ];
   };
 
@@ -14230,7 +14289,6 @@ with pkgs;
   linuxPackages_4_4 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_4_4);
   linuxPackages_4_9 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_4_9);
   linuxPackages_4_14 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_4_14);
-  linuxPackages_4_17 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_4_17);
   linuxPackages_4_18 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_4_18);
   # Don't forget to update linuxPackages_latest!
 
@@ -14281,8 +14339,6 @@ with pkgs;
 
   linuxPackages_latest_xen_dom0_hardened = recurseIntoAttrs (hardenedLinuxPackagesFor (pkgs.linux_latest.override { features.xen_dom0=true; }));
 
-  linuxPackages_copperhead_lts = recurseIntoAttrs (hardenedLinuxPackagesFor pkgs.linux_copperhead_lts);
-
   # Samus kernels
   linuxPackages_samus_4_12 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_samus_4_12);
   linuxPackages_samus_latest = linuxPackages_samus_4_12;
@@ -14445,6 +14501,8 @@ with pkgs;
 
   govers = callPackage ../development/tools/govers { };
 
+  govendor = callPackage ../development/tools/govendor { };
+
   gotools = callPackage ../development/tools/gotools { };
 
   gotop = callPackage ../tools/system/gotop { };
@@ -14528,6 +14586,8 @@ with pkgs;
 
   policycoreutils = callPackage ../os-specific/linux/policycoreutils { };
 
+  semodule-utils = callPackage ../os-specific/linux/semodule-utils { };
+
   powerdns = callPackage ../servers/dns/powerdns { };
 
   dnsdist = callPackage ../servers/dns/dnsdist { };
@@ -15131,6 +15191,7 @@ with pkgs;
 
   powerline-rs = callPackage ../tools/misc/powerline-rs {
     inherit (darwin.apple_sdk.frameworks) Security;
+    openssl = openssl_1_1;
   };
 
   profont = callPackage ../data/fonts/profont { };
@@ -15486,6 +15547,8 @@ with pkgs;
 
   autopanosiftc = callPackage ../applications/graphics/autopanosiftc { };
 
+  aesop = callPackage ../applications/office/aesop { };
+
   avidemux = libsForQt5.callPackage ../applications/video/avidemux { };
 
   avrdudess = callPackage ../applications/misc/avrdudess { };
@@ -15521,11 +15584,6 @@ with pkgs;
 
   barrier = callPackage ../applications/misc/barrier {};
 
-  banshee = callPackage ../applications/audio/banshee {
-    gconf = pkgs.gnome2.GConf;
-    libgpod = pkgs.libgpod.override { monoSupport = true; };
-  };
-
   bashSnippets = callPackage ../applications/misc/bashSnippets { };
 
   batik = callPackage ../applications/graphics/batik { };
@@ -15689,6 +15747,8 @@ with pkgs;
 
   browsh = callPackage ../applications/networking/browsers/browsh { };
 
+  bookworm = callPackage ../applications/office/bookworm { };
+
   chromium = callPackage ../applications/networking/browsers/chromium {
     channel = "stable";
     pulseSupport = config.pulseaudio or true;
@@ -15807,7 +15867,7 @@ with pkgs;
 
   cyclone = callPackage ../applications/audio/pd-plugins/cyclone  { };
 
-  darcs = haskell.lib.overrideCabal (haskell.lib.justStaticExecutables haskell.packages.ghc802.darcs) (drv: {
+  darcs = haskell.lib.overrideCabal (haskell.lib.justStaticExecutables haskellPackages.darcs) (drv: {
     configureFlags = (stdenv.lib.remove "-flibrary" drv.configureFlags or []) ++ ["-f-library"];
   });
 
@@ -15824,6 +15884,7 @@ with pkgs;
   datadog-agent = callPackage ../tools/networking/dd-agent/6.nix {
     pythonPackages = datadog-integrations-core {};
   };
+  datadog-process-agent = callPackage ../tools/networking/dd-agent/datadog-process-agent.nix { };
   datadog-integrations-core = extras: callPackage ../tools/networking/dd-agent/integrations-core.nix {
     python = python27;
     extraIntegrations = extras;
@@ -16035,7 +16096,7 @@ with pkgs;
       ImageCaptureCore GSS ImageIO;
   };
 
-  emacsPackagesGen = emacs: self: let callPackage = newScope self; in rec {
+  emacsPackagesFor = emacs: self: let callPackage = newScope self; in rec {
     inherit emacs;
 
     autoComplete = callPackage ../applications/editors/emacs-modes/auto-complete { };
@@ -16178,10 +16239,10 @@ with pkgs;
     cask = callPackage ../applications/editors/emacs-modes/cask { };
   };
 
-  emacs25Packages = emacsPackagesGen emacs25 pkgs.emacs25Packages;
-  emacs26Packages = emacsPackagesGen emacs26 pkgs.emacs26Packages;
+  emacs25Packages = emacsPackagesFor emacs25 pkgs.emacs25Packages;
+  emacs26Packages = emacsPackagesFor emacs26 pkgs.emacs26Packages;
 
-  emacsPackagesNgGen = emacs: import ./emacs-packages.nix {
+  emacsPackagesNgFor = emacs: import ./emacs-packages.nix {
     inherit lib newScope stdenv;
     inherit fetchFromGitHub fetchgit fetchhg fetchurl fetchpatch;
     inherit emacs texinfo makeWrapper runCommand writeText;
@@ -16203,9 +16264,9 @@ with pkgs;
     };
   };
 
-  emacs25PackagesNg = emacsPackagesNgGen emacs25;
+  emacs25PackagesNg = emacsPackagesNgFor emacs25;
   emacs25WithPackages = emacs25PackagesNg.emacsWithPackages;
-  emacs26PackagesNg = emacsPackagesNgGen emacs26;
+  emacs26PackagesNg = emacsPackagesNgFor emacs26;
   emacs26WithPackages = emacs26PackagesNg.emacsWithPackages;
   emacsWithPackages = emacsPackagesNg.emacsWithPackages;
 
@@ -16296,8 +16357,7 @@ with pkgs;
   fldigi = callPackage ../applications/audio/fldigi { };
 
   flink = callPackage ../applications/networking/cluster/flink { };
-  flink_1_3 = flink.override { version = "1.3"; };
-  flink_1_4 = flink.override { version = "1.4"; };
+  flink_1_5 = flink.override { version = "1.5"; };
 
   fluidsynth = callPackage ../applications/audio/fluidsynth {
      inherit (darwin.apple_sdk.frameworks) AudioUnit CoreAudio CoreMIDI CoreServices;
@@ -16340,7 +16400,7 @@ with pkgs;
 
   gksu = callPackage ../applications/misc/gksu { };
 
-  gnss-sdr = callPackage ../applications/misc/gnss-sdr { };
+  gnss-sdr = callPackage ../applications/misc/gnss-sdr { boost=boost166; };
 
   gnuradio = callPackage ../applications/misc/gnuradio {
     inherit (python2Packages) cheetah lxml Mako matplotlib numpy python pyopengl pyqt4 scipy wxPython pygtk;
@@ -16839,6 +16899,8 @@ with pkgs;
     inherit (gnome2) gnome_python;
   };
 
+  hashit = callPackage ../tools/misc/hashit { };
+
   hello = callPackage ../applications/misc/hello { };
   hello-unfree = callPackage ../applications/misc/hello-unfree { };
 
@@ -17212,7 +17274,6 @@ with pkgs;
 
   krita = libsForQt5.callPackage ../applications/graphics/krita {
     openjpeg = openjpeg_1;
-    poppler_qt5 = libsForQt5.poppler;
   };
 
   krusader = libsForQt5.callPackage ../applications/misc/krusader { };
@@ -17293,15 +17354,12 @@ with pkgs;
     harfbuzz = harfbuzz.override {
       withIcu = true; withGraphite2 = true;
     };
-    # checking whether g++ supports C++14 or C++11... configure: error: no
-    # Still relevant: 2018-04-13
-    stdenv = overrideCC stdenv gcc5;
   };
 
-  libreoffice-unwrapped =callPackage ../applications/office/libreoffice
+  libreoffice-unwrapped = callPackage ../applications/office/libreoffice
   (libreoffice-args // {
   });
-  libreoffice-still-unwrapped =callPackage ../applications/office/libreoffice/still.nix
+  libreoffice-still-unwrapped = callPackage ../applications/office/libreoffice/still.nix
   (libreoffice-args // {
       poppler = poppler_0_61;
   });
@@ -17440,6 +17498,8 @@ with pkgs;
 
   mediathekview = callPackage ../applications/video/mediathekview { };
 
+  meteo = callPackage ../applications/networking/weather/meteo { };
+
   meld = callPackage ../applications/version-management/meld { };
 
   meme = callPackage ../applications/graphics/meme { };
@@ -17614,6 +17674,8 @@ with pkgs;
 
   mm = callPackage ../applications/networking/instant-messengers/mm { };
 
+  matrique = libsForQt5.callPackage ../applications/networking/instant-messengers/matrique { };
+
   mpc-qt = libsForQt5.callPackage ../applications/video/mpc-qt { };
 
   mplayer = callPackage ../applications/video/mplayer ({
@@ -17782,6 +17844,8 @@ with pkgs;
 
   typora = callPackage ../applications/editors/typora { };
 
+  taxi = callPackage ../applications/networking/ftp/taxi { };
+
   librep = callPackage ../development/libraries/librep { };
 
   rep-gtk = callPackage ../development/libraries/rep-gtk { };
@@ -17834,6 +17898,8 @@ with pkgs;
 
   nanoblogger = callPackage ../applications/misc/nanoblogger { };
 
+  nanorc = callPackage ../applications/editors/nano/nanorc { };
+
   navipowm = callPackage ../applications/misc/navipowm { };
 
   navit = libsForQt5.callPackage ../applications/misc/navit { };
@@ -17862,6 +17928,8 @@ with pkgs;
     gmime = gmime3;
   };
 
+  notejot = callPackage ../applications/misc/notejot { };
+
   notmuch-mutt = callPackage ../applications/networking/mailreaders/notmuch/mutt.nix { };
 
   muchsync = callPackage ../applications/networking/mailreaders/notmuch/muchsync.nix { };
@@ -18268,6 +18336,8 @@ with pkgs;
 
   quirc = callPackage ../tools/graphics/quirc {};
 
+  quilter = callPackage ../applications/editors/quilter { };
+
   quiterss = libsForQt5.callPackage ../applications/networking/newsreaders/quiterss {};
 
   falkon = libsForQt5.callPackage ../applications/networking/browsers/falkon { };
@@ -18768,7 +18838,7 @@ with pkgs;
   teamspeak_client = libsForQt5.callPackage ../applications/networking/instant-messengers/teamspeak/client.nix { };
   teamspeak_server = callPackage ../applications/networking/instant-messengers/teamspeak/server.nix { };
 
-  uaskjuggler = callPackage ../applications/misc/taskjuggler { };
+  taskjuggler = callPackage ../applications/misc/taskjuggler { };
 
   tasknc = callPackage ../applications/misc/tasknc { };
 
@@ -18824,6 +18894,8 @@ with pkgs;
 
   nylas-mail-bin = callPackage ../applications/networking/mailreaders/nylas-mail-bin { };
 
+  thonny = callPackage ../applications/editors/thonny { };
+
   thunderbird = callPackage ../applications/networking/mailreaders/thunderbird {
     inherit (gnome2) libIDL;
     libpng = libpng_apng;
@@ -19125,6 +19197,8 @@ with pkgs;
 
   vnstat = callPackage ../applications/networking/vnstat { };
 
+  vocal = callPackage ../applications/audio/vocal { };
+
   vogl = libsForQt5.callPackage ../development/tools/vogl { };
 
   volnoti = callPackage ../applications/misc/volnoti { };
@@ -19190,13 +19264,7 @@ with pkgs;
     guile = guile_2_0;
   };
 
-  weechat-matrix-bridge = callPackage ../applications/networking/instant-messengers/weechat-matrix-bridge {
-    inherit (luaPackages) cjson;
-  };
-
-  weechat-xmpp = callPackage ../applications/networking/instant-messengers/weechat-xmpp {
-    inherit (pythonPackages) pydns;
-  };
+  weechatScripts = callPackage ../applications/networking/irc/weechat/scripts { };
 
   westonLite = weston.override {
     pango = null;
@@ -19415,6 +19483,8 @@ with pkgs;
 
   xdaliclock = callPackage ../tools/misc/xdaliclock {};
 
+  xdg-dbus-proxy = callPackage ../development/libraries/xdg-dbus-proxy { };
+
   xdg-desktop-portal = callPackage ../development/libraries/xdg-desktop-portal { };
 
   xdg-desktop-portal-gtk = callPackage ../development/libraries/xdg-desktop-portal-gtk { };
@@ -19582,6 +19652,8 @@ with pkgs;
 
   yate = callPackage ../applications/misc/yate { };
 
+  ydiff = callPackage ../development/tools/ydiff { };
+
   yed = callPackage ../applications/graphics/yed {};
 
   inherit (gnome3) yelp;
@@ -19627,7 +19699,7 @@ with pkgs;
 
   zim = callPackage ../applications/office/zim { };
 
-  zoom-us = libsForQt5.callPackage ../applications/networking/instant-messengers/zoom-us { };
+  zoom-us = libsForQt59.callPackage ../applications/networking/instant-messengers/zoom-us { };
 
   zotero = callPackage ../applications/office/zotero { };
 
@@ -19725,7 +19797,7 @@ with pkgs;
 
   chessdb = callPackage ../games/chessdb { };
 
-  chessx = libsForQt5.callPackage ../games/chessx { };
+  chessx = libsForQt59.callPackage ../games/chessx { };
 
   chocolateDoom = callPackage ../games/chocolate-doom { };
 
@@ -20177,7 +20249,7 @@ with pkgs;
     lua = lua5_1;
   };
 
-  solarus = callPackage ../games/solarus { };
+  solarus = libsForQt5.callPackage ../games/solarus { };
 
   solarus-quest-editor = libsForQt5.callPackage ../development/tools/solarus-quest-editor { };
 
@@ -20210,6 +20282,8 @@ with pkgs;
     nativeOnly = true;
   }).run;
 
+  steamcmd = steamPackages.steamcmd;
+
   linux-steam-integration = callPackage ../games/linux-steam-integration {
     gtk = pkgs.gtk3;
   };
@@ -20577,6 +20651,18 @@ with pkgs;
 
   pymol = callPackage ../applications/science/chemistry/pymol { };
 
+  quantum-espresso = callPackage ../applications/science/chemistry/quantum-espresso { };
+
+  quantum-espresso-mpi = callPackage ../applications/science/chemistry/quantum-espresso {
+     mpi = openmpi;
+  };
+
+  siesta = callPackage ../applications/science/chemistry/siesta { };
+
+  siesta-mpi = callPackage ../applications/science/chemistry/siesta {
+     mpi = openmpi;
+  };
+
   ### SCIENCE/GEOMETRY
 
   drgeo = callPackage ../applications/science/geometry/drgeo {
@@ -20587,6 +20673,10 @@ with pkgs;
   tetgen = callPackage ../applications/science/geometry/tetgen { }; # AGPL3+
   tetgen_1_4 = callPackage ../applications/science/geometry/tetgen/1.4.nix { }; # MIT
 
+  ### SCIENCE/BENCHMARK
+
+  papi = callPackage ../development/libraries/science/benchmark/papi { };
+
   ### SCIENCE/BIOLOGY
 
   alliance = callPackage ../applications/science/electronics/alliance { };
@@ -20615,6 +20705,8 @@ with pkgs;
 
   ezminc = callPackage ../applications/science/biology/EZminc { };
 
+  hisat2 = callPackage ../applications/science/biology/hisat2 { };
+
   htslib = callPackage ../development/libraries/science/biology/htslib { };
 
   igv = callPackage ../applications/science/biology/igv { };
@@ -20696,6 +20788,8 @@ with pkgs;
 
   strelka = callPackage ../applications/science/biology/strelka { };
 
+  seaview = callPackage ../applications/science/biology/seaview { };
+
   varscan = callPackage ../applications/science/biology/varscan { };
 
   hmmer = callPackage ../applications/science/biology/hmmer { };
@@ -20774,6 +20868,10 @@ with pkgs;
 
   planarity = callPackage ../development/libraries/science/math/planarity { };
 
+  scalapack = callPackage ../development/libraries/science/math/scalapack {
+    mpi = openmpi;
+  };
+
   rankwidth = callPackage ../development/libraries/science/math/rankwidth { };
 
   fenics = callPackage ../development/libraries/science/math/fenics {
@@ -20803,6 +20901,10 @@ with pkgs;
 
   petsc = callPackage ../development/libraries/science/math/petsc { };
 
+  parmetis = callPackage ../development/libraries/science/math/parmetis {
+    mpi = openmpi;
+  };
+
   scs = callPackage ../development/libraries/science/math/scs {
     liblapack = liblapackWithoutAtlas;
   };
@@ -21294,29 +21396,7 @@ with pkgs;
 
   fastnlo = callPackage ../development/libraries/physics/fastnlo { };
 
-  geant4 = callPackage ../development/libraries/physics/geant4 {
-    enableMultiThreading = true;
-    enableG3toG4         = false;
-    enableInventor       = false;
-    enableGDML           = false;
-    enableQT             = false;
-    enableXM             = false;
-    enableOpenGLX11      = true;
-    enableRaytracerX11   = false;
-
-    # Optional system packages, otherwise internal GEANT4 packages are used.
-    clhep = null;
-    zlib  = null;
-
-    # For enableGDML.
-    xercesc = null;
-
-    # For enableQT.
-    qt = null; # qt4SDK or qt5SDK
-
-    # For enableXM.
-    motif = null; # motif or lesstif
-  };
+  geant4 = libsForQt5.callPackage ../development/libraries/physics/geant4 { };
 
   cernlib = callPackage ../development/libraries/physics/cernlib { };
 
@@ -21611,6 +21691,8 @@ with pkgs;
 
   martyr = callPackage ../development/libraries/martyr { };
 
+  matcha = callPackage ../misc/themes/matcha { };
+
   # previously known as flat-plat
   materia-theme = callPackage ../misc/themes/materia-theme { };
 
@@ -21934,6 +22016,8 @@ with pkgs;
     libsemanage = libsemanage.override { python = python3; };
   };
 
+  sierra-gtk-theme = callPackage ../misc/themes/sierra { };
+
   slock = callPackage ../misc/screensavers/slock {
     conf = config.slock.conf or null;
   };
@@ -22038,9 +22122,7 @@ with pkgs;
 
   valauncher = callPackage ../applications/misc/valauncher { };
 
-  vault = callPackage ../tools/security/vault {
-    go = go_1_10;
-  };
+  vault = callPackage ../tools/security/vault { };
 
   vaultenv = haskellPackages.vaultenv;
 
@@ -22227,9 +22309,14 @@ with pkgs;
     inherit (gnome2) gtksourceview;
   };
 
-  bullet = callPackage ../development/libraries/bullet {};
+  bullet = callPackage ../development/libraries/bullet {
+    inherit (darwin.apple_sdk.frameworks) Cocoa OpenGL;
+  };
+
+  inherit (callPackages ../development/libraries/spdlog { })
+    spdlog_0 spdlog_1;
 
-  spdlog = callPackage ../development/libraries/spdlog { };
+  spdlog = spdlog_1;
 
   dart = callPackage ../development/interpreters/dart { };
   dart_stable = dart.override { version = "1.24.3"; };
diff --git a/pkgs/top-level/dotnet-packages.nix b/pkgs/top-level/dotnet-packages.nix
index 3782fc33d6a6..ee1b94c8638d 100644
--- a/pkgs/top-level/dotnet-packages.nix
+++ b/pkgs/top-level/dotnet-packages.nix
@@ -402,50 +402,11 @@ let self = dotnetPackages // overrides; dotnetPackages = with self; {
     };
   };
 
-  Deedle = buildDotnetPackage rec {
+  Deedle = fetchNuGet rec {
     baseName = "Deedle";
-    version = "1.2.0";
-
-    src = fetchFromGitHub {
-      owner = "BlueMountainCapital";
-      repo = baseName;
-      rev = "v${version}";
-      sha256 = "115zzh3q57w8wr02cl2v8wijnj1rg01j1mk9zbzixbb4aird72n5";
-    };
-
-    # Enough files from this repo are needed that it will be quicker to just get the entire repo
-    fsharpDataSrc = fetchFromGitHub {
-      owner = "fsharp";
-      repo = "FSharp.Data";
-      rev = "2.2.3";
-      sha256 = "1h3v9rc8k0khp61cv5n01larqbxd3xcx3q52sw5zf9l0661vw7qr";
-    };
-
-    buildInputs = [
-      fsharp
-      dotnetPackages.FsCheck
-      dotnetPackages.FSharpCompilerService
-      dotnetPackages.FSharpData
-      dotnetPackages.FSharpFormatting
-      dotnetPackages.MathNetNumerics
-      dotnetPackages.NUnit
-    ];
-
-    preConfigure = ''
-      mkdir -vp paket-files/fsharp
-      ln -sv ${fsharpDataSrc} paket-files/fsharp/FSharp.Data
-    '';
-
-    xBuildFiles = [ "Deedle.Core.sln" ];  # Come back later to get RProvider as well
-    outputFiles = [ "bin/*" "LICENSE.md" ];
-
-    meta = {
-      description = "Deedle is an easy to use library for data and time series manipulation and for scientific programming";
-      homepage = "http://bluemountaincapital.github.io/Deedle/";
-      license = stdenv.lib.licenses.free;
-      maintainers = with stdenv.lib.maintainers; [ obadz ];
-      platforms = with stdenv.lib.platforms; linux;
-    };
+    version = "1.2.5";
+    sha256 = "0g19ll6bp97ixprcnpwwvshr1n9jxxf9xjhkxp0r63mg46z48jnw";
+    outputFiles = [ "*" ];
   };
 
   ExcelDna = buildDotnetPackage rec {
@@ -871,40 +832,11 @@ let self = dotnetPackages // overrides; dotnetPackages = with self; {
     };
   };
 
-  NewtonsoftJson = buildDotnetPackage rec {
+  NewtonsoftJson = fetchNuGet {
     baseName = "Newtonsoft.Json";
-    version = "6.0.8";
-
-    src = fetchurl {
-      name = "${baseName}-${version}.tar.gz";
-      url = "https://github.com/JamesNK/Newtonsoft.Json/archive/${version}.tar.gz";
-      sha256 = "14znf5mycka578bxjnlnz6a3f9nfkc682hgmgg42gdzksnarvhlm";
-    };
-
-    buildInputs = [
-      fsharp
-      dotnetPackages.NUnit
-      dotnetPackages.SystemCollectionsImmutable
-      dotnetPackages.Autofac
-    ];
-
-    patches = [ ../development/dotnet-modules/patches/newtonsoft-json.references.patch ];
-
-    postConfigure = ''
-       # Just to make sure there's no attempt to call these executables
-       rm -rvf Tools
-    '';
-
-    xBuildFiles = [ "Src/Newtonsoft.Json.sln" ];
-    outputFiles = [ "Src/Newtonsoft.Json/bin/Release/Net45/*" ];
-
-    meta = {
-      description = "Popular high-performance JSON framework for .NET";
-      homepage = "https://www.newtonsoft.com/json";
-      license = stdenv.lib.licenses.mit;
-      maintainers = with stdenv.lib.maintainers; [ obadz ];
-      platforms = with stdenv.lib.platforms; linux;
-    };
+    version = "11.0.2";
+    sha256 = "07na27n4mlw77f3hg5jpayzxll7f4gyna6x7k9cybmxpbs6l77k7";
+    outputFiles = [ "*" ];
   };
 
   Nuget = buildDotnetPackage {
@@ -927,66 +859,11 @@ let self = dotnetPackages // overrides; dotnetPackages = with self; {
     exeFiles = [ "nuget.exe" ];
   };
 
-  Paket = buildDotnetPackage rec {
+  Paket = fetchNuGet {
     baseName = "Paket";
-    version = "1.18.2";
-
-    src = fetchFromGitHub {
-      owner = "fsprojects";
-      repo = "Paket";
-      rev = version;
-      sha256 = "04iwy3mggz7xn36lhzyrwqzlw451a16jblwx131qjm6fnac6rq1m";
-    };
-
-    buildInputs = [
-      fsharp
-      dotnetPackages.NewtonsoftJson
-      dotnetPackages.UnionArgParser
-      dotnetPackages.NUnit
-    ];
-
-    fileFsUnit = fetchurl {
-      name = "FsUnit.fs";
-      url = https://raw.githubusercontent.com/forki/FsUnit/81d27fd09575a32c4ed52eadb2eeac5f365b8348/FsUnit.fs;
-      sha256 = "1zxigqgb2s2v755622jbbzibvf91990x2dijhbdgg646vsybkpdp";
-    };
-
-    fileGlobbing = fetchurl {
-      name = "Globbing.fs";
-      url = https://raw.githubusercontent.com/fsharp/FAKE/8e65e2fc1406f326b44f3f87ec9ca9b3127a6e78/src/app/FakeLib/Globbing/Globbing.fs;
-      sha256 = "1v7d7666a61j6f8ksh0q40hfsc5b03448viq17xa91xgb7skhyx7";
-    };
-
-    fileErrorHandling = fetchurl {
-      name = "ErrorHandling.fs";
-      url = https://raw.githubusercontent.com/fsprojects/Chessie/3017092260b4a59a3b4b25bf8fca6be6eb7487eb/src/Chessie/ErrorHandling.fs;
-      sha256 = "0ka9ilfbl4izxc1wqd5vlfjnp7n2xcckfhp13gzhqbdx7464van9";
-    };
-
-    postConfigure = ''
-       # Copy said single-files-in-git-repos
-       mkdir -p "paket-files/forki/FsUnit"
-       cp -v "${fileFsUnit}" "paket-files/forki/FsUnit/FsUnit.fs"
-
-       mkdir -p "paket-files/fsharp/FAKE/src/app/FakeLib/Globbing"
-       cp -v "${fileGlobbing}" "paket-files/fsharp/FAKE/src/app/FakeLib/Globbing/Globbing.fs"
-
-       mkdir -p "paket-files/fsprojects/Chessie/src/Chessie"
-       cp -v "${fileErrorHandling}" "paket-files/fsprojects/Chessie/src/Chessie/ErrorHandling.fs"
-    '';
-
-    xBuildFiles = [ "Paket.sln" ];
-
-    outputFiles = [ "bin/*" ];
-    exeFiles = [ "paket.exe" ];
-
-    meta = {
-      description = "A dependency manager for .NET and Mono projects";
-      homepage = "http://fsprojects.github.io/Paket/";
-      license = stdenv.lib.licenses.mit;
-      maintainers = with stdenv.lib.maintainers; [ obadz ];
-      platforms = with stdenv.lib.platforms; linux;
-    };
+    version = "5.179.1";
+    sha256 = "11rzna03i145qj08hwrynya548fwk8xzxmg65swyaf19jd7gzg82";
+    outputFiles = [ "*" ];
   };
 
   Projekt = buildDotnetPackage rec {
diff --git a/pkgs/top-level/emacs-packages.nix b/pkgs/top-level/emacs-packages.nix
index ba82bd217fdc..a83c3baaa4a0 100644
--- a/pkgs/top-level/emacs-packages.nix
+++ b/pkgs/top-level/emacs-packages.nix
@@ -178,7 +178,7 @@ let
       for file in elpy.el elpy-pkg.el; do
         substituteInPlace $file \
             --replace "company \"0.8.2\"" "company \"${company.version}\"" \
-            --replace "find-file-in-project \"3.3\"" "find-file-in-project \"${find-file-in-project.version}\"" \
+            --replace "find-file-in-project \"3.3\"" "find-file-in-project \"${(melpaPackages self).find-file-in-project.version}\"" \
             --replace "highlight-indentation \"0.5.0\"" "highlight-indentation \"${highlight-indentation.version}\"" \
             --replace "pyvenv \"1.3\"" "pyvenv \"${pyvenv.version}\"" \
             --replace "yasnippet \"0.8.0\"" "yasnippet \"${yasnippet.version}\""
@@ -226,31 +226,6 @@ let
   ess-R-object-popup =
     callPackage ../applications/editors/emacs-modes/ess-R-object-popup { };
 
-  find-file-in-project = melpaBuild rec {
-    pname = "find-file-in-project";
-    version = "3.5";
-    src = fetchFromGitHub {
-      owner  = "technomancy";
-      repo   = pname;
-      rev    = "53a8d8174f915d9dcf5ac6954b1c0cae61266177";
-      sha256 = "0wky8vqg08iw34prbz04bqmhfhj82y93swb8zkz6la2vf9da0gmd";
-    };
-    recipe = writeText "recipe" ''
-      (find-file-in-project
-       :repo "technomancy/find-file-in-project"
-       :fetcher github)
-    '';
-    meta = {
-      description = "Quick access to project files in Emacs";
-      longDescription = ''
-        Find files in a project quickly.
-        This program provides a couple methods for quickly finding any file in a
-        given project. It depends on GNU find.
-      '';
-      license = gpl3Plus;
-    };
-  };
-
   filesets-plus = callPackage ../applications/editors/emacs-modes/filesets-plus { };
 
   font-lock-plus = callPackage ../applications/editors/emacs-modes/font-lock-plus { };
diff --git a/pkgs/top-level/make-tarball.nix b/pkgs/top-level/make-tarball.nix
index f7f128547bae..a0c99847274a 100644
--- a/pkgs/top-level/make-tarball.nix
+++ b/pkgs/top-level/make-tarball.nix
@@ -54,7 +54,7 @@ releaseTools.sourceTarball rec {
     mkdir $TMPDIR/foo
     ln -s $(readlink -f .) $TMPDIR/foo/bar
     p1=$(nix-instantiate ./. --dry-run -A firefox --show-trace)
-    p2=$(nix-instantiate $TMPDIR/foo/bar --dry-run -A firefox)
+    p2=$(nix-instantiate $TMPDIR/foo/bar --dry-run -A firefox --show-trace)
     if [ "$p1" != "$p2" ]; then
         echo "Nixpkgs evaluation depends on Nixpkgs path ($p1 vs $p2)!"
         exit 1
@@ -63,9 +63,9 @@ releaseTools.sourceTarball rec {
     # Run the regression tests in `lib'.
     if
         # `set -e` doesn't work inside here, so need to && instead :(
-        res="$(nix-instantiate --eval --strict lib/tests/misc.nix)" \
+        res="$(nix-instantiate --eval --strict lib/tests/misc.nix --show-trace)" \
         && [[ "$res" == "[ ]" ]] \
-        && res="$(nix-instantiate --eval --strict lib/tests/systems.nix)" \
+        && res="$(nix-instantiate --eval --strict lib/tests/systems.nix --show-trace)" \
         && [[ "$res" == "[ ]" ]]
     then
         true
diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix
index 7b6af70ebcf9..f5e5cfb3972b 100644
--- a/pkgs/top-level/ocaml-packages.nix
+++ b/pkgs/top-level/ocaml-packages.nix
@@ -564,6 +564,8 @@ let
 
     result = callPackage ../development/ocaml-modules/ocaml-result { };
 
+    seq = callPackage ../development/ocaml-modules/seq { };
+
     sequence = callPackage ../development/ocaml-modules/sequence { };
 
     spacetime_lib = callPackage ../development/ocaml-modules/spacetime_lib { };
diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 51d1a1c2215e..714dba45aa2f 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -1250,7 +1250,6 @@ let
     meta = {
       description = "Serves PODs right from your Catalyst application";
       license = stdenv.lib.licenses.bsd3;
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -1478,7 +1477,6 @@ let
     propagatedBuildInputs = [ CatalystPluginFormValidator FormValidatorSimple ];
     meta = {
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -1506,7 +1504,6 @@ let
     meta = {
       description = "Catalyst Plugin for Log::Handler";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ stdenv.lib.maintainers.rycee ];
     };
   };
 
@@ -1534,7 +1531,6 @@ let
     meta = {
       description = "Per-session custom expiry times";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ stdenv.lib.maintainers.rycee ];
     };
   };
 
@@ -1572,7 +1568,6 @@ let
     meta = {
       description = "File storage backend for session data";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ stdenv.lib.maintainers.rycee ];
     };
   };
 
@@ -1614,7 +1609,6 @@ let
     meta = {
       description = "Handle passing of status messages between screens of a web application";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ stdenv.lib.maintainers.rycee ];
     };
   };
 
@@ -1629,7 +1623,6 @@ let
     meta = {
       description = "CSV view class";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -1752,7 +1745,6 @@ let
     meta = {
       description = "Handle Common Gateway Interface requests and responses";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -1895,7 +1887,6 @@ let
     meta = {
       description = "Unified cache handling interface";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -2509,7 +2500,6 @@ let
       homepage = https://github.com/rjbs/Config-INI;
       description = "Simple .ini-file format";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -2568,7 +2558,6 @@ let
       homepage = https://github.com/rjbs/Config-MVP;
       description = "Multivalue-property package-oriented configuration";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -2631,6 +2620,7 @@ let
     prePatch = ''
       # Attempts to use network.
       rm t/01-proxy-http.t
+      rm t/01-proxy-proc-safeexec.t
     '';
     meta = {
       description = "A generic connection to a hierarchical-structured data set";
@@ -2801,7 +2791,6 @@ let
     meta = {
       description = "Read and write Changes files";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = with maintainers; [ rycee ];
     };
   };
 
@@ -3074,7 +3063,6 @@ let
     meta = with stdenv.lib; {
       description = "Perl wrapper around OpenSSL's AES library";
       license = with licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
       platforms = platforms.unix;
     };
   };
@@ -3561,7 +3549,6 @@ let
     meta = {
       description = "Domain and host name validation";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -3576,7 +3563,6 @@ let
     meta = {
       description = "IPv4 and IPv6 validation methods";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -3590,7 +3576,6 @@ let
     meta = {
       description = "Common URL validation methods";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -3823,7 +3808,6 @@ let
     meta = {
       description = "Parse and format MySQL dates and times";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -4333,7 +4317,6 @@ let
     meta = {
       description = "Adding keywords to perl, in perl";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = with maintainers; [ rycee ];
     };
   };
 
@@ -4495,7 +4478,6 @@ let
     meta = {
       description = "Perl extension for 32 bit Jenkins Hashing Algorithm";
       license = stdenv.lib.licenses.artistic2;
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -4915,7 +4897,6 @@ let
       homepage = https://github.com/rjbs/Email-Abstract;
       description = "Unified interface to mail representations";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -4967,7 +4948,6 @@ let
       homepage = https://github.com/rjbs/Email-Date-Format;
       description = "Produce RFC 2822 date strings";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -5009,7 +4989,6 @@ let
       homepage = https://github.com/rjbs/Email-MIME;
       description = "Easy MIME message handling";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = with maintainers; [ rycee ];
     };
   };
 
@@ -5038,7 +5017,6 @@ let
       homepage = https://github.com/rjbs/Email-MIME-ContentType;
       description = "Parse a MIME Content-Type Header";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = with maintainers; [ rycee ];
     };
     propagatedBuildInputs = [ Encode ];
   };
@@ -5054,7 +5032,6 @@ let
       homepage = https://github.com/rjbs/Email-MIME-Encodings;
       description = "A unified interface to MIME encoding and decoding";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = with maintainers; [ rycee ];
     };
   };
 
@@ -5069,7 +5046,6 @@ let
       homepage = https://github.com/rjbs/Email-Send;
       description = "Simply Sending Email";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
     buildInputs = [ MIMETools MailTools ];
   };
@@ -5102,7 +5078,6 @@ let
       homepage = https://github.com/rjbs/Email-Sender;
       description = "A library for sending email";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -5117,7 +5092,6 @@ let
       homepage = https://github.com/rjbs/Email-Simple;
       description = "Simple parsing of RFC2822 message format and headers";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -5140,7 +5114,6 @@ let
     propagatedBuildInputs = [ EmailValid ];
     meta = {
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -5220,7 +5193,6 @@ let
     meta = {
       description = "Determine the locale encoding";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -5936,7 +5908,6 @@ let
     meta = {
       description = "Determine MIME types of data or files using libmagic";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -6053,7 +6024,6 @@ let
     meta = {
       description = "Read a file backwards by lines";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -6239,7 +6209,6 @@ let
       homepage = https://github.com/tommybutler/file-util/wiki;
       description = "Easy, versatile, portable file handling";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -6352,7 +6321,6 @@ let
     meta = {
       description = "Validation with simple chains of constraints";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
     buildInputs = [ CGI ];
   };
@@ -6465,10 +6433,10 @@ let
   };
 
   GetoptLongDescriptive = buildPerlPackage rec {
-    name = "Getopt-Long-Descriptive-0.103";
+    name = "Getopt-Long-Descriptive-0.102";
     src = fetchurl {
       url = "mirror://cpan/authors/id/R/RJ/RJBS/${name}.tar.gz";
-      sha256 = "70e1bae7404a9dfb638b5d12e5bd4ea97e3bee743a4555909307d68e0111f4b2";
+      sha256 = "9ad4b98f294aa0515cc3150a1ae878d39e470762b78d8bd9df055eba9dea2846";
     };
     buildInputs = [ CPANMetaCheck TestFatal TestWarnings ];
     propagatedBuildInputs = [ ParamsValidate SubExporter ];
@@ -6868,7 +6836,6 @@ let
     meta = {
       description = "Provide the stuff missing in Hash::Util";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -7591,7 +7558,6 @@ let
     meta = {
       description = "Alternative but compatible interface to modules that export symbols";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -7694,7 +7660,6 @@ let
     meta = {
       description = "Open an HTML file with automatic charset detection";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -7825,7 +7790,6 @@ let
     meta = {
       description = "IO::Socket with read/write timeout";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -8785,7 +8749,6 @@ let
       homepage = https://github.com/preaction/Log-Any;
       description = "Bringing loggers and listeners together";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -8830,7 +8793,6 @@ let
     meta = {
       description = "Log messages to several outputs";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -8890,7 +8852,6 @@ let
       homepage = https://mschilli.github.io/log4perl/;
       description = "Log4j implementation for Perl";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -9221,7 +9182,6 @@ let
     meta = {
       description = "Various e-mail related modules";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -9510,7 +9470,6 @@ let
     meta = {
       description = "Low-calorie MIME generator (DEPRECATED)";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -9551,7 +9510,6 @@ let
       homepage = https://github.com/rjbs/mixin-linewise;
       description = "Write your linewise code for handles; this does the rest";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -9692,11 +9650,12 @@ let
       sha256 = "004ly9xxjlsbrr2vhxsa1n84z3034gxrzr7z0wl45szd8v1v6qwh";
     };
     buildInputs = [ CaptureTiny CwdGuard FileCopyRecursiveReduced ];
+    propagatedBuildInputs = [ DevelCheckCompiler ];
+    perlPreHook = "export LD=$CC";
     meta = {
       description = "A Module::Build class for building XS modules";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
     };
-    propagatedBuildInputs = [ DevelCheckCompiler ];
   };
 
   ModuleCPANTSAnalyse = buildPerlPackage rec {
@@ -10031,10 +9990,10 @@ let
     };
   };
   Mojolicious = buildPerlPackage rec {
-    name = "Mojolicious-7.93";
+    name = "Mojolicious-7.88";
     src = fetchurl {
       url = "mirror://cpan/authors/id/S/SR/SRI/${name}.tar.gz";
-      sha256 = "00c30fc566fee0823af0a75bdf4f170531655df14beca6d51f0e453a43aaad5d";
+      sha256 = "4c4c9c05131fcd175cd6370e15d2586baec1a3ec882cb6971e1f5f52b5e0d785";
     };
     meta = {
       homepage = https://mojolicious.org/;
@@ -10095,7 +10054,6 @@ let
     meta = {
       description = "Minimalist Object Orientation (with Moose compatibility)";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -10403,7 +10361,6 @@ let
       homepage = https://github.com/gfx/mousex-getopt;
       description = "A Mouse role for processing command line options";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -10504,7 +10461,6 @@ let
       homepage = https://github.com/moose/MooseX-Getopt;
       description = "A Moose role for processing command line options";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -10763,7 +10719,6 @@ let
       homepage = https://github.com/moose/MooseX-Types;
       description = "Organise your Moose types in libraries";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -10929,6 +10884,7 @@ let
       sha256 = "1j3048ip691j91rdig6wrlg6i4jdzhszxmz5pi2g7n355rl2w00l";
     };
     buildInputs = [ DevelPPPort ModuleBuildXSUtil TestException TestFatal TestLeakTrace TestOutput TestRequires TryTiny self.version ];
+    perlPreHook = "export LD=$CC";
     NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.isi686 "-fno-stack-protector";
     hardeningDisable = stdenv.lib.optional stdenv.isi686 "stackprotector";
   };
@@ -11060,7 +11016,6 @@ let
     meta = {
       description = "Manages IPv4 and IPv6 addresses and subnets";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -11253,7 +11208,6 @@ let
     meta = {
       description = "Work with TLD names";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -11694,6 +11648,8 @@ let
       sha256 = "91c177f30f82302eaf3173356eef05c21bc82163df752acb469177bd14a72db9";
     };
     buildInputs = [ pkgs.zookeeper_mt ];
+    # fix "error: format not a string literal and no format arguments [-Werror=format-security]"
+    hardeningDisable = stdenv.lib.optional (stdenv.lib.versionAtLeast perl.version "5.28") "format";
     NIX_CFLAGS_COMPILE = "-I${pkgs.zookeeper_mt}/include";
     NIX_CFLAGS_LINK = "-L${pkgs.zookeeper_mt.out}/lib -lzookeeper_mt";
     meta = {
@@ -11794,7 +11750,6 @@ let
       homepage = https://github.com/dluxhu/perl-parallel-forkmanager;
       description = "A simple parallel processing fork manager";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -12189,7 +12144,6 @@ let
     meta = {
       description = "A PerlIO layer that adds read & write timeout to a handle";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -12811,7 +12765,6 @@ let
       homepage = https://github.com/rjbs/Pod-Elemental-PerlMunger;
       description = "A thing that takes a string of Perl and rewrites its documentation";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -12852,7 +12805,6 @@ let
       homepage = https://github.com/neilb/Pod-POM;
       description = "POD Object Model";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -12866,7 +12818,6 @@ let
     meta = {
       description = "Generate the TOC of a POD with Pod::POM";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -13041,7 +12992,6 @@ let
       homepage = https://github.com/rjbs/Pod-Weaver;
       description = "Weave together a Pod document from an outline";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -13105,7 +13055,6 @@ let
       homepage = https://github.com/sanko/readonly;
       description = "Facility for creating read-only scalars, arrays, hashes";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -13130,7 +13079,6 @@ let
       homepage = https://github.com/PerlRedis/perl-redis;
       description = "Perl binding for Redis database";
       license = stdenv.lib.licenses.artistic2;
-      maintainers = [ maintainers.rycee ];
       platforms   = stdenv.lib.platforms.unix;
     };
   };
@@ -13318,7 +13266,6 @@ let
     meta = {
       description = "Roles. Like a nouvelle cuisine portion size slice of Moose";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -13593,7 +13540,6 @@ let
       homepage = https://github.com/rjbs/Software-License;
       description = "Packages that provide templated software licenses";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -14147,7 +14093,6 @@ let
       homepage = https://github.com/rjbs/Sub-Exporter-ForMethods;
       description = "Helper routines for using Sub::Exporter to build methods";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -14201,7 +14146,6 @@ let
     meta = {
       description = "Tool for inspecting subroutines";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -14228,7 +14172,6 @@ let
       homepage = https://github.com/p5sagit/Sub-Name;
       description = "(Re)name a sub";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -14408,7 +14351,6 @@ let
     meta = {
       description = "Perl interface to the UNIX syslog(3) calls";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -14797,7 +14739,6 @@ let
     meta = {
       description = "Format a header and rows into a table";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -14873,7 +14814,6 @@ let
     meta = {
       description = "Distribution with a rich set of tools built upon the Test2 framework";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -14925,6 +14865,7 @@ let
     meta = {
       description = "Aggregate C<*.t> tests to make them run faster";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
+      broken = stdenv.lib.versionAtLeast perl.version "5.26"; # This module only works with Test::More version < 1.3, but you have 1.302133
     };
   };
 
@@ -14963,7 +14904,6 @@ let
     meta = {
       description = "Easily create test classes in an xUnit/JUnit style";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -15172,7 +15112,6 @@ let
       homepage = https://github.com/rjbs/Test-Fatal;
       description = "Incredibly simple helpers for testing code with exceptions";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -15725,6 +15664,7 @@ let
     };
     buildInputs = [ TestRun TestTrap ];
     propagatedBuildInputs = [ MooseXGetopt UNIVERSALrequire YAMLLibYAML ];
+    doCheck = !stdenv.isDarwin;
     meta = {
       homepage = http://web-cpan.berlios.de/modules/Test-Run/;
       description = "Analyze tests from the command line using Test::Run";
@@ -15859,7 +15799,6 @@ let
     meta = {
       description = "Basic utilities for writing tests";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -16014,7 +15953,6 @@ let
       homepage = https://github.com/karenetheridge/Test-Warnings;
       description = "Test for warnings and the lack of them";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -16211,7 +16149,6 @@ let
     meta = {
       description = "Comma-separated values manipulator (using XS or PurePerl)";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -16225,7 +16162,6 @@ let
     meta = {
       description = "Encoding aware Text::CSV";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -16733,7 +16669,6 @@ let
       homepage = https://github.com/rjbs/Throwable;
       description = "A role for classes that can be thrown";
       license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
-      maintainers = [ maintainers.rycee ];
     };
   };
 
@@ -17056,6 +16991,7 @@ let
      meta = {
        description = "Turns ref() into a multimethod";
        license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
+       broken = stdenv.lib.versionAtLeast perl.version "5.26"; # 'OP {aka struct op}' has no member named 'op_sibling'
      };
   };
 
diff --git a/pkgs/top-level/php-packages.nix b/pkgs/top-level/php-packages.nix
index ef6da6ed8042..f235cb639df4 100644
--- a/pkgs/top-level/php-packages.nix
+++ b/pkgs/top-level/php-packages.nix
@@ -198,9 +198,9 @@ let
   };
 
   xdebug26 = assert isPhp7; buildPecl {
-    name = "xdebug-2.6.0";
+    name = "xdebug-2.6.1";
 
-    sha256 = "1p6b54ypi5lq4ka3pyy2gswdf1d5vjb9y8lp9fqcp3zn7g04q9mm";
+    sha256 = "0xxxy6n4lv7ghi9liqx133yskg07lw316vhcds43n1sjq3b93rns";
 
     doCheck = true;
     checkTarget = "test";
@@ -335,11 +335,11 @@ let
 
   composer = pkgs.stdenv.mkDerivation rec {
     name = "composer-${version}";
-    version = "1.6.5";
+    version = "1.7.2";
 
     src = pkgs.fetchurl {
       url = "https://getcomposer.org/download/${version}/composer.phar";
-      sha256 = "0d1lpvq8wylh5qgxhbqb5r7j3c6qk0bz4b5vg187jsl6z6fvxgk7";
+      sha256 = "03km8qw3nshj7qzk5pidziha2ldx1l2yxhh2s7vpg25f9782hd7c";
     };
 
     unpackPhase = ":";
@@ -504,11 +504,11 @@ let
 
   psysh = pkgs.stdenv.mkDerivation rec {
     name = "psysh-${version}";
-    version = "0.9.6";
+    version = "0.9.8";
 
     src = pkgs.fetchurl {
       url = "https://github.com/bobthecow/psysh/releases/download/v${version}/psysh-v${version}.tar.gz";
-      sha256 = "06icmyn7v229mpfplqj76kjnp1gh4ns0nrxa7bsckyqhzi425kc6";
+      sha256 = "0xs9bl0hplkm2hajmm4qca65bm2x7wnx4vbmk0d2jxpvwrgqgnzd";
     };
 
     phases = [ "installPhase" ];
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index fdbb4f90babd..c4e46ea8889a 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -216,6 +216,8 @@ in {
 
   backports_csv = callPackage ../development/python-modules/backports_csv {};
 
+  backports-shutil-which = callPackage ../development/python-modules/backports-shutil-which {};
+
   bap = callPackage ../development/python-modules/bap {
     bap = pkgs.ocamlPackages.bap;
   };
@@ -288,6 +290,8 @@ in {
 
   distorm3 = callPackage ../development/python-modules/distorm3 { };
 
+  distributed = callPackage ../development/python-modules/distributed { };
+
   docutils = callPackage ../development/python-modules/docutils { };
 
   dogtail = callPackage ../development/python-modules/dogtail { };
@@ -298,6 +302,8 @@ in {
 
   fire = callPackage ../development/python-modules/fire { };
 
+  genanki = callPackage ../development/python-modules/genanki { };
+
   globus-sdk = callPackage ../development/python-modules/globus-sdk { };
 
   goocalendar = callPackage ../development/python-modules/goocalendar { };
@@ -334,6 +340,8 @@ in {
 
   mail-parser = callPackage ../development/python-modules/mail-parser { };
 
+  markerlib = callPackage ../development/python-modules/markerlib { };
+
   monty = callPackage ../development/python-modules/monty { };
 
   mpi4py = callPackage ../development/python-modules/mpi4py {
@@ -461,10 +469,14 @@ in {
 
   pykerberos = callPackage ../development/python-modules/pykerberos { };
 
+  pykeepass = callPackage ../development/python-modules/pykeepass { };
+
   pymatgen = callPackage ../development/python-modules/pymatgen { };
 
   pymatgen-lammps = callPackage ../development/python-modules/pymatgen-lammps { };
 
+  pymsgbox = callPackage ../development/python-modules/pymsgbox { };
+
   pynisher = callPackage ../development/python-modules/pynisher { };
 
   pyparser = callPackage ../development/python-modules/pyparser { };
@@ -497,6 +509,8 @@ in {
 
   python-hosts = callPackage ../development/python-modules/python-hosts { };
 
+  python-lz4 = callPackage ../development/python-modules/python-lz4 { };
+
   python-igraph = callPackage ../development/python-modules/python-igraph {
     pkgconfig = pkgs.pkgconfig;
     igraph = pkgs.igraph;
@@ -536,6 +550,8 @@ in {
 
   seekpath = callPackage ../development/python-modules/seekpath { };
 
+  selectors2 = callPackage ../development/python-modules/selectors2 { };
+
   serversyncstorage = callPackage ../development/python-modules/serversyncstorage {};
 
   simpleeval = callPackage ../development/python-modules/simpleeval { };
@@ -568,6 +584,8 @@ in {
 
   trio = callPackage ../development/python-modules/trio {};
 
+  sniffio = callPackage ../development/python-modules/sniffio { };
+
   tokenserver = callPackage ../development/python-modules/tokenserver {};
 
   toml = callPackage ../development/python-modules/toml { };
@@ -1448,6 +1466,8 @@ in {
 
     disabled = !isPy27;
 
+    buildInputs = optionals stdenv.isDarwin [ pkgs.darwin.apple_sdk.frameworks.IOKit ];
+
     src = pkgs.fetchurl {
       url = "http://cddb-py.sourceforge.net/${name}.tar.gz";
       sha256 = "098xhd575ibvdx7i3dny3lwi851yxhjg2hn5jbbgrwj833rg5l5w";
@@ -1645,6 +1665,12 @@ in {
 
   envs = callPackage ../development/python-modules/envs { };
 
+  eth-hash = callPackage ../development/python-modules/eth-hash { };
+
+  eth-typing = callPackage ../development/python-modules/eth-typing { };
+
+  eth-utils = callPackage ../development/python-modules/eth-utils { };
+
   jsonrpc-async = callPackage ../development/python-modules/jsonrpc-async { };
 
   jsonrpc-base = callPackage ../development/python-modules/jsonrpc-base { };
@@ -1704,35 +1730,7 @@ in {
 
   idna = callPackage ../development/python-modules/idna { };
 
-  mahotas = buildPythonPackage rec {
-    name = "python-mahotas-${version}";
-    version = "1.4.2";
-
-    src = pkgs.fetchurl {
-      url = "https://github.com/luispedro/mahotas/archive/v${version}.tar.gz";
-      sha256 = "1mvsxh0pa5vdvbknlv1m68n7gw2cv4pyqgqp3r770rnmf6nxbp7m";
-    };
-
-    buildInputs = with self; [
-      nose
-      pillow
-      scipy
-    ];
-    propagatedBuildInputs = with self; [
-      numpy
-      imread
-    ];
-
-    disabled = stdenv.isi686; # Failing tests
-
-    meta = with stdenv.lib; {
-      description = "Computer vision package based on numpy";
-      homepage = http://mahotas.readthedocs.io/;
-      maintainers = with maintainers; [ luispedro ];
-      license = licenses.mit;
-      platforms = platforms.linux;
-    };
-  };
+  mahotas = callPackage ../development/python-modules/mahotas { };
 
   MDP = callPackage ../development/python-modules/mdp {};
 
@@ -1788,6 +1786,13 @@ in {
 
     doCheck = !isPy3k;
 
+    postPatch = ''
+      substituteInPlace python/setup.py \
+      --replace "graphviz<0.9.0" "graphviz<0.10.0" \
+      --replace "numpy<=1.15.0" "numpy<1.16.0" \
+      --replace "requests<2.19.0" "requests<2.20.0"
+    '';
+
     preConfigure = ''
       cd python
     '';
@@ -1890,6 +1895,8 @@ in {
 
   pytest-django = callPackage ../development/python-modules/pytest-django { };
 
+  pytest-faulthandler = callPackage ../development/python-modules/pytest-faulthandler { };
+
   pytest-fixture-config = callPackage ../development/python-modules/pytest-fixture-config { };
 
   pytest-forked = callPackage ../development/python-modules/pytest-forked { };
@@ -1914,6 +1921,8 @@ in {
 
   pytest-raisesregexp = callPackage ../development/python-modules/pytest-raisesregexp { };
 
+  pytest-repeat = callPackage ../development/python-modules/pytest-repeat { };
+
   pytestrunner = callPackage ../development/python-modules/pytestrunner { };
 
   pytestquickcheck = callPackage ../development/python-modules/pytest-quickcheck { };
@@ -1981,34 +1990,6 @@ in {
 
   zict = callPackage ../development/python-modules/zict { };
 
-  distributed = buildPythonPackage rec {
-
-    name = "distributed-${version}";
-    version = "1.15.1";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/d/distributed/${name}.tar.gz";
-      sha256 = "037a07sdf2ch1d360nqwqz3b4ld8msydng7mw4i5s902v7xr05l6";
-    };
-
-    buildInputs = with self; [ pytest docutils ];
-    propagatedBuildInputs = with self; [
-      dask six boto3 s3fs tblib locket msgpack-python click cloudpickle tornado
-      psutil botocore zict lz4 sortedcollections sortedcontainers
-    ] ++ (if !isPy3k then [ singledispatch ] else []);
-
-    # py.test not picking up local config file, even when running
-    # manually: E ValueError: no option named '--runslow'
-    doCheck = false;
-
-    meta = {
-      description = "Distributed computation in Python.";
-      homepage = "http://distributed.readthedocs.io/en/latest/";
-      license = licenses.bsd3;
-      maintainers = with maintainers; [ teh ];
-    };
-  };
-
   digital-ocean = callPackage ../development/python-modules/digitalocean { };
 
   leather = callPackage ../development/python-modules/leather { };
@@ -2031,6 +2012,8 @@ in {
 
   requests-cache = callPackage ../development/python-modules/requests-cache { };
 
+  requests-file = callPackage ../development/python-modules/requests-file { };
+
   requests-kerberos = callPackage ../development/python-modules/requests-kerberos { };
 
   requests-unixsocket = callPackage ../development/python-modules/requests-unixsocket {};
@@ -2617,48 +2600,9 @@ in {
 
   GeoIP = callPackage ../development/python-modules/GeoIP { };
 
-  gmpy = buildPythonPackage rec {
-    name = "gmpy-1.17";
-    disabled = isPyPy;
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/g/gmpy/${name}.zip";
-      sha256 = "1a79118a5332b40aba6aa24b051ead3a31b9b3b9642288934da754515da8fa14";
-    };
+  gmpy = callPackage ../development/python-modules/gmpy { };
 
-    buildInputs = [
-      pkgs.gcc
-      pkgs.gmp
-    ];
-
-    meta = {
-      description = "GMP or MPIR interface to Python 2.4+ and 3.x";
-      homepage = http://code.google.com/p/gmpy/;
-    };
-  };
-
-  gmpy2 = buildPythonPackage rec {
-    name = "gmpy2-2.0.6";
-    disabled = isPyPy;
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/g/gmpy2/${name}.zip";
-      sha256 = "5041d0ae24407c24487106099f5bcc4abb1a5f58d90e6712cc95321975eddbd4";
-    };
-
-    buildInputs = [
-      pkgs.gcc
-      pkgs.gmp
-      pkgs.mpfr
-      pkgs.libmpc
-    ];
-
-    meta = {
-      description = "GMP/MPIR, MPFR, and MPC interface to Python 2.6+ and 3.x";
-      homepage = http://code.google.com/p/gmpy/;
-      license = licenses.gpl3Plus;
-    };
-  };
+  gmpy2 = callPackage ../development/python-modules/gmpy2 { };
 
   gmusicapi = with pkgs; buildPythonPackage rec {
     name = "gmusicapi-10.1.0";
@@ -3725,6 +3669,8 @@ in {
     };
   };
 
+  phe = callPackage ../development/python-modules/phe { };
+
   phpserialize = callPackage ../development/python-modules/phpserialize { };
 
   plaid-python = callPackage ../development/python-modules/plaid-python { };
@@ -5916,14 +5862,14 @@ in {
 
   glances = buildPythonPackage rec {
     name = "glances-${version}";
-    version = "3.0";
+    version = "3.0.1";
     disabled = isPyPy;
 
     src = pkgs.fetchFromGitHub {
       owner = "nicolargo";
       repo = "glances";
       rev = "v${version}";
-      sha256 = "19pymw104l05af710ph69znqiz9av3if7436kigjlwd65gxnghkc";
+      sha256 = "18pyp6ij3bzybqj771v48n7yn3a1spk6ncg1kgp6hfpjhpqiw87x";
     };
 
     # Requires access to /sys/class/power_supply
@@ -7937,11 +7883,11 @@ in {
 
   graphviz = buildPythonPackage rec {
     name = "graphviz-${version}";
-    version = "0.5.2";
+    version = "0.9";
 
     src = pkgs.fetchurl {
       url = "mirror://pypi/g/graphviz/${name}.zip";
-      sha256 = "0jh31nlm0qbxwylhdkwnb69pcjlc5z03fcfbs0gvgzp3hfrngsk0";
+      sha256 = "14r9brj4r31b3qy1nnn34v3l4h0n39bqxg9sn2fz4p3pp5mglnl6";
     };
 
     propagatedBuildInputs = [ pkgs.graphviz ];
@@ -10905,6 +10851,8 @@ in {
 
   python-language-server = callPackage ../development/python-modules/python-language-server {};
 
+  python-jsonrpc-server = callPackage ../development/python-modules/python-jsonrpc-server {};
+
   pyls-black = callPackage ../development/python-modules/pyls-black {};
 
   pyls-isort = callPackage ../development/python-modules/pyls-isort {};
@@ -11209,6 +11157,8 @@ in {
     };
   });
 
+  pyreadability = callPackage ../development/python-modules/pyreadability { };
+
   pyscss = buildPythonPackage rec {
     name = "pyScss-${version}";
     version = "1.3.5";
@@ -14951,6 +14901,7 @@ EOF
   };
 
   tornado = callPackage ../development/python-modules/tornado { };
+  tornado_4 = callPackage ../development/python-modules/tornado { version = "4.5.3"; };
 
   tokenlib = buildPythonPackage rec {
     name = "tokenlib-${version}";
@@ -16286,6 +16237,8 @@ EOF
 
   potr = callPackage ../development/python-modules/potr {};
 
+  python-u2flib-host = callPackage ../development/python-modules/python-u2flib-host { };
+
   pluggy = callPackage ../development/python-modules/pluggy {};
 
   xcffib = callPackage ../development/python-modules/xcffib {};
@@ -16802,22 +16755,7 @@ EOF
     cudaSupport = true;
   };
 
-  tflearn = buildPythonPackage rec {
-    name = "tflearn-0.2.1";
-
-    meta = {
-      description = "Deep learning library featuring a higher-level API for TensorFlow";
-      homepage    = "https://github.com/tflearn/tflearn";
-      license     = licenses.mit;
-    };
-
-    propagatedBuildInputs = with self; [ scipy h5py pillow tensorflow ];
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/t/tflearn/${name}.tar.gz";
-      sha256 = "1n884c4j35409id2bncyj5fvmmfpdqj3pk6wrv0s1znnvs0lkii0";
-    };
-  };
+  tflearn = callPackage ../development/python-modules/tflearn { };
 
   simpleai = buildPythonPackage rec {
      version = "0.7.11";
@@ -16960,137 +16898,25 @@ EOF
 
   python-telegram-bot = callPackage ../development/python-modules/python-telegram-bot { };
 
-  irc = buildPythonPackage rec {
-    name = "irc-${version}";
-    version = "14.2.2";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/i/irc/${name}.tar.gz";
-      sha256 = "0a6qjl4fjj98wxc8gaf5rxg94v7a0ydjdiw6pcka5fy814xl2i28";
-    };
-
-    doCheck = false;
-
-    buildInputs = with self; [ setuptools_scm ];
-
-    propagatedBuildInputs = with self; [
-      six jaraco_logging jaraco_text jaraco_stream jaraco_stream pytz
-      jaraco_itertools
-    ];
-  };
-
-  jaraco_logging = buildPythonPackage rec {
-    name = "jaraco.logging-${version}";
-    version = "1.5";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/j/jaraco.logging/${name}.tar.gz";
-      sha256 = "1lvw9zphiymiiar47kd0x0dbc9x2jks8w1kirg3ff8nd80k95j05";
-    };
-
-    doCheck = false;
-
-    buildInputs = with self; [ setuptools_scm ];
-
-    propagatedBuildInputs = with self; [ tempora six ];
-  };
-
-  jaraco_text = buildPythonPackage rec {
-    name = "jaraco.text-${version}";
-    version = "1.7";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/j/jaraco.text/${name}.tar.gz";
-      sha256 = "07ccc0zc28sb1kyfyviw3n8f581qynrshqvqg1xsp4gkf1m2ibhh";
-    };
-
-    doCheck = false;
-
-    buildInputs = with self; [ setuptools_scm ];
-
-    propagatedBuildInputs = with self; [ jaraco_functools jaraco_collections ];
-  };
+  irc = callPackage ../development/python-modules/irc { };
 
-  jaraco_collections = buildPythonPackage rec {
-    name = "jaraco.collections-${version}";
-    version = "1.3.2";
+  jaraco_logging = callPackage ../development/python-modules/jaraco_logging { };
 
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/j/jaraco.collections/${name}.tar.gz";
-      sha256 = "0mvyn9d4bs5zw9z84wwsbgff6s28vg6h4i8qhyb667fqi7xgr1w5";
-    };
+  jaraco_text = callPackage ../development/python-modules/jaraco_text { };
 
-    doCheck = false;
+  jaraco_collections = callPackage ../development/python-modules/jaraco_collections { };
 
-    buildInputs = with self; [ setuptools_scm ];
+  jaraco_itertools = callPackage ../development/python-modules/jaraco_itertools { };
 
-    propagatedBuildInputs = with self; [ six jaraco_classes ];
-
-    # break dependency cycle
-    patchPhase = ''
-      sed -i "/'jaraco.text',/d" setup.py
-    '';
-  };
-
-  jaraco_itertools = buildPythonPackage rec {
-    name = "jaraco.itertools-${version}";
-    version = "1.7.1";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/j/jaraco.itertools/${name}.tar.gz";
-      sha256 = "0yvxp5nwhy4wc4naq5v152vbnxqcn5k031g089chq2lk5kr7np5z";
-    };
-
-    doCheck = false;
-
-    buildInputs = with self; [ setuptools_scm ];
-
-    propagatedBuildInputs = with self; [ inflect more-itertools six ];
-  };
-
-  inflect = buildPythonPackage rec {
-    name = "inflect-${version}";
-    version = "0.2.5";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/i/inflect/${name}.tar.gz";
-      sha256 = "065866j9msrivbr74yrag53ch0lav7xz18qvjkiblkhinbfch510";
-    };
-  };
+  inflect = callPackage ../development/python-modules/inflect { };
 
   more-itertools = callPackage ../development/python-modules/more-itertools { };
 
   jaraco_functools = callPackage ../development/python-modules/jaraco_functools { };
 
-  jaraco_classes = buildPythonPackage rec {
-    name = "jaraco.classes-${version}";
-    version = "1.4";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/j/jaraco.classes/${name}.tar.gz";
-      sha256 = "1yn1wa6m5rdhk4grmnycx3i5pzzdlwfx83h944c9g5rqggmg612h";
-    };
-
-    doCheck = false;
-
-    buildInputs = with self; [ setuptools_scm ];
-  };
-
-  jaraco_stream = buildPythonPackage rec {
-    name = "jaraco.stream-${version}";
-    version = "1.1.1";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/j/jaraco.stream/${name}.tar.gz";
-      sha256 = "0iwg5ljc2z8wwyl2wv7lldwviwd0q4rsccascyqvqqs0l2rcn4gi";
-    };
-
-    doCheck = false;
+  jaraco_classes = callPackage ../development/python-modules/jaraco_classes { };
 
-    buildInputs = with self; [ setuptools_scm ];
-
-    propagatedBuildInputs = with self; [ six ];
-  };
+  jaraco_stream = callPackage ../development/python-modules/jaraco_stream { };
 
   tempora= callPackage ../development/python-modules/tempora { };
 
@@ -17266,6 +17092,8 @@ EOF
 
   textacy = callPackage ../development/python-modules/textacy { };
 
+  tldextract = callPackage ../development/python-modules/tldextract { };
+
   pyemd  = callPackage ../development/python-modules/pyemd { };
 
   pulp  = callPackage ../development/python-modules/pulp { };
diff --git a/pkgs/top-level/stage.nix b/pkgs/top-level/stage.nix
index ff09fa5ad1fd..06978d1067bf 100644
--- a/pkgs/top-level/stage.nix
+++ b/pkgs/top-level/stage.nix
@@ -79,17 +79,11 @@ let
 
   # The old identifiers for cross-compiling. These should eventually be removed,
   # and the packages that rely on them refactored accordingly.
-  platformCompat = self: super: {
-    buildPlatform = lib.warn
-      "top-level `buildPlatform` is deprecated since 18.09. Please use `stdenv.buildPlatform`."
-      super.stdenv.buildPlatform;
-    hostPlatform = lib.warn
-      "top-level `hostPlatform` is deprecated since 18.09. Please use `stdenv.hostPlatform`."
-      super.stdenv.hostPlatform;
-    targetPlatform = lib.warn
-      "top-level `targetPlatform` is deprecated since 18.09. Please use `stdenv.targetPlatform`."
-      super.stdenv.targetPlatform;
-    inherit (super.stdenv.hostPlatform) system;
+  platformCompat = self: super: let
+    inherit (super.stdenv) buildPlatform hostPlatform targetPlatform;
+  in {
+    inherit buildPlatform hostPlatform targetPlatform;
+    inherit (buildPlatform) system;
   };
 
   splice = self: super: import ./splice.nix lib self (buildPackages != null);